[PATCH] D95245: [SVE] Add support for scalable vectorization of loops with int/fast FP reductions

Kerry McLaughlin via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Wed Feb 3 08:23:12 PST 2021


kmclaughlin updated this revision to Diff 321100.
kmclaughlin marked 7 inline comments as done.
kmclaughlin added a comment.

- Moved the `Legal->isSafeForAnyVectorWidth()` check in `computeFeasibleMaxVF` further down so that we always check the reductions even if the loop contains memory dependencies. Added a test for this scenario to scalable_reductions.ll.

- Changed `isLegalToVectorizeReduction` so that the whole RecurrenceDescriptor and VF are passed in, and added a check of the recurrence type.

- Replaced the loop in `canVectorizeReductions` with lambda

- Removed `REQUIRE: asserts` from the test file and added -pass-remarks-analysis/missed flags to the RUN line


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

https://reviews.llvm.org/D95245

Files:
  llvm/include/llvm/Analysis/TargetTransformInfo.h
  llvm/include/llvm/Analysis/TargetTransformInfoImpl.h
  llvm/lib/Analysis/TargetTransformInfo.cpp
  llvm/lib/Target/AArch64/AArch64TargetTransformInfo.cpp
  llvm/lib/Target/AArch64/AArch64TargetTransformInfo.h
  llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
  llvm/test/Transforms/LoopVectorize/AArch64/scalable_reductions.ll

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D95245.321100.patch
Type: text/x-patch
Size: 28213 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20210203/898b9567/attachment.bin>


More information about the llvm-commits mailing list