[clang] [llvm] New calling convention preserve_none (PR #76868)

David Li via cfe-commits cfe-commits at lists.llvm.org
Tue Jan 30 16:36:07 PST 2024


================
@@ -416,6 +416,13 @@ added in the future:
     This calling convention, like the `PreserveMost` calling convention, will be
     used by a future version of the ObjectiveC runtime and should be considered
     experimental at this time.
+"``preserve_nonecc``" - The `PreserveNone` calling convention
+    This calling convention doesn't preserve any general registers. So all
+    general registers are caller saved registers. It also uses all general
+    registers to pass arguments. This attribute doesn't impact non-general
+    purpose registers (e.g. floating point registers, on X86 XMMs/YMMs).
----------------
david-xl wrote:

Document that this is X86-only for now?

https://github.com/llvm/llvm-project/pull/76868


More information about the cfe-commits mailing list