[PATCH] D12286: [LV] Never widen an induction variable.

James Molloy via llvm-commits llvm-commits at lists.llvm.org
Wed Sep 2 04:55:57 PDT 2015


jmolloy closed this revision.
jmolloy marked 2 inline comments as done.
jmolloy added a comment.

Committed r246631. Thanks!


================
Comment at: test/Transforms/LoopVectorize/ptr-induction.ll:17
@@ +16,3 @@
+  %a.pn = phi i8* [ %incdec.ptr8, %while.body ], [ %a, %while.body.preheader ]
+  %acc.07 = phi i32 [ %add, %while.body ], [ 0, %while.body.preheader ]
+  %incdec.ptr8 = getelementptr inbounds i8, i8* %a.pn, i64 1
----------------
anemet wrote:
> When I tried this with my not completely up-to-date sources, vectorization failed with:
> 
> LV: Found an unidentified PHI.  %acc.07 = phi i32 [ %add, %while.body ], [ 0, %while.body.preheader ]
> 
> I think we should just remove this and its uses further down.
It's the "and i32 %acc.07, 255" that's causing it. I'll remove that particular instruction, but reductions with ANDs in them are only just analyzable very recently.


Repository:
  rL LLVM

http://reviews.llvm.org/D12286





More information about the llvm-commits mailing list