diff options
Diffstat (limited to 'lib/CodeGen/CGCall.cpp')
-rw-r--r-- | lib/CodeGen/CGCall.cpp | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/lib/CodeGen/CGCall.cpp b/lib/CodeGen/CGCall.cpp index 399624d2cf..fcaa49e129 100644 --- a/lib/CodeGen/CGCall.cpp +++ b/lib/CodeGen/CGCall.cpp @@ -851,9 +851,9 @@ RValue CodeGenFunction::EmitCall(const CGFunctionInfo &CallInfo, } CS.setAttributes(Attrs); - if (const llvm::Function *F = - dyn_cast<llvm::Function>(Callee->stripPointerCasts())) - CS.setCallingConv(F->getCallingConv()); + llvm::CallingConv::ID CC = + static_cast<llvm::CallingConv::ID>(CallInfo.getCallingConvention()); + CS.setCallingConv(CC); // If the call doesn't return, finish the basic block and clear the // insertion point; this allows the rest of IRgen to discard |