1
Fork 0

Rollup merge of #130777 - azhogin:azhogin/reg-struct-return, r=workingjubilee

rust_for_linux: -Zreg-struct-return commandline flag for X86 (#116973)

Command line flag `-Zreg-struct-return` for X86 (32-bit) for rust-for-linux.
This flag enables the same behavior as the `abi_return_struct_as_int` target spec key.

- Tracking issue: https://github.com/rust-lang/rust/issues/116973
This commit is contained in:
Matthias Krüger 2024-12-06 09:27:38 +01:00 committed by GitHub
commit 820ddaf67a
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
15 changed files with 279 additions and 4 deletions

View file

@ -1988,6 +1988,9 @@ options! {
"enable queries of the dependency graph for regression testing (default: no)"),
randomize_layout: bool = (false, parse_bool, [TRACKED],
"randomize the layout of types (default: no)"),
reg_struct_return: bool = (false, parse_bool, [TRACKED],
"On x86-32 targets, it overrides the default ABI to return small structs in registers.
It is UNSOUND to link together crates that use different values for this flag!"),
regparm: Option<u32> = (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 for\