[PATCH] D79100: [LV][TTI] Emit new IR intrinsic llvm.get.active.mask for tail-folded loops
Sjoerd Meijer via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Tue May 19 07:34:09 PDT 2020
SjoerdMeijer updated this revision to Diff 264890.
SjoerdMeijer retitled this revision from "[LV][TTI] Emit new IR intrinsic llvm.get.active.mask" to "[LV][TTI] Emit new IR intrinsic llvm.get.active.mask for tail-folded loops".
SjoerdMeijer added a comment.
Thanks all for your comments! I think this addresses all comments:
- I did a rename of `ActiveMask` to `ActiveLaneMask` because that describes it better I think,
- The intrinsic now takes 2 arguments: the induction step, and the backedge taken count. It indeed represents the IV <= BTC comparison, thus giving it semantics rather than let it only pass on a value, which I have also clarified with comments at different places,
- The VP instruction is now lowered using `Builder.CreateIntrinsic`, and have added a case to print it.
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D79100/new/
https://reviews.llvm.org/D79100
Files:
llvm/include/llvm/Analysis/TargetTransformInfo.h
llvm/include/llvm/Analysis/TargetTransformInfoImpl.h
llvm/include/llvm/CodeGen/BasicTTIImpl.h
llvm/include/llvm/IR/Intrinsics.td
llvm/lib/Analysis/TargetTransformInfo.cpp
llvm/lib/Target/ARM/ARMTargetTransformInfo.cpp
llvm/lib/Target/ARM/ARMTargetTransformInfo.h
llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
llvm/lib/Transforms/Vectorize/VPlan.cpp
llvm/lib/Transforms/Vectorize/VPlan.h
llvm/test/Transforms/LoopVectorize/ARM/tail-loop-folding.ll
-------------- next part --------------
A non-text attachment was scrubbed...
Name: D79100.264890.patch
Type: text/x-patch
Size: 11797 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20200519/c6214cc4/attachment.bin>
More information about the llvm-commits
mailing list