From 37dc4ec8d6519d7ba1ed8a11fb57ff4d1eb995dd Mon Sep 17 00:00:00 2001 From: Andrew Zhogin <44302620+azhogin@users.noreply.github.com> Date: Sun, 20 Oct 2024 18:18:01 +0700 Subject: [PATCH] Limited -Zregparm support (no Rust calling conv) descriptions Co-authored-by: Jubilee --- compiler/rustc_session/src/options.rs | 3 ++- src/doc/unstable-book/src/compiler-flags/regparm.md | 2 +- 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/compiler/rustc_session/src/options.rs b/compiler/rustc_session/src/options.rs index f4a9d4bf92cbc..54a4621db2462 100644 --- a/compiler/rustc_session/src/options.rs +++ b/compiler/rustc_session/src/options.rs @@ -2002,7 +2002,8 @@ options! { "randomize the layout of types (default: no)"), regparm: Option = (None, parse_opt_number, [TRACKED], "On x86-32 targets, setting this to N causes the compiler to pass N arguments \ - in registers EAX, EDX, and ECX instead of on the stack.\ + in registers EAX, EDX, and ECX instead of on the stack for\ + \"C\", \"cdecl\", and \"stdcall\" fn.\ It is UNSOUND to link together crates that use different values for this flag!"), relax_elf_relocations: Option = (None, parse_opt_bool, [TRACKED], "whether ELF relocations can be relaxed"), diff --git a/src/doc/unstable-book/src/compiler-flags/regparm.md b/src/doc/unstable-book/src/compiler-flags/regparm.md index a054d55cd8b6d..8f311f091c0a2 100644 --- a/src/doc/unstable-book/src/compiler-flags/regparm.md +++ b/src/doc/unstable-book/src/compiler-flags/regparm.md @@ -5,7 +5,7 @@ The tracking issue for this feature is: https://github.com/rust-lang/rust/issues ------------------------ Option -Zregparm=N causes the compiler to pass N arguments -in registers EAX, EDX, and ECX instead of on the stack. +in registers EAX, EDX, and ECX instead of on the stack for "C", "cdecl", and "stdcall" fn. It is UNSOUND to link together crates that use different values for this flag. It is only supported on `x86`.