ea0d5069f12cf09574a4fb77fc4d96b2272622e9
[oota-llvm.git] / test / ExecutionEngine / 2003-10-18-PHINode-ConstantExpr-CondCode-Failure.ll
1 ; RUN: lli %s > /dev/null
2 ; XFAIL: arm
3 ; FIXME: ExecutionEngine is broken for ARM, please remove the following XFAIL when it will be fixed.
4
5
6 @A = global i32 0               ; <i32*> [#uses=1]
7
8 define i32 @main() {
9         %Ret = call i32 @test( i1 true, i32 0 )         ; <i32> [#uses=1]
10         ret i32 %Ret
11 }
12
13 define i32 @test(i1 %c, i32 %A) {
14         br i1 %c, label %Taken1, label %NotTaken
15 Cont:           ; preds = %Taken1, %NotTaken
16         %V = phi i32 [ 0, %NotTaken ], [ sub (i32 ptrtoint (i32* @A to i32), i32 1234), %Taken1 ]               ; <i32> [#uses=0]
17         ret i32 0
18 NotTaken:               ; preds = %0
19         br label %Cont
20 Taken1:         ; preds = %0
21         %B = icmp eq i32 %A, 0          ; <i1> [#uses=1]
22         br i1 %B, label %Cont, label %ExitError
23 ExitError:              ; preds = %Taken1
24         ret i32 12
25 }
26