about summary refs log tree commit diff
diff options
context:
space:
mode:
authorMatthias Krüger <matthias.krueger@famsik.de>2024-12-06 09:27:38 +0100
committerGitHub <noreply@github.com>2024-12-06 09:27:38 +0100
commit714c820e64e9d941c9a8be75e83b5fa7e1f4c8f1 (patch)
tree27eb66b1fa5b2e71290f795631ec92b6c8c33a1f
parenta3a424534163b753a1e84b5f5f318a5668efc31f (diff)
parent3ee22a413106e94c2fdf3aeb1b6f8764a5daf636 (diff)
downloadrust-714c820e64e9d941c9a8be75e83b5fa7e1f4c8f1.tar.gz
rust-714c820e64e9d941c9a8be75e83b5fa7e1f4c8f1.zip
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
-rw-r--r--src/context.rs5
1 files changed, 4 insertions, 1 deletions
diff --git a/src/context.rs b/src/context.rs
index 3846d025537..f67dcf0cb11 100644
--- a/src/context.rs
+++ b/src/context.rs
@@ -544,7 +544,10 @@ impl<'gcc, 'tcx> HasWasmCAbiOpt for CodegenCx<'gcc, 'tcx> {
 
 impl<'gcc, 'tcx> HasX86AbiOpt for CodegenCx<'gcc, 'tcx> {
     fn x86_abi_opt(&self) -> X86Abi {
-        X86Abi { regparm: self.tcx.sess.opts.unstable_opts.regparm }
+        X86Abi {
+            regparm: self.tcx.sess.opts.unstable_opts.regparm,
+            reg_struct_return: self.tcx.sess.opts.unstable_opts.reg_struct_return,
+        }
     }
 }