@@ -18,6 +18,7 @@ public class FixedLayoutObjCSubclass : NSObject {
18
18
// CHECK-NEXT: [[OBJECT:%.*]] = bitcast %T28class_resilience_objc_armv7k23FixedLayoutObjCSubclassC* %0 to i8*
19
19
// CHECK-NEXT: [[ADDR:%.*]] = getelementptr inbounds i8, i8* [[OBJECT]], [[INT]] [[OFFSET]]
20
20
// CHECK-NEXT: [[FIELD_ADDR:%.*]] = bitcast i8* [[ADDR]] to %Ts5Int32V*
21
+ // CHECK: call void @swift_beginAccess
21
22
// CHECK-NEXT: [[PAYLOAD_ADDR:%.*]] = getelementptr inbounds %Ts5Int32V, %Ts5Int32V* [[FIELD_ADDR]], i32 0, i32 0
22
23
// CHECK-NEXT: store i32 10, i32* [[PAYLOAD_ADDR]]
23
24
@@ -36,6 +37,7 @@ public class NonFixedLayoutObjCSubclass : NSCoder {
36
37
// CHECK-NEXT: [[OBJECT:%.*]] = bitcast %T28class_resilience_objc_armv7k26NonFixedLayoutObjCSubclassC* %0 to i8*
37
38
// CHECK-NEXT: [[ADDR:%.*]] = getelementptr inbounds i8, i8* [[OBJECT]], [[INT]] [[OFFSET]]
38
39
// CHECK-NEXT: [[FIELD_ADDR:%.*]] = bitcast i8* [[ADDR]] to %Ts5Int32V*
40
+ // CHECK: call void @swift_beginAccess
39
41
// CHECK-NEXT: [[PAYLOAD_ADDR:%.*]] = getelementptr inbounds %Ts5Int32V, %Ts5Int32V* [[FIELD_ADDR]], i32 0, i32 0
40
42
// CHECK-NEXT: store i32 10, i32* [[PAYLOAD_ADDR]]
41
43
@@ -67,6 +69,7 @@ public class GenericObjCSubclass<T> : NSCoder {
67
69
// CHECK-NEXT: [[OBJECT:%.*]] = bitcast %T28class_resilience_objc_armv7k19GenericObjCSubclassC* %0 to i8*
68
70
// CHECK-NEXT: [[ADDR:%.*]] = getelementptr inbounds i8, i8* [[OBJECT]], [[INT]] [[FIELD_OFFSET]]
69
71
// CHECK-NEXT: [[FIELD_ADDR:%.*]] = bitcast i8* [[ADDR]] to %Ts5Int32V*
72
+ // CHECK: call void @swift_beginAccess
70
73
// CHECK-NEXT: [[PAYLOAD_ADDR:%.*]] = getelementptr inbounds %Ts5Int32V, %Ts5Int32V* [[FIELD_ADDR]], i32 0, i32 0
71
74
// CHECK-NEXT: store i32 10, i32* [[PAYLOAD_ADDR]]
72
75
0 commit comments