Show defaults in options descriptions.
For all `-C` and `-Z` options that have them. The commit also rewords a few options to make them clearer, mostly by avoiding the word "don't". It also removes the listed default for `-Cinline-threshold`, which is incorrect -- that option doesn't have a static default.
This commit is contained in:
parent
58217bc996
commit
cc93e51ed3
1 changed files with 109 additions and 99 deletions
|
@ -622,7 +622,7 @@ options! {CodegenOptions, CodegenSetter, basic_codegen_options,
|
||||||
link_args: Vec<String> = (Vec::new(), parse_list, [UNTRACKED],
|
link_args: Vec<String> = (Vec::new(), parse_list, [UNTRACKED],
|
||||||
"extra arguments to append to the linker invocation (space separated)"),
|
"extra arguments to append to the linker invocation (space separated)"),
|
||||||
link_dead_code: bool = (false, parse_bool, [UNTRACKED],
|
link_dead_code: bool = (false, parse_bool, [UNTRACKED],
|
||||||
"don't let linker strip dead code (turning it on can be used for code coverage)"),
|
"keep dead code at link time (useful for code coverage) (default: no)"),
|
||||||
lto: LtoCli = (LtoCli::Unspecified, parse_lto, [TRACKED],
|
lto: LtoCli = (LtoCli::Unspecified, parse_lto, [TRACKED],
|
||||||
"perform LLVM link-time optimizations"),
|
"perform LLVM link-time optimizations"),
|
||||||
target_cpu: Option<String> = (None, parse_opt_string, [TRACKED],
|
target_cpu: Option<String> = (None, parse_opt_string, [TRACKED],
|
||||||
|
@ -635,21 +635,21 @@ options! {CodegenOptions, CodegenSetter, basic_codegen_options,
|
||||||
llvm_args: Vec<String> = (Vec::new(), parse_list, [TRACKED],
|
llvm_args: Vec<String> = (Vec::new(), parse_list, [TRACKED],
|
||||||
"a list of arguments to pass to LLVM (space separated)"),
|
"a list of arguments to pass to LLVM (space separated)"),
|
||||||
save_temps: bool = (false, parse_bool, [UNTRACKED],
|
save_temps: bool = (false, parse_bool, [UNTRACKED],
|
||||||
"save all temporary output files during compilation"),
|
"save all temporary output files during compilation (default: no)"),
|
||||||
rpath: bool = (false, parse_bool, [UNTRACKED],
|
rpath: bool = (false, parse_bool, [UNTRACKED],
|
||||||
"set rpath values in libs/exes"),
|
"set rpath values in libs/exes (default: no)"),
|
||||||
overflow_checks: Option<bool> = (None, parse_opt_bool, [TRACKED],
|
overflow_checks: Option<bool> = (None, parse_opt_bool, [TRACKED],
|
||||||
"use overflow checks for integer arithmetic"),
|
"use overflow checks for integer arithmetic"),
|
||||||
no_prepopulate_passes: bool = (false, parse_bool, [TRACKED],
|
no_prepopulate_passes: bool = (false, parse_bool, [TRACKED],
|
||||||
"don't pre-populate the pass manager with a list of passes"),
|
"give an empty list of passes to the pass manager (default: no)"),
|
||||||
no_vectorize_loops: bool = (false, parse_bool, [TRACKED],
|
no_vectorize_loops: bool = (false, parse_bool, [TRACKED],
|
||||||
"don't run the loop vectorization optimization passes"),
|
"disable loop vectorization optimization passes (default: no)"),
|
||||||
no_vectorize_slp: bool = (false, parse_bool, [TRACKED],
|
no_vectorize_slp: bool = (false, parse_bool, [TRACKED],
|
||||||
"don't run LLVM's SLP vectorization pass"),
|
"disable LLVM's SLP vectorization pass (default: no)"),
|
||||||
soft_float: bool = (false, parse_bool, [TRACKED],
|
soft_float: bool = (false, parse_bool, [TRACKED],
|
||||||
"use soft float ABI (*eabihf targets only)"),
|
"use soft float ABI (*eabihf targets only) (default: no)"),
|
||||||
prefer_dynamic: bool = (false, parse_bool, [TRACKED],
|
prefer_dynamic: bool = (false, parse_bool, [TRACKED],
|
||||||
"prefer dynamic linking to static linking"),
|
"prefer dynamic linking to static linking (default: no)"),
|
||||||
no_redzone: Option<bool> = (None, parse_opt_bool, [TRACKED],
|
no_redzone: Option<bool> = (None, parse_opt_bool, [TRACKED],
|
||||||
"disable the use of the redzone"),
|
"disable the use of the redzone"),
|
||||||
relocation_model: Option<String> = (None, parse_opt_string, [TRACKED],
|
relocation_model: Option<String> = (None, parse_opt_string, [TRACKED],
|
||||||
|
@ -665,24 +665,24 @@ options! {CodegenOptions, CodegenSetter, basic_codegen_options,
|
||||||
remark: Passes = (Passes::Some(Vec::new()), parse_passes, [UNTRACKED],
|
remark: Passes = (Passes::Some(Vec::new()), parse_passes, [UNTRACKED],
|
||||||
"print remarks for these optimization passes (space separated, or \"all\")"),
|
"print remarks for these optimization passes (space separated, or \"all\")"),
|
||||||
no_stack_check: bool = (false, parse_bool, [UNTRACKED],
|
no_stack_check: bool = (false, parse_bool, [UNTRACKED],
|
||||||
"the `--no-stack-check` flag is deprecated and does nothing"),
|
"this option is deprecated and does nothing"),
|
||||||
debuginfo: usize = (0, parse_uint, [TRACKED],
|
debuginfo: usize = (0, parse_uint, [TRACKED],
|
||||||
"debug info emission level, 0 = no debug info, 1 = line tables only, \
|
"debug info emission level (0 = no debug info, 1 = line tables only, \
|
||||||
2 = full debug info with variable and type information"),
|
2 = full debug info with variable and type information; default: 0)"),
|
||||||
opt_level: String = ("0".to_string(), parse_string, [TRACKED],
|
opt_level: String = ("0".to_string(), parse_string, [TRACKED],
|
||||||
"optimize with possible levels 0-3, s, or z"),
|
"optimization level (0-3, s, or z; default: 0)"),
|
||||||
force_frame_pointers: Option<bool> = (None, parse_opt_bool, [TRACKED],
|
force_frame_pointers: Option<bool> = (None, parse_opt_bool, [TRACKED],
|
||||||
"force use of the frame pointers"),
|
"force use of the frame pointers"),
|
||||||
debug_assertions: Option<bool> = (None, parse_opt_bool, [TRACKED],
|
debug_assertions: Option<bool> = (None, parse_opt_bool, [TRACKED],
|
||||||
"explicitly enable the `cfg(debug_assertions)` directive"),
|
"explicitly enable the `cfg(debug_assertions)` directive"),
|
||||||
inline_threshold: Option<usize> = (None, parse_opt_uint, [TRACKED],
|
inline_threshold: Option<usize> = (None, parse_opt_uint, [TRACKED],
|
||||||
"set the threshold for inlining a function (default: 225)"),
|
"set the threshold for inlining a function"),
|
||||||
panic: Option<PanicStrategy> = (None, parse_panic_strategy,
|
panic: Option<PanicStrategy> = (None, parse_panic_strategy,
|
||||||
[TRACKED], "panic strategy to compile crate with"),
|
[TRACKED], "panic strategy to compile crate with"),
|
||||||
incremental: Option<String> = (None, parse_opt_string, [UNTRACKED],
|
incremental: Option<String> = (None, parse_opt_string, [UNTRACKED],
|
||||||
"enable incremental compilation"),
|
"enable incremental compilation"),
|
||||||
default_linker_libraries: bool = (false, parse_bool, [UNTRACKED],
|
default_linker_libraries: bool = (false, parse_bool, [UNTRACKED],
|
||||||
"allow the linker to link its default libraries"),
|
"allow the linker to link its default libraries (default: no)"),
|
||||||
linker_flavor: Option<LinkerFlavor> = (None, parse_linker_flavor, [UNTRACKED],
|
linker_flavor: Option<LinkerFlavor> = (None, parse_linker_flavor, [UNTRACKED],
|
||||||
"linker flavor"),
|
"linker flavor"),
|
||||||
linker_plugin_lto: LinkerPluginLto = (LinkerPluginLto::Disabled,
|
linker_plugin_lto: LinkerPluginLto = (LinkerPluginLto::Disabled,
|
||||||
|
@ -701,41 +701,43 @@ options! {DebuggingOptions, DebuggingSetter, basic_debugging_options,
|
||||||
codegen_backend: Option<String> = (None, parse_opt_string, [TRACKED],
|
codegen_backend: Option<String> = (None, parse_opt_string, [TRACKED],
|
||||||
"the backend to use"),
|
"the backend to use"),
|
||||||
verbose: bool = (false, parse_bool, [UNTRACKED],
|
verbose: bool = (false, parse_bool, [UNTRACKED],
|
||||||
"in general, enable more debug printouts"),
|
"in general, enable more debug printouts (default: no)"),
|
||||||
|
// o/w tests have closure@path
|
||||||
span_free_formats: bool = (false, parse_bool, [UNTRACKED],
|
span_free_formats: bool = (false, parse_bool, [UNTRACKED],
|
||||||
"when debug-printing compiler state, do not include spans"), // o/w tests have closure@path
|
"exclude spans when debug-printing compiler state (default: no)"),
|
||||||
identify_regions: bool = (false, parse_bool, [UNTRACKED],
|
identify_regions: bool = (false, parse_bool, [UNTRACKED],
|
||||||
"make unnamed regions display as '# (where # is some non-ident unique id)"),
|
"display unnamed regions as `'<id>`, using a non-ident unique id (default: no)"),
|
||||||
borrowck: String = ("migrate".to_string(), parse_string, [UNTRACKED],
|
borrowck: String = ("migrate".to_string(), parse_string, [UNTRACKED],
|
||||||
"select which borrowck is used (`mir` or `migrate`)"),
|
"select which borrowck is used (`mir` or `migrate`) (default: `migrate`)"),
|
||||||
time_passes: bool = (false, parse_bool, [UNTRACKED],
|
time_passes: bool = (false, parse_bool, [UNTRACKED],
|
||||||
"measure time of each rustc pass"),
|
"measure time of each rustc pass (default: no)"),
|
||||||
time: bool = (false, parse_bool, [UNTRACKED],
|
time: bool = (false, parse_bool, [UNTRACKED],
|
||||||
"measure time of rustc processes"),
|
"measure time of rustc processes (default: no)"),
|
||||||
time_llvm_passes: bool = (false, parse_bool, [UNTRACKED],
|
time_llvm_passes: bool = (false, parse_bool, [UNTRACKED],
|
||||||
"measure time of each LLVM pass"),
|
"measure time of each LLVM pass (default: no)"),
|
||||||
llvm_time_trace: bool = (false, parse_bool, [UNTRACKED],
|
llvm_time_trace: bool = (false, parse_bool, [UNTRACKED],
|
||||||
"generate JSON tracing data file from LLVM data"),
|
"generate JSON tracing data file from LLVM data (default: no)"),
|
||||||
input_stats: bool = (false, parse_bool, [UNTRACKED],
|
input_stats: bool = (false, parse_bool, [UNTRACKED],
|
||||||
"gather statistics about the input"),
|
"gather statistics about the input (default: no)"),
|
||||||
asm_comments: bool = (false, parse_bool, [TRACKED],
|
asm_comments: bool = (false, parse_bool, [TRACKED],
|
||||||
"generate comments into the assembly (may change behavior)"),
|
"generate comments into the assembly (may change behavior) (default: no)"),
|
||||||
verify_llvm_ir: bool = (false, parse_bool, [TRACKED],
|
verify_llvm_ir: bool = (false, parse_bool, [TRACKED],
|
||||||
"verify LLVM IR"),
|
"verify LLVM IR (default: no)"),
|
||||||
borrowck_stats: bool = (false, parse_bool, [UNTRACKED],
|
borrowck_stats: bool = (false, parse_bool, [UNTRACKED],
|
||||||
"gather borrowck statistics"),
|
"gather borrowck statistics (default: no)"),
|
||||||
no_landing_pads: bool = (false, parse_bool, [TRACKED],
|
no_landing_pads: bool = (false, parse_bool, [TRACKED],
|
||||||
"omit landing pads for unwinding"),
|
"omit landing pads for unwinding (default: no)"),
|
||||||
fewer_names: bool = (false, parse_bool, [TRACKED],
|
fewer_names: bool = (false, parse_bool, [TRACKED],
|
||||||
"reduce memory use by retaining fewer names within compilation artifacts (LLVM-IR)"),
|
"reduce memory use by retaining fewer names within compilation artifacts (LLVM-IR) \
|
||||||
|
(default: no)"),
|
||||||
meta_stats: bool = (false, parse_bool, [UNTRACKED],
|
meta_stats: bool = (false, parse_bool, [UNTRACKED],
|
||||||
"gather metadata statistics"),
|
"gather metadata statistics (default: no)"),
|
||||||
print_link_args: bool = (false, parse_bool, [UNTRACKED],
|
print_link_args: bool = (false, parse_bool, [UNTRACKED],
|
||||||
"print the arguments passed to the linker"),
|
"print the arguments passed to the linker (default: no)"),
|
||||||
print_llvm_passes: bool = (false, parse_bool, [UNTRACKED],
|
print_llvm_passes: bool = (false, parse_bool, [UNTRACKED],
|
||||||
"prints the LLVM optimization passes being run"),
|
"print the LLVM optimization passes being run (default: no)"),
|
||||||
ast_json: bool = (false, parse_bool, [UNTRACKED],
|
ast_json: bool = (false, parse_bool, [UNTRACKED],
|
||||||
"print the AST as JSON and halt"),
|
"print the AST as JSON and halt (default: no)"),
|
||||||
// We default to 1 here since we want to behave like
|
// We default to 1 here since we want to behave like
|
||||||
// a sequential compiler for now. This'll likely be adjusted
|
// a sequential compiler for now. This'll likely be adjusted
|
||||||
// in the future. Note that -Zthreads=0 is the way to get
|
// in the future. Note that -Zthreads=0 is the way to get
|
||||||
|
@ -743,69 +745,72 @@ options! {DebuggingOptions, DebuggingSetter, basic_debugging_options,
|
||||||
threads: usize = (1, parse_threads, [UNTRACKED],
|
threads: usize = (1, parse_threads, [UNTRACKED],
|
||||||
"use a thread pool with N threads"),
|
"use a thread pool with N threads"),
|
||||||
ast_json_noexpand: bool = (false, parse_bool, [UNTRACKED],
|
ast_json_noexpand: bool = (false, parse_bool, [UNTRACKED],
|
||||||
"print the pre-expansion AST as JSON and halt"),
|
"print the pre-expansion AST as JSON and halt (default: no)"),
|
||||||
ls: bool = (false, parse_bool, [UNTRACKED],
|
ls: bool = (false, parse_bool, [UNTRACKED],
|
||||||
"list the symbols defined by a library crate"),
|
"list the symbols defined by a library crate (default: no)"),
|
||||||
save_analysis: bool = (false, parse_bool, [UNTRACKED],
|
save_analysis: bool = (false, parse_bool, [UNTRACKED],
|
||||||
"write syntax and type analysis (in JSON format) information, in \
|
"write syntax and type analysis (in JSON format) information, in \
|
||||||
addition to normal output"),
|
addition to normal output (default: no)"),
|
||||||
print_region_graph: bool = (false, parse_bool, [UNTRACKED],
|
print_region_graph: bool = (false, parse_bool, [UNTRACKED],
|
||||||
"prints region inference graph. \
|
"prints region inference graph. \
|
||||||
Use with RUST_REGION_GRAPH=help for more info"),
|
Use with RUST_REGION_GRAPH=help for more info (default: no)"),
|
||||||
parse_only: bool = (false, parse_bool, [UNTRACKED],
|
parse_only: bool = (false, parse_bool, [UNTRACKED],
|
||||||
"parse only; do not compile, assemble, or link"),
|
"parse only; do not compile, assemble, or link (default: no)"),
|
||||||
dual_proc_macros: bool = (false, parse_bool, [TRACKED],
|
dual_proc_macros: bool = (false, parse_bool, [TRACKED],
|
||||||
"load proc macros for both target and host, but only link to the target"),
|
"load proc macros for both target and host, but only link to the target (default: no)"),
|
||||||
no_codegen: bool = (false, parse_bool, [TRACKED],
|
no_codegen: bool = (false, parse_bool, [TRACKED],
|
||||||
"run all passes except codegen; no output"),
|
"run all passes except codegen; no output (default: no)"),
|
||||||
treat_err_as_bug: Option<usize> = (None, parse_treat_err_as_bug, [TRACKED],
|
treat_err_as_bug: Option<usize> = (None, parse_treat_err_as_bug, [TRACKED],
|
||||||
"treat error number `val` that occurs as bug"),
|
"treat error number `val` that occurs as bug"),
|
||||||
report_delayed_bugs: bool = (false, parse_bool, [TRACKED],
|
report_delayed_bugs: bool = (false, parse_bool, [TRACKED],
|
||||||
"immediately print bugs registered with `delay_span_bug`"),
|
"immediately print bugs registered with `delay_span_bug` (default: no)"),
|
||||||
macro_backtrace: bool = (false, parse_bool, [UNTRACKED],
|
macro_backtrace: bool = (false, parse_bool, [UNTRACKED],
|
||||||
"show macro backtraces"),
|
"show macro backtraces (default: no)"),
|
||||||
teach: bool = (false, parse_bool, [TRACKED],
|
teach: bool = (false, parse_bool, [TRACKED],
|
||||||
"show extended diagnostic help"),
|
"show extended diagnostic help (default: no)"),
|
||||||
terminal_width: Option<usize> = (None, parse_opt_uint, [UNTRACKED],
|
terminal_width: Option<usize> = (None, parse_opt_uint, [UNTRACKED],
|
||||||
"set the current terminal width"),
|
"set the current terminal width"),
|
||||||
panic_abort_tests: bool = (false, parse_bool, [TRACKED],
|
panic_abort_tests: bool = (false, parse_bool, [TRACKED],
|
||||||
"support compiling tests with panic=abort"),
|
"support compiling tests with panic=abort (default: no)"),
|
||||||
dep_tasks: bool = (false, parse_bool, [UNTRACKED],
|
dep_tasks: bool = (false, parse_bool, [UNTRACKED],
|
||||||
"print tasks that execute and the color their dep node gets (requires debug build)"),
|
"print tasks that execute and the color their dep node gets (requires debug build) \
|
||||||
|
(default: no)"),
|
||||||
incremental_info: bool = (false, parse_bool, [UNTRACKED],
|
incremental_info: bool = (false, parse_bool, [UNTRACKED],
|
||||||
"print high-level information about incremental reuse (or the lack thereof)"),
|
"print high-level information about incremental reuse (or the lack thereof) \
|
||||||
|
(default: no)"),
|
||||||
incremental_verify_ich: bool = (false, parse_bool, [UNTRACKED],
|
incremental_verify_ich: bool = (false, parse_bool, [UNTRACKED],
|
||||||
"verify incr. comp. hashes of green query instances"),
|
"verify incr. comp. hashes of green query instances (default: no)"),
|
||||||
incremental_ignore_spans: bool = (false, parse_bool, [UNTRACKED],
|
incremental_ignore_spans: bool = (false, parse_bool, [UNTRACKED],
|
||||||
"ignore spans during ICH computation -- used for testing"),
|
"ignore spans during ICH computation -- used for testing (default: no)"),
|
||||||
instrument_mcount: bool = (false, parse_bool, [TRACKED],
|
instrument_mcount: bool = (false, parse_bool, [TRACKED],
|
||||||
"insert function instrument code for mcount-based tracing"),
|
"insert function instrument code for mcount-based tracing (default: no)"),
|
||||||
dump_dep_graph: bool = (false, parse_bool, [UNTRACKED],
|
dump_dep_graph: bool = (false, parse_bool, [UNTRACKED],
|
||||||
"dump the dependency graph to $RUST_DEP_GRAPH (default: /tmp/dep_graph.gv)"),
|
"dump the dependency graph to $RUST_DEP_GRAPH (default: /tmp/dep_graph.gv) \
|
||||||
|
(default: no)"),
|
||||||
query_dep_graph: bool = (false, parse_bool, [UNTRACKED],
|
query_dep_graph: bool = (false, parse_bool, [UNTRACKED],
|
||||||
"enable queries of the dependency graph for regression testing"),
|
"enable queries of the dependency graph for regression testing (default: no)"),
|
||||||
no_analysis: bool = (false, parse_bool, [UNTRACKED],
|
no_analysis: bool = (false, parse_bool, [UNTRACKED],
|
||||||
"parse and expand the source, but run no analysis"),
|
"parse and expand the source, but run no analysis (default: no)"),
|
||||||
unstable_options: bool = (false, parse_bool, [UNTRACKED],
|
unstable_options: bool = (false, parse_bool, [UNTRACKED],
|
||||||
"adds unstable command line options to rustc interface"),
|
"adds unstable command line options to rustc interface (default: no)"),
|
||||||
force_overflow_checks: Option<bool> = (None, parse_opt_bool, [TRACKED],
|
force_overflow_checks: Option<bool> = (None, parse_opt_bool, [TRACKED],
|
||||||
"force overflow checks on or off"),
|
"force overflow checks on or off"),
|
||||||
trace_macros: bool = (false, parse_bool, [UNTRACKED],
|
trace_macros: bool = (false, parse_bool, [UNTRACKED],
|
||||||
"for every macro invocation, print its name and arguments"),
|
"for every macro invocation, print its name and arguments (default: no)"),
|
||||||
debug_macros: bool = (false, parse_bool, [TRACKED],
|
debug_macros: bool = (false, parse_bool, [TRACKED],
|
||||||
"emit line numbers debug info inside macros"),
|
"emit line numbers debug info inside macros (default: no)"),
|
||||||
no_generate_arange_section: bool = (false, parse_bool, [TRACKED],
|
no_generate_arange_section: bool = (false, parse_bool, [TRACKED],
|
||||||
"don't generate DWARF address ranges that give faster lookups"),
|
"omit DWARF address ranges that give faster lookups (default: no)"),
|
||||||
keep_hygiene_data: bool = (false, parse_bool, [UNTRACKED],
|
keep_hygiene_data: bool = (false, parse_bool, [UNTRACKED],
|
||||||
"don't clear the hygiene data after analysis"),
|
"keep hygiene data after analysis (default: no)"),
|
||||||
show_span: Option<String> = (None, parse_opt_string, [TRACKED],
|
show_span: Option<String> = (None, parse_opt_string, [TRACKED],
|
||||||
"show spans for compiler debugging (expr|pat|ty)"),
|
"show spans for compiler debugging (expr|pat|ty)"),
|
||||||
print_type_sizes: bool = (false, parse_bool, [UNTRACKED],
|
print_type_sizes: bool = (false, parse_bool, [UNTRACKED],
|
||||||
"print layout information for each type encountered"),
|
"print layout information for each type encountered (default: no)"),
|
||||||
print_mono_items: Option<String> = (None, parse_opt_string, [UNTRACKED],
|
print_mono_items: Option<String> = (None, parse_opt_string, [UNTRACKED],
|
||||||
"print the result of the monomorphization collection pass"),
|
"print the result of the monomorphization collection pass"),
|
||||||
mir_opt_level: usize = (1, parse_uint, [TRACKED],
|
mir_opt_level: usize = (1, parse_uint, [TRACKED],
|
||||||
"set the MIR optimization level (0-3, default: 1)"),
|
"MIR optimization level (0-3; default: 1)"),
|
||||||
mutable_noalias: bool = (false, parse_bool, [TRACKED],
|
mutable_noalias: bool = (false, parse_bool, [TRACKED],
|
||||||
"emit noalias metadata for mutable references (default: no)"),
|
"emit noalias metadata for mutable references (default: no)"),
|
||||||
dump_mir: Option<String> = (None, parse_opt_string, [UNTRACKED],
|
dump_mir: Option<String> = (None, parse_opt_string, [UNTRACKED],
|
||||||
|
@ -817,29 +822,30 @@ options! {DebuggingOptions, DebuggingSetter, basic_debugging_options,
|
||||||
`foo | bar` all passes for function names containing 'foo' or 'bar'."),
|
`foo | bar` all passes for function names containing 'foo' or 'bar'."),
|
||||||
|
|
||||||
dump_mir_dir: String = ("mir_dump".to_string(), parse_string, [UNTRACKED],
|
dump_mir_dir: String = ("mir_dump".to_string(), parse_string, [UNTRACKED],
|
||||||
"the directory the MIR is dumped into"),
|
"the directory the MIR is dumped into (default: `mir_dump`)"),
|
||||||
dump_mir_graphviz: bool = (false, parse_bool, [UNTRACKED],
|
dump_mir_graphviz: bool = (false, parse_bool, [UNTRACKED],
|
||||||
"in addition to `.mir` files, create graphviz `.dot` files"),
|
"in addition to `.mir` files, create graphviz `.dot` files (default: no)"),
|
||||||
dump_mir_dataflow: bool = (false, parse_bool, [UNTRACKED],
|
dump_mir_dataflow: bool = (false, parse_bool, [UNTRACKED],
|
||||||
"in addition to `.mir` files, create graphviz `.dot` files with dataflow results"),
|
"in addition to `.mir` files, create graphviz `.dot` files with dataflow results (default: no)"),
|
||||||
dump_mir_exclude_pass_number: bool = (false, parse_bool, [UNTRACKED],
|
dump_mir_exclude_pass_number: bool = (false, parse_bool, [UNTRACKED],
|
||||||
"if set, exclude the pass number when dumping MIR (used in tests)"),
|
"exclude the pass number when dumping MIR (used in tests) (default: no)"),
|
||||||
mir_emit_retag: bool = (false, parse_bool, [TRACKED],
|
mir_emit_retag: bool = (false, parse_bool, [TRACKED],
|
||||||
"emit Retagging MIR statements, interpreted e.g., by miri; implies -Zmir-opt-level=0"),
|
"emit Retagging MIR statements, interpreted e.g., by miri; implies -Zmir-opt-level=0 \
|
||||||
|
(default: no)"),
|
||||||
perf_stats: bool = (false, parse_bool, [UNTRACKED],
|
perf_stats: bool = (false, parse_bool, [UNTRACKED],
|
||||||
"print some performance-related statistics"),
|
"print some performance-related statistics (default: no)"),
|
||||||
query_stats: bool = (false, parse_bool, [UNTRACKED],
|
query_stats: bool = (false, parse_bool, [UNTRACKED],
|
||||||
"print some statistics about the query system"),
|
"print some statistics about the query system (default: no)"),
|
||||||
hir_stats: bool = (false, parse_bool, [UNTRACKED],
|
hir_stats: bool = (false, parse_bool, [UNTRACKED],
|
||||||
"print some statistics about AST and HIR"),
|
"print some statistics about AST and HIR (default: no)"),
|
||||||
always_encode_mir: bool = (false, parse_bool, [TRACKED],
|
always_encode_mir: bool = (false, parse_bool, [TRACKED],
|
||||||
"encode MIR of all functions into the crate metadata"),
|
"encode MIR of all functions into the crate metadata (default: no)"),
|
||||||
unleash_the_miri_inside_of_you: bool = (false, parse_bool, [TRACKED],
|
unleash_the_miri_inside_of_you: bool = (false, parse_bool, [TRACKED],
|
||||||
"take the breaks off const evaluation. NOTE: this is unsound"),
|
"take the brakes off const evaluation. NOTE: this is unsound (default: no)"),
|
||||||
osx_rpath_install_name: bool = (false, parse_bool, [TRACKED],
|
osx_rpath_install_name: bool = (false, parse_bool, [TRACKED],
|
||||||
"pass `-install_name @rpath/...` to the macOS linker"),
|
"pass `-install_name @rpath/...` to the macOS linker (default: no)"),
|
||||||
sanitizer: Option<Sanitizer> = (None, parse_sanitizer, [TRACKED],
|
sanitizer: Option<Sanitizer> = (None, parse_sanitizer, [TRACKED],
|
||||||
"use a sanitizer"),
|
"use a sanitizer"),
|
||||||
sanitizer_recover: Vec<Sanitizer> = (vec![], parse_sanitizer_list, [TRACKED],
|
sanitizer_recover: Vec<Sanitizer> = (vec![], parse_sanitizer_list, [TRACKED],
|
||||||
"enable recovery for selected sanitizers"),
|
"enable recovery for selected sanitizers"),
|
||||||
sanitizer_memory_track_origins: usize = (0, parse_sanitizer_memory_track_origins, [TRACKED],
|
sanitizer_memory_track_origins: usize = (0, parse_sanitizer_memory_track_origins, [TRACKED],
|
||||||
|
@ -849,23 +855,24 @@ options! {DebuggingOptions, DebuggingSetter, basic_debugging_options,
|
||||||
print_fuel: Option<String> = (None, parse_opt_string, [TRACKED],
|
print_fuel: Option<String> = (None, parse_opt_string, [TRACKED],
|
||||||
"make rustc print the total optimization fuel used by a crate"),
|
"make rustc print the total optimization fuel used by a crate"),
|
||||||
force_unstable_if_unmarked: bool = (false, parse_bool, [TRACKED],
|
force_unstable_if_unmarked: bool = (false, parse_bool, [TRACKED],
|
||||||
"force all crates to be `rustc_private` unstable"),
|
"force all crates to be `rustc_private` unstable (default: no)"),
|
||||||
pre_link_arg: (/* redirected to pre_link_args */) = ((), parse_string_push, [UNTRACKED],
|
pre_link_arg: (/* redirected to pre_link_args */) = ((), parse_string_push, [UNTRACKED],
|
||||||
"a single extra argument to prepend the linker invocation (can be used several times)"),
|
"a single extra argument to prepend the linker invocation (can be used several times)"),
|
||||||
pre_link_args: Vec<String> = (Vec::new(), parse_list, [UNTRACKED],
|
pre_link_args: Vec<String> = (Vec::new(), parse_list, [UNTRACKED],
|
||||||
"extra arguments to prepend to the linker invocation (space separated)"),
|
"extra arguments to prepend to the linker invocation (space separated)"),
|
||||||
profile: bool = (false, parse_bool, [TRACKED],
|
profile: bool = (false, parse_bool, [TRACKED],
|
||||||
"insert profiling code"),
|
"insert profiling code (default: no)"),
|
||||||
no_profiler_runtime: bool = (false, parse_bool, [TRACKED],
|
no_profiler_runtime: bool = (false, parse_bool, [TRACKED],
|
||||||
"don't automatically inject the profiler_builtins crate"),
|
"prevent automatic injection of the profiler_builtins crate"),
|
||||||
relro_level: Option<RelroLevel> = (None, parse_relro_level, [TRACKED],
|
relro_level: Option<RelroLevel> = (None, parse_relro_level, [TRACKED],
|
||||||
"choose which RELRO level to use"),
|
"choose which RELRO level to use"),
|
||||||
nll_facts: bool = (false, parse_bool, [UNTRACKED],
|
nll_facts: bool = (false, parse_bool, [UNTRACKED],
|
||||||
"dump facts from NLL analysis into side files"),
|
"dump facts from NLL analysis into side files (default: no)"),
|
||||||
dont_buffer_diagnostics: bool = (false, parse_bool, [UNTRACKED],
|
dont_buffer_diagnostics: bool = (false, parse_bool, [UNTRACKED],
|
||||||
"emit diagnostics rather than buffering (breaks NLL error downgrading, sorting)"),
|
"emit diagnostics rather than buffering (breaks NLL error downgrading, sorting) \
|
||||||
|
(default: no)"),
|
||||||
polonius: bool = (false, parse_bool, [UNTRACKED],
|
polonius: bool = (false, parse_bool, [UNTRACKED],
|
||||||
"enable polonius-based borrow-checker"),
|
"enable polonius-based borrow-checker (default: no)"),
|
||||||
thinlto: Option<bool> = (None, parse_opt_bool, [TRACKED],
|
thinlto: Option<bool> = (None, parse_opt_bool, [TRACKED],
|
||||||
"enable ThinLTO when possible"),
|
"enable ThinLTO when possible"),
|
||||||
inline_in_all_cgus: Option<bool> = (None, parse_opt_bool, [TRACKED],
|
inline_in_all_cgus: Option<bool> = (None, parse_opt_bool, [TRACKED],
|
||||||
|
@ -874,12 +881,12 @@ options! {DebuggingOptions, DebuggingSetter, basic_debugging_options,
|
||||||
"choose the TLS model to use (`rustc --print tls-models` for details)"),
|
"choose the TLS model to use (`rustc --print tls-models` for details)"),
|
||||||
saturating_float_casts: bool = (false, parse_bool, [TRACKED],
|
saturating_float_casts: bool = (false, parse_bool, [TRACKED],
|
||||||
"make float->int casts UB-free: numbers outside the integer type's range are clipped to \
|
"make float->int casts UB-free: numbers outside the integer type's range are clipped to \
|
||||||
the max/min integer respectively, and NaN is mapped to 0"),
|
the max/min integer respectively, and NaN is mapped to 0 (default: no)"),
|
||||||
human_readable_cgu_names: bool = (false, parse_bool, [TRACKED],
|
human_readable_cgu_names: bool = (false, parse_bool, [TRACKED],
|
||||||
"generate human-readable, predictable names for codegen units"),
|
"generate human-readable, predictable names for codegen units (default: no)"),
|
||||||
dep_info_omit_d_target: bool = (false, parse_bool, [TRACKED],
|
dep_info_omit_d_target: bool = (false, parse_bool, [TRACKED],
|
||||||
"in dep-info output, omit targets for tracking dependencies of the dep-info files \
|
"in dep-info output, omit targets for tracking dependencies of the dep-info files \
|
||||||
themselves"),
|
themselves (default: no)"),
|
||||||
unpretty: Option<String> = (None, parse_unpretty, [UNTRACKED],
|
unpretty: Option<String> = (None, parse_unpretty, [UNTRACKED],
|
||||||
"present the input source, unstable (and less-pretty) variants;
|
"present the input source, unstable (and less-pretty) variants;
|
||||||
valid types are any of the types for `--pretty`, as well as:
|
valid types are any of the types for `--pretty`, as well as:
|
||||||
|
@ -894,21 +901,22 @@ options! {DebuggingOptions, DebuggingSetter, basic_debugging_options,
|
||||||
// preserving that temporarily, but we're likely to switch the default
|
// preserving that temporarily, but we're likely to switch the default
|
||||||
// soon.
|
// soon.
|
||||||
run_dsymutil: bool = (true, parse_bool, [TRACKED],
|
run_dsymutil: bool = (true, parse_bool, [TRACKED],
|
||||||
"run `dsymutil` and delete intermediate object files"),
|
"if on Mac, run `dsymutil` and delete intermediate object files (default: yes)"),
|
||||||
ui_testing: bool = (false, parse_bool, [UNTRACKED],
|
ui_testing: bool = (false, parse_bool, [UNTRACKED],
|
||||||
"format compiler diagnostics in a way that's better suitable for UI testing"),
|
"emit compiler diagnostics in a form suitable for UI testing (default: no)"),
|
||||||
embed_bitcode: bool = (false, parse_bool, [TRACKED],
|
embed_bitcode: bool = (false, parse_bool, [TRACKED],
|
||||||
"embed LLVM bitcode in object files"),
|
"embed LLVM bitcode in object files (default: no)"),
|
||||||
strip_debuginfo_if_disabled: bool = (false, parse_bool, [TRACKED],
|
strip_debuginfo_if_disabled: bool = (false, parse_bool, [TRACKED],
|
||||||
"tell the linker to strip debuginfo when building without debuginfo enabled"),
|
"tell the linker to strip debuginfo when building without debuginfo enabled \
|
||||||
|
(default: no)"),
|
||||||
share_generics: Option<bool> = (None, parse_opt_bool, [TRACKED],
|
share_generics: Option<bool> = (None, parse_opt_bool, [TRACKED],
|
||||||
"make the current crate share its generic instantiations"),
|
"make the current crate share its generic instantiations"),
|
||||||
no_parallel_llvm: bool = (false, parse_bool, [UNTRACKED],
|
no_parallel_llvm: bool = (false, parse_bool, [UNTRACKED],
|
||||||
"don't run LLVM in parallel (while keeping codegen-units and ThinLTO)"),
|
"run LLVM in non-parallel mode (while keeping codegen-units and ThinLTO) (default: no)"),
|
||||||
no_leak_check: bool = (false, parse_bool, [UNTRACKED],
|
no_leak_check: bool = (false, parse_bool, [UNTRACKED],
|
||||||
"disables the 'leak check' for subtyping; unsound, but useful for tests"),
|
"disable the 'leak check' for subtyping; unsound, but useful for tests (default: no)"),
|
||||||
no_interleave_lints: bool = (false, parse_bool, [UNTRACKED],
|
no_interleave_lints: bool = (false, parse_bool, [UNTRACKED],
|
||||||
"don't interleave execution of lints; allows benchmarking individual lints"),
|
"execute lints separately; allows benchmarking individual lints (default: no)"),
|
||||||
crate_attr: Vec<String> = (Vec::new(), parse_string_push, [TRACKED],
|
crate_attr: Vec<String> = (Vec::new(), parse_string_push, [TRACKED],
|
||||||
"inject the given attribute in the crate"),
|
"inject the given attribute in the crate"),
|
||||||
self_profile: SwitchWithOptPath = (SwitchWithOptPath::Disabled,
|
self_profile: SwitchWithOptPath = (SwitchWithOptPath::Disabled,
|
||||||
|
@ -916,18 +924,18 @@ options! {DebuggingOptions, DebuggingSetter, basic_debugging_options,
|
||||||
"run the self profiler and output the raw event data"),
|
"run the self profiler and output the raw event data"),
|
||||||
// keep this in sync with the event filter names in librustc_data_structures/profiling.rs
|
// keep this in sync with the event filter names in librustc_data_structures/profiling.rs
|
||||||
self_profile_events: Option<Vec<String>> = (None, parse_opt_comma_list, [UNTRACKED],
|
self_profile_events: Option<Vec<String>> = (None, parse_opt_comma_list, [UNTRACKED],
|
||||||
"specifies which kinds of events get recorded by the self profiler;
|
"specify the events recorded by the self profiler;
|
||||||
for example: `-Z self-profile-events=default,query-keys`
|
for example: `-Z self-profile-events=default,query-keys`
|
||||||
all options: none, all, default, generic-activity, query-provider, query-cache-hit
|
all options: none, all, default, generic-activity, query-provider, query-cache-hit
|
||||||
query-blocked, incr-cache-load, query-keys, function-args, args, llvm"),
|
query-blocked, incr-cache-load, query-keys, function-args, args, llvm"),
|
||||||
emit_stack_sizes: bool = (false, parse_bool, [UNTRACKED],
|
emit_stack_sizes: bool = (false, parse_bool, [UNTRACKED],
|
||||||
"emits a section containing stack size metadata"),
|
"emit a section containing stack size metadata (default: no)"),
|
||||||
plt: Option<bool> = (None, parse_opt_bool, [TRACKED],
|
plt: Option<bool> = (None, parse_opt_bool, [TRACKED],
|
||||||
"whether to use the PLT when calling into shared libraries;
|
"whether to use the PLT when calling into shared libraries;
|
||||||
only has effect for PIC code on systems with ELF binaries
|
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)"),
|
||||||
merge_functions: Option<MergeFunctions> = (None, parse_merge_functions, [TRACKED],
|
merge_functions: Option<MergeFunctions> = (None, parse_merge_functions, [TRACKED],
|
||||||
"control the operation of the MergeFunctions LLVM pass, taking
|
"control the operation of the MergeFunctions LLVM pass, taking \
|
||||||
the same values as the target option of the same name"),
|
the same values as the target option of the same name"),
|
||||||
allow_features: Option<Vec<String>> = (None, parse_opt_comma_list, [TRACKED],
|
allow_features: Option<Vec<String>> = (None, parse_opt_comma_list, [TRACKED],
|
||||||
"only allow the listed language features to be enabled in code (space separated)"),
|
"only allow the listed language features to be enabled in code (space separated)"),
|
||||||
|
@ -935,22 +943,24 @@ options! {DebuggingOptions, DebuggingSetter, basic_debugging_options,
|
||||||
parse_symbol_mangling_version, [TRACKED],
|
parse_symbol_mangling_version, [TRACKED],
|
||||||
"which mangling version to use for symbol names"),
|
"which mangling version to use for symbol names"),
|
||||||
binary_dep_depinfo: bool = (false, parse_bool, [TRACKED],
|
binary_dep_depinfo: bool = (false, parse_bool, [TRACKED],
|
||||||
"include artifacts (sysroot, crate dependencies) used during compilation in dep-info"),
|
"include artifacts (sysroot, crate dependencies) used during compilation in dep-info \
|
||||||
|
(default: no)"),
|
||||||
insert_sideeffect: bool = (false, parse_bool, [TRACKED],
|
insert_sideeffect: bool = (false, parse_bool, [TRACKED],
|
||||||
"fix undefined behavior when a thread doesn't eventually make progress \
|
"fix undefined behavior when a thread doesn't eventually make progress \
|
||||||
(such as entering an empty infinite loop) by inserting llvm.sideeffect"),
|
(such as entering an empty infinite loop) by inserting llvm.sideeffect \
|
||||||
|
(default: no)"),
|
||||||
deduplicate_diagnostics: bool = (true, parse_bool, [UNTRACKED],
|
deduplicate_diagnostics: bool = (true, parse_bool, [UNTRACKED],
|
||||||
"deduplicate identical diagnostics"),
|
"deduplicate identical diagnostics (default: yes)"),
|
||||||
control_flow_guard: CFGuard = (CFGuard::Disabled, parse_cfguard, [UNTRACKED],
|
control_flow_guard: CFGuard = (CFGuard::Disabled, parse_cfguard, [UNTRACKED],
|
||||||
"use Windows Control Flow Guard (`disabled`, `nochecks` or `checks`)"),
|
"use Windows Control Flow Guard (`disabled`, `nochecks` or `checks`)"),
|
||||||
no_link: bool = (false, parse_bool, [TRACKED],
|
no_link: bool = (false, parse_bool, [TRACKED],
|
||||||
"compile without linking"),
|
"compile without linking (default: no)"),
|
||||||
link_only: bool = (false, parse_bool, [TRACKED],
|
link_only: bool = (false, parse_bool, [TRACKED],
|
||||||
"link the `.rlink` file generated by `-Z no-link`"),
|
"link the `.rlink` file generated by `-Z no-link` (default: no)"),
|
||||||
new_llvm_pass_manager: bool = (false, parse_bool, [TRACKED],
|
new_llvm_pass_manager: bool = (false, parse_bool, [TRACKED],
|
||||||
"use new LLVM pass manager"),
|
"use new LLVM pass manager (default: no)"),
|
||||||
link_native_libraries: bool = (true, parse_bool, [UNTRACKED],
|
link_native_libraries: bool = (true, parse_bool, [UNTRACKED],
|
||||||
"link native libraries in the linker invocation"),
|
"link native libraries in the linker invocation (default: yes)"),
|
||||||
src_hash_algorithm: Option<SourceFileHashAlgorithm> = (None, parse_src_file_hash, [TRACKED],
|
src_hash_algorithm: Option<SourceFileHashAlgorithm> = (None, parse_src_file_hash, [TRACKED],
|
||||||
"hash algorithm of source files in debug info (`md5`, or `sha1`)"),
|
"hash algorithm of source files in debug info (`md5`, or `sha1`)"),
|
||||||
}
|
}
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue