summaryrefslogtreecommitdiff
path: root/lib/Transforms/Scalar/LoopStrengthReduce.cpp
diff options
context:
space:
mode:
authorAndrew Trick <atrick@apple.com>2011-10-07 23:46:21 +0000
committerAndrew Trick <atrick@apple.com>2011-10-07 23:46:21 +0000
commitc5701910604cdf65811fabd31d41e38f1d1d4eb1 (patch)
tree87ebc36baa56af35d74481785773869df6290130 /lib/Transforms/Scalar/LoopStrengthReduce.cpp
parent9eb6b4d91b83448ec818089754c74bbdcf7dfd7a (diff)
downloadllvm-c5701910604cdf65811fabd31d41e38f1d1d4eb1.tar.gz
llvm-c5701910604cdf65811fabd31d41e38f1d1d4eb1.tar.bz2
llvm-c5701910604cdf65811fabd31d41e38f1d1d4eb1.tar.xz
LSR should only reuse phis that match its formula.
Fixes rdar://problem/5064068 git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@141442 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/Transforms/Scalar/LoopStrengthReduce.cpp')
-rw-r--r--lib/Transforms/Scalar/LoopStrengthReduce.cpp1
1 files changed, 1 insertions, 0 deletions
diff --git a/lib/Transforms/Scalar/LoopStrengthReduce.cpp b/lib/Transforms/Scalar/LoopStrengthReduce.cpp
index 4b6c55e162..26fc03b18b 100644
--- a/lib/Transforms/Scalar/LoopStrengthReduce.cpp
+++ b/lib/Transforms/Scalar/LoopStrengthReduce.cpp
@@ -3770,6 +3770,7 @@ LSRInstance::ImplementSolution(const SmallVectorImpl<const Formula *> &Solution,
SCEVExpander Rewriter(SE, "lsr");
Rewriter.disableCanonicalMode();
+ Rewriter.enableLSRMode();
Rewriter.setIVIncInsertPos(L, IVIncInsertPos);
// Expand the new value definitions and update the users.