diff options
author | James Y Knight <jyknight@google.com> | 2019-02-01 20:43:25 +0000 |
---|---|---|
committer | James Y Knight <jyknight@google.com> | 2019-02-01 20:43:25 +0000 |
commit | 7976eb58382b25d0e17490b9d77fb06cb000c95b (patch) | |
tree | 286450abb61ef79d2e7356e0d0d80dbbce0a728a /llvm/lib/Transforms/Utils/InlineFunction.cpp | |
parent | c456309f67a9ea44038fb5d8a96c90d9c6965b67 (diff) | |
download | bcm5719-llvm-7976eb58382b25d0e17490b9d77fb06cb000c95b.tar.gz bcm5719-llvm-7976eb58382b25d0e17490b9d77fb06cb000c95b.zip |
[opaque pointer types] Pass function types to CallInst creation.
This cleans up all CallInst creation in LLVM to explicitly pass a
function type rather than deriving it from the pointer's element-type.
Differential Revision: https://reviews.llvm.org/D57170
llvm-svn: 352909
Diffstat (limited to 'llvm/lib/Transforms/Utils/InlineFunction.cpp')
-rw-r--r-- | llvm/lib/Transforms/Utils/InlineFunction.cpp | 6 |
1 files changed, 2 insertions, 4 deletions
diff --git a/llvm/lib/Transforms/Utils/InlineFunction.cpp b/llvm/lib/Transforms/Utils/InlineFunction.cpp index 051443f5846..9015b36fa35 100644 --- a/llvm/lib/Transforms/Utils/InlineFunction.cpp +++ b/llvm/lib/Transforms/Utils/InlineFunction.cpp @@ -1864,10 +1864,8 @@ llvm::InlineResult llvm::InlineFunction(CallSite CS, InlineFunctionInfo &IFI, // Add VarArgs to existing parameters. SmallVector<Value *, 6> Params(CI->arg_operands()); Params.append(VarArgsToForward.begin(), VarArgsToForward.end()); - CallInst *NewCI = - CallInst::Create(CI->getCalledFunction() ? CI->getCalledFunction() - : CI->getCalledValue(), - Params, "", CI); + CallInst *NewCI = CallInst::Create( + CI->getFunctionType(), CI->getCalledOperand(), Params, "", CI); NewCI->setDebugLoc(CI->getDebugLoc()); NewCI->setAttributes(Attrs); NewCI->setCallingConv(CI->getCallingConv()); |