[cfe-commits] r120717 - /cfe/trunk/test/CodeGenCXX/block-byref-cxx-objc.cpp

Fariborz Jahanian fjahanian at apple.com
Thu Dec 2 09:58:10 PST 2010


Author: fjahanian
Date: Thu Dec  2 11:58:10 2010
New Revision: 120717

URL: http://llvm.org/viewvc/llvm-project?rev=120717&view=rev
Log:
Test for // rdar://8594790

Added:
    cfe/trunk/test/CodeGenCXX/block-byref-cxx-objc.cpp

Added: cfe/trunk/test/CodeGenCXX/block-byref-cxx-objc.cpp
URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/test/CodeGenCXX/block-byref-cxx-objc.cpp?rev=120717&view=auto
==============================================================================
--- cfe/trunk/test/CodeGenCXX/block-byref-cxx-objc.cpp (added)
+++ cfe/trunk/test/CodeGenCXX/block-byref-cxx-objc.cpp Thu Dec  2 11:58:10 2010
@@ -0,0 +1,25 @@
+// RUN: %clang_cc1 %s -emit-llvm -o - -fblocks | FileCheck %s
+// rdar://8594790
+
+struct A {
+	int x;
+	A(const A &);
+	A();
+	~A();
+};
+
+int main()
+{
+	__block A BYREF_VAR;
+        ^{ BYREF_VAR.x = 1234; };
+	return 0;
+}
+
+// CHECK: define internal void @__Block_byref_object_copy_
+// CHECK: call void @_ZN1AC1ERKS_
+// CHECK: define internal void @__Block_byref_object_dispose_
+// CHECK: call void @_ZN1AD1Ev
+// CHECK: define internal void @__copy_helper_block_
+// CHECK: call void @_Block_object_assign
+// CHECK: define internal void @__destroy_helper_block_
+// CHECK: call void @_Block_object_dispose





More information about the cfe-commits mailing list