In some rare cases, the register allocator can spill registers but end up not utilizi...
[llvm/msp430.git] / test / Analysis / Andersens / basictest.ll
blob0005e09b2e7e0dff2d154ca82ac761000ab2ee95
1 ; RUN: llvm-as < %s | opt -anders-aa -aa-eval 2>/dev/null
3 define void @test1() {
4         %X = malloc i32*
5         %Y = malloc i32
6         %Z = ptrtoint i32* %Y to i32
7         %W = inttoptr i32 %Z to i32*
8         store i32* %W, i32** %X
9         ret void
12 define void @test2(i32* %P) {
13         %X = malloc i32*
14         %Y = malloc i32
15         store i32* %P, i32** %X
16         ret void
19 define internal i32 *@test3(i32* %P) {
20         ret i32* %P
23 define void @test4() {
24         %X = malloc i32
25         %Y = call i32* @test3(i32* %X)
26         %ZZ = getelementptr i32* null, i32 17
27         ret void