[PATCH] D139858: [SCEVExpander] Increase "cheap" expansion budget for loop invariants, but not loop exit values
Roman Lebedev via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Mon Dec 12 15:15:23 PST 2022
lebedev.ri updated this revision to Diff 482284.
lebedev.ri retitled this revision from "[SCEVExpander] Increase "cheap" expansion budget" to "[SCEVExpander] Increase "cheap" expansion budget for loop invariants, but not loop exit values".
lebedev.ri edited the summary of this revision.
lebedev.ri added a comment.
Currently, we use the budget for 3 purposes:
- loop exit value rewriting
- loop trip/exit count expansion
- loop invariant expansion
Now, the loop trip/exit count is a special case of
the loop invariant, so let's treat them as one.
Out of the three, loop exit value is indeed the problematic one.
Let's split the budget into two, and bump the loop invariant one.
Repository:
rG LLVM Github Monorepo
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D139858/new/
https://reviews.llvm.org/D139858
Files:
llvm/include/llvm/Transforms/Utils/ScalarEvolutionExpander.h
llvm/lib/Target/BPF/BPFTargetTransformInfo.h
llvm/lib/Transforms/Scalar/IndVarSimplify.cpp
llvm/lib/Transforms/Utils/LoopUnrollRuntime.cpp
llvm/lib/Transforms/Utils/LoopUtils.cpp
llvm/lib/Transforms/Utils/ScalarEvolutionExpander.cpp
llvm/lib/Transforms/Utils/SimplifyIndVar.cpp
llvm/test/Transforms/IndVarSimplify/X86/eliminate-trunc.ll
llvm/test/Transforms/IndVarSimplify/X86/loop-invariant-conditions.ll
llvm/test/Transforms/IndVarSimplify/X86/pr45360.ll
llvm/test/Transforms/IndVarSimplify/post-inc-range.ll
llvm/test/Transforms/IndVarSimplify/pr45835.ll
llvm/test/Transforms/IndVarSimplify/rewrite-loop-exit-values-phi.ll
llvm/test/Transforms/LoopUnroll/X86/high-cost-expansion.ll
-------------- next part --------------
A non-text attachment was scrubbed...
Name: D139858.482284.patch
Type: text/x-patch
Size: 44636 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20221212/8e4db919/attachment.bin>
More information about the llvm-commits
mailing list