diff options
| author | Dimitry Andric <dim@FreeBSD.org> | 2018-07-28 10:51:19 +0000 | 
|---|---|---|
| committer | Dimitry Andric <dim@FreeBSD.org> | 2018-07-28 10:51:19 +0000 | 
| commit | eb11fae6d08f479c0799db45860a98af528fa6e7 (patch) | |
| tree | 44d492a50c8c1a7eb8e2d17ea3360ec4d066f042 /lib/Transforms/Utils/LowerInvoke.cpp | |
| parent | b8a2042aa938069e862750553db0e4d82d25822c (diff) | |
Notes
Diffstat (limited to 'lib/Transforms/Utils/LowerInvoke.cpp')
| -rw-r--r-- | lib/Transforms/Utils/LowerInvoke.cpp | 8 | 
1 files changed, 5 insertions, 3 deletions
| diff --git a/lib/Transforms/Utils/LowerInvoke.cpp b/lib/Transforms/Utils/LowerInvoke.cpp index ee84541e526d..c852d538b0d1 100644 --- a/lib/Transforms/Utils/LowerInvoke.cpp +++ b/lib/Transforms/Utils/LowerInvoke.cpp @@ -21,7 +21,7 @@  #include "llvm/IR/LLVMContext.h"  #include "llvm/IR/Module.h"  #include "llvm/Pass.h" -#include "llvm/Transforms/Scalar.h" +#include "llvm/Transforms/Utils.h"  using namespace llvm;  #define DEBUG_TYPE "lowerinvoke" @@ -48,10 +48,12 @@ static bool runImpl(Function &F) {    bool Changed = false;    for (BasicBlock &BB : F)      if (InvokeInst *II = dyn_cast<InvokeInst>(BB.getTerminator())) { -      SmallVector<Value *, 16> CallArgs(II->op_begin(), II->op_end() - 3); +      SmallVector<Value *, 16> CallArgs(II->arg_begin(), II->arg_end()); +      SmallVector<OperandBundleDef, 1> OpBundles; +      II->getOperandBundlesAsDefs(OpBundles);        // Insert a normal call instruction...        CallInst *NewCall = -          CallInst::Create(II->getCalledValue(), CallArgs, "", II); +          CallInst::Create(II->getCalledValue(), CallArgs, OpBundles, "", II);        NewCall->takeName(II);        NewCall->setCallingConv(II->getCallingConv());        NewCall->setAttributes(II->getAttributes()); | 
