Clear the Processed set when it is no longer used, and clear the
authorDan Gohman <gohman@apple.com>
Mon, 14 Dec 2009 17:35:17 +0000 (17:35 +0000)
committerDan Gohman <gohman@apple.com>
Mon, 14 Dec 2009 17:35:17 +0000 (17:35 +0000)
IVUses list in releaseMemory().

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@91296 91177308-0d34-0410-b5e6-96231b3b80d8

lib/Analysis/IVUsers.cpp

index bf403238bb4a83515f5911e40c842d9ff822e1ee..627dbbb3288131d0b037942231bbca9ab90a62e1 100644 (file)
@@ -307,6 +307,7 @@ bool IVUsers::runOnLoop(Loop *l, LPPassManager &LPM) {
   for (BasicBlock::iterator I = L->getHeader()->begin(); isa<PHINode>(I); ++I)
     AddUsersIfInteresting(I);
 
+  Processed.clear();
   return false;
 }
 
@@ -369,7 +370,7 @@ void IVUsers::dump() const {
 void IVUsers::releaseMemory() {
   IVUsesByStride.clear();
   StrideOrder.clear();
-  Processed.clear();
+  IVUses.clear();
 }
 
 void IVStrideUse::deleted() {