[PATCH] D126809: [ARM64EC 8/?] Implement ARM64EC "thunk" calling conventions
Martin Storsjö via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Wed Jun 1 23:56:54 PDT 2022
mstorsjo added inline comments.
================
Comment at: llvm/lib/Target/AArch64/AArch64CallingConvention.td:263
+ // convention requires "this" to be passed in RCX.
+ // FIXME: Do we need a ARM64EC_Thunk_thiscall convention?
+ // CCIfCC<"CallingConv::X86_ThisCall",
----------------
efriedma wrote:
> dpaoliello wrote:
> > I'll get some clarification on this...
> I copy-pasted the X86_ThisCall thing from the x86 code. It might be a red herring, though; I just looked at this in clang, and it looks like clang doesn't actually use the X86_ThisCall on x64 Windows, so this doesn't actually do anything, even in the original? I'm sort of confused how it ended up that way. Maybe can just delete it, though.
>
> I probably do need some handling for C++ methods, though, which I haven't implemented yet. (In particular, I need to ensure we emit the arguments for exit thunks for C++ methods in the correct order.)
`thiscall` (similarly to `stdcall`, `fastcall` and `vectorcall`) are all no-ops on x86_64, they're only a thing on x86_32 windows.
Repository:
rG LLVM Github Monorepo
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D126809/new/
https://reviews.llvm.org/D126809
More information about the llvm-commits
mailing list