Convert -Z mutable-noalias to Optional<bool>

The default value will dependend on the LLVM version in the future,
so don't specify one to start with.
This commit is contained in:
Nikita Popov 2021-03-18 22:10:36 +01:00
parent dfc4cafe8e
commit 08c5ffd4a3
3 changed files with 3 additions and 3 deletions

View File

@ -62,7 +62,7 @@ fn should_use_mutable_noalias(cx: &CodegenCx<'_, '_>) -> bool {
//
// For now, do not enable mutable_noalias by default at all, while the
// issue is being figured out.
cx.tcx.sess.opts.debugging_opts.mutable_noalias
cx.tcx.sess.opts.debugging_opts.mutable_noalias.unwrap_or(false)
}
impl ArgAttributesExt for ArgAttributes {

View File

@ -566,7 +566,7 @@ fn test_debugging_options_tracking_hash() {
tracked!(merge_functions, Some(MergeFunctions::Disabled));
tracked!(mir_emit_retag, true);
tracked!(mir_opt_level, Some(4));
tracked!(mutable_noalias, true);
tracked!(mutable_noalias, Some(true));
tracked!(new_llvm_pass_manager, true);
tracked!(no_codegen, true);
tracked!(no_generate_arange_section, true);

View File

@ -997,7 +997,7 @@ options! {DebuggingOptions, DebuggingSetter, basic_debugging_options,
(default: no)"),
mir_opt_level: Option<usize> = (None, parse_opt_uint, [TRACKED],
"MIR optimization level (0-4; default: 1 in non optimized builds and 2 in optimized builds)"),
mutable_noalias: bool = (false, parse_bool, [TRACKED],
mutable_noalias: Option<bool> = (None, parse_opt_bool, [TRACKED],
"emit noalias metadata for mutable references (default: no)"),
new_llvm_pass_manager: bool = (false, parse_bool, [TRACKED],
"use new LLVM pass manager (default: no)"),