[llvm-commits] CVS: llvm/lib/Transforms/Scalar/LoopRotation.cpp

Devang Patel dpatel at apple.com
Mon Apr 9 14:41:00 PDT 2007



Changes in directory llvm/lib/Transforms/Scalar:

LoopRotation.cpp updated: 1.7 -> 1.8
---
Log message:

Insert new pre-header before new header. Original pre-header may
happen to be an entry, in such case, it is not a good idea to
insert new block before entry.

Also fix typo in assertion check.


---
Diffs of the changes:  (+2 -2)

 LoopRotation.cpp |    4 ++--
 1 files changed, 2 insertions(+), 2 deletions(-)


Index: llvm/lib/Transforms/Scalar/LoopRotation.cpp
diff -u llvm/lib/Transforms/Scalar/LoopRotation.cpp:1.7 llvm/lib/Transforms/Scalar/LoopRotation.cpp:1.8
--- llvm/lib/Transforms/Scalar/LoopRotation.cpp:1.7	Mon Apr  9 15:19:46 2007
+++ llvm/lib/Transforms/Scalar/LoopRotation.cpp	Mon Apr  9 16:40:43 2007
@@ -429,7 +429,7 @@
   // exit block. Insert new block between original pre-header and
   // new header such that loop's new pre-header has only one successor.
   BasicBlock *NewPreHeader = new BasicBlock("bb.nph", OrigHeader->getParent(), 
-                                OrigPreHeader);
+                                NewHeader);
   LoopInfo &LI = LPM.getAnalysis<LoopInfo>();
   if (Loop *PL = LI.getLoopFor(OrigPreHeader))
     PL->addBasicBlockToLoop(NewPreHeader, LI);
@@ -439,7 +439,7 @@
   if (OrigPH_BI->getSuccessor(0) == NewHeader)
     OrigPH_BI->setSuccessor(0, NewPreHeader);
   else {
-    assert (OrigPH_BI->getSuccessor(1) == NewPreHeader &&
+    assert (OrigPH_BI->getSuccessor(1) == NewHeader &&
             "Unexpected original pre-header terminator");
     OrigPH_BI->setSuccessor(1, NewPreHeader);
   }






More information about the llvm-commits mailing list