Fariborz Jahanian | 15bd588 | 2010-04-13 18:32:24 +0000 | [diff] [blame^] | 1 | // RUN: %clang_cc1 -triple x86_64-apple-darwin10 -fobjc-nonfragile-abi -fobjc-gc -emit-llvm -o - %s | FileCheck -check-prefix LP64 %s |
Fariborz Jahanian | 0b2bd47 | 2010-04-13 00:38:05 +0000 | [diff] [blame] | 2 | // rdar: // 7849824 |
| 3 | |
| 4 | struct s { |
| 5 | double a, b, c, d; |
| 6 | }; |
| 7 | |
Fariborz Jahanian | 15bd588 | 2010-04-13 18:32:24 +0000 | [diff] [blame^] | 8 | struct s1 { |
| 9 | int i; |
| 10 | id j; |
| 11 | id k; |
| 12 | }; |
| 13 | |
Fariborz Jahanian | 0b2bd47 | 2010-04-13 00:38:05 +0000 | [diff] [blame] | 14 | @interface A |
| 15 | @property (readwrite) double x; |
| 16 | @property (readwrite) struct s y; |
Fariborz Jahanian | 15bd588 | 2010-04-13 18:32:24 +0000 | [diff] [blame^] | 17 | @property (nonatomic, readwrite) struct s1 z; |
Fariborz Jahanian | 0b2bd47 | 2010-04-13 00:38:05 +0000 | [diff] [blame] | 18 | @end |
| 19 | |
| 20 | @implementation A |
| 21 | @synthesize x; |
| 22 | @synthesize y; |
Fariborz Jahanian | 15bd588 | 2010-04-13 18:32:24 +0000 | [diff] [blame^] | 23 | @synthesize z; |
Fariborz Jahanian | 0b2bd47 | 2010-04-13 00:38:05 +0000 | [diff] [blame] | 24 | @end |
| 25 | |
| 26 | // CHECK-LP64: call void @objc_copyStruct |
| 27 | // CHECK-LP64: call void @objc_copyStruct |
Fariborz Jahanian | 15bd588 | 2010-04-13 18:32:24 +0000 | [diff] [blame^] | 28 | // CHECK-LP64: call void @objc_copyStruct |