diff options
author | Dan Gohman <gohman@apple.com> | 2009-06-29 20:34:13 +0000 |
---|---|---|
committer | Dan Gohman <gohman@apple.com> | 2009-06-29 20:34:13 +0000 |
commit | 19d2417c9013cced8ab19e2602b66e3213bdf0b2 (patch) | |
tree | 00515eb3f7f6f4b08ac44790d58c0e753fa9f465 /llvm/lib/Analysis | |
parent | 538064d6b1f210c06413784f04d0d892f1f84e53 (diff) | |
download | bcm5719-llvm-19d2417c9013cced8ab19e2602b66e3213bdf0b2.tar.gz bcm5719-llvm-19d2417c9013cced8ab19e2602b66e3213bdf0b2.zip |
Don't cache PHI exit values from exhaustive evaluations, because
an individual exhaustive evaluation reflects only the exit value
implied by an individual exit, which may differ from the actual
exit value of the loop if there are other exits. This fixes PR4477.
llvm-svn: 74447
Diffstat (limited to 'llvm/lib/Analysis')
-rw-r--r-- | llvm/lib/Analysis/ScalarEvolution.cpp | 1 |
1 files changed, 0 insertions, 1 deletions
diff --git a/llvm/lib/Analysis/ScalarEvolution.cpp b/llvm/lib/Analysis/ScalarEvolution.cpp index 6e32dcd51fb..e38b24c0b57 100644 --- a/llvm/lib/Analysis/ScalarEvolution.cpp +++ b/llvm/lib/Analysis/ScalarEvolution.cpp @@ -3521,7 +3521,6 @@ ScalarEvolution::ComputeBackedgeTakenCountExhaustively(const Loop *L, if (!CondVal) return getCouldNotCompute(); if (CondVal->getValue() == uint64_t(ExitWhen)) { - ConstantEvolutionLoopExitValue[PN] = PHIVal; ++NumBruteForceTripCountsComputed; return getConstant(Type::Int32Ty, IterationNum); } |