]> CyberLeo.Net >> Repos - FreeBSD/FreeBSD.git/blob - test/CodeGenObjC/atomic-aggregate-property.m
Vendor import of clang trunk r130700:
[FreeBSD/FreeBSD.git] / test / CodeGenObjC / atomic-aggregate-property.m
1 // RUN: %clang_cc1 -triple x86_64-apple-darwin10  -fobjc-nonfragile-abi -fobjc-gc -emit-llvm -o - %s | FileCheck -check-prefix LP64 %s
2 // RUN: %clang_cc1 -x objective-c++ -triple x86_64-apple-darwin10  -fobjc-nonfragile-abi -fobjc-gc -emit-llvm -o - %s | FileCheck -check-prefix LP64 %s
3 // rdar: // 7849824
4
5 struct s {
6   double a, b, c, d;  
7 };
8
9 struct s1 {
10     int i;
11     id j;
12     id k;
13 };
14
15 @interface A 
16 @property (readwrite) double x;
17 @property (readwrite) struct s y;
18 @property (nonatomic, readwrite) struct s1 z;
19 @end
20
21 @implementation A
22 @synthesize x;
23 @synthesize y;
24 @synthesize z;
25 @end
26 // CHECK-LP64: call void @objc_copyStruct
27 // CHECK-LP64: call void @objc_copyStruct
28 // CHECK-LP64: call void @objc_copyStruct
29 // CHECK-LP64: call i8* @objc_memmove_collectable