diff options
author | Anders Carlsson <andersca@mac.com> | 2009-12-24 21:13:40 +0000 |
---|---|---|
committer | Anders Carlsson <andersca@mac.com> | 2009-12-24 21:13:40 +0000 |
commit | bfb3671b25fd5c4fa52640fd583f84cfadf81fcd (patch) | |
tree | ad02f19b7058c9134813d56624e414946d35b6c4 /clang/lib/CodeGen/CGBlocks.cpp | |
parent | 1f21000902ae51f79af6a291e3a4b0660bbca08d (diff) | |
download | bcm5719-llvm-bfb3671b25fd5c4fa52640fd583f84cfadf81fcd.tar.gz bcm5719-llvm-bfb3671b25fd5c4fa52640fd583f84cfadf81fcd.zip |
Pass the return value slot to all call exprs.
llvm-svn: 92145
Diffstat (limited to 'clang/lib/CodeGen/CGBlocks.cpp')
-rw-r--r-- | clang/lib/CodeGen/CGBlocks.cpp | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/clang/lib/CodeGen/CGBlocks.cpp b/clang/lib/CodeGen/CGBlocks.cpp index 2270f84b5be..1bece7fec6f 100644 --- a/clang/lib/CodeGen/CGBlocks.cpp +++ b/clang/lib/CodeGen/CGBlocks.cpp @@ -460,7 +460,8 @@ const llvm::Type *BlockModule::getGenericExtendedBlockLiteralType() { return GenericExtendedBlockLiteralType; } -RValue CodeGenFunction::EmitBlockCallExpr(const CallExpr* E) { +RValue CodeGenFunction::EmitBlockCallExpr(const CallExpr* E, + ReturnValueSlot ReturnValue) { const BlockPointerType *BPT = E->getCallee()->getType()->getAs<BlockPointerType>(); @@ -509,7 +510,7 @@ RValue CodeGenFunction::EmitBlockCallExpr(const CallExpr* E) { Func = Builder.CreateBitCast(Func, BlockFTyPtr); // And call the block. - return EmitCall(FnInfo, Func, ReturnValueSlot(), Args); + return EmitCall(FnInfo, Func, ReturnValue, Args); } uint64_t CodeGenFunction::AllocateBlockDecl(const BlockDeclRefExpr *E) { |