Remove dead blocks in the end.
[oota-llvm.git] / test / Transforms / CondProp / basictest.ll
1 ; RUN: llvm-as < %s | opt -condprop | llvm-dis | \
2 ; RUN:    not grep {br label}
3 ; RUN: llvm-as < %s | opt -condprop | llvm-dis | not grep T2
4
5
6 define i32 @test(i1 %C) {
7         br i1 %C, label %T1, label %F1
8
9 T1:             ; preds = %0
10         br label %Cont
11
12 F1:             ; preds = %0
13         br label %Cont
14
15 Cont:           ; preds = %F1, %T1
16         %C2 = phi i1 [ false, %F1 ], [ true, %T1 ]              ; <i1> [#uses=1]
17         br i1 %C2, label %T2, label %F2
18
19 T2:             ; preds = %Cont
20         call void @bar( )
21         ret i32 17
22
23 F2:             ; preds = %Cont
24         ret i32 1
25 }
26
27 declare void @bar()
28