From 58fb52c6c7ff0ca9cc44d3173b26175d1283e591 Mon Sep 17 00:00:00 2001 From: John McCall Date: Thu, 9 Jun 2011 20:31:09 +0000 Subject: [PATCH] When deleting a basic block, remove call edges only for non-intrinsics. llvm-svn: 132803 --- llvm/lib/Transforms/IPO/PruneEH.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/llvm/lib/Transforms/IPO/PruneEH.cpp b/llvm/lib/Transforms/IPO/PruneEH.cpp index 496b96aceb34..2f3baebf4864 100644 --- a/llvm/lib/Transforms/IPO/PruneEH.cpp +++ b/llvm/lib/Transforms/IPO/PruneEH.cpp @@ -239,7 +239,7 @@ void PruneEH::DeleteBasicBlock(BasicBlock *BB) { for (BasicBlock::iterator I = BB->end(), E = BB->begin(); I != E; ) { --I; if (CallInst *CI = dyn_cast(I)) { - if (!isa(I)) + if (!isa(I)) CGN->removeCallEdgeFor(CI); } else if (InvokeInst *II = dyn_cast(I)) CGN->removeCallEdgeFor(II);