HomePhabricator

LoopVectorizer: Handle strided memory accesses by versioning
rL198950Unpublished

Unpublished Commit ยท Learn More

No further details are available.

Description

LoopVectorizer: Handle strided memory accesses by versioning

for (i = 0; i < N; ++i)

A[i * Stride1] += B[i * Stride2];

We take loops like this and check that the symbolic strides 'Strided1/2' are one
and drop to the scalar loop if they are not.

This is currently disabled by default and hidden behind the flag
'enable-mem-access-versioning'.

radar://13075509

Details

Committed
arnoldsJan 10 2014, 10:20 AM
Parents
rL198949: SCEVRewriter: Optionally interpret constants in value map as SCEVConstant
Branches
Unknown
Tags
Unknown

Event Timeline