Lines Matching full:check
15 // CHECK-LABEL: define void @_Z42test_ObjCMember_default_construct_destructv(
17 // CHECK: call void @_ZN10ObjCMemberC1Ev
18 // CHECK: call void @_ZN10ObjCMemberD1Ev
22 // CHECK-LABEL: define void @_Z39test_ObjCMember_copy_construct_destruct10ObjCMember
24 // CHECK: call void @_ZN10ObjCMemberC1ERKS_
25 // CHECK: call void @_ZN10ObjCMemberD1Ev
27 // CHECK: ret void
30 // CHECK-LABEL: define void @_Z27test_ObjCMember_copy_assign10ObjCMemberS_
32 // CHECK: {{call.*_ZN10ObjCMemberaSERKS_}}
34 // CHECK-NEXT: ret void
38 // CHECK: {{define linkonce_odr.*@_ZN10ObjCMemberaSERKS_}}
39 // CHECK: call void @objc_storeStrong
40 // CHECK: ret
42 // CHECK-LABEL: define void @_Z47test_ObjCArrayMember_default_construct_destructv
44 // CHECK: call void @_ZN15ObjCArrayMemberC1Ev
46 // CHECK: call void @_ZN15ObjCArrayMemberD1Ev
47 // CHECK: ret void
50 // CHECK-LABEL: define void @_Z44test_ObjCArrayMember_copy_construct_destruct15ObjCArrayMember
52 // CHECK: call void @_ZN15ObjCArrayMemberC1ERKS_
54 // CHECK: call void @_ZN15ObjCArrayMemberD1Ev
55 // CHECK: ret void
59 // CHECK: {{call.*@_ZN15ObjCArrayMemberaSERKS_}}
61 // CHECK-NEXT: ret void
65 // CHECK: {{define linkonce_odr.*@_ZN15ObjCArrayMemberaSERKS_}}
66 // CHECK: call void @objc_storeStrong
67 // CHECK-NEXT: br label
68 // CHECK: ret
70 // CHECK-LABEL: define void @_Z47test_ObjCBlockMember_default_construct_destructv
72 // CHECK: call void @_ZN15ObjCBlockMemberC1Ev
74 // CHECK-NEXT: call void @_ZN15ObjCBlockMemberD1Ev
75 // CHECK-NEXT: ret void
78 // CHECK-LABEL: define void @_Z44test_ObjCBlockMember_copy_construct_destruct15ObjCBlockMember
80 // CHECK: call void @_ZN15ObjCBlockMemberC1ERKS_
82 // CHECK-NEXT: call void @_ZN15ObjCBlockMemberD1Ev
83 // CHECK-NEXT: ret void
86 // CHECK-LABEL: define void @_Z32test_ObjCBlockMember_copy_assign15ObjCBlockMemberS_
88 // CHECK: {{call.*_ZN15ObjCBlockMemberaSERKS_}}
90 // CHECK-NEXT: ret void
94 // CHECK: define linkonce_odr nonnull {{%.*}}* @_ZN15ObjCBlockMemberaSERKS_(
95 // CHECK: [[T0:%.*]] = getelementptr inbounds [[T:%.*]]* {{%.*}}, i32 0, i32 0
96 // CHECK-NEXT: [[T1:%.*]] = load i32 (i32)** [[T0]], align 8
97 // CHECK-NEXT: [[T2:%.*]] = bitcast i32 (i32)* [[T1]] to i8*
98 // CHECK-NEXT: [[T3:%.*]] = call i8* @objc_retainBlock(i8* [[T2]])
99 // CHECK-NEXT: [[T4:%.*]] = bitcast i8* [[T3]] to i32 (i32)*
100 // CHECK-NEXT: [[T5:%.*]] = getelementptr inbounds [[T]]* {{%.*}}, i32 0, i32 0
101 // CHECK-NEXT: [[T6:%.*]] = load i32 (i32)** [[T5]], align 8
102 // CHECK-NEXT: store i32 (i32)* [[T4]], i32 (i32)** [[T5]]
103 // CHECK-NEXT: [[T7:%.*]] = bitcast i32 (i32)* [[T6]] to i8*
104 // CHECK-NEXT: call void @objc_release(i8* [[T7]])
105 // CHECK-NEXT: ret
108 // CHECK-LABEL: define linkonce_odr void @_ZN15ObjCBlockMemberC2ERKS_
109 // CHECK: call i8* @objc_retainBlock
110 // CHECK: ret
113 // CHECK-LABEL: define linkonce_odr void @_ZN15ObjCBlockMemberD2Ev
114 // CHECK: call void @objc_storeStrong(i8*
115 // CHECK: ret
118 // CHECK-LABEL: define linkonce_odr void @_ZN15ObjCBlockMemberC2Ev
119 // CHECK: store {{.*}} null,
120 // CHECK-NEXT: ret void
123 // CHECK-LABEL: define linkonce_odr void @_ZN15ObjCArrayMemberC2ERKS_
124 // CHECK: br i1
125 // CHECK: call i8* @objc_retain
126 // CHECK-NEXT: store i8*
127 // CHECK-NEXT: br label
128 // CHECK: ret
131 // CHECK-LABEL: define linkonce_odr void @_ZN15ObjCArrayMemberD2Ev
132 // CHECK: [[BEGIN:%.*]] = getelementptr inbounds [2 x [3 x i8*]]*
133 // CHECK-NEXT: [[END:%.*]] = getelementptr inbounds i8** [[BEGIN]], i64 6
134 // CHECK-NEXT: br label
135 // CHECK: [[PAST:%.*]] = phi i8** [ [[END]], {{%.*}} ], [ [[CUR:%.*]], {{%.*}} ]
136 // CHECK-NEXT: [[CUR]] = getelementptr inbounds i8** [[PAST]], i64 -1
137 // CHECK-NEXT: call void @objc_storeStrong(i8** [[CUR]], i8* null)
138 // CHECK-NEXT: [[T1:%.*]] = icmp eq i8** [[CUR]], [[BEGIN]]
139 // CHECK-NEXT: br i1 [[T1]],
140 // CHECK: ret void
143 // CHECK-LABEL: define linkonce_odr void @_ZN15ObjCArrayMemberC2Ev
144 // CHECK: call void @llvm.memset.p0i8.i64
145 // CHECK: ret
148 // CHECK-LABEL: define linkonce_odr void @_ZN10ObjCMemberC2ERKS_
149 // CHECK-NOT: objc_release
150 // CHECK: call i8* @objc_retain
151 // CHECK-NEXT: store i8*
152 // CHECK-NEXT: ret void
155 // CHECK-LABEL: define linkonce_odr void @_ZN10ObjCMemberD2Ev
156 // CHECK: call void @objc_storeStrong
157 // CHECK: ret void
160 // CHECK-LABEL: define linkonce_odr void @_ZN10ObjCMemberC2Ev
161 // CHECK-NOT: objc_release
162 // CHECK: store i8* null
163 // CHECK-NEXT: ret void