diff --git a/fuzzers/fuzzbench_weighted/src/bin/libafl_cc.rs b/fuzzers/fuzzbench_weighted/src/bin/libafl_cc.rs index 68a84b0333..96644865ea 100644 --- a/fuzzers/fuzzbench_weighted/src/bin/libafl_cc.rs +++ b/fuzzers/fuzzbench_weighted/src/bin/libafl_cc.rs @@ -2,7 +2,7 @@ use libafl_cc::{ClangWrapper, CompilerWrapper, LLVMPasses}; use std::env; pub fn main() { - let args: Vec = env::args().collect(); + let mut args: Vec = env::args().collect(); if args.len() > 1 { let mut dir = env::current_exe().unwrap(); let wrapper_name = dir.file_name().unwrap().to_str().unwrap(); @@ -15,6 +15,9 @@ pub fn main() { dir.pop(); + // Must be always present, even without --libafl + args.push("-fsanitize-coverage=trace-pc-guard,trace-cmp".into()); + let mut cc = ClangWrapper::new(); #[cfg(target_os = "linux")] @@ -29,7 +32,6 @@ pub fn main() { .parse_args(&args) .expect("Failed to parse the command line") .link_staticlib(&dir, "fuzzbench") - .add_arg("-fsanitize-coverage=trace-pc-guard,trace-cmp") .add_pass(LLVMPasses::CmpLogRtn) .run() .expect("Failed to run the wrapped compiler") diff --git a/fuzzers/fuzzbench_weighted/src/lib.rs b/fuzzers/fuzzbench_weighted/src/lib.rs index 8f980aa934..66dfb9a7d5 100644 --- a/fuzzers/fuzzbench_weighted/src/lib.rs +++ b/fuzzers/fuzzbench_weighted/src/lib.rs @@ -318,8 +318,9 @@ fn fuzz( let power = StdPowerMutationalStage::new(mutator, &edges_observer); // A minimization+queue policy to get testcasess from the corpus - let scheduler = - IndexesLenTimeMinimizerScheduler::new(StdWeightedScheduler::new(Some(PowerSchedule::FAST))); + let scheduler = IndexesLenTimeMinimizerScheduler::new(StdWeightedScheduler::new(Some( + PowerSchedule::EXPLORE, + ))); // A fuzzer with feedbacks and a corpus scheduler let mut fuzzer = StdFuzzer::new(scheduler, feedback, objective);