[PATCH] D61892: [AArch64] Treat x18 as callee-saved in functions with windows calling convention on non-windows OSes

Martin Storsjö via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Tue May 19 03:45:15 PDT 2020


mstorsjo updated this revision to Diff 264837.
mstorsjo retitled this revision from "[RFC] [AArch64] Back up and restore X18 in the prologue/epilogue for Windows calling convention on non-Windows OSes" to "[AArch64] Treat x18 as callee-saved in functions with windows calling convention on non-windows OSes".
mstorsjo edited the summary of this revision.
mstorsjo added a subscriber: jacek.
mstorsjo added a comment.
Herald added subscribers: danielkiss, dexonsmith, hiraditya.

Removing the RFC marking from this one, with the intention of getting it merged. It's a pretty non-intrusive (and cheap) fix and for maintaining x18 across wine built in functions - I've tested it in daily use for a month now and the fix does seem to behave as intended. Wine builds most DLLs as PE DLLs these days, so callbacks is no longer an issue for the built-in modules built as PE DLLs.


CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D61892/new/

https://reviews.llvm.org/D61892

Files:
  llvm/lib/Target/AArch64/AArch64CallingConvention.td
  llvm/lib/Target/AArch64/AArch64FrameLowering.cpp
  llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
  llvm/lib/Target/AArch64/AArch64RegisterInfo.cpp
  llvm/test/CodeGen/AArch64/win64cc-backup-x18.ll

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D61892.264837.patch
Type: text/x-patch
Size: 4540 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20200519/55256700/attachment-0001.bin>


More information about the llvm-commits mailing list