Files
wasmtime/cranelift/Cargo.toml
Afonso Bordado 7453bd5f0d Cranelift CLIF-level differential fuzzer (#3038)
* cranelift: Initial fuzzer implementation

* cranelift: Generate multiple test cases in fuzzer

* cranelift: Separate function generator in fuzzer

* cranelift: Insert random instructions in fuzzer

* cranelift: Rename gen_testcase

* cranelift: Implement div for unsigned values in interpreter

* cranelift: Run all test cases in fuzzer

* cranelift: Comment options in function_runner

* cranelift: Improve fuzzgen README.md

* cranelift: Fuzzgen remove unused variable

* cranelift: Fuzzer code style fixes

Thanks! @bjorn3

* cranelift: Fix nits in CLIF fuzzer

Thanks @cfallin!

* cranelift: Implement Arbitrary for TestCase

* cranelift: Remove gen_testcase

* cranelift: Move fuzzers to wasmtime fuzz directory

* cranelift: CLIF-Fuzzer ignore tests that produce traps

* cranelift: CLIF-Fuzzer create new fuzz target to validate generated testcases

* cranelift: Store clif-fuzzer config in a separate struct

* cranelift: Generate variables upfront per function

* cranelift: Prevent publishing of fuzzgen crate
2021-07-01 06:32:01 -07:00

57 lines
2.3 KiB
TOML

[package]
name = "cranelift-tools"
authors = ["The Cranelift Project Developers"]
version = "0.73.0"
description = "Binaries for testing the Cranelift libraries"
license = "Apache-2.0 WITH LLVM-exception"
documentation = "https://github.com/bytecodealliance/wasmtime/blob/main/cranelift/docs/index.md"
repository = "https://github.com/bytecodealliance/wasmtime"
publish = false
edition = "2018"
[[bin]]
name = "clif-util"
path = "src/clif-util.rs"
[dependencies]
cfg-if = "1.0"
cranelift-codegen = { path = "codegen", version = "0.75.0" }
cranelift-entity = { path = "entity", version = "0.75.0" }
cranelift-interpreter = { path = "interpreter", version = "0.75.0" }
cranelift-reader = { path = "reader", version = "0.75.0" }
cranelift-frontend = { path = "frontend", version = "0.75.0" }
cranelift-serde = { path = "serde", version = "0.75.0", optional = true }
cranelift-wasm = { path = "wasm", version = "0.75.0", optional = true }
cranelift-native = { path = "native", version = "0.75.0" }
cranelift-filetests = { path = "filetests", version = "0.73.0" }
cranelift-module = { path = "module", version = "0.75.0" }
cranelift-object = { path = "object", version = "0.75.0" }
cranelift-jit = { path = "jit", version = "0.75.0" }
cranelift-preopt = { path = "preopt", version = "0.75.0" }
cranelift = { path = "umbrella", version = "0.75.0" }
cranelift-fuzzgen = { path = "fuzzgen", version = "0.75.0" }
filecheck = "0.5.0"
log = "0.4.8"
termcolor = "1.1.2"
capstone = { version = "0.8.0", optional = true }
wat = { version = "1.0.36", optional = true }
target-lexicon = { version = "0.12", features = ["std"] }
peepmatic-souper = { path = "./peepmatic/crates/souper", version = "0.75.0", optional = true }
pretty_env_logger = "0.4.0"
rayon = { version = "1", optional = true }
file-per-thread-logger = "0.1.2"
indicatif = "0.13.0"
thiserror = "1.0.15"
walkdir = "2.2"
anyhow = "1.0.32"
structopt = "0.3.17"
[features]
default = ["disas", "wasm", "cranelift-codegen/all-arch", "peepmatic-souper", "souper-harvest"]
disas = ["capstone"]
enable-peepmatic = ["cranelift-codegen/enable-peepmatic", "cranelift-filetests/enable-peepmatic"]
wasm = ["wat", "cranelift-wasm"]
experimental_arm32 = ["cranelift-codegen/arm32", "cranelift-filetests/experimental_arm32"]
souper-harvest = ["cranelift-codegen/souper-harvest", "rayon"]
all-arch = ["cranelift-codegen/all-arch"]