Make sure to clean CastedPointers after casts are potentially deleted.
authorChris Lattner <sabre@nondot.org>
Fri, 5 Aug 2005 01:30:11 +0000 (01:30 +0000)
committerChris Lattner <sabre@nondot.org>
Fri, 5 Aug 2005 01:30:11 +0000 (01:30 +0000)
This fixes LSR crashes on 301.apsi, 191.fma3d, and 189.lucas

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

lib/Transforms/Scalar/LoopStrengthReduce.cpp

index 0326a143df9a47a5a3d50f43f26df75e0ece5476..19e8840320cfc3512b6eadf252ee437241379ca5 100644 (file)
@@ -106,7 +106,6 @@ namespace {
       for (LoopInfo::iterator I = LI->begin(), E = LI->end(); I != E; ++I)
         runOnLoop(*I);
       
-      CastedPointers.clear();
       return Changed;
     }
 
@@ -672,6 +671,7 @@ void LoopStrengthReduce::runOnLoop(Loop *L) {
     DeleteTriviallyDeadInstructions(DeadInsts);
   }
 
+  CastedPointers.clear();
   IVUsesByStride.clear();
   return;
 }