[PATCH] D116928: [LoopVectorize] Support epilogue vectorisation of loops with reductions

Kerry McLaughlin via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Wed Jan 12 06:31:01 PST 2022


kmclaughlin updated this revision to Diff 399309.
kmclaughlin marked 6 inline comments as done.
kmclaughlin edited the summary of this revision.
kmclaughlin added a comment.

- Added a map to associate resume values with RecurrenceDescriptors in the loop
- Changed the tests to use more meaningful start values
- Added a test case where there is more than one reduction in the loop
- Use the start value of the VPReductionPHIRecipe in fixReduction to check if the resume value is a Phi
- Restructured the changes to fixReduction & createEpilogueVectorizedLoopSkeleton


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

https://reviews.llvm.org/D116928

Files:
  llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
  llvm/test/Transforms/LoopVectorize/AArch64/sve-epilog-vect-inloop-reductions.ll
  llvm/test/Transforms/LoopVectorize/AArch64/sve-epilog-vect-reductions.ll
  llvm/test/Transforms/LoopVectorize/AArch64/sve-epilog-vect-strict-reductions.ll
  llvm/test/Transforms/LoopVectorize/X86/invariant-store-vectorization.ll
  llvm/test/Transforms/LoopVectorize/X86/pr35432.ll
  llvm/test/Transforms/LoopVectorize/X86/pr42674.ll
  llvm/test/Transforms/LoopVectorize/epilog-vectorization-reductions.ll
  llvm/test/Transforms/LoopVectorize/optimal-epilog-vectorization-limitations.ll

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D116928.399309.patch
Type: text/x-patch
Size: 130520 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20220112/18ed142b/attachment-0001.bin>


More information about the llvm-commits mailing list