[PATCH] D51639: [LV] Fix PR38786 - consider first order recurrence phis non-uniform

Orivej Desh via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Tue Sep 4 09:40:44 PDT 2018


orivej added inline comments.


================
Comment at: test/Transforms/LoopVectorize/X86/uniform-phi.ll:90
+  %i32next = add i32 %phi32, 1
+  %i64next = zext i32 %i32next to i64
+  %xip = getelementptr inbounds double, double* %x, i64 %i64next
----------------
Note: if I replace `%i64next = zext i32 %i32next to i64` with `%i64next = add i64 %phi64, 1` it ceases to be a first order recurrence, and the loop vectorizer considers `%phi32` and `%phi64` uniform and correctly optimizes this.


Repository:
  rL LLVM

https://reviews.llvm.org/D51639





More information about the llvm-commits mailing list