]> granicus.if.org Git - clang/commitdiff
Fixed message send to void (broken by my last commit - GNU runtime).
authorDavid Chisnall <csdavec@swan.ac.uk>
Tue, 27 Apr 2010 20:33:30 +0000 (20:33 +0000)
committerDavid Chisnall <csdavec@swan.ac.uk>
Tue, 27 Apr 2010 20:33:30 +0000 (20:33 +0000)
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@102459 91177308-0d34-0410-b5e6-96231b3b80d8

lib/CodeGen/CGObjCGNU.cpp

index db857f7b1f8b7a254591cbfe046c78969f027822..a621c7e303cdbf94000c7328d639d316fa757e95 100644 (file)
@@ -571,7 +571,8 @@ CGObjCGNU::GenerateMessageSend(CodeGen::CodeGenFunction &CGF,
   // to be on the stack / in those registers at the time) on most platforms,
   // and generates a SegV on SPARC.  With LLVM it corrupts the stack.  
   bool isPointerSizedReturn = false;
-  if (ResultType->isAnyPointerType() || ResultType->isIntegralType())
+  if (ResultType->isAnyPointerType() || ResultType->isIntegralType() ||
+      ResultType->isVoidType())
     isPointerSizedReturn = true;
 
   llvm::BasicBlock *startBB = 0;