llvm-6502/test/Transforms/TailCallElim/move_alloca_for_tail_call.ll
2007-04-15 06:52:45 +00:00

13 lines
335 B
LLVM

; RUN: llvm-upgrade < %s | llvm-as | opt -tailcallelim | llvm-dis | \
; RUN: %prcontext alloca 1 | grep {i32 @foo}
declare void %bar(int*)
int %foo() {
%A = alloca int ;; Should stay in entry block because of 'tail' marker
store int 17, int* %A
call void %bar(int* %A)
%X = tail call int %foo()
ret int %X
}