[COFF, ARM64] Fix ABI implementation of struct returns
authorMandeep Singh Grang <mgrang@quicinc.com>
Fri, 3 May 2019 21:12:36 +0000 (21:12 +0000)
committerMandeep Singh Grang <mgrang@quicinc.com>
Fri, 3 May 2019 21:12:36 +0000 (21:12 +0000)
commit5dc8aeb26d2896c65cbea0d3b87f090241444bb6
treee9fdeab58b37e92852c61425e7ae3d8430d1fd04
parent85a0f8fe6c5c8ab35790c40d078d4fa103a5a54a
[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
llvm/include/llvm/IR/Argument.h
llvm/lib/IR/Function.cpp
llvm/lib/Target/AArch64/AArch64CallingConvention.td
llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
llvm/lib/Target/AArch64/AArch64MachineFunctionInfo.h
llvm/test/CodeGen/AArch64/arm64-windows-calls.ll [new file with mode: 0644]
llvm/test/CodeGen/AArch64/arm64-windows-tailcall.ll [new file with mode: 0644]