63
63
ret void
64
64
}
65
65
66
- define void @_Z3fn1v () uwtable personality ptr @__gxx_personality_v0 {
66
+ define void @_Z3fn1v (i1 %arg ) uwtable personality ptr @__gxx_personality_v0 {
67
67
; CHECK-LABEL: @_Z3fn1v(
68
68
; CHECK-NEXT: entry:
69
69
; CHECK-NEXT: [[CALL:%.*]] = call noalias ptr @_Znwm()
@@ -93,6 +93,8 @@ define void @_Z3fn1v() uwtable personality ptr @__gxx_personality_v0 {
93
93
; CHECK-NEXT: [[TMP3:%.*]] = load i32, ptr [[_REF_I_I_I]], align 4
94
94
; CHECK-NEXT: [[TOBOOL_I_I_I:%.*]] = icmp eq i32 [[TMP3]], 0
95
95
; CHECK-NEXT: br i1 [[TOBOOL_I_I_I]], label [[_ZN1BI1DED1EV_EXIT:%.*]], label [[DELETE_NOTNULL_I_I_I:%.*]]
96
+ ; CHECK: if.then.i.i.i:
97
+ ; CHECK-NEXT: br i1 [[ARG:%.*]], label [[_ZN1BI1DED1EV_EXIT]], label [[DELETE_NOTNULL_I_I_I1:%.*]]
96
98
; CHECK: delete.notnull.i.i.i:
97
99
; CHECK-NEXT: call void @_ZdlPv()
98
100
; CHECK-NEXT: unreachable
@@ -138,7 +140,7 @@ lpad1: ; preds = %_ZN1DC1Ev.exit, %_Z
138
140
br i1 %tobool.i.i.i , label %_ZN1BI1DED1Ev.exit , label %if.then.i.i.i
139
141
140
142
if.then.i.i.i: ; preds = %lpad1
141
- br i1 undef , label %_ZN1BI1DED1Ev.exit , label %delete.notnull.i.i.i
143
+ br i1 %arg , label %_ZN1BI1DED1Ev.exit , label %delete.notnull.i.i.i
142
144
143
145
delete.notnull.i.i.i: ; preds = %if.then.i.i.i
144
146
call void @_ZdlPv () #9
@@ -191,14 +193,16 @@ entry:
191
193
192
194
declare void @_ZN1D16deleteKeyPressedEv ()
193
195
194
- define void @_ZN1BI1DED1Ev (ptr nocapture readonly %this ) unnamed_addr uwtable align 2 {
196
+ define void @_ZN1BI1DED1Ev (ptr nocapture readonly %this , i1 %arg ) unnamed_addr uwtable align 2 {
195
197
; CHECK-LABEL: @_ZN1BI1DED1Ev(
196
198
; CHECK-NEXT: entry:
197
199
; CHECK-NEXT: [[TMP0:%.*]] = load ptr, ptr [[THIS:%.*]], align 8
198
200
; CHECK-NEXT: [[_REF_I_I:%.*]] = getelementptr inbounds [[CLASS_D:%.*]], ptr [[TMP0]], i64 0, i32 0, i32 0, i32 1, i32 0, i32 0
199
201
; CHECK-NEXT: [[TMP1:%.*]] = load i32, ptr [[_REF_I_I]], align 4
200
202
; CHECK-NEXT: [[TOBOOL_I_I:%.*]] = icmp eq i32 [[TMP1]], 0
201
203
; CHECK-NEXT: br i1 [[TOBOOL_I_I]], label [[_ZN1BI1DED2EV_EXIT:%.*]], label [[DELETE_NOTNULL_I_I:%.*]]
204
+ ; CHECK: if.then.i.i:
205
+ ; CHECK-NEXT: br i1 [[ARG:%.*]], label [[_ZN1BI1DED2EV_EXIT]], label [[DELETE_NOTNULL_I_I1:%.*]]
202
206
; CHECK: delete.notnull.i.i:
203
207
; CHECK-NEXT: call void @_ZdlPv()
204
208
; CHECK-NEXT: unreachable
@@ -213,7 +217,7 @@ entry:
213
217
br i1 %tobool.i.i , label %_ZN1BI1DED2Ev.exit , label %if.then.i.i
214
218
215
219
if.then.i.i: ; preds = %entry
216
- br i1 undef , label %_ZN1BI1DED2Ev.exit , label %delete.notnull.i.i
220
+ br i1 %arg , label %_ZN1BI1DED2Ev.exit , label %delete.notnull.i.i
217
221
218
222
delete.notnull.i.i: ; preds = %if.then.i.i
219
223
call void @_ZdlPv () #9
@@ -225,14 +229,16 @@ _ZN1BI1DED2Ev.exit: ; preds = %entry, %if.then.i.i
225
229
226
230
declare hidden void @__clang_call_terminate ()
227
231
228
- define void @_ZN1BI1DED2Ev (ptr nocapture readonly %this ) unnamed_addr uwtable align 2 {
232
+ define void @_ZN1BI1DED2Ev (ptr nocapture readonly %this , i1 %arg ) unnamed_addr uwtable align 2 {
229
233
; CHECK-LABEL: @_ZN1BI1DED2Ev(
230
234
; CHECK-NEXT: entry:
231
235
; CHECK-NEXT: [[TMP0:%.*]] = load ptr, ptr [[THIS:%.*]], align 8
232
236
; CHECK-NEXT: [[_REF_I:%.*]] = getelementptr inbounds [[CLASS_D:%.*]], ptr [[TMP0]], i64 0, i32 0, i32 0, i32 1, i32 0, i32 0
233
237
; CHECK-NEXT: [[TMP1:%.*]] = load i32, ptr [[_REF_I]], align 4
234
238
; CHECK-NEXT: [[TOBOOL_I:%.*]] = icmp eq i32 [[TMP1]], 0
235
239
; CHECK-NEXT: br i1 [[TOBOOL_I]], label [[_ZN1AI1CE5DEREFEV_EXIT:%.*]], label [[DELETE_NOTNULL_I:%.*]]
240
+ ; CHECK: if.then.i:
241
+ ; CHECK-NEXT: br i1 [[ARG:%.*]], label [[_ZN1AI1CE5DEREFEV_EXIT]], label [[DELETE_NOTNULL_I1:%.*]]
236
242
; CHECK: delete.notnull.i:
237
243
; CHECK-NEXT: call void @_ZdlPv()
238
244
; CHECK-NEXT: unreachable
@@ -247,7 +253,7 @@ entry:
247
253
br i1 %tobool.i , label %_ZN1AI1CE5derefEv.exit , label %if.then.i
248
254
249
255
if.then.i: ; preds = %entry
250
- br i1 undef , label %_ZN1AI1CE5derefEv.exit , label %delete.notnull.i
256
+ br i1 %arg , label %_ZN1AI1CE5derefEv.exit , label %delete.notnull.i
251
257
252
258
delete.notnull.i: ; preds = %if.then.i
253
259
call void @_ZdlPv () #9
@@ -257,12 +263,14 @@ _ZN1AI1CE5derefEv.exit: ; preds = %entry, %if.then.i
257
263
ret void
258
264
}
259
265
260
- define void @_ZN1AI1CE5derefEv (ptr nocapture readonly %this ) nounwind uwtable align 2 {
266
+ define void @_ZN1AI1CE5derefEv (ptr nocapture readonly %this , i1 %arg ) nounwind uwtable align 2 {
261
267
; CHECK-LABEL: @_ZN1AI1CE5derefEv(
262
268
; CHECK-NEXT: entry:
263
269
; CHECK-NEXT: [[TMP0:%.*]] = load i32, ptr [[THIS:%.*]], align 4
264
270
; CHECK-NEXT: [[TOBOOL:%.*]] = icmp eq i32 [[TMP0]], 0
265
271
; CHECK-NEXT: br i1 [[TOBOOL]], label [[IF_END:%.*]], label [[DELETE_NOTNULL:%.*]]
272
+ ; CHECK: if.then:
273
+ ; CHECK-NEXT: br i1 [[ARG:%.*]], label [[IF_END]], label [[DELETE_NOTNULL1:%.*]]
266
274
; CHECK: delete.notnull:
267
275
; CHECK-NEXT: call void @_ZdlPv()
268
276
; CHECK-NEXT: unreachable
@@ -275,7 +283,7 @@ entry:
275
283
br i1 %tobool , label %if.end , label %if.then
276
284
277
285
if.then: ; preds = %entry
278
- br i1 undef , label %if.end , label %delete.notnull
286
+ br i1 %arg , label %if.end , label %delete.notnull
279
287
280
288
delete.notnull: ; preds = %if.then
281
289
call void @_ZdlPv () #9
0 commit comments