diff options
author | Evan Cheng <evan.cheng@apple.com> | 2009-12-17 09:39:49 +0000 |
---|---|---|
committer | Evan Cheng <evan.cheng@apple.com> | 2009-12-17 09:39:49 +0000 |
commit | 090ac0865a09ff592ec1b36f41f3273d55f98f95 (patch) | |
tree | 7a12c98bb38240d4ebbe21fbbdad4eaa10a96d55 /llvm/lib/Analysis/IVUsers.cpp | |
parent | aacafe54af7bf2014083bd5d088b79864100d3c7 (diff) | |
download | bcm5719-llvm-090ac0865a09ff592ec1b36f41f3273d55f98f95.tar.gz bcm5719-llvm-090ac0865a09ff592ec1b36f41f3273d55f98f95.zip |
Revert 91280-91283, 91286-91289, 91291, 91293, 91295-91296. It apparently introduced a non-deterministic behavior in the optimizer somewhere.
llvm-svn: 91598
Diffstat (limited to 'llvm/lib/Analysis/IVUsers.cpp')
-rw-r--r-- | llvm/lib/Analysis/IVUsers.cpp | 5 |
1 files changed, 2 insertions, 3 deletions
diff --git a/llvm/lib/Analysis/IVUsers.cpp b/llvm/lib/Analysis/IVUsers.cpp index 627dbbb3288..37747b65174 100644 --- a/llvm/lib/Analysis/IVUsers.cpp +++ b/llvm/lib/Analysis/IVUsers.cpp @@ -53,7 +53,7 @@ static bool containsAddRecFromDifferentLoop(const SCEV *S, Loop *L) { if (newLoop == L) return false; // if newLoop is an outer loop of L, this is OK. - if (newLoop->contains(L->getHeader())) + if (!LoopInfo::isNotAlreadyContainedIn(L, newLoop)) return false; } return true; @@ -307,7 +307,6 @@ bool IVUsers::runOnLoop(Loop *l, LPPassManager &LPM) { for (BasicBlock::iterator I = L->getHeader()->begin(); isa<PHINode>(I); ++I) AddUsersIfInteresting(I); - Processed.clear(); return false; } @@ -370,7 +369,7 @@ void IVUsers::dump() const { void IVUsers::releaseMemory() { IVUsesByStride.clear(); StrideOrder.clear(); - IVUses.clear(); + Processed.clear(); } void IVStrideUse::deleted() { |