[PATCH] D132591: [LV] Use safe-divisor lowering for fixed vectors if profitable
Philip Reames via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Wed Aug 24 12:26:01 PDT 2022
reames created this revision.
reames added reviewers: fhahn, david-arm.
Herald added subscribers: frasercrmck, luismarques, apazos, sameer.abuasal, s.egerton, Jim, jocewei, PkmX, the_o, brucehoult, MartinMosbeck, rogfer01, edward-jones, zzheng, jrtc27, niosHD, sabuasal, bollu, simoncook, johnrusso, rbar, asb, hiraditya, mcrosier.
Herald added a project: All.
reames requested review of this revision.
Herald added subscribers: alextsao1999, pcwang-thead, MaskRay.
Herald added a project: LLVM.
This extends the safe-divisor widening scheme recently added for scalable vectors to handle fixed vectors as well.
Two notes:
- Due to how early this is used during costing, I couldn't figure out how to intersect this with the minimum bitwidth handling. So, in theory, we could chose to widen when a narrower scalarization would have been profitable.
- This is mostly completion-ism from my side. I think it makes sense, but I'm not strongly motivated to push this currently. If there are any serious cost model concerns raised, I'm likely to abandon the patch.
Repository:
rG LLVM Github Monorepo
https://reviews.llvm.org/D132591
Files:
llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
llvm/test/Transforms/LoopVectorize/RISCV/divrem.ll
llvm/test/Transforms/LoopVectorize/first-order-recurrence-sink-replicate-region.ll
llvm/test/Transforms/LoopVectorize/first-order-recurrence.ll
llvm/test/Transforms/LoopVectorize/if-pred-non-void.ll
llvm/test/Transforms/LoopVectorize/induction.ll
llvm/test/Transforms/LoopVectorize/pr44488-predication.ll
llvm/test/Transforms/LoopVectorize/reduction-small-size.ll
llvm/test/Transforms/LoopVectorize/vplan-printing.ll
-------------- next part --------------
A non-text attachment was scrubbed...
Name: D132591.455327.patch
Type: text/x-patch
Size: 137175 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20220824/8f2e28e9/attachment-0001.bin>
More information about the llvm-commits
mailing list