1
0
mirror of https://github.com/RPCS3/llvm-mirror.git synced 2024-10-30 23:42:52 +01:00
llvm-mirror/test/CodeGen/ARM/fast-tail-call.ll
Tim Northover 696f647891 Stop putting operations after a tail call.
This prevents the emission of DAG-generated vreg definitions after a
tail call be dropping them entirely (on the grounds that nothing could
use them anyway, and they interfere with O0 CodeGen).

llvm-svn: 185754
2013-07-06 12:58:45 +00:00

17 lines
405 B
LLVM

; RUN: llc -mtriple=thumbv7-linux-gnueabi -O0 -arm-tail-calls < %s | FileCheck %s
; Primarily a non-crash test: Thumbv7 Linux does not have FastISel support,
; which led (via a convoluted route) to DAG nodes after a TC_RETURN that
; couldn't possibly work.
declare i8* @g(i8*)
define i8* @f(i8* %a) {
entry:
%0 = tail call i8* @g(i8* %a)
ret i8* %0
; CHECK: b g
; CHECK-NOT: ldr
; CHECK-NOT: str
}