Renamed `as' => `llvm-as', `dis' => `llvm-dis', `link' => `llvm-link'.
[oota-llvm.git] / test / Transforms / SCCP / 2002-05-21-InvalidSimplify.ll
1 ; This test shows SCCP "proving" that the loop (from bb6 to 14) loops infinitely
2 ; this is in fact NOT the case, so the return should still be alive in the code
3 ; after sccp and CFG simplification have been performed.
4 ;
5 ; RUN: llvm-as < %s | opt -sccp -simplifycfg | llvm-dis | grep ret
6
7
8 void "old_main"() {
9 bb3:                                    ;[#uses=1]
10         br label %bb6
11
12 bb6:                                    ;[#uses=3]
13         %reg403 = phi int [ %reg155, %bb14 ], [ 0, %bb3 ]               ; <int> [#uses=2]
14         %reg155 = add int %reg403, 1            ; <int> [#uses=3]
15
16         br label %bb11
17
18 bb11:
19         %reg407 = phi int [ %reg408, %bb11 ], [ 0, %bb6 ]              ; <int> [#uses=2]
20         %reg408 = add int %reg407, 1            ; <int> [#uses=2]
21         %cond550 = setle int %reg407, 1         ; <bool> [#uses=1]
22         br bool %cond550, label %bb11, label %bb12
23
24 bb12:                                   ;[#uses=2]
25         br label %bb13
26
27 bb13:                                   ;[#uses=3]
28         %reg409 = phi int [ %reg410, %bb13 ], [ 0, %bb12 ]              ; <int> [#uses=1]
29         %reg410 = add int %reg409, 1            ; <int> [#uses=2]
30         %cond552 = setle int %reg410, 2         ; <bool> [#uses=1]
31         br bool %cond552, label %bb13, label %bb14
32
33 bb14:                                   ;[#uses=2]
34         %cond553 = setle int %reg155, 31                ; <bool> [#uses=1]
35         br bool %cond553, label %bb6, label %bb15
36
37 bb15:                                   ;[#uses=1]
38         ret void
39 }