Enable fuzzing the module linking implementation #2497
Merged
Conversation
This commit updates all the wasm-tools crates that we use and enables fuzzing of the module linking proposal in our various fuzz targets. This also refactors some of the dummy value generation logic to not be fallible and to always succeed, the thinking being that we don't want to accidentally hide errors while fuzzing. Additionally instantiation is only allowed to fail with a `Trap`, other failure reasons are unwrapped.
Subscribe to Label Actioncc @fitzgen, @peterhuene
This issue or pull request has been labeled: "cranelift", "cranelift:area:peepmatic", "cranelift:wasm", "fuzzing", "lightbeam", "wasmtime:api"
Thus the following users have been cc'd because of the following labels:
To subscribe or unsubscribe from this label, edit the |
|
Thanks for cleaning up the dummy imports stuff! |
| /// | ||
| /// This is done by using the expected type to generate a module on-the-fly. | ||
| pub fn dummy_module(store: &Store, ty: ModuleType) -> Module { | ||
| let mut wat = WatGenerator::new(); |
fitzgen
Dec 11, 2020
Member
This doesn't seem a ton easier than using wasm-encoder directly. Want to file a follow up issue that we can mark good-first-issue for some contributor to replace this with wasm-encoder? Would help us get a little bit more fuzzing throughput here.
This doesn't seem a ton easier than using wasm-encoder directly. Want to file a follow up issue that we can mark good-first-issue for some contributor to replace this with wasm-encoder? Would help us get a little bit more fuzzing throughput here.
fitzgen
Dec 11, 2020
Member
I guess I can just file it, since there was nothing else for me to nitpick before this merged :-p
I guess I can just file it, since there was nothing else for me to nitpick before this merged :-p
alexcrichton
Dec 11, 2020
Author
Member
Oh heh good point!
Oh heh good point!
9ccef59
into
bytecodealliance:main
23 checks passed
23 checks passed
Build wasmtime (aarch64-linux, ubuntu-latest, stable, aarch64-unknown-linux-gnu, gcc-aarch64-linu...
Details
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
This commit updates all the wasm-tools crates that we use and enables
fuzzing of the module linking proposal in our various fuzz targets. This
also refactors some of the dummy value generation logic to not be
fallible and to always succeed, the thinking being that we don't want to
accidentally hide errors while fuzzing. Additionally instantiation is
only allowed to fail with a
Trap, other failure reasons are unwrapped.