use splice instead of remove/insert for a minor speedup


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@21743 91177308-0d34-0410-b5e6-96231b3b80d8
diff --git a/lib/AsmParser/llvmAsmParser.y b/lib/AsmParser/llvmAsmParser.y
index d99680f..34e0f70 100644
--- a/lib/AsmParser/llvmAsmParser.y
+++ b/lib/AsmParser/llvmAsmParser.y
@@ -1703,8 +1703,9 @@
     // Make sure to move the basic block to the correct location in the
     // function, instead of leaving it inserted wherever it was first
     // referenced.
-    CurFun.CurrentFunction->getBasicBlockList().remove($$);
-    CurFun.CurrentFunction->getBasicBlockList().push_back($$);
+    Function::BasicBlockListType &BBL = 
+      CurFun.CurrentFunction->getBasicBlockList();
+    BBL.splice(BBL.end(), BBL, $$);
   }
   | LABELSTR {
     $$ = getBBVal(ValID::create($1), true);
@@ -1712,8 +1713,9 @@
     // Make sure to move the basic block to the correct location in the
     // function, instead of leaving it inserted wherever it was first
     // referenced.
-    CurFun.CurrentFunction->getBasicBlockList().remove($$);
-    CurFun.CurrentFunction->getBasicBlockList().push_back($$);
+    Function::BasicBlockListType &BBL = 
+      CurFun.CurrentFunction->getBasicBlockList();
+    BBL.splice(BBL.end(), BBL, $$);
   };
 
 BBTerminatorInst : RET ResolvedVal {              // Return with a result...