fuzz: allow generating shared memories (#4266)
`wasm-smith` v0.11 has support for generating shared memories when the `threads_enabled` configuration flag is set. This change turns on that flag occasionally. This also upgrades `wasm-smith` to v0.11.1 to always generate shared memory with a known maximum.
This commit is contained in:
@@ -43,7 +43,7 @@ At the time of writing, we have the following fuzz targets:
|
||||
the same results as the `wasmi` interpreter.
|
||||
* `instantiate`: Generate a Wasm module and Wasmtime configuration and attempt
|
||||
to compile and instantiate with them.
|
||||
* `instantiate`: Generate many Wasm modules and attempt to compile and
|
||||
* `instantiate-many`: Generate many Wasm modules and attempt to compile and
|
||||
instantiate them concurrently.
|
||||
* `spectests`: Pick a random spec test and run it with a generated
|
||||
configuration.
|
||||
|
||||
@@ -17,9 +17,12 @@ fn run(data: &[u8]) -> Result<()> {
|
||||
config.set_differential_config();
|
||||
|
||||
// Enable features that v8 has implemented
|
||||
config.module_config.config.simd_enabled = true;
|
||||
config.module_config.config.bulk_memory_enabled = true;
|
||||
config.module_config.config.reference_types_enabled = true;
|
||||
config.module_config.config.simd_enabled = u.arbitrary()?;
|
||||
config.module_config.config.bulk_memory_enabled = u.arbitrary()?;
|
||||
config.module_config.config.reference_types_enabled = u.arbitrary()?;
|
||||
// FIXME: to enable fuzzing with the threads proposal, see
|
||||
// https://github.com/bytecodealliance/wasmtime/issues/4268.
|
||||
// config.module_config.config.threads_enabled = u.arbitrary()?;
|
||||
|
||||
// Allow multiple tables, as set_differential_config() assumes reference
|
||||
// types are disabled and therefore sets max_tables to 1
|
||||
|
||||
Reference in New Issue
Block a user