llvm-6502/test/CodeGen/Thumb/pop.ll
Reid Kleckner d89c0abc07 ARM / x86_64 varargs: Don't save regparms in prologue without va_start
There's no need to do this if the user doesn't call va_start. In the
future, we're going to have thunks that forward these register
parameters with musttail calls, and they won't need these spills for
handling va_start.

Most of the test suite changes are adding va_start calls to existing
tests to keep things working.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@216294 91177308-0d34-0410-b5e6-96231b3b80d8
2014-08-22 21:59:26 +00:00

16 lines
340 B
LLVM

; RUN: llc < %s -mtriple=thumb-apple-darwin | FileCheck %s
; rdar://7268481
define void @t(i8* %a, ...) nounwind {
; CHECK-LABEL: t:
; CHECK: pop {r3}
; CHECK-NEXT: add sp, #12
; CHECK-NEXT: bx r3
entry:
%a.addr = alloca i8, i32 4
call void @llvm.va_start(i8* %a.addr)
ret void
}
declare void @llvm.va_start(i8*) nounwind