Reapply my 6/9 changes. The bug Evan saw no longer occurs.
authorOwen Anderson <resistor@mac.com>
Mon, 12 Jun 2006 21:49:21 +0000 (21:49 +0000)
committerOwen Anderson <resistor@mac.com>
Mon, 12 Jun 2006 21:49:21 +0000 (21:49 +0000)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@28759 91177308-0d34-0410-b5e6-96231b3b80d8

lib/Transforms/Scalar/LoopUnswitch.cpp

index c583eea14d62ea9598069afb96342cb58b351cba..79243a4385b02ad63e5fad38d5536c8e7e752157 100644 (file)
@@ -73,6 +73,8 @@ namespace {
       AU.addPreservedID(LoopSimplifyID);
       AU.addRequired<LoopInfo>();
       AU.addPreserved<LoopInfo>();
+      AU.addRequiredID(LCSSAID);
+      AU.addPreservedID(LCSSAID);
     }
 
   private:
@@ -154,6 +156,8 @@ static Value *FindLIVLoopCondition(Value *Cond, Loop *L, bool &Changed) {
 }
 
 bool LoopUnswitch::visitLoop(Loop *L) {
+  assert(L->isLCSSAForm());
+  
   bool Changed = false;
   
   // Loop over all of the basic blocks in the loop.  If we find an interior
@@ -198,7 +202,9 @@ bool LoopUnswitch::visitLoop(Loop *L) {
         }
       }
   }
-    
+  
+  assert(L->isLCSSAForm());
+  
   return Changed;
 }