rustc_session: default to -Z plt=yes on non-x86_64
Per the discussion in #106380 plt=no isn't a great default, and rust-lang/compiler-team#581 decided that the default should be PLT=yes for everything except x86_64. Not everyone agrees about the x86_64 part of this change, but this at least is an improvement in the state of things without changing the x86_64 situation, so I've attempted making this change in the name of not letting the perfect be the enemy of the good.
This commit is contained in:
parent
2efe091705
commit
dfc5218dc8
@ -1613,7 +1613,7 @@ pub(crate) fn parse_proc_macro_execution_strategy(
|
||||
plt: Option<bool> = (None, parse_opt_bool, [TRACKED],
|
||||
"whether to use the PLT when calling into shared libraries;
|
||||
only has effect for PIC code on systems with ELF binaries
|
||||
(default: PLT is disabled if full relro is enabled)"),
|
||||
(default: PLT is disabled if full relro is enabled on x86_64)"),
|
||||
polonius: bool = (false, parse_bool, [TRACKED],
|
||||
"enable polonius-based borrow-checker (default: no)"),
|
||||
polymorphize: bool = (false, parse_bool, [TRACKED],
|
||||
|
@ -1013,7 +1013,7 @@ pub fn rust_2024(&self) -> bool {
|
||||
pub fn needs_plt(&self) -> bool {
|
||||
// Check if the current target usually needs PLT to be enabled.
|
||||
// The user can use the command line flag to override it.
|
||||
let needs_plt = self.target.needs_plt;
|
||||
let needs_plt = self.target.arch != "x86_64";
|
||||
|
||||
let dbg_opts = &self.opts.unstable_opts;
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user