[llvm] fix preserve_none in X86 backend (PR #192300)
Eli Friedman via llvm-commits
llvm-commits at lists.llvm.org
Fri Apr 17 12:16:17 PDT 2026
efriedma-quic wrote:
> So I expect everything not specified in CC_X86_64_Preserve_None should be delegated to CC_X86_64_C, including CCIfByVal<CCPassByVal<8, 8>>, but why doesn't it work in this case?
The underlying representation of a byval value is a pointer, so it matches `CCIfType<[i64]`.
Maybe it would be more clear if we refactored the code to use some `CCIfCC<"CallingConv::PreserveNone"` checks inside CC_X86_64_C, instead of using `CCDelegateTo<CC_X86_64_C>`.
https://github.com/llvm/llvm-project/pull/192300
More information about the llvm-commits
mailing list