summaryrefslogtreecommitdiff
path: root/lib/Transforms/Scalar/SimplifyCFGPass.cpp
diff options
context:
space:
mode:
authorGabor Greif <ggreif@gmail.com>2009-03-13 18:27:29 +0000
committerGabor Greif <ggreif@gmail.com>2009-03-13 18:27:29 +0000
commitb14cda3c0dea98bdd44c2f209afaf4fb36d42a8a (patch)
treec65232c6e234198481772e94f867a498fba7cfd6 /lib/Transforms/Scalar/SimplifyCFGPass.cpp
parent6dc3a8fd40a8c1bf6a12d6389506c4db9a497730 (diff)
downloadllvm-b14cda3c0dea98bdd44c2f209afaf4fb36d42a8a.tar.gz
llvm-b14cda3c0dea98bdd44c2f209afaf4fb36d42a8a.tar.bz2
llvm-b14cda3c0dea98bdd44c2f209afaf4fb36d42a8a.tar.xz
Second installment of "BasicBlock operands to the back"
changes. For InvokeInst now all arguments begin at op_begin(). The Callee, Cont and Fail are now faster to get by access relative to op_end(). This patch introduces some temporary uglyness in CallSite. Next I'll bring CallInst up to a similar scheme and then the uglyness will magically vanish. This patch also exposes all the reliance of the libraries on InvokeInst's operand ordering. I am thinking of taking care of that too. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@66920 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/Transforms/Scalar/SimplifyCFGPass.cpp')
-rw-r--r--lib/Transforms/Scalar/SimplifyCFGPass.cpp2
1 files changed, 1 insertions, 1 deletions
diff --git a/lib/Transforms/Scalar/SimplifyCFGPass.cpp b/lib/Transforms/Scalar/SimplifyCFGPass.cpp
index b499279c69..40bd65f66b 100644
--- a/lib/Transforms/Scalar/SimplifyCFGPass.cpp
+++ b/lib/Transforms/Scalar/SimplifyCFGPass.cpp
@@ -78,7 +78,7 @@ static void ChangeToUnreachable(Instruction *I) {
/// ChangeToCall - Convert the specified invoke into a normal call.
static void ChangeToCall(InvokeInst *II) {
BasicBlock *BB = II->getParent();
- SmallVector<Value*, 8> Args(II->op_begin()+3, II->op_end());
+ SmallVector<Value*, 8> Args(II->op_begin(), II->op_end() - 3);
CallInst *NewCall = CallInst::Create(II->getCalledValue(), Args.begin(),
Args.end(), "", II);
NewCall->takeName(II);