Skip to content

Commit 5c546be

Browse files
committed
Use optional values for inlining thresholds
Turn inlining threshold into optional values to make it possible to configure different defaults depending on the current mir-opt-level.
1 parent b9449a3 commit 5c546be

File tree

3 files changed

+6
-6
lines changed

3 files changed

+6
-6
lines changed

compiler/rustc_interface/src/tests.rs

+2-2
Original file line numberDiff line numberDiff line change
@@ -557,8 +557,8 @@ fn test_debugging_options_tracking_hash() {
557557
tracked!(human_readable_cgu_names, true);
558558
tracked!(inline_in_all_cgus, Some(true));
559559
tracked!(inline_mir, Some(true));
560-
tracked!(inline_mir_threshold, 123);
561-
tracked!(inline_mir_hint_threshold, 123);
560+
tracked!(inline_mir_threshold, Some(123));
561+
tracked!(inline_mir_hint_threshold, Some(123));
562562
tracked!(insert_sideeffect, true);
563563
tracked!(instrument_coverage, true);
564564
tracked!(instrument_mcount, true);

compiler/rustc_mir/src/transform/inline.rs

+2-2
Original file line numberDiff line numberDiff line change
@@ -316,9 +316,9 @@ impl Inliner<'tcx> {
316316
}
317317

318318
let mut threshold = if hinted {
319-
self.tcx.sess.opts.debugging_opts.inline_mir_hint_threshold
319+
self.tcx.sess.opts.debugging_opts.inline_mir_hint_threshold.unwrap_or(100)
320320
} else {
321-
self.tcx.sess.opts.debugging_opts.inline_mir_threshold
321+
self.tcx.sess.opts.debugging_opts.inline_mir_threshold.unwrap_or(50)
322322
};
323323

324324
if codegen_fn_attrs.flags.contains(CodegenFnAttrFlags::NAKED) {

compiler/rustc_session/src/options.rs

+2-2
Original file line numberDiff line numberDiff line change
@@ -958,9 +958,9 @@ options! {DebuggingOptions, DebuggingSetter, basic_debugging_options,
958958
"verify incr. comp. hashes of green query instances (default: no)"),
959959
inline_mir: Option<bool> = (None, parse_opt_bool, [TRACKED],
960960
"enable MIR inlining (default: no)"),
961-
inline_mir_threshold: usize = (50, parse_uint, [TRACKED],
961+
inline_mir_threshold: Option<usize> = (None, parse_opt_uint, [TRACKED],
962962
"a default MIR inlining threshold (default: 50)"),
963-
inline_mir_hint_threshold: usize = (100, parse_uint, [TRACKED],
963+
inline_mir_hint_threshold: Option<usize> = (None, parse_opt_uint, [TRACKED],
964964
"inlining threshold for functions with inline hint (default: 100)"),
965965
inline_in_all_cgus: Option<bool> = (None, parse_opt_bool, [TRACKED],
966966
"control whether `#[inline]` functions are in all CGUs"),

0 commit comments

Comments
 (0)