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 | 291c2e04bd7cd2cb2b24791234e5be0e5b8aad66 (patch) | |
| tree | 7b84002983b435f4dd85131dc3d33beb84677bb7 /llvm/lib/Transforms | |
| parent | 071156c19c7aab50d63250a797c2cbe0020f0167 (diff) | |
| download | bcm5719-llvm-291c2e04bd7cd2cb2b24791234e5be0e5b8aad66.tar.gz bcm5719-llvm-291c2e04bd7cd2cb2b24791234e5be0e5b8aad66.zip | |
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.
llvm-svn: 72366
Diffstat (limited to 'llvm/lib/Transforms')
0 files changed, 0 insertions, 0 deletions

