diff options
author | Dan Gohman <gohman@apple.com> | 2009-05-24 18:06:31 +0000 |
---|---|---|
committer | Dan Gohman <gohman@apple.com> | 2009-05-24 18:06:31 +0000 |
commit | 453aa4fbf1083cc7f646a0ac21e2bcc384a91ae9 (patch) | |
tree | aff2e6588c8b2da406dbb8be182a0a2fb8044a59 /lib/Transforms/Scalar/IndVarSimplify.cpp | |
parent | 3925043af0ecf1f0a6158c5007c1186797a252cb (diff) |
Generalize SCEVExpander::visitAddRecExpr's GEP persuit, and avoid
sending SCEVUnknowns to expandAddToGEP. This avoids the need for
expandAddToGEP to bend the rules and peek into SCEVUnknown
expressions.
Factor out the code for testing whether a SCEV can be factored by
a constant for use in a GEP index. This allows it to handle
SCEVAddRecExprs, by recursing.
As a result, SCEVExpander can now put more things in GEP indices,
so it emits fewer explicit mul instructions.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@72366 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/Transforms/Scalar/IndVarSimplify.cpp')
0 files changed, 0 insertions, 0 deletions