blob: 9eedaa49c0b8360f2bc9ae711e3dc66abcdd7285 [file] [log] [blame]
Dan Gohman0404c872009-09-28 18:40:27 +00001; RUN: opt < %s -loop-rotate -loop-reduce -disable-output
2
3define fastcc void @foo() nounwind {
4BB:
5 br label %BB1
6
7BB1: ; preds = %BB19, %BB
8 br label %BB4
9
10BB2: ; preds = %BB4
11 %tmp = bitcast i32 undef to i32 ; <i32> [#uses=1]
12 br label %BB4
13
14BB4: ; preds = %BB3, %BB1
15 %tmp5 = phi i32 [ undef, %BB1 ], [ %tmp, %BB2 ] ; <i32> [#uses=1]
16 br i1 false, label %BB8, label %BB2
17
18BB8: ; preds = %BB6
19 %tmp7 = bitcast i32 %tmp5 to i32 ; <i32> [#uses=2]
20 br i1 false, label %BB9, label %BB13
21
22BB9: ; preds = %BB12, %BB8
23 %tmp10 = phi i32 [ %tmp11, %BB12 ], [ %tmp7, %BB8 ] ; <i32> [#uses=2]
24 %tmp11 = add i32 %tmp10, 1 ; <i32> [#uses=1]
25 br label %BB12
26
27BB12: ; preds = %BB9
28 br i1 false, label %BB9, label %BB17
29
30BB13: ; preds = %BB15, %BB8
31 %tmp14 = phi i32 [ %tmp16, %BB15 ], [ %tmp7, %BB8 ] ; <i32> [#uses=1]
32 br label %BB15
33
34BB15: ; preds = %BB13
35 %tmp16 = add i32 %tmp14, -1 ; <i32> [#uses=1]
36 br i1 false, label %BB13, label %BB18
37
38BB17: ; preds = %BB12
39 br label %BB19
40
41BB18: ; preds = %BB15
42 br label %BB19
43
44BB19: ; preds = %BB18, %BB17
45 %tmp20 = phi i32 [ %tmp10, %BB17 ], [ undef, %BB18 ] ; <i32> [#uses=0]
46 br label %BB1
47}