Move the code to collect live-out earlier and only generate extracts for
exit values if there are any live-outs that use them.
Depends on D147472.
Paths
| Differential D147567
[VPlan] Only create extracts for recurrence exits if there are live-outs. ClosedPublic Authored by fhahn on Apr 4 2023, 1:23 PM.
Details Summary Move the code to collect live-out earlier and only generate extracts for Depends on D147472.
Diff Detail
Unit TestsFailed Event TimelineComment Actions LGTM, adding minor nits.
This revision is now accepted and ready to land.Apr 8 2023, 3:20 PM fhahn added inline comments. fhahn marked 4 inline comments as done. Comment ActionsRebase before landing, thanks for taking a look! This revision was landed with ongoing or failed builds.Apr 10 2023, 1:08 PM Closed by commit rG35af27c30a29: [VPlan] Only create extracts for recurrence exits if there are live-outs. (authored by fhahn). · Explain Why This revision was automatically updated to reflect the committed changes.
Revision Contents
Diff 512232 llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
llvm/test/Transforms/LoopVectorize/AArch64/first-order-recurrence-fold-tail.ll
llvm/test/Transforms/LoopVectorize/AArch64/fixed-order-recurrence.ll
llvm/test/Transforms/LoopVectorize/X86/fixed-order-recurrence.ll
llvm/test/Transforms/LoopVectorize/first-order-recurrence-complex.ll
llvm/test/Transforms/LoopVectorize/first-order-recurrence-multiply-recurrences.ll
llvm/test/Transforms/LoopVectorize/first-order-recurrence.ll
llvm/test/Transforms/LoopVectorize/induction.ll
|
nit: define ExtractForScalar closer to its use below?
Set insert point, and possibly RuntimeVF, early for both Extract's.