From: Stuart Hastings Date: Wed, 1 Jul 2009 15:40:10 +0000 (+0000) Subject: Insure that __block_holder_tmp is allocated on the stack when a byref X-Git-Url: http://demsky.eecs.uci.edu/git/?a=commitdiff_plain;h=75657ab707b53c35e86b14ec750ac0122c106192;p=oota-llvm.git Insure that __block_holder_tmp is allocated on the stack when a byref variable is present. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@74610 91177308-0d34-0410-b5e6-96231b3b80d8 --- diff --git a/test/FrontendC++/2009-06-30-ByrefBlock.cpp b/test/FrontendC++/2009-06-30-ByrefBlock.cpp new file mode 100644 index 00000000000..6f8869c5413 --- /dev/null +++ b/test/FrontendC++/2009-06-30-ByrefBlock.cpp @@ -0,0 +1,8 @@ +// Insure __block_holder_tmp is allocated on the stack. +// RUN: %llvmgxx %s -S -O2 -o - | egrep {__block_holder_tmp.*alloca} +// +extern void fubar_dispatch_sync(void (^PP)(void)); +void fubar() { + __block void *voodoo; + fubar_dispatch_sync(^(void){voodoo=0;}); +}