1 ; This checks to ensure that the inline pass deletes functions if they get 2 ; inlined into all of their callers. 3 4 ; RUN: opt < %s -inline -S | \ 5 ; RUN: not grep @reallysmall 6 7 define internal i32 @reallysmall(i32 %A) { 8 ret i32 %A 9 } 10 11 define void @caller1() { 12 call i32 @reallysmall( i32 5 ) ; <i32>:1 [#uses=0] 13 ret void 14 } 15 16 define void @caller2(i32 %A) { 17 call i32 @reallysmall( i32 %A ) ; <i32>:1 [#uses=0] 18 ret void 19 } 20 21 define i32 @caller3(i32 %A) { 22 %B = call i32 @reallysmall( i32 %A ) ; <i32> [#uses=1] 23 ret i32 %B 24 } 25 26