From 981418bf1562d0b5b470ddc7d0034c9f3297b893 Mon Sep 17 00:00:00 2001 From: Chris Lattner Date: Wed, 12 Jul 2006 21:37:11 +0000 Subject: [PATCH] Handle instructions in the map, but that map to a null pointer. This unbreaks smg2000. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29127 91177308-0d34-0410-b5e6-96231b3b80d8 --- lib/Transforms/Utils/InlineFunction.cpp | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/lib/Transforms/Utils/InlineFunction.cpp b/lib/Transforms/Utils/InlineFunction.cpp index eeb69116ed5..c6f5075f640 100644 --- a/lib/Transforms/Utils/InlineFunction.cpp +++ b/lib/Transforms/Utils/InlineFunction.cpp @@ -157,7 +157,8 @@ static void UpdateCallGraphAfterInlining(const Function *Caller, const Instruction *OrigCall = I->first.getInstruction(); std::map::iterator VMI = ValueMap.find(OrigCall); - if (VMI != ValueMap.end()) { // Only copy the edge if the call was inlined! + // Only copy the edge if the call was inlined! + if (VMI != ValueMap.end() && VMI->second) { // If the call was inlined, but then constant folded, there is no edge to // add. Check for this case. if (Instruction *NewCall = dyn_cast(VMI->second))