use callsite to obtain all arguments
authorGabor Greif <ggreif@gmail.com>
Thu, 24 Jun 2010 09:56:43 +0000 (09:56 +0000)
committerGabor Greif <ggreif@gmail.com>
Thu, 24 Jun 2010 09:56:43 +0000 (09:56 +0000)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@106728 91177308-0d34-0410-b5e6-96231b3b80d8

lib/Transforms/Utils/InlineFunction.cpp

index 86783666b1bd2f5dd8246c51f0b98e57443ff637..598e7d29e3781a5aa6e8a52e9ccc3576a08a211a 100644 (file)
@@ -63,7 +63,8 @@ static void HandleCallsInBlockInlinedThroughInvoke(BasicBlock *BB,
     
     // Next, create the new invoke instruction, inserting it at the end
     // of the old basic block.
-    SmallVector<Value*, 8> InvokeArgs(CI->op_begin()+1, CI->op_end());
+    ImmutableCallSite CS(CI);
+    SmallVector<Value*, 8> InvokeArgs(CS.arg_begin(), CS.arg_end());
     InvokeInst *II =
       InvokeInst::Create(CI->getCalledValue(), Split, InvokeDest,
                          InvokeArgs.begin(), InvokeArgs.end(),