Skip to content

Commit a50b08a

Browse files
committed
Replace undef with different arguments
1 parent 66e0394 commit a50b08a

File tree

1 file changed

+14
-14
lines changed

1 file changed

+14
-14
lines changed

llvm/test/Transforms/NewGVN/pr25440.ll

Lines changed: 14 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -10,38 +10,38 @@ target triple = "thumbv7--linux-gnueabi"
1010
@length = external global [0 x i32], align 4
1111

1212
; Function Attrs: nounwind
13-
define fastcc void @foo(ptr nocapture readonly %x, i1 %arg, i1 %arg2) {
13+
define fastcc void @foo(ptr nocapture readonly %x, i1 %arg, i1 %arg2, i1 %arg3, i1 %arg4) {
1414
; CHECK-LABEL: define fastcc void @foo(
15-
; CHECK-SAME: ptr nocapture readonly [[X:%.*]], i1 [[ARG:%.*]], i1 [[ARG2:%.*]]) {
15+
; CHECK-SAME: ptr nocapture readonly [[X:%.*]], i1 [[ARG:%.*]], i1 [[ARG2:%.*]], i1 [[ARG3:%.*]], i1 [[ARG4:%.*]]) {
1616
; CHECK-NEXT: entry:
1717
; CHECK-NEXT: br label [[BB0:%.*]]
1818
; CHECK: bb0:
19-
; CHECK-NEXT: [[TMP0:%.*]] = load i16, ptr [[X]], align 4
19+
; CHECK-NEXT: [[X_TR:%.*]] = phi ptr [ [[X]], [[ENTRY:%.*]] ], [ null, [[LAND_LHS_TRUE:%.*]] ]
20+
; CHECK-NEXT: [[TMP0:%.*]] = load i16, ptr [[X_TR]], align 4
2021
; CHECK-NEXT: [[CONV:%.*]] = zext i16 [[TMP0]] to i32
2122
; CHECK-NEXT: switch i32 [[CONV]], label [[IF_END_50:%.*]] [
2223
; CHECK-NEXT: i32 43, label [[CLEANUP:%.*]]
2324
; CHECK-NEXT: i32 52, label [[IF_THEN_5:%.*]]
2425
; CHECK-NEXT: ]
2526
; CHECK: if.then.5:
26-
; CHECK-NEXT: br i1 [[ARG]], label [[LAND_LHS_TRUE:%.*]], label [[IF_THEN_26:%.*]]
27+
; CHECK-NEXT: br i1 [[ARG]], label [[LAND_LHS_TRUE]], label [[IF_THEN_26:%.*]]
2728
; CHECK: land.lhs.true:
28-
; CHECK-NEXT: br i1 true, label [[CLEANUP]], label [[BB0]]
29+
; CHECK-NEXT: br i1 [[ARG2]], label [[CLEANUP]], label [[BB0]]
2930
; CHECK: if.then.26:
30-
; CHECK-NEXT: br i1 false, label [[COND_END:%.*]], label [[COND_FALSE:%.*]]
31+
; CHECK-NEXT: br i1 [[ARG3]], label [[COND_END:%.*]], label [[COND_FALSE:%.*]]
3132
; CHECK: cond.false:
32-
; CHECK-NEXT: [[MODE:%.*]] = getelementptr inbounds [[STRUCT_A:%.*]], ptr [[X]], i32 0, i32 1
33+
; CHECK-NEXT: [[MODE:%.*]] = getelementptr inbounds [[STRUCT_A:%.*]], ptr [[X_TR]], i32 0, i32 1
3334
; CHECK-NEXT: [[BF_LOAD:%.*]] = load i16, ptr [[MODE]], align 2
3435
; CHECK-NEXT: br label [[COND_END]]
3536
; CHECK: cond.end:
36-
; CHECK-NEXT: br i1 [[ARG2]], label [[IF_THEN_44:%.*]], label [[CLEANUP]]
37+
; CHECK-NEXT: br i1 [[ARG3]], label [[IF_THEN_44:%.*]], label [[CLEANUP]]
3738
; CHECK: if.then.44:
3839
; CHECK-NEXT: unreachable
3940
; CHECK: if.end.50:
4041
; CHECK-NEXT: [[ARRAYIDX52:%.*]] = getelementptr inbounds [0 x i32], ptr @length, i32 0, i32 [[CONV]]
4142
; CHECK-NEXT: [[TMP1:%.*]] = load i32, ptr [[ARRAYIDX52]], align 4
42-
; CHECK-NEXT: br i1 false, label [[FOR_BODY_57:%.*]], label [[CLEANUP]]
43+
; CHECK-NEXT: br i1 [[ARG4]], label [[FOR_BODY_57:%.*]], label [[CLEANUP]]
4344
; CHECK: for.body.57:
44-
; CHECK-NEXT: store i8 poison, ptr null, align 1
4545
; CHECK-NEXT: unreachable
4646
; CHECK: cleanup:
4747
; CHECK-NEXT: ret void
@@ -62,11 +62,11 @@ if.then.5: ; preds = %bb0
6262
br i1 %arg, label %land.lhs.true, label %if.then.26
6363

6464
land.lhs.true: ; preds = %if.then.5
65-
br i1 true, label %cleanup, label %bb0
65+
br i1 %arg2, label %cleanup, label %bb0
6666

6767
if.then.26: ; preds = %if.then.5
6868
%x.tr.lcssa163 = phi ptr [ %x.tr, %if.then.5 ]
69-
br i1 %arg, label %cond.end, label %cond.false
69+
br i1 %arg3, label %cond.end, label %cond.false
7070

7171
cond.false: ; preds = %if.then.26
7272
%mode = getelementptr inbounds %struct.a, ptr %x.tr.lcssa163, i32 0, i32 1
@@ -75,7 +75,7 @@ cond.false: ; preds = %if.then.26
7575
br label %cond.end
7676

7777
cond.end: ; preds = %cond.false, %if.then.26
78-
br i1 %arg2, label %if.then.44, label %cleanup
78+
br i1 %arg3, label %if.then.44, label %cleanup
7979

8080
if.then.44: ; preds = %cond.end
8181
unreachable
@@ -84,7 +84,7 @@ if.end.50: ; preds = %bb0
8484
%conv.lcssa = phi i32 [ %conv, %bb0 ]
8585
%arrayidx52 = getelementptr inbounds [0 x i32], ptr @length, i32 0, i32 %conv.lcssa
8686
%1 = load i32, ptr %arrayidx52, align 4
87-
br i1 false, label %for.body.57, label %cleanup
87+
br i1 %arg4, label %for.body.57, label %cleanup
8888

8989
for.body.57: ; preds = %if.end.50
9090
%i.2157 = add nsw i32 %1, -1

0 commit comments

Comments
 (0)