[llvm-commits] CVS: llvm/lib/Transforms/Utils/SimplifyCFG.cpp

Chris Lattner lattner at cs.uiuc.edu
Tue Aug 5 11:28:01 PDT 2003


Changes in directory llvm/lib/Transforms/Utils:

SimplifyCFG.cpp updated: 1.11 -> 1.12

---
Log message:

Fix bug: SimplifyCFG/2003-08-05-InvokeCrash.ll
Fix bug: SimplifyCFG/2003-08-05-MishandleInvoke.ll



---
Diffs of the changes:

Index: llvm/lib/Transforms/Utils/SimplifyCFG.cpp
diff -u llvm/lib/Transforms/Utils/SimplifyCFG.cpp:1.11 llvm/lib/Transforms/Utils/SimplifyCFG.cpp:1.12
--- llvm/lib/Transforms/Utils/SimplifyCFG.cpp:1.11	Wed Apr 23 11:37:44 2003
+++ llvm/lib/Transforms/Utils/SimplifyCFG.cpp	Tue Aug  5 11:27:44 2003
@@ -201,7 +201,8 @@
       }
   
     BasicBlock *OnlySucc = 0;
-    if (OnlyPred && OnlyPred != BB) {   // Don't break self loops
+    if (OnlyPred && OnlyPred != BB &&    // Don't break self loops
+        OnlyPred->getTerminator()->getOpcode() != Instruction::Invoke) {
       // Check to see if there is only one distinct successor...
       succ_iterator SI(succ_begin(OnlyPred)), SE(succ_end(OnlyPred));
       OnlySucc = BB;





More information about the llvm-commits mailing list