1 // RUN: %clang_cc1 -fobjc-arc -fobjc-runtime-has-weak -triple x86_64-apple-darwin -S %s -o %t-64.s 2 // RUN: FileCheck -check-prefix CHECK-LP64 --input-file=%t-64.s %s 3 // REQUIRES: x86-registered-target 4 // rdar://8991729 5 6 @interface NSObject { 7 id isa; 8 } 9 @end 10 11 @interface AllPointers : NSObject { 12 id foo; 13 id __strong bar; 14 NSObject *bletch; 15 } 16 @end 17 18 @implementation AllPointers 19 @end 20 // CHECK-LP64: L_OBJC_CLASS_NAME_1: 21 // CHECK-LP64-NEXT: .asciz "\003" 22 23 @class NSString, NSNumber; 24 @interface A : NSObject { 25 NSString *foo; 26 NSNumber *bar; 27 unsigned int bletch; 28 __weak id delegate; 29 } 30 @end 31 32 @interface B : A { 33 unsigned int x; 34 NSString *y; 35 NSString *z; 36 } 37 @end 38 39 @implementation A @end 40 41 @implementation B @end 42 43 // CHECK-LP64: L_OBJC_CLASS_NAME_15: 44 // CHECK-LP64-NEXT: .asciz "\022" 45 46 @interface UnsafePerson { 47 @public 48 __unsafe_unretained id name; 49 __unsafe_unretained id age; 50 id value; 51 } 52 @end 53 54 @implementation UnsafePerson @end 55 // CHECK-LP64: L_OBJC_CLASS_NAME_20: 56 // CHECK-LP64-NEXT: .asciz "!" 57 58 // rdar://16136439 59 @interface rdar16136439 60 @property (nonatomic, readonly, weak) id first; 61 @end 62 63 @implementation rdar16136439 @end 64 // CHECK-LP64: L_OBJC_PROP_NAME_ATTR_29: 65 // CHECK-LP64-NEXT: .asciz "T@,R,W,N,V_first" 66