Skip to content

Commit 00f3494

Browse files
committed
Remove br i1 undef in LoopUnroll directory
1 parent 0d4017c commit 00f3494

File tree

9 files changed

+83
-83
lines changed

9 files changed

+83
-83
lines changed

llvm/test/Transforms/LoopUnroll/2011-08-08-PhiUpdate.ll

Lines changed: 11 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -143,7 +143,7 @@ bb2: ; preds = %bb1.bb2_crit_edge,
143143

144144
; Check phi update for loop with an early-exit.
145145
;
146-
define i32 @test3() nounwind uwtable ssp align 2 {
146+
define i32 @test3(i1 %arg) nounwind uwtable ssp align 2 {
147147
;
148148
; CHECK-LABEL: @test3(
149149
; CHECK-NEXT: entry:
@@ -156,9 +156,9 @@ define i32 @test3() nounwind uwtable ssp align 2 {
156156
; CHECK-NEXT: br i1 [[COND2]], label [[EXIT:%.*]], label [[DO_COND:%.*]]
157157
; CHECK: exit:
158158
; CHECK-NEXT: [[TMP7_I:%.*]] = load i32, ptr undef, align 8
159-
; CHECK-NEXT: br i1 undef, label [[DO_COND]], label [[LAND_LHS_TRUE:%.*]]
159+
; CHECK-NEXT: br i1 [[ARG:%.*]], label [[DO_COND]], label [[LAND_LHS_TRUE:%.*]]
160160
; CHECK: land.lhs.true:
161-
; CHECK-NEXT: br i1 true, label [[RETURN_LOOPEXIT:%.*]], label [[DO_COND]]
161+
; CHECK-NEXT: br i1 [[ARG]], label [[RETURN_LOOPEXIT:%.*]], label [[DO_COND]]
162162
; CHECK: do.cond:
163163
; CHECK-NEXT: [[COND3:%.*]] = call zeroext i1 @check()
164164
; CHECK-NEXT: br i1 [[COND3]], label [[DO_END:%.*]], label [[DO_BODY_1:%.*]]
@@ -167,9 +167,9 @@ define i32 @test3() nounwind uwtable ssp align 2 {
167167
; CHECK-NEXT: br i1 [[COND2_1]], label [[EXIT_1:%.*]], label [[DO_COND_1:%.*]]
168168
; CHECK: exit.1:
169169
; CHECK-NEXT: [[TMP7_I_1:%.*]] = load i32, ptr undef, align 8
170-
; CHECK-NEXT: br i1 undef, label [[DO_COND_1]], label [[LAND_LHS_TRUE_1:%.*]]
170+
; CHECK-NEXT: br i1 [[ARG]], label [[DO_COND_1]], label [[LAND_LHS_TRUE_1:%.*]]
171171
; CHECK: land.lhs.true.1:
172-
; CHECK-NEXT: br i1 true, label [[RETURN_LOOPEXIT]], label [[DO_COND_1]]
172+
; CHECK-NEXT: br i1 [[ARG]], label [[RETURN_LOOPEXIT]], label [[DO_COND_1]]
173173
; CHECK: do.cond.1:
174174
; CHECK-NEXT: [[COND3_1:%.*]] = call zeroext i1 @check()
175175
; CHECK-NEXT: br i1 [[COND3_1]], label [[DO_END]], label [[DO_BODY_2:%.*]]
@@ -178,9 +178,9 @@ define i32 @test3() nounwind uwtable ssp align 2 {
178178
; CHECK-NEXT: br i1 [[COND2_2]], label [[EXIT_2:%.*]], label [[DO_COND_2:%.*]]
179179
; CHECK: exit.2:
180180
; CHECK-NEXT: [[TMP7_I_2:%.*]] = load i32, ptr undef, align 8
181-
; CHECK-NEXT: br i1 undef, label [[DO_COND_2]], label [[LAND_LHS_TRUE_2:%.*]]
181+
; CHECK-NEXT: br i1 [[ARG]], label [[DO_COND_2]], label [[LAND_LHS_TRUE_2:%.*]]
182182
; CHECK: land.lhs.true.2:
183-
; CHECK-NEXT: br i1 true, label [[RETURN_LOOPEXIT]], label [[DO_COND_2]]
183+
; CHECK-NEXT: br i1 [[ARG]], label [[RETURN_LOOPEXIT]], label [[DO_COND_2]]
184184
; CHECK: do.cond.2:
185185
; CHECK-NEXT: [[COND3_2:%.*]] = call zeroext i1 @check()
186186
; CHECK-NEXT: br i1 [[COND3_2]], label [[DO_END]], label [[DO_BODY_3:%.*]]
@@ -189,9 +189,9 @@ define i32 @test3() nounwind uwtable ssp align 2 {
189189
; CHECK-NEXT: br i1 [[COND2_3]], label [[EXIT_3:%.*]], label [[DO_COND_3:%.*]]
190190
; CHECK: exit.3:
191191
; CHECK-NEXT: [[TMP7_I_3:%.*]] = load i32, ptr undef, align 8
192-
; CHECK-NEXT: br i1 undef, label [[DO_COND_3]], label [[LAND_LHS_TRUE_3:%.*]]
192+
; CHECK-NEXT: br i1 [[ARG]], label [[DO_COND_3]], label [[LAND_LHS_TRUE_3:%.*]]
193193
; CHECK: land.lhs.true.3:
194-
; CHECK-NEXT: br i1 true, label [[RETURN_LOOPEXIT]], label [[DO_COND_3]]
194+
; CHECK-NEXT: br i1 [[ARG]], label [[RETURN_LOOPEXIT]], label [[DO_COND_3]]
195195
; CHECK: do.cond.3:
196196
; CHECK-NEXT: [[COND3_3:%.*]] = call zeroext i1 @check()
197197
; CHECK-NEXT: br i1 [[COND3_3]], label [[DO_END]], label [[DO_BODY]], !llvm.loop [[LOOP3:![0-9]+]]
@@ -217,10 +217,10 @@ do.body: ; preds = %do.cond, %if.end
217217

218218
exit: ; preds = %do.body
219219
%tmp7.i = load i32, ptr undef, align 8
220-
br i1 undef, label %do.cond, label %land.lhs.true
220+
br i1 %arg, label %do.cond, label %land.lhs.true
221221

222222
land.lhs.true: ; preds = %exit
223-
br i1 undef, label %return, label %do.cond
223+
br i1 %arg, label %return, label %do.cond
224224

225225
do.cond: ; preds = %land.lhs.true, %exit, %do.body
226226
%cond3 = call zeroext i1 @check()

llvm/test/Transforms/LoopUnroll/full-unroll-crashers.ll

Lines changed: 14 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@ target datalayout = "e-m:o-i64:64-f80:128-n8:16:32:64-S128"
55

66
@known_constant = internal unnamed_addr constant [10 x i32] [i32 1, i32 1, i32 1, i32 1, i32 1, i32 1, i32 1, i32 1, i32 1, i32 1], align 16
77

8-
define void @foo1() {
8+
define void @foo1(i1 %arg) {
99
entry:
1010
br label %for.body
1111

@@ -21,7 +21,7 @@ for.exit:
2121
ret void
2222
}
2323

24-
define void @foo2() {
24+
define void @foo2(i1 %arg) {
2525
entry:
2626
br label %for.body
2727

@@ -36,7 +36,7 @@ for.exit:
3636
ret void
3737
}
3838

39-
define void @cmp_undef() {
39+
define void @cmp_undef(i1 %arg) {
4040
entry:
4141
br label %for.body
4242

@@ -59,7 +59,7 @@ for.end: ; preds = %for.inc
5959
ret void
6060
}
6161

62-
define void @switch() {
62+
define void @switch(i1 %arg) {
6363
entry:
6464
br label %for.body
6565

@@ -83,7 +83,7 @@ for.end:
8383
ret void
8484
}
8585

86-
define <4 x i32> @vec_load() {
86+
define <4 x i32> @vec_load(i1 %arg) {
8787
entry:
8888
br label %for.body
8989

@@ -101,7 +101,7 @@ for.exit:
101101
ret <4 x i32> %r
102102
}
103103

104-
define void @ptrtoint_cast() optsize {
104+
define void @ptrtoint_cast(i1 %arg) optsize {
105105
entry:
106106
br label %for.body
107107

@@ -119,7 +119,7 @@ for.cond.cleanup:
119119
ret void
120120
}
121121

122-
define void @ptrtoint_cast2() {
122+
define void @ptrtoint_cast2(i1 %arg) {
123123
entry:
124124
br i1 false, label %for.body.lr.ph, label %exit
125125

@@ -138,14 +138,14 @@ exit:
138138

139139
@i = external global i32, align 4
140140

141-
define void @folded_not_to_constantint() {
141+
define void @folded_not_to_constantint(i1 %arg) {
142142
entry:
143143
br label %for.body
144144

145145
for.body:
146146
%iv = phi i32 [ 0, %entry ], [ %inc, %for.inc ]
147147
%m = phi ptr [ @i, %entry ], [ %m, %for.inc ]
148-
br i1 undef, label %if.else, label %if.then
148+
br i1 %arg, label %if.else, label %if.then
149149

150150
if.then:
151151
unreachable
@@ -166,13 +166,13 @@ for.end:
166166
ret void
167167
}
168168

169-
define void @index_too_large() {
169+
define void @index_too_large(i1 %arg) {
170170
entry:
171171
br label %for.body
172172

173173
for.body:
174174
%iv = phi i64 [ -73631599, %entry ], [ %iv.next, %for.inc ]
175-
br i1 undef, label %for.body2, label %for.inc
175+
br i1 %arg, label %for.body2, label %for.inc
176176

177177
for.body2:
178178
%idx = getelementptr inbounds [10 x i32], ptr @known_constant, i64 0, i64 %iv
@@ -181,13 +181,13 @@ for.body2:
181181

182182
for.inc:
183183
%iv.next = add nsw i64 %iv, -1
184-
br i1 undef, label %for.body, label %for.end
184+
br i1 %arg, label %for.body, label %for.end
185185

186186
for.end:
187187
ret void
188188
}
189189

190-
define void @cmp_type_mismatch() {
190+
define void @cmp_type_mismatch(i1 %arg) {
191191
entry:
192192
br label %for.header
193193

@@ -197,7 +197,7 @@ for.header:
197197
for.body:
198198
%d = phi ptr [ null, %for.header ]
199199
%cmp = icmp eq ptr %d, null
200-
br i1 undef, label %for.end, label %for.header
200+
br i1 %arg, label %for.end, label %for.header
201201

202202
for.end:
203203
ret void

llvm/test/Transforms/LoopUnroll/pr10813.ll

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,8 @@
11
; RUN: opt < %s -passes=loop-unroll -disable-output
22

3-
define void @"f_fu___REFUf[]REFUf[]Uf"() nounwind {
3+
define void @"f_fu___REFUf[]REFUf[]Uf"(i1 %arg) nounwind {
44
allocas:
5-
br i1 undef, label %cif_mask_all, label %cif_mixed_test_all
5+
br i1 %arg, label %cif_mask_all, label %cif_mixed_test_all
66

77
cif_mask_all: ; preds = %allocas
88
unreachable
@@ -12,7 +12,7 @@ cif_mixed_test_all: ; preds = %allocas
1212

1313
pl_loop.i964: ; preds = %pl_loopend.i973, %cif_mixed_test_all
1414
%0 = phi i32 [ %pl_nextlane.i971, %pl_loopend.i973 ], [ 0, %cif_mixed_test_all ]
15-
br i1 undef, label %pl_dolane.i970, label %pl_loopend.i973
15+
br i1 %arg, label %pl_dolane.i970, label %pl_loopend.i973
1616

1717
pl_dolane.i970: ; preds = %pl_loop.i964
1818
%storeval.i.i969 = extractelement <4 x i8> <i8 0, i8 1, i8 2, i8 3>, i32 %0

llvm/test/Transforms/LoopUnroll/pr14167.ll

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22
target datalayout = "E-p:64:64:64-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:64:64-f32:32:32-f64:64:64-v128:128:128-n32:64"
33
target triple = "powerpc64le-unknown-linux"
44

5-
define void @test1() nounwind {
5+
define void @test1(i1 %arg) nounwind {
66
; Ensure that we don't crash when the trip count == -1.
77
; CHECK-LABEL: @test1(
88
entry:
@@ -15,7 +15,7 @@ vector.ph: ; preds = %for.cond2.preheader
1515
br label %vector.body
1616

1717
vector.body: ; preds = %vector.body, %vector.ph
18-
br i1 undef, label %middle.block.loopexit, label %vector.body
18+
br i1 %arg, label %middle.block.loopexit, label %vector.body
1919

2020
middle.block.loopexit: ; preds = %vector.body
2121
br label %middle.block
@@ -37,7 +37,7 @@ for.end.loopexit: ; preds = %for.body4
3737
br label %for.end
3838

3939
for.end: ; preds = %for.end.loopexit, %middle.block
40-
br i1 undef, label %for.cond2.preheader, label %for.end15
40+
br i1 %arg, label %for.cond2.preheader, label %for.end15
4141

4242
for.end15: ; preds = %for.end
4343
ret void

llvm/test/Transforms/LoopUnroll/pr27157.ll

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -4,12 +4,12 @@
44
target datalayout = "E-m:e-i1:8:16-i8:8:16-i64:64-f128:64-v128:64-a:8:16-n32:64"
55

66
; PR27157
7-
define void @foo() {
7+
define void @foo(i1 %arg) {
88
entry:
99
br label %loop_header
1010
loop_header:
1111
%iv = phi i64 [ 0, %entry ], [ %iv_next, %loop_latch ]
12-
br i1 undef, label %loop_latch, label %loop_exiting_bb1
12+
br i1 %arg, label %loop_latch, label %loop_exiting_bb1
1313
loop_exiting_bb1:
1414
br i1 false, label %loop_exiting_bb2, label %exit1.loopexit
1515
loop_exiting_bb2:
@@ -28,19 +28,19 @@ exit2:
2828
ret void
2929
}
3030

31-
define void @foo2() {
31+
define void @foo2(i1 %arg) {
3232
entry:
3333
br label %loop.header
3434
loop.header:
3535
%iv = phi i32 [ 0, %entry ], [ %iv.inc, %latch ]
3636
%iv.inc = add i32 %iv, 1
37-
br i1 undef, label %diamond, label %latch
37+
br i1 %arg, label %diamond, label %latch
3838
diamond:
39-
br i1 undef, label %left, label %right
39+
br i1 %arg, label %left, label %right
4040
left:
41-
br i1 undef, label %exit, label %merge
41+
br i1 %arg, label %exit, label %merge
4242
right:
43-
br i1 undef, label %exit, label %merge
43+
br i1 %arg, label %exit, label %merge
4444
merge:
4545
br label %latch
4646
latch:

llvm/test/Transforms/LoopUnroll/pr28132.ll

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@ declare void @fn1(ptr)
66

77
declare i1 @fn2(ptr, ptr)
88

9-
define void @fn4() personality ptr @__CxxFrameHandler3 {
9+
define void @fn4(i1 %arg) personality ptr @__CxxFrameHandler3 {
1010
entry:
1111
br label %for.body
1212

@@ -21,12 +21,12 @@ call.i.noexc: ; preds = %for.body
2121
to label %call1.i.noexc unwind label %ehcleanup
2222

2323
call1.i.noexc: ; preds = %call.i.noexc
24-
br i1 undef, label %if.then.i, label %if.end4.i
24+
br i1 %arg, label %if.then.i, label %if.end4.i
2525

2626
if.then.i: ; preds = %call1.i.noexc
2727
%tmp1 = load i8, ptr undef, align 4
2828
%tobool.i = icmp eq i8 undef, undef
29-
br i1 undef, label %if.end4.i, label %if.then2.i
29+
br i1 %arg, label %if.end4.i, label %if.then2.i
3030

3131
if.then2.i: ; preds = %if.then.i
3232
%call3.i3 = invoke i1 @fn2(ptr undef, ptr null)

llvm/test/Transforms/LoopUnroll/rebuild_lcssa.ll

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -127,17 +127,17 @@ Exit:
127127
ret void
128128
}
129129

130-
define void @foo3() {
130+
define void @foo3(i1 %arg) {
131131
; CHECK-LABEL: @foo3(
132132
; CHECK-NEXT: entry:
133133
; CHECK-NEXT: br label [[L1_HEADER:%.*]]
134134
; CHECK: L1_header:
135135
; CHECK-NEXT: [[A:%.*]] = phi ptr [ [[B:%.*]], [[L1_LATCH:%.*]] ], [ null, [[ENTRY:%.*]] ]
136-
; CHECK-NEXT: br i1 undef, label [[L2_HEADER_PREHEADER:%.*]], label [[L1_LATCH]]
136+
; CHECK-NEXT: br i1 [[ARG:%.*]], label [[L2_HEADER_PREHEADER:%.*]], label [[L1_LATCH]]
137137
; CHECK: L2_header.preheader:
138138
; CHECK-NEXT: br label [[L2_HEADER:%.*]]
139139
; CHECK: L2_header:
140-
; CHECK-NEXT: br i1 false, label [[L2_LATCH:%.*]], label [[L1_LATCH_LOOPEXIT:%.*]]
140+
; CHECK-NEXT: br i1 [[ARG]], label [[L2_LATCH:%.*]], label [[L1_LATCH_LOOPEXIT:%.*]]
141141
; CHECK: L2_latch:
142142
; CHECK-NEXT: [[A_LCSSA:%.*]] = phi ptr [ [[A]], [[L2_HEADER]] ]
143143
; CHECK-NEXT: br label [[EXIT:%.*]]
@@ -155,10 +155,10 @@ entry:
155155

156156
L1_header:
157157
%a = phi ptr [ %b, %L1_latch ], [ null, %entry ]
158-
br i1 undef, label %L2_header, label %L1_latch
158+
br i1 %arg, label %L2_header, label %L1_latch
159159

160160
L2_header:
161-
br i1 undef, label %L2_latch, label %L1_latch
161+
br i1 %arg, label %L2_latch, label %L1_latch
162162

163163
L2_latch:
164164
br i1 true, label %L2_exit, label %L2_header

0 commit comments

Comments
 (0)