[PATCH] D69563: [LV] Strip wrap flags from vectorized reductions

Ayal Zaks via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Wed Dec 18 12:24:49 PST 2019


Ayal added a comment.

No need for collectReductionInstructions() any more.



================
Comment at: llvm/lib/Transforms/Vectorize/LoopVectorize.cpp:3891
+  Instruction *LoopExitInstr = RdxDesc.getLoopExitInstr();
+  assert(LoopExitInstr != nullptr && "null loop exit instruction");
+  SmallVector<Instruction *, 8> Worklist;
----------------
There's no need to deal with LoopExitInstr in this implementation; it's probably clearer to start from the Phi as in the original version.


================
Comment at: llvm/test/Transforms/LoopVectorize/nuw.ll:14
+
+; CHECK-LABEL: vector.body:
+; CHECK: sub <4 x i32>
----------------
Note that `vector.body`'s are usually CHECK'd instead of CHECK-LABEL'd, just for consistency with other tests.

Consider running update_test_checks.py to auto-generate the CHECKs.


================
Comment at: llvm/test/Transforms/LoopVectorize/nuw.ll:41
+
+ ; CHECK-LABEL: vector.body:
+ ; CHECK-COUNT-4: add <4 x i32>
----------------
ditto.


Repository:
  rG LLVM Github Monorepo

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D69563/new/

https://reviews.llvm.org/D69563





More information about the llvm-commits mailing list