Fuzzing: add use_egraphs option back to fuzzing config generator. (#5388)
This PR reverts #5128 (commit b3333bf9ea),
adding back the ability for the fuzzing config generator to set
the `use_egraphs` Cranelift option. This will start to fuzz the
egraphs-based optimization framework again, now that #5382 has landed.
This commit is contained in:
@@ -253,6 +253,7 @@ where
|
|||||||
"enable_incremental_compilation_cache_checks",
|
"enable_incremental_compilation_cache_checks",
|
||||||
"regalloc_checker",
|
"regalloc_checker",
|
||||||
"enable_llvm_abi_extensions",
|
"enable_llvm_abi_extensions",
|
||||||
|
"use_egraphs",
|
||||||
];
|
];
|
||||||
for flag_name in bool_settings {
|
for flag_name in bool_settings {
|
||||||
let enabled = self
|
let enabled = self
|
||||||
|
|||||||
@@ -140,6 +140,7 @@ impl Config {
|
|||||||
.native_unwind_info(self.wasmtime.native_unwind_info)
|
.native_unwind_info(self.wasmtime.native_unwind_info)
|
||||||
.cranelift_nan_canonicalization(self.wasmtime.canonicalize_nans)
|
.cranelift_nan_canonicalization(self.wasmtime.canonicalize_nans)
|
||||||
.cranelift_opt_level(self.wasmtime.opt_level.to_wasmtime())
|
.cranelift_opt_level(self.wasmtime.opt_level.to_wasmtime())
|
||||||
|
.cranelift_use_egraphs(self.wasmtime.use_egraphs)
|
||||||
.consume_fuel(self.wasmtime.consume_fuel)
|
.consume_fuel(self.wasmtime.consume_fuel)
|
||||||
.epoch_interruption(self.wasmtime.epoch_interruption)
|
.epoch_interruption(self.wasmtime.epoch_interruption)
|
||||||
.memory_init_cow(self.wasmtime.memory_init_cow)
|
.memory_init_cow(self.wasmtime.memory_init_cow)
|
||||||
@@ -336,6 +337,7 @@ impl<'a> Arbitrary<'a> for Config {
|
|||||||
#[derive(Arbitrary, Clone, Debug, Eq, Hash, PartialEq)]
|
#[derive(Arbitrary, Clone, Debug, Eq, Hash, PartialEq)]
|
||||||
pub struct WasmtimeConfig {
|
pub struct WasmtimeConfig {
|
||||||
opt_level: OptLevel,
|
opt_level: OptLevel,
|
||||||
|
use_egraphs: bool,
|
||||||
debug_info: bool,
|
debug_info: bool,
|
||||||
canonicalize_nans: bool,
|
canonicalize_nans: bool,
|
||||||
interruptable: bool,
|
interruptable: bool,
|
||||||
|
|||||||
Reference in New Issue
Block a user