[PATCH] D158291: [PoC][WIP] Add an AArch64 specific pass for loop idiom recognition

David Sherwood via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Mon Nov 13 08:42:19 PST 2023


david-arm updated this revision to Diff 558082.
david-arm added a comment.

- Rebased the patch to reduce the diff.
- Added checks so that we only attempt the transformation if the target supports scalable vectors and we know the minimum page size.
- Renamed the class to AArch64LoopIdiomTransform to better reflect what the pass is doing, i.e. transforming an idiom from one form to another.
- Removed some of the pipeline changes that are no longer necessary.
- Added a new RUN line to byte-compare-index.ll to show that in the absence of SVE we don't do the transform.


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

https://reviews.llvm.org/D158291

Files:
  llvm/include/llvm/Analysis/TargetTransformInfo.h
  llvm/include/llvm/Analysis/TargetTransformInfoImpl.h
  llvm/lib/Analysis/TargetTransformInfo.cpp
  llvm/lib/Target/AArch64/AArch64.h
  llvm/lib/Target/AArch64/AArch64LoopIdiomTransform.cpp
  llvm/lib/Target/AArch64/AArch64LoopIdiomTransform.h
  llvm/lib/Target/AArch64/AArch64TargetMachine.cpp
  llvm/lib/Target/AArch64/AArch64TargetMachine.h
  llvm/lib/Target/AArch64/AArch64TargetTransformInfo.h
  llvm/lib/Target/AArch64/CMakeLists.txt
  llvm/test/Transforms/LoopIdiom/AArch64/byte-compare-index.ll
  llvm/utils/gn/secondary/llvm/lib/Target/AArch64/BUILD.gn

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D158291.558082.patch
Type: text/x-patch
Size: 140546 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20231113/a2148ad2/attachment-0001.bin>


More information about the llvm-commits mailing list