mirror of
https://github.com/RPCS3/llvm-mirror.git
synced 2025-01-31 20:51:52 +01:00
6256c01685
R12 is used for the SwiftError parameter. It is no longer a CSR as it is used for transfer the SwiftError, and the caller must preserve it if they need to. llvm-svn: 314165
19 lines
444 B
LLVM
19 lines
444 B
LLVM
; RUN: llc -mtriple x86_64-unknown-windows-msvc -filetype asm -o - %s | FileCheck %s
|
|
|
|
%swift.error = type opaque
|
|
|
|
declare swiftcc void @f(%swift.error** swifterror)
|
|
|
|
define swiftcc void @g(i8*, i8*, i8*, i8*, %swift.error** swifterror %error) {
|
|
entry:
|
|
call swiftcc void @f(%swift.error** nonnull nocapture swifterror %error)
|
|
ret void
|
|
}
|
|
|
|
; CHECK-LABEL: g
|
|
; CHECK-NOT: pushq %r12
|
|
; CHECK: callq f
|
|
; CHECK-NOT: popq %r12
|
|
; CHECK: retq
|
|
|