Merge branch 'master' into msp430
[llvm/msp430.git] / test / Analysis / BasicAA / tailcall-modref.ll
blobac4ea400b0f340601c0c71d268e35aedf15748f9
1 ; RUN: llvm-as < %s | opt -basicaa -gvn -instcombine |\
2 ; RUN:   llvm-dis | grep {ret i32 0}
4 declare void @foo(i32*)
6 declare void @bar()
8 define i32 @test() {
9         %A = alloca i32         ; <i32*> [#uses=3]
10         call void @foo( i32* %A )
11         %X = load i32* %A               ; <i32> [#uses=1]
12         tail call void @bar( )
13         %Y = load i32* %A               ; <i32> [#uses=1]
14         %Z = sub i32 %X, %Y             ; <i32> [#uses=1]
15         ret i32 %Z