Fix bug: Transforms/PruneEH/2003-11-21-PHIUpdate.llx
authorChris Lattner <sabre@nondot.org>
Sat, 22 Nov 2003 02:20:36 +0000 (02:20 +0000)
committerChris Lattner <sabre@nondot.org>
Sat, 22 Nov 2003 02:20:36 +0000 (02:20 +0000)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10163 91177308-0d34-0410-b5e6-96231b3b80d8

lib/Transforms/IPO/PruneEH.cpp

index 74e0d33d4127e43fd888c2355f9faf8d2bd6d603..1ef2809e9d3088aae078f607ed57ae7acaf3e987 100644 (file)
@@ -91,12 +91,14 @@ bool PruneEH::runOnSCC(const std::vector<CallGraphNode *> &SCC) {
               // Anything that used the value produced by the invoke instruction
               // now uses the value produced by the call instruction.
               II->replaceAllUsesWith(Call);
+              II->getExceptionalDest()->removePredecessor(II->getParent());
           
               // Insert a branch to the normal destination right before the
               // invoke.
               new BranchInst(II->getNormalDest(), II);
               
               // Finally, delete the invoke instruction!
+              
               I->getInstList().pop_back();
               
               ++NumRemoved;