blob: e289e10c0e4c7e24b6bc6819316f4df3f5fc06d1 [file] [log] [blame]
Gabor Greif5edf2102008-05-20 22:07:21 +00001; RUN: llvm-as %s -f -o %t.bc
Tanya Lattnere9789ef2004-11-06 23:32:43 +00002; RUN: lli %t.bc > /dev/null
3
Tanya Lattnerceca1942008-03-10 07:21:50 +00004@A = global i32 0 ; <i32*> [#uses=1]
Chris Lattner547eaef2003-10-18 23:54:45 +00005
Tanya Lattnerceca1942008-03-10 07:21:50 +00006define i32 @main() {
7 %Ret = call i32 @test( i1 true, i32 0 ) ; <i32> [#uses=1]
8 ret i32 %Ret
Chris Lattner547eaef2003-10-18 23:54:45 +00009}
10
Tanya Lattnerceca1942008-03-10 07:21:50 +000011define i32 @test(i1 %c, i32 %A) {
12 br i1 %c, label %Taken1, label %NotTaken
13Cont: ; preds = %Taken1, %NotTaken
14 %V = phi i32 [ 0, %NotTaken ], [ sub (i32 ptrtoint (i32* @A to i32), i32 1234), %Taken1 ] ; <i32> [#uses=0]
15 ret i32 0
16NotTaken: ; preds = %0
17 br label %Cont
18Taken1: ; preds = %0
19 %B = icmp eq i32 %A, 0 ; <i1> [#uses=1]
20 br i1 %B, label %Cont, label %ExitError
21ExitError: ; preds = %Taken1
22 ret i32 12
Chris Lattner547eaef2003-10-18 23:54:45 +000023}
Tanya Lattnerceca1942008-03-10 07:21:50 +000024