Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add differential fuzzing against wasmi (a Wasm interpreter). #2453

Merged
merged 1 commit into from
Dec 2, 2020

Commits on Dec 2, 2020

  1. Add differential fuzzing against wasmi (a Wasm interpreter).

    This PR adds a new fuzz target, `differential_wasmi`, that runs a
    Cranelift-based Wasm backend alongside a simple third-party Wasm
    interpeter crate (`wasmi`).  The fuzzing runs the first function in a
    given module to completion on each side, and then diffs the return value
    and linear memory contents.
    
    This strategy should provide end-to-end coverage including both the Wasm
    translation to CLIF (which has seen some subtle and scary bugs at
    times), the lowering from CLIF to VCode, the register allocation, and
    the final code emission.
    
    This PR also adds a feature `experimental_x64` to the fuzzing crate (and
    the chain of dependencies down to `cranelift-codegen`) so that we can
    fuzz the new x86-64 backend as well as the current one.
    cfallin committed Dec 2, 2020
    Configuration menu
    Copy the full SHA
    bbdea06 View commit details
    Browse the repository at this point in the history