1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
| ; PR28103
; Bail out if the two successors are not the header
; and another bb outside of the loop. This case is not
; properly handled by LoopUnroll, currently.
; RUN: opt -loop-unroll -verify-dom-info %s
; REQUIRES: asserts
define void @tinkywinky(i1 %patatino) {
entry:
br label %header1
header1:
%indvars.iv = phi i64 [ 1, %body2 ], [ 0, %entry ]
%exitcond = icmp ne i64 %indvars.iv, 1
br i1 %exitcond, label %body1, label %exit
body1:
br i1 %patatino, label %body2, label %sink
body2:
br i1 %patatino, label %header1, label %body3
body3:
br label %sink
sink:
br label %body2
exit:
ret void
}
|