diff options
author | Michael Zolotukhin <mzolotukhin@apple.com> | 2016-05-13 01:42:34 +0000 |
---|---|---|
committer | Michael Zolotukhin <mzolotukhin@apple.com> | 2016-05-13 01:42:34 +0000 |
commit | a59a308e8db5a774d88eacb54187ef07f55c116f (patch) | |
tree | a4184494d559bea24eafb22fd03c19a1464a780f /llvm/lib/Analysis/LoopUnrollAnalyzer.cpp | |
parent | 532e33be42651cce3426cbdeb53b7a9b2e1a2873 (diff) | |
download | bcm5719-llvm-a59a308e8db5a774d88eacb54187ef07f55c116f.tar.gz bcm5719-llvm-a59a308e8db5a774d88eacb54187ef07f55c116f.zip |
[LoopUnrollAnalyzer] Don't treat gep-instructions with simplified offset as simplified.
Summary:
Currently we consider such instructions as simplified, which is incorrect,
because if their user isn't simplified, we can't actually simplify them too.
This biases our estimates of profitability: for instance the analyzer expects
much more gains from unrolling memcpy loops than there actually are.
Reviewers: hfinkel, chandlerc
Subscribers: mzolotukhin, llvm-commits
Differential Revision: http://reviews.llvm.org/D17365
llvm-svn: 269387
Diffstat (limited to 'llvm/lib/Analysis/LoopUnrollAnalyzer.cpp')
-rw-r--r-- | llvm/lib/Analysis/LoopUnrollAnalyzer.cpp | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/llvm/lib/Analysis/LoopUnrollAnalyzer.cpp b/llvm/lib/Analysis/LoopUnrollAnalyzer.cpp index 20e79a82eb9..fe73fe05724 100644 --- a/llvm/lib/Analysis/LoopUnrollAnalyzer.cpp +++ b/llvm/lib/Analysis/LoopUnrollAnalyzer.cpp @@ -59,7 +59,7 @@ bool UnrolledInstAnalyzer::simplifyInstWithSCEV(Instruction *I) { Address.Base = Base->getValue(); Address.Offset = Offset->getValue(); SimplifiedAddresses[I] = Address; - return true; + return false; } /// Try to simplify binary operator I. |