1
0
mirror of https://github.com/RPCS3/llvm-mirror.git synced 2024-10-20 19:42:54 +02:00
llvm-mirror/test/CodeGen/AArch64/arm64-windows-tailcall.ll
Mandeep Singh Grang ab504d3276 [COFF, ARM64] Fix ABI implementation of struct returns
Summary:
Refer the ABI doc at: https://docs.microsoft.com/en-us/cpp/build/arm64-windows-abi-conventions?view=vs-2019#return-values

Related clang patch: D60349

Reviewers: rnk, efriedma, TomTan, ssijaric

Reviewed By: rnk, efriedma

Subscribers: mstorsjo, javed.absar, kristof.beyls, llvm-commits

Tags: #llvm

Differential Revision: https://reviews.llvm.org/D60348

llvm-svn: 359934
2019-05-03 21:12:36 +00:00

19 lines
437 B
LLVM

; FIXME: Add tests for global-isel/fast-isel.
; RUN: llc < %s -mtriple=arm64-windows | FileCheck %s
%class.C = type { [1 x i32] }
define dso_local void @"?bar"(%class.C* inreg noalias sret %agg.result) {
entry:
; CHECK-LABEL: bar
; CHECK: mov x19, x0
; CHECK: bl "?foo"
; CHECK: mov x0, x19
tail call void @"?foo"(%class.C* dereferenceable(4) %agg.result)
ret void
}
declare dso_local void @"?foo"(%class.C* dereferenceable(4))