[PATCH] D97357: [WIP] Inductive unrolling (PoC). Frames as a separate pass so far
Max Kazantsev via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Fri Mar 12 00:03:34 PST 2021
mkazantsev updated this revision to Diff 330155.
mkazantsev retitled this revision from "[WIP][Not ready for review] Inductive unrolling pass" to "[WIP] Inductive unrolling (PoC). Frames as a separate pass so far".
mkazantsev edited the summary of this revision.
mkazantsev added reviewers: skatkov, lebedev.ri, reames, asbirlea, nikic, spatel, apilipenko, anna.
mkazantsev added a comment.
Hi everyone,
Here is the idea of optimization we are currently missing, but unfortunately I could not find a really good place in any of the existing passes to integrate it into. The loop unrolling looks like a (more or less) proper place but not sure if it's where it truly belongs. Unrolling here is just a tool that we use to eliminate something which is (in most cases) an inductive check. So maybe it may be split between unrolling and IndVarSimplify.
Anyways, I'd appreciate any ideas and hints on where should we integrate this. As a fallback, we can always leave it as a separate pass until we find a place for it.
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D97357/new/
https://reviews.llvm.org/D97357
Files:
llvm/include/llvm/Transforms/Scalar/InductiveUnrolling.h
llvm/lib/Passes/PassBuilder.cpp
llvm/lib/Passes/PassRegistry.def
llvm/lib/Transforms/Scalar/CMakeLists.txt
llvm/lib/Transforms/Scalar/InductiveUnrolling.cpp
llvm/test/Transforms/InductiveUnroll/motivation.ll
-------------- next part --------------
A non-text attachment was scrubbed...
Name: D97357.330155.patch
Type: text/x-patch
Size: 44183 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20210312/391a54ef/attachment.bin>
More information about the llvm-commits
mailing list