You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Update some fuzzing defaults and infrastructure (#1793)
* Update some fuzzing defaults and infrastructure
* Update `wasm_smith::Config` to default-enable some stage4+ proposals:
`exceptions`, `gc`, `reference_types`, `relaxed_simd`, `simd`,
`tail_call`, `threads`. These can still all be disabled via
configuration and CLI flags.
* All stage4+ proposals are now swarm-enabled through
`Arbitrary for Config`
* Default generation of modules in wasm-tools's own fuzzing no longer
special-cases these proposals since they're all already handled.
* The `WasmFeatures` used for validating fuzz-generated modules now
starts with a minimal baseline set of features to ensure that all
proposals are disabled in the validator if the corresponding
wasm-smith configuration flag is disabled.
* The `wasm-mutate` crate was updated to return errors instead of
panicking for unsupported wasm proposals. All wasm proposals are now
enabled when passing to `wasm-mutate`.
The primary motivation for this commit was this last point where I'm
seeing panics on OSS-Fuzz for Wasmtime using `wasm-mutate` as a mutation
hook because `wasm-mutate` is panicking on some GC types. When fixing
that I noticed other fuzz-related things I wanted to clean up while I
was here.
* Fix some feature handling in more places
0 commit comments