[LLVMdev] Question about NoWrap flag for SCEVAddRecExpr
Tong Chen
chentong at us.ibm.com
Wed Jun 10 06:21:04 PDT 2015
I am testing vectorization on the following test case:
float x[1024], y[1024];
void myloop1() {
for (long int k = 0; k < 512; k++) {
x[2*k] = x[2*k]+y[k];
}
}
Vectorization failed due to "unsafe dependent memory operation". I traced
the LoopAccessAnalysis.cpp and found the reason is the NoWrapFlag for
SCEVAddRecExpr is not set and consequently the dependence distant became
unknown.
Can anyone familiar with ScalarRevolution tell me whether this is an
expected behavior or a bug?
Tong
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20150610/7949fbac/attachment.html>
More information about the llvm-dev
mailing list