[PATCH] D71538: [SCEVExpander] Preserve LCSSA directly.
Florian Hahn via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Mon Jul 20 05:40:00 PDT 2020
fhahn updated this revision to Diff 279206.
fhahn marked 3 inline comments as done.
fhahn added a comment.
Introduce expandCodeForImpl, make Root non-optional, document `Root`.
In D71538#2155291 <https://reviews.llvm.org/D71538#2155291>, @mkazantsev wrote:
> Could you please add some `.ll` tests showing how this change impacts the code being generated (if it is possible)?
Thank you very much for taking a look!
This change should be NFC (I'll adjust the commit message) with current SCEV, where we do not look through LCSSA phis. This means there should be no cases where we would need to insert/get LCSSA phis (there are no code changes on SPEC2000,SPEC2006,MultiSource with -O3 -flto on X86).
I also put up a follow-up patch (D71539 <https://reviews.llvm.org/D71539>), which changes SCEV to look through PHIs and then we may need to get/insert LCSSA phis while expanding.
Repository:
rG LLVM Github Monorepo
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D71538/new/
https://reviews.llvm.org/D71538
Files:
llvm/include/llvm/Transforms/Utils/ScalarEvolutionExpander.h
llvm/lib/Transforms/Scalar/LoopStrengthReduce.cpp
llvm/lib/Transforms/Utils/ScalarEvolutionExpander.cpp
llvm/unittests/Transforms/Utils/ScalarEvolutionExpanderTest.cpp
-------------- next part --------------
A non-text attachment was scrubbed...
Name: D71538.279206.patch
Type: text/x-patch
Size: 20931 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20200720/113e50cf/attachment.bin>
More information about the llvm-commits
mailing list