When inlining basic blocks and instructions, give them a name!


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1796 91177308-0d34-0410-b5e6-96231b3b80d8
diff --git a/lib/Transforms/IPO/InlineSimple.cpp b/lib/Transforms/IPO/InlineSimple.cpp
index a71acd2..d4c23a9 100644
--- a/lib/Transforms/IPO/InlineSimple.cpp
+++ b/lib/Transforms/IPO/InlineSimple.cpp
@@ -82,6 +82,7 @@
   // unconditional branch to NewBB, and NewBB starts with the call instruction.
   //
   BasicBlock *NewBB = OrigBB->splitBasicBlock(CIIt);
+  NewBB->setName("InlinedFunctionReturnNode");
 
   // Remove (unlink) the CallInst from the start of the new basic block.  
   NewBB->getInstList().remove(CI);
@@ -131,6 +132,7 @@
     
     // Create a new basic block to copy instructions into!
     BasicBlock *IBB = new BasicBlock("", NewBB->getParent());
+    if (BB->hasName()) IBB->setName(BB->getName()+".i");  // .i = inlined once
 
     ValueMap[BB] = IBB;                       // Add basic block mapping.
 
@@ -146,6 +148,8 @@
 	 II != (BB->end()-1); ++II) {
       IBB->getInstList().push_back((NewInst = (*II)->clone()));
       ValueMap[*II] = NewInst;                  // Add instruction map to value.
+      if ((*II)->hasName())
+        NewInst->setName((*II)->getName()+".i");  // .i = inlined once
     }
 
     // Copy over the terminator now...