Rename -Z no-verify to -Z verify-llvm-ir

This disables IR verification by default.
This commit is contained in:
Nikita Popov 2018-06-12 21:05:37 +02:00
parent 78a16443a3
commit 22cf833dd1
4 changed files with 11 additions and 11 deletions

View File

@ -1152,8 +1152,8 @@ fn parse_cross_lang_lto(slot: &mut CrossLangLto, v: Option<&str>) -> bool {
"gather codegen statistics"),
asm_comments: bool = (false, parse_bool, [TRACKED],
"generate comments into the assembly (may change behavior)"),
no_verify: bool = (false, parse_bool, [TRACKED],
"skip LLVM verification"),
verify_llvm_ir: bool = (false, parse_bool, [TRACKED],
"verify LLVM IR"),
borrowck_stats: bool = (false, parse_bool, [UNTRACKED],
"gather borrowck statistics"),
no_landing_pads: bool = (false, parse_bool, [TRACKED],
@ -3097,7 +3097,7 @@ fn test_debugging_options_tracking_hash() {
assert!(reference.dep_tracking_hash() != opts.dep_tracking_hash());
opts = reference.clone();
opts.debugging_opts.no_verify = true;
opts.debugging_opts.verify_llvm_ir = true;
assert!(reference.dep_tracking_hash() != opts.dep_tracking_hash());
opts = reference.clone();

View File

@ -513,8 +513,8 @@ pub fn meta_stats(&self) -> bool {
pub fn asm_comments(&self) -> bool {
self.opts.debugging_opts.asm_comments
}
pub fn no_verify(&self) -> bool {
self.opts.debugging_opts.no_verify
pub fn verify_llvm_ir(&self) -> bool {
self.opts.debugging_opts.verify_llvm_ir
}
pub fn borrowck_stats(&self) -> bool {
self.opts.debugging_opts.borrowck_stats

View File

@ -462,7 +462,7 @@ fn run_pass_manager(cgcx: &CodegenContext,
let pm = llvm::LLVMCreatePassManager();
llvm::LLVMRustAddAnalysisPasses(tm, pm, llmod);
if !config.no_verify {
if config.verify_llvm_ir {
let pass = llvm::LLVMRustFindAndCreatePass("verify\0".as_ptr() as *const _);
assert!(!pass.is_null());
llvm::LLVMRustAddPass(pm, pass);
@ -497,7 +497,7 @@ fn run_pass_manager(cgcx: &CodegenContext,
}
});
if !config.no_verify {
if config.verify_llvm_ir {
let pass = llvm::LLVMRustFindAndCreatePass("verify\0".as_ptr() as *const _);
assert!(!pass.is_null());
llvm::LLVMRustAddPass(pm, pass);

View File

@ -232,7 +232,7 @@ pub struct ModuleConfig {
emit_obj: bool,
// Miscellaneous flags. These are mostly copied from command-line
// options.
pub no_verify: bool,
pub verify_llvm_ir: bool,
no_prepopulate_passes: bool,
no_builtins: bool,
time_passes: bool,
@ -271,7 +271,7 @@ fn new(passes: Vec<String>) -> ModuleConfig {
embed_bitcode_marker: false,
no_integrated_as: false,
no_verify: false,
verify_llvm_ir: false,
no_prepopulate_passes: false,
no_builtins: false,
time_passes: false,
@ -283,7 +283,7 @@ fn new(passes: Vec<String>) -> ModuleConfig {
}
fn set_flags(&mut self, sess: &Session, no_builtins: bool) {
self.no_verify = sess.no_verify();
self.verify_llvm_ir = sess.verify_llvm_ir();
self.no_prepopulate_passes = sess.opts.cg.no_prepopulate_passes;
self.no_builtins = no_builtins || sess.target.target.options.no_builtins;
self.time_passes = sess.time_passes();
@ -542,7 +542,7 @@ unsafe fn optimize(cgcx: &CodegenContext,
true
};
if !config.no_verify { assert!(addpass("verify")); }
if config.verify_llvm_ir { assert!(addpass("verify")); }
if !config.no_prepopulate_passes {
llvm::LLVMRustAddAnalysisPasses(tm, fpm, llmod);
llvm::LLVMRustAddAnalysisPasses(tm, mpm, llmod);