[all-commits] [llvm/llvm-project] cde9f9: [AArch64] Fix x18 being used by nest ptrs with MSV...
David Truby via All-commits
all-commits at lists.llvm.org
Tue Oct 10 06:31:11 PDT 2023
Branch: refs/heads/main
Home: https://github.com/llvm/llvm-project
Commit: cde9f9df79805a0850310870d6dcc64004292727
https://github.com/llvm/llvm-project/commit/cde9f9df79805a0850310870d6dcc64004292727
Author: David Truby <david.truby at arm.com>
Date: 2023-10-10 (Tue, 10 Oct 2023)
Changed paths:
M llvm/lib/Target/AArch64/AArch64CallingConvention.h
M llvm/lib/Target/AArch64/AArch64CallingConvention.td
M llvm/lib/Target/AArch64/AArch64FastISel.cpp
M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
M llvm/lib/Target/AArch64/AArch64RegisterInfo.cpp
A llvm/test/CodeGen/AArch64/win64cc-x18.ll
Log Message:
-----------
[AArch64] Fix x18 being used by nest ptrs with MSVC ABI (#68008)
This patch fixes an issue where x18 is used for passing pointer
parameters with
the nest attribute on Windows on AArch64. The x18 register is reserved
in the
WoA ABI so can't be used for this purpose. This is fixed by introducing
a new
Win64PCS calling convention that differs from the standard AAPCS only by
not
using x18 for nest parameters.
More information about the All-commits
mailing list