comparison test/Transforms/LoopSimplify/2003-12-10-ExitBlocksProblem.ll @ 95:afa8332a0e37 LLVM3.8

LLVM 3.8
author Kaito Tokumori <e105711@ie.u-ryukyu.ac.jp>
date Tue, 13 Oct 2015 17:48:58 +0900
parents 95c75e76d11b
children
comparison
equal deleted inserted replaced
84:f3e34b893a5f 95:afa8332a0e37
12 define i32 @main() { 12 define i32 @main() {
13 entry: 13 entry:
14 store i32 123, i32* @G 14 store i32 123, i32* @G
15 br label %loopentry.i 15 br label %loopentry.i
16 loopentry.i: ; preds = %endif.1.i, %entry 16 loopentry.i: ; preds = %endif.1.i, %entry
17 %tmp.0.i = load i32* @G ; <i32> [#uses=1] 17 %tmp.0.i = load i32, i32* @G ; <i32> [#uses=1]
18 %tmp.1.i = icmp eq i32 %tmp.0.i, 123 ; <i1> [#uses=1] 18 %tmp.1.i = icmp eq i32 %tmp.0.i, 123 ; <i1> [#uses=1]
19 br i1 %tmp.1.i, label %Out.i, label %endif.0.i 19 br i1 %tmp.1.i, label %Out.i, label %endif.0.i
20 endif.0.i: ; preds = %loopentry.i 20 endif.0.i: ; preds = %loopentry.i
21 %tmp.3.i = load i32* @G ; <i32> [#uses=1] 21 %tmp.3.i = load i32, i32* @G ; <i32> [#uses=1]
22 %tmp.4.i = icmp eq i32 %tmp.3.i, 126 ; <i1> [#uses=1] 22 %tmp.4.i = icmp eq i32 %tmp.3.i, 126 ; <i1> [#uses=1]
23 br i1 %tmp.4.i, label %ExitBlock.i, label %endif.1.i 23 br i1 %tmp.4.i, label %ExitBlock.i, label %endif.1.i
24 endif.1.i: ; preds = %endif.0.i 24 endif.1.i: ; preds = %endif.0.i
25 %tmp.6.i = load i32* @G ; <i32> [#uses=1] 25 %tmp.6.i = load i32, i32* @G ; <i32> [#uses=1]
26 %inc.i = add i32 %tmp.6.i, 1 ; <i32> [#uses=1] 26 %inc.i = add i32 %tmp.6.i, 1 ; <i32> [#uses=1]
27 store i32 %inc.i, i32* @G 27 store i32 %inc.i, i32* @G
28 br label %loopentry.i 28 br label %loopentry.i
29 Out.i: ; preds = %loopentry.i 29 Out.i: ; preds = %loopentry.i
30 store i32 0, i32* @G 30 store i32 0, i32* @G
31 br label %ExitBlock.i 31 br label %ExitBlock.i
32 ExitBlock.i: ; preds = %Out.i, %endif.0.i 32 ExitBlock.i: ; preds = %Out.i, %endif.0.i
33 %tmp.7.i = load i32* @G ; <i32> [#uses=1] 33 %tmp.7.i = load i32, i32* @G ; <i32> [#uses=1]
34 ret i32 %tmp.7.i 34 ret i32 %tmp.7.i
35 } 35 }
36 36