llvm-6502/test/Transforms/TailCallElim/dont-tce-tail-marked-call.ll
2006-12-02 04:23:10 +00:00

12 lines
391 B
LLVM

; RUN: llvm-upgrade < %s | llvm-as | opt -tailcallelim | llvm-dis | grep 'call int %foo'
declare void %bar(int*)
int %foo(uint %N) {
%A = alloca int, uint %N ;; Should stay in entry block because of 'tail' marker
store int 17, int* %A
call void %bar(int* %A)
%X = tail call int %foo(uint %N) ;; Cannot -tailcallelim this without increasing stack usage!
ret int %X
}