Remove llvm-upgrade and update tests.
[oota-llvm.git] / test / ExecutionEngine / test-phi.ll
1 ; RUN: llvm-as < %s -f -o %t.bc
2 ; RUN: lli %t.bc > /dev/null
3
4 ; test phi node
5 @Y = global i32 6               ; <i32*> [#uses=1]
6
7 define void @blah(i32* %X) {
8 ; <label>:0
9         br label %T
10 T:              ; preds = %Dead, %0
11         phi i32* [ %X, %0 ], [ @Y, %Dead ]              ; <i32*>:1 [#uses=0]
12         ret void
13 Dead:           ; No predecessors!
14         br label %T
15 }
16
17 define i32 @test(i1 %C) {
18 ; <label>:0
19         br i1 %C, label %T, label %T
20 T:              ; preds = %0, %0
21         %X = phi i32 [ 123, %0 ], [ 123, %0 ]           ; <i32> [#uses=1]
22         ret i32 %X
23 }
24
25 define i32 @main() {
26 ; <label>:0
27         br label %Test
28 Test:           ; preds = %Dead, %0
29         %X = phi i32 [ 0, %0 ], [ %Y, %Dead ]           ; <i32> [#uses=1]
30         ret i32 %X
31 Dead:           ; No predecessors!
32         %Y = ashr i32 12, 4             ; <i32> [#uses=1]
33         br label %Test
34 }
35