blob: 99697f4c40d7290955455cb9ee66a187c74d1343 [file] [log] [blame]
Tanya Lattnerec9a35a2008-03-01 09:15:35 +00001; RUN: llvm-as < %s | opt -argpromotion -mem2reg | llvm-dis | not grep alloca
2define internal i32 @test(i32* %X, i32* %Y) {
3 %A = load i32* %X ; <i32> [#uses=1]
4 %B = load i32* %Y ; <i32> [#uses=1]
5 %C = add i32 %A, %B ; <i32> [#uses=1]
6 ret i32 %C
Chris Lattnerb9f266a2004-03-07 21:28:54 +00007}
8
Tanya Lattnerec9a35a2008-03-01 09:15:35 +00009define internal i32 @caller(i32* %B) {
10 %A = alloca i32 ; <i32*> [#uses=2]
11 store i32 1, i32* %A
12 %C = call i32 @test( i32* %A, i32* %B ) ; <i32> [#uses=1]
13 ret i32 %C
Chris Lattnerb9f266a2004-03-07 21:28:54 +000014}
15
Tanya Lattnerec9a35a2008-03-01 09:15:35 +000016define i32 @callercaller() {
17 %B = alloca i32 ; <i32*> [#uses=2]
18 store i32 2, i32* %B
19 %X = call i32 @caller( i32* %B ) ; <i32> [#uses=1]
20 ret i32 %X
Chris Lattnerb9f266a2004-03-07 21:28:54 +000021}
Tanya Lattnerec9a35a2008-03-01 09:15:35 +000022