diff options
| author | bors <bors@rust-lang.org> | 2024-09-14 07:07:30 +0000 |
|---|---|---|
| committer | bors <bors@rust-lang.org> | 2024-09-14 07:07:30 +0000 |
| commit | 583f358e940574f3de235b1c7bf90353c68a7f08 (patch) | |
| tree | 3eb940125a277d2f3b0e6eaf9a84c1efed1cbf63 /compiler/rustc_codegen_llvm/src/llvm_util.rs | |
| parent | 20862e4653ece8bad3a263431e602cbf25982e44 (diff) | |
| parent | 94d49917ad3a88efffa3ad0e2d2dd95e1f866997 (diff) | |
| download | rust-583f358e940574f3de235b1c7bf90353c68a7f08.tar.gz rust-583f358e940574f3de235b1c7bf90353c68a7f08.zip | |
Auto merge of #3885 - rust-lang:rustup-2024-09-14, r=RalfJung
Automatic Rustup
Diffstat (limited to 'compiler/rustc_codegen_llvm/src/llvm_util.rs')
| -rw-r--r-- | compiler/rustc_codegen_llvm/src/llvm_util.rs | 14 |
1 files changed, 13 insertions, 1 deletions
diff --git a/compiler/rustc_codegen_llvm/src/llvm_util.rs b/compiler/rustc_codegen_llvm/src/llvm_util.rs index 6e4ddbb6f3b..29afe6f6bfc 100644 --- a/compiler/rustc_codegen_llvm/src/llvm_util.rs +++ b/compiler/rustc_codegen_llvm/src/llvm_util.rs @@ -14,7 +14,7 @@ use rustc_middle::bug; use rustc_session::config::{PrintKind, PrintRequest}; use rustc_session::Session; use rustc_span::symbol::Symbol; -use rustc_target::spec::{MergeFunctions, PanicStrategy}; +use rustc_target::spec::{MergeFunctions, PanicStrategy, SmallDataThresholdSupport}; use rustc_target::target_features::{RUSTC_SPECIAL_FEATURES, RUSTC_SPECIFIC_FEATURES}; use crate::back::write::create_informational_target_machine; @@ -125,6 +125,18 @@ unsafe fn configure_llvm(sess: &Session) { for arg in sess_args { add(&(*arg), true); } + + match ( + sess.opts.unstable_opts.small_data_threshold, + sess.target.small_data_threshold_support(), + ) { + // Set up the small-data optimization limit for architectures that use + // an LLVM argument to control this. + (Some(threshold), SmallDataThresholdSupport::LlvmArg(arg)) => { + add(&format!("--{arg}={threshold}"), false) + } + _ => (), + }; } if sess.opts.unstable_opts.llvm_time_trace { |
