fuzzing = ["libfuzzer-sys"]
[workspace]
-members = [".", "fuzz"]
\ No newline at end of file
+members = [".", "fuzz"]
+
+[profile.release]
+# for fuzzing
+debug = true
+debug-assertions = true
+overflow-checks = true
libfuzzer-sys = "0.4.5"
bigint-presentation-code-register-allocator = { path = "../", features = ["fuzzing"] }
-[profile.release]
-debug = true
-debug-assertions = true
-overflow-checks = true
-
[[bin]]
name = "fn_new"
path = "fuzz_targets/fn_new.rs"
#![no_main]
use bigint_presentation_code_register_allocator::{
interned::{GlobalState, Intern},
- loc::Loc,
loc_set::LocSet,
};
use libfuzzer_sys::fuzz_target;
fuzz_target!(|data: (HashSet<Loc>, HashSet<Loc>)| {
let (lhs_hash_set, rhs_hash_set) = data;
- let lhs = LocSet::from_iter(lhs_hash_set.iter().copied());
- let rhs = LocSet::from_iter(rhs_hash_set.iter().copied());
check_all_op_combos!(
&lhs_hash_set,
&rhs_hash_set,
error::{Error, Result},
index::{BlockIdx, InstIdx, InstRange, SSAValIdx},
interned::{GlobalState, Intern, Interned},
- loc::{BaseTy, Loc, LocFields, LocKind, Ty},
+ loc::{BaseTy, Loc, Ty},
loc_set::LocSet,
};
use arbitrary::Arbitrary;
fn reference_compute_result(
lhs: &Interned<LocSet>,
rhs: &Self,
- global_state: &GlobalState,
+ _global_state: &GlobalState,
) -> u32 {
lhs.iter().map(|loc| rhs.conflicts(loc) as u32).sum::<u32>()
}