[PATCH] D79100: [LV] 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
Mon Jun 1 04:14:35 PDT 2020
SjoerdMeijer updated this revision to Diff 267578.
SjoerdMeijer added a comment.
> IIUC we want the first lanes of both the BTC and the IV, right?
Yep, exactly that.
> If that's the case, I think it would be more straight-forward to just request the specific lane when looking up the values, .e.g something like:
>
> <SNIP>
>
> This should have the advantage of re-using some scalar values, if they have been requested already by other recipes.
>
> (Note: this currently crashes unfortunately, as getting lanes for defs managed by VPTransformState does not work, but I put up D80787 <https://reviews.llvm.org/D80787> to fix that)
Thanks for that. I took D80787 <https://reviews.llvm.org/D80787>, and that worked like a charm, greatly simplifying things here: I have simplified lowering of `VPInstruction::ActiveLaneMask` as per your suggestion.
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D79100/new/
https://reviews.llvm.org/D79100
Files:
llvm/lib/Target/ARM/ARMTargetTransformInfo.cpp
llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
llvm/lib/Transforms/Vectorize/VPlan.cpp
llvm/lib/Transforms/Vectorize/VPlan.h
llvm/test/Transforms/LoopVectorize/ARM/prefer-tail-loop-folding.ll
llvm/test/Transforms/LoopVectorize/ARM/tail-folding-counting-down.ll
llvm/test/Transforms/LoopVectorize/ARM/tail-loop-folding.ll
-------------- next part --------------
A non-text attachment was scrubbed...
Name: D79100.267578.patch
Type: text/x-patch
Size: 10091 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20200601/4401a7a4/attachment-0001.bin>
More information about the llvm-commits
mailing list