Update `wasmi` differential fuzzing
Wasmtime has implemented differential fuzzing against the wasmi interpreter. However, the currently supported wasmi version is very old and outdated.
Benefits
The wasmi interpreter has since evolved quite a lot and could be helpful to more extensively fuzzy test against Wasmtime's feature set.
- Fuzz test against modern
wasmiversions instead of ancient one. - Being able to fuzz test against some Wasm proposals whereas the old
wasmionly supported Wasm MVP. - Higher fuzz testing throughput since the newer
wasmiversions are a lot faster. - New
wasmiversions offer an API similar to the API of Wasmtime, therefore fuzz testing code should become slightly cleaner.
Downsides
The biggest downside is that the newer wasmi versions are not as battle tested as the old ones and therefore we might risk some false positives on the wasmi side which could introduce noise.
Implementation
I would open a PR myself if this issue is accepted. Shouldn't be too hard to update.
Alternatives
Stay on the current old wasmi version since it is quite stable and battle tested.
Updating would be great! If you'd like to send a PR I'd be happy to review. If you've got ideas about how to improve the differential fuzzing interface feel free to throw those in as well!
Subscribe to Label Action
cc @fitzgen
Thus the following users have been cc'd because of the following labels:
- fitzgen: fuzzing
To subscribe or unsubscribe from this label, edit the .github/subscribe-to-label.json configuration file.
Updating would be great! If you'd like to send a PR I'd be happy to review. If you've got ideas about how to improve the differential fuzzing interface feel free to throw those in as well!
Cool, I will come up with a PR in the next days. I have not yet taken an in-depth look at the Wasmtime fuzzing interface but will do when I am working on it and maybe come up with improvements. :)