├── README.md ├── afl-fuzz ├── Cargo.toml └── src │ ├── compile.rs │ ├── compile_with_llvm.rs │ ├── diff_compile.rs │ ├── diff_compile_backend.rs │ ├── simple_instantiate.rs │ ├── validate.rs │ └── validate_all_feat.rs ├── afl.md ├── cargofuzz.md ├── code_coverage.md ├── corpus_minimization.md ├── coverage ├── compile_debug │ └── cov │ │ ├── amber.png │ │ ├── bcov.css │ │ ├── compile_debug │ │ ├── compile_debug.61fcb268307c63d9 │ │ ├── amber.png │ │ ├── backend.rs.15dbaea2.html │ │ ├── backend.rs.15dbaea2.js │ │ ├── backend.rs.a5bd3b0a.html │ │ ├── backend.rs.a5bd3b0a.js │ │ ├── bcov.css │ │ ├── cache.rs.a40c6273.html │ │ ├── cache.rs.a40c6273.js │ │ ├── cobertura.xml │ │ ├── code.rs.795c8031.html │ │ ├── code.rs.795c8031.js │ │ ├── codegen.rs.8de2899c.html │ │ ├── codegen.rs.8de2899c.js │ │ ├── common.rs.787bb9aa.html │ │ ├── common.rs.787bb9aa.js │ │ ├── cov.xml │ │ ├── coverage.db │ │ ├── coverage.json │ │ ├── data │ │ │ ├── amber.png │ │ │ ├── bcov.css │ │ │ ├── glass.png │ │ │ ├── js │ │ │ │ ├── handlebars.js │ │ │ │ ├── jquery.min.js │ │ │ │ ├── jquery.tablesorter.widgets.min.js │ │ │ │ ├── kcov.js │ │ │ │ └── tablesorter.min.js │ │ │ └── tablesorter-theme.css │ │ ├── dynamic.rs.490debf8.html │ │ ├── dynamic.rs.490debf8.js │ │ ├── error.rs.83318faf.html │ │ ├── error.rs.83318faf.js │ │ ├── glass.png │ │ ├── index.html │ │ ├── index.js │ │ ├── intrinsics.rs.20551420.html │ │ ├── intrinsics.rs.20551420.js │ │ ├── lib.rs.32aa98f6.html │ │ ├── lib.rs.32aa98f6.js │ │ ├── lib.rs.8a6a6028.html │ │ ├── lib.rs.8a6a6028.js │ │ ├── lib.rs.c9e9bd1a.html │ │ ├── lib.rs.c9e9bd1a.js │ │ ├── lib.rs.d35578ae.html │ │ ├── lib.rs.d35578ae.js │ │ ├── main.rs.dbc4d83.html │ │ ├── main.rs.dbc4d83.js │ │ ├── map.rs.7f65bd8c.html │ │ ├── map.rs.7f65bd8c.js │ │ ├── memory.rs.6ec0b2f4.html │ │ ├── memory.rs.6ec0b2f4.js │ │ ├── metadata │ │ │ ├── 20551420 │ │ │ ├── 89822316 │ │ │ ├── 05893bb9 │ │ │ ├── 09bf9ed0 │ │ │ ├── 0dbc4d83 │ │ │ ├── 15dbaea2 │ │ │ ├── 16e4020c │ │ │ ├── 2546ba75 │ │ │ ├── 315d6b2c │ │ │ ├── 32aa98f6 │ │ │ ├── 390bac72 │ │ │ ├── 48b95e5c │ │ │ ├── 490debf8 │ │ │ ├── 59bddb4c │ │ │ ├── 6e2e7c86 │ │ │ ├── 6ec0b2f4 │ │ │ ├── 787bb9aa │ │ │ ├── 795c8031 │ │ │ ├── 7f65bd8c │ │ │ ├── 81ab9eb4 │ │ │ ├── 83318faf │ │ │ ├── 8a6a6028 │ │ │ ├── 8dd79674 │ │ │ ├── 8de2899c │ │ │ ├── 8ee3342f │ │ │ ├── 92cc11a9 │ │ │ ├── 99697b90 │ │ │ ├── a40c6273 │ │ │ ├── a5bd3b0a │ │ │ ├── c6283b98 │ │ │ ├── c9e9bd1a │ │ │ ├── d35578ae │ │ │ ├── d69ae479 │ │ │ ├── f08adfad │ │ │ └── fa2a2a55 │ │ ├── mod.rs.c6283b98.html │ │ ├── mod.rs.c6283b98.js │ │ ├── module.rs.48b95e5c.html │ │ ├── module.rs.48b95e5c.js │ │ ├── object_loader.cpp.2546ba75.html │ │ ├── object_loader.cpp.2546ba75.js │ │ ├── object_loader.hh.d69ae479.html │ │ ├── object_loader.hh.d69ae479.js │ │ ├── parse.rs.89822316.html │ │ ├── parse.rs.89822316.js │ │ ├── read_info.rs.81ab9eb4.html │ │ ├── read_info.rs.81ab9eb4.js │ │ ├── slice.rs.92cc11a9.html │ │ ├── slice.rs.92cc11a9.js │ │ ├── sonarqube.xml │ │ ├── stackmap.rs.390bac72.html │ │ ├── stackmap.rs.390bac72.js │ │ ├── state.rs.5893bb9.html │ │ ├── state.rs.5893bb9.js │ │ ├── state.rs.6e2e7c86.html │ │ ├── state.rs.6e2e7c86.js │ │ ├── static_.rs.fa2a2a55.html │ │ ├── static_.rs.fa2a2a55.js │ │ ├── structs.rs.8dd79674.html │ │ ├── structs.rs.8dd79674.js │ │ ├── summary.db │ │ ├── trampolines.rs.9bf9ed0.html │ │ ├── trampolines.rs.9bf9ed0.js │ │ ├── typed_func.rs.f08adfad.html │ │ ├── typed_func.rs.f08adfad.js │ │ ├── types.rs.8ee3342f.html │ │ ├── types.rs.8ee3342f.js │ │ ├── units.rs.99697b90.html │ │ ├── units.rs.99697b90.js │ │ ├── unix.rs.16e4020c.html │ │ ├── unix.rs.16e4020c.js │ │ ├── vm.rs.315d6b2c.html │ │ ├── vm.rs.315d6b2c.js │ │ ├── vmcalls.rs.59bddb4c.html │ │ └── vmcalls.rs.59bddb4c.js │ │ ├── data │ │ ├── amber.png │ │ ├── bcov.css │ │ ├── glass.png │ │ ├── js │ │ │ ├── handlebars.js │ │ │ ├── jquery.min.js │ │ │ ├── jquery.tablesorter.widgets.min.js │ │ │ ├── kcov.js │ │ │ └── tablesorter.min.js │ │ └── tablesorter-theme.css │ │ ├── glass.png │ │ ├── index.html │ │ ├── index.js │ │ └── libkcov_sowrapper.so └── debug_all_coverage │ ├── Cargo.toml │ └── src │ └── main.rs ├── crashes ├── panic_index_oob_all_backends.wasm ├── panic_index_oob_cranelift_blocktype.wasm ├── panic_index_out_range_llvm.wasm ├── panic_inkwell.wasm ├── panic_inkwell_min_unreach.wasm ├── panic_ref_type_not_enabled.wasm ├── panic_substract_overflow.wasm ├── panic_substract_overflow_peek1_extra.wasm ├── panic_unwrap_brtable_singlepass.wasm └── wasmparser_assert_failed_remove_frame_stack_types.wasm ├── crashes_diff_compile ├── SIGABRT.PC.7ffff7a3ded7.STACK.18027d4541.CODE.-6.ADDR.(nil).INSTR.mov____0x108(%rsp),%rcx.fuzz ├── SIGABRT.PC.7ffff7a3ded7.STACK.18a7b84e3c.CODE.-6.ADDR.(nil).INSTR.mov____0x108(%rsp),%rcx.fuzz ├── SIGABRT.PC.7ffff7a3ded7.STACK.18ac5b3beb.CODE.-6.ADDR.(nil).INSTR.mov____0x108(%rsp),%rcx.fuzz ├── SIGABRT.PC.7ffff7a3ded7.STACK.18b1c221ca.CODE.-6.ADDR.(nil).INSTR.mov____0x108(%rsp),%rcx.fuzz ├── SIGABRT.PC.7ffff7a3ded7.STACK.19040bf294.CODE.-6.ADDR.(nil).INSTR.mov____0x108(%rsp),%rcx.fuzz ├── SIGABRT.PC.7ffff7a3ded7.STACK.192a85f89f.CODE.-6.ADDR.(nil).INSTR.mov____0x108(%rsp),%rcx.fuzz ├── SIGABRT.PC.7ffff7a3ded7.STACK.19ac1d7279.CODE.-6.ADDR.(nil).INSTR.mov____0x108(%rsp),%rcx.fuzz ├── SIGABRT.PC.7ffff7a3ded7.STACK.19c789da48.CODE.-6.ADDR.(nil).INSTR.mov____0x108(%rsp),%rcx.fuzz ├── SIGABRT.PC.7ffff7a3ded7.STACK.19da9995bc.CODE.-6.ADDR.(nil).INSTR.mov____0x108(%rsp),%rcx.fuzz ├── SIGABRT.PC.7ffff7a3ded7.STACK.19e3e2b3b0.CODE.-6.ADDR.(nil).INSTR.mov____0x108(%rsp),%rcx.fuzz ├── SIGABRT.PC.7ffff7a3ded7.STACK.1a0cc5b3d3.CODE.-6.ADDR.(nil).INSTR.mov____0x108(%rsp),%rcx.fuzz ├── SIGABRT.PC.7ffff7a3ded7.STACK.1a15bc9f25.CODE.-6.ADDR.(nil).INSTR.mov____0x108(%rsp),%rcx.fuzz ├── SIGABRT.PC.7ffff7a3ded7.STACK.1a1a765f56.CODE.-6.ADDR.(nil).INSTR.mov____0x108(%rsp),%rcx.fuzz ├── SIGABRT.PC.7ffff7a3ded7.STACK.1a28d0d8b2.CODE.-6.ADDR.(nil).INSTR.mov____0x108(%rsp),%rcx.fuzz ├── SIGABRT.PC.7ffff7a3ded7.STACK.1a60183fe6.CODE.-6.ADDR.(nil).INSTR.mov____0x108(%rsp),%rcx.fuzz ├── SIGABRT.PC.7ffff7a3ded7.STACK.1a9d23d5a5.CODE.-6.ADDR.(nil).INSTR.mov____0x108(%rsp),%rcx.fuzz ├── SIGABRT.PC.7ffff7a3ded7.STACK.1bd9cf2307.CODE.-6.ADDR.(nil).INSTR.mov____0x108(%rsp),%rcx.fuzz ├── SIGABRT.PC.7ffff7a3ded7.STACK.c33420311.CODE.-6.ADDR.(nil).INSTR.mov____0x108(%rsp),%rcx.fuzz ├── SIGABRT.PC.7ffff7a3ded7.STACK.c72d1c509.CODE.-6.ADDR.(nil).INSTR.mov____0x108(%rsp),%rcx.fuzz ├── SIGABRT.PC.7ffff7a3ded7.STACK.cb4df982c.CODE.-6.ADDR.(nil).INSTR.mov____0x108(%rsp),%rcx.fuzz ├── SIGABRT.PC.7ffff7a3ded7.STACK.d224305cc.CODE.-6.ADDR.(nil).INSTR.mov____0x108(%rsp),%rcx.fuzz ├── SIGABRT.PC.7ffff7a3ded7.STACK.d243b7872.CODE.-6.ADDR.(nil).INSTR.mov____0x108(%rsp),%rcx.fuzz ├── SIGABRT.PC.7ffff7a3ded7.STACK.d6160ed01.CODE.-6.ADDR.(nil).INSTR.mov____0x108(%rsp),%rcx.fuzz ├── SIGABRT.PC.7ffff7a3ded7.STACK.df2f06eda.CODE.-6.ADDR.(nil).INSTR.mov____0x108(%rsp),%rcx.fuzz ├── SIGABRT.PC.7ffff7a3ded7.STACK.df82ce066.CODE.-6.ADDR.(nil).INSTR.mov____0x108(%rsp),%rcx.fuzz ├── SIGABRT.PC.7ffff7a3ded7.STACK.e1a98c8aa.CODE.-6.ADDR.(nil).INSTR.mov____0x108(%rsp),%rcx.fuzz ├── SIGABRT.PC.7ffff7a3ded7.STACK.e4dba3dc0.CODE.-6.ADDR.(nil).INSTR.mov____0x108(%rsp),%rcx.fuzz ├── SIGABRT.PC.7ffff7a3ded7.STACK.e624bf9a8.CODE.-6.ADDR.(nil).INSTR.mov____0x108(%rsp),%rcx.fuzz ├── SIGABRT.PC.7ffff7a3ded7.STACK.ecf8d81d0.CODE.-6.ADDR.(nil).INSTR.mov____0x108(%rsp),%rcx.fuzz ├── SIGABRT.PC.7ffff7a3ded7.STACK.ed626bd66.CODE.-6.ADDR.(nil).INSTR.mov____0x108(%rsp),%rcx.fuzz ├── SIGABRT.PC.7ffff7a3ded7.STACK.f54f424bc.CODE.-6.ADDR.(nil).INSTR.mov____0x108(%rsp),%rcx.fuzz ├── SIGABRT.PC.7ffff7a3ded7.STACK.f5b9316fc.CODE.-6.ADDR.(nil).INSTR.mov____0x108(%rsp),%rcx.fuzz ├── SIGABRT.PC.7ffff7a3ded7.STACK.f82c1e071.CODE.-6.ADDR.(nil).INSTR.mov____0x108(%rsp),%rcx.fuzz ├── SIGABRT.PC.7ffff7a3ded7.STACK.f96bc0843.CODE.-6.ADDR.(nil).INSTR.mov____0x108(%rsp),%rcx.fuzz ├── SIGBUS.PC.55555628d9c0.STACK.c7f9e6d2f.CODE.128.ADDR.(nil).INSTR.mov____%ebx,0x14(%rbp).fuzz ├── SIGSEGV.PC.555555a2daff.STACK.1a0bb48f24.CODE.1.ADDR.0x29.INSTR.mov____0x8(%rdx),%eax.fuzz ├── SIGSEGV.PC.555555d2dbf2.STACK.e0e93f9b5.CODE.128.ADDR.(nil).INSTR.cmpb___$0xb,0x8(%rdx).fuzz ├── SIGSEGV.PC.555555e2659e.STACK.19e7408b15.CODE.1.ADDR.0x18.INSTR.mov____%rdi,(%rcx).fuzz ├── SIGSEGV.PC.555555eb3777.STACK.fb6cb3e35.CODE.128.ADDR.(nil).INSTR.mov____%rdx,(%rsi).fuzz ├── SIGSEGV.PC.555555eb6f46.STACK.1ad8f40fe1.CODE.1.ADDR.0x30.INSTR.mov____0x30(%rsi),%ecx.fuzz ├── SIGSEGV.PC.555555f200f9.STACK.c3f2fb4a7.CODE.1.ADDR.0x4000.INSTR.mov____(%rax),%rbx.fuzz ├── SIGSEGV.PC.555555fa3ac3.STACK.fc3e57a23.CODE.128.ADDR.(nil).INSTR.cmpb___$0xd,0x8(%rax).fuzz ├── SIGSEGV.PC.555555fa9407.STACK.fc3e57a23.CODE.1.ADDR.0x31.INSTR.mov____0x10(%rbx),%cl.fuzz ├── SIGSEGV.PC.555556085de9.STACK.1b3353035d.CODE.1.ADDR.0x10.INSTR.cmpb___$0x4e,0x10(%rsi).fuzz ├── SIGSEGV.PC.5555560a1eaf.STACK.18fa00d979.CODE.1.ADDR.0x10.INSTR.mov____0x10(%rax),%cl.fuzz ├── SIGSEGV.PC.5555560f1eda.STACK.19fed2a974.CODE.1.ADDR.0x10.INSTR.cmpb___$0x4f,0x10(%rax).fuzz ├── SIGSEGV.PC.55555616f849.STACK.186b0c2f6b.CODE.1.ADDR.(nil).INSTR.mov____(%rcx),%rcx.fuzz ├── SIGSEGV.PC.5555563916d8.STACK.1b8aa97047.CODE.1.ADDR.0x4000.INSTR.mov____(%rdx),%rbx.fuzz ├── SIGSEGV.PC.5555563916e3.STACK.ed3d365a2.CODE.1.ADDR.0x38.INSTR.mov____0x18(%rbx),%r13.fuzz ├── SIGSEGV.PC.555556394f53.STACK.de363ce2a.CODE.1.ADDR.0x90.INSTR.cmpb___$0x4e,0x10(%rax).fuzz ├── SIGSEGV.PC.5555563a98f0.STACK.d727892b1.CODE.128.ADDR.(nil).INSTR.mov____0x10(%rdi),%cl.fuzz ├── SIGSEGV.PC.5555563afa40.STACK.f80a92482.CODE.1.ADDR.0x10.INSTR.mov____0x10(%rdi),%cl.fuzz ├── SIGSEGV.PC.5555563d970f.STACK.1b55f15f96.CODE.1.ADDR.(nil).INSTR.mov____(%r12),%rcx.fuzz ├── SIGSEGV.PC.5555563ebef4.STACK.1ad5fd2a37.CODE.1.ADDR.0x31.INSTR.mov____-0x20(%rdi),%eax.fuzz ├── SIGSEGV.PC.5555563ebef4.STACK.e7ce57ea6.CODE.1.ADDR.0x810.INSTR.mov____-0x20(%rdi),%eax.fuzz ├── SIGSEGV.PC.5555563ebef4.STACK.ecaf6f09d.CODE.1.ADDR.0x31.INSTR.mov____-0x20(%rdi),%eax.fuzz ├── SIGSEGV.PC.5555563ed9a3.STACK.e012ce7f9.CODE.128.ADDR.(nil).INSTR.mov____0x68(%rax),%r15.fuzz ├── SIGSEGV.PC.555556450d90.STACK.18e0c97b53.CODE.1.ADDR.0x55556119e000.INSTR.movzbl_(%rax),%ebp.fuzz ├── SIGSEGV.PC.555556450d90.STACK.c2b5ee07f.CODE.1.ADDR.0x555561a47000.INSTR.movzbl_(%rax),%ebp.fuzz ├── SIGSEGV.PC.555556450d90.STACK.c2b5ee07f.CODE.1.ADDR.0x555561ab3000.INSTR.movzbl_(%rax),%ebp.fuzz ├── SIGSEGV.PC.555556450d90.STACK.d07e126f6.CODE.1.ADDR.0x555560c12000.INSTR.movzbl_(%rax),%ebp.fuzz ├── SIGSEGV.PC.555556669e7d.STACK.e8c2833ee.CODE.1.ADDR.0x4000.INSTR.cmpl___$0x0,(%rax).fuzz ├── SIGSEGV.PC.7ffff7a8f248.STACK.ca2ed49ba.CODE.1.ADDR.0x60.INSTR.mov____0x60(%r12),%rax.fuzz ├── SIGSEGV.PC.7ffff7a90c6d.STACK.18fad0a323.CODE.128.ADDR.(nil).INSTR.mov____%rsi,0x10(%r14).fuzz ├── SIGSEGV.PC.7ffff7a90c6d.STACK.193fee2275.CODE.1.ADDR.0x10.INSTR.mov____%rsi,0x10(%r14).fuzz ├── SIGSEGV.PC.7ffff7a90c6d.STACK.1a4b45dbe4.CODE.1.ADDR.0x10.INSTR.mov____%rsi,0x10(%r14).fuzz ├── SIGSEGV.PC.7ffff7a90c6d.STACK.1a55d8ee66.CODE.1.ADDR.0x10.INSTR.mov____%rsi,0x10(%r14).fuzz ├── SIGSEGV.PC.7ffff7a90c6d.STACK.1a923accd3.CODE.128.ADDR.(nil).INSTR.mov____%rsi,0x10(%r14).fuzz ├── SIGSEGV.PC.7ffff7a90c6d.STACK.c93b612eb.CODE.1.ADDR.0x10.INSTR.mov____%rsi,0x10(%r14).fuzz ├── SIGSEGV.PC.7ffff7a90c6d.STACK.cfdbd1fbb.CODE.1.ADDR.0x10.INSTR.mov____%rsi,0x10(%r14).fuzz ├── SIGSEGV.PC.7ffff7a90c6d.STACK.d0d2bd8ba.CODE.1.ADDR.0x30.INSTR.mov____%rsi,0x10(%r14).fuzz ├── SIGSEGV.PC.7ffff7a90c6d.STACK.d2f254938.CODE.1.ADDR.0x51.INSTR.mov____%rsi,0x10(%r14).fuzz ├── SIGSEGV.PC.7ffff7a90c6d.STACK.d796051cb.CODE.128.ADDR.(nil).INSTR.mov____%rsi,0x10(%r14).fuzz ├── SIGSEGV.PC.7ffff7a90c6d.STACK.da8ff8a53.CODE.1.ADDR.0x31.INSTR.mov____%rsi,0x10(%r14).fuzz ├── SIGSEGV.PC.7ffff7a90c6d.STACK.da8ff8a53.CODE.1.ADDR.0x8.INSTR.mov____%rsi,0x10(%r14).fuzz ├── SIGSEGV.PC.7ffff7a90c6d.STACK.e3324a8e6.CODE.1.ADDR.0x10.INSTR.mov____%rsi,0x10(%r14).fuzz ├── SIGSEGV.PC.7ffff7a90c6d.STACK.fa2fd939b.CODE.1.ADDR.0x13.INSTR.mov____%rsi,0x10(%r14).fuzz └── substrat_overflow.wasm ├── debug_crash_analysis.md ├── debug_tools ├── compile_debug │ ├── Cargo.toml │ └── src │ │ └── main.rs └── diff_compile_debug │ ├── Cargo.toml │ └── src │ └── main.rs ├── fuzz ├── Cargo.toml └── fuzz_targets │ ├── compile.rs │ ├── compile_with_llvm.rs │ ├── diff_compile_backend.rs │ ├── simple_instantiate.rs │ ├── validate.rs │ └── validate_all_feat.rs ├── hfuzz ├── Cargo.toml └── src │ ├── compile.rs │ ├── compile_kwasmd_config.rs │ ├── compile_with_config_with_llvm.rs │ ├── compile_with_llvm.rs │ ├── compile_with_threads.rs │ ├── diff_compile_backend.rs │ ├── instantiate_binaryen.rs │ ├── simple_instantiate.rs │ ├── validate.rs │ └── validate_all_feat.rs ├── honggfuzz.md ├── images ├── afl_rust_interface.png ├── cargofuzz_interface.png ├── honggfuzz_interface_compile.png ├── honggfuzz_interface_validate.png └── kcov_coverage_example.png ├── scripts └── testwasmer.sh └── testcase_minimization.md /README.md: -------------------------------------------------------------------------------- 1 | # wasm-fuzz 2 | 3 | Information about fuzzing, code coverage and crashes analysis of [Wasmer](https://github.com/wasmerio/wasmer). 4 | 5 | # Fuzzers 6 | 7 | Fuzzers for Wasmer and tips/commands to run them. 8 | 9 | ## cargo-fuzz (libfuzzer) 10 | 11 | - Fuzzers are inside [fuzz](fuzz) folder. 12 | - Checkout [cargofuzz.md](cargofuzz.md) for more details. 13 | 14 | ## honggfuzz 15 | 16 | - Fuzzers are inside [hfuzz](hfuzz) folder. 17 | - Checkout [honggfuzz.md](honggfuzz.md) for more details. 18 | 19 | ## afl-rs 20 | 21 | - Fuzzers are inside [afl-fuzz](afl-fuzz) folder. 22 | - Checkout [afl.md](afl.md) for more details. 23 | 24 | # Corpus minimization 25 | 26 | - Checkout [corpus_minimization.md](corpus_minimization.md) for more details. 27 | - Checkout [testcase_minimization.md](testcase_minimization.md) for more details. 28 | 29 | # Code coverage 30 | 31 | - Checkout [code_coverage.md](code_coverage.md) for more details. 32 | 33 | # Debugging / Crashes analysis 34 | 35 | - Checkout [debug_crash_analysis.md](debug_crash_analysis.md) for more details. 36 | 37 | Patrick Ventuzelo - [pventuzelo](https://github.com/pventuzelo) 38 | -------------------------------------------------------------------------------- /afl-fuzz/Cargo.toml: -------------------------------------------------------------------------------- 1 | [package] 2 | name = "afl-fuzz" 3 | version = "0.1.0" 4 | authors = ["Patrick Ventuzelo "] 5 | edition = "2018" 6 | 7 | # See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html 8 | 9 | [dependencies] 10 | afl = "0.5" 11 | wasmer-runtime = { path = "../lib/runtime" } 12 | wasmer-runtime-core = { path = "../lib/runtime-core" } 13 | wasmer-llvm-backend = { path = "../lib/llvm-backend" } 14 | wasmer-singlepass-backend = { path = "../lib/singlepass-backend" } 15 | wasmer = { path = "../" } 16 | 17 | # Prevent this from interfering with workspaces 18 | [workspace] 19 | members = ["."] 20 | 21 | [[bin]] 22 | name = "simple_instantiate" 23 | path = "src/simple_instantiate.rs" 24 | 25 | [[bin]] 26 | name = "compile" 27 | path = "src/compile.rs" 28 | 29 | [[bin]] 30 | name = "compile_with_llvm" 31 | path = "src/compile_with_llvm.rs" 32 | 33 | [[bin]] 34 | name = "diff_compile_backend" 35 | path = "src/diff_compile_backend.rs" 36 | 37 | [[bin]] 38 | name = "validate" 39 | path = "src/validate.rs" 40 | 41 | [[bin]] 42 | name = "validate_all_feat" 43 | path = "src/validate_all_feat.rs" 44 | 45 | [[bin]] 46 | name = "diff_compile" 47 | path = "src/diff_compile.rs" -------------------------------------------------------------------------------- /afl-fuzz/src/compile.rs: -------------------------------------------------------------------------------- 1 | #[macro_use] 2 | extern crate afl; 3 | extern crate wasmer_runtime; 4 | 5 | use wasmer_runtime::{ 6 | compile, 7 | }; 8 | 9 | fn main() { 10 | fuzz!(|data: &[u8]| { 11 | let _ = compile(data); 12 | }); 13 | } -------------------------------------------------------------------------------- /afl-fuzz/src/compile_with_llvm.rs: -------------------------------------------------------------------------------- 1 | #[macro_use] 2 | extern crate afl; 3 | extern crate wasmer_llvm_backend; 4 | extern crate wasmer_runtime_core; 5 | extern crate wasmer_runtime; 6 | 7 | use wasmer_runtime::{ 8 | compile_with, 9 | }; 10 | use wasmer_runtime_core::backend::Compiler; 11 | 12 | fn get_llvm_compiler() -> impl Compiler { 13 | use wasmer_llvm_backend::LLVMCompiler; 14 | LLVMCompiler::new() 15 | } 16 | 17 | 18 | fn main() { 19 | fuzz!(|data: &[u8]| { 20 | let _ = compile_with(data, &get_llvm_compiler()); 21 | }); 22 | } 23 | -------------------------------------------------------------------------------- /afl-fuzz/src/diff_compile.rs: -------------------------------------------------------------------------------- 1 | #[macro_use] 2 | extern crate afl; 3 | extern crate wasmer_runtime; 4 | 5 | 6 | // Use system allocator so we can substitute it with a custom one via LD_PRELOAD 7 | use std::alloc::System; 8 | #[global_allocator] 9 | static GLOBAL: System = System; 10 | 11 | 12 | use wasmer_runtime::{ 13 | compile, 14 | }; 15 | 16 | // TODO - fix issues with libdiffuzz 17 | 18 | fn main() { 19 | fuzz!(|data: &[u8]| { 20 | let first_run_result = compile(data); 21 | let second_run_result = compile(data); 22 | match (first_run_result, second_run_result) { 23 | (Ok(a), Ok(b)) => { 24 | let ai = a.info(); 25 | let bi = b.info(); 26 | assert_eq!(format!("{:?}", ai.memories), format!("{:?}", bi.memories)); 27 | assert_eq!(format!("{:?}", ai.globals), format!("{:?}", bi.globals)); 28 | assert_eq!(format!("{:?}", ai.tables), format!("{:?}", bi.tables)); 29 | assert_eq!(format!("{:?}", ai.imported_functions), format!("{:?}", bi.imported_functions)); 30 | assert_eq!(format!("{:?}", ai.imported_memories), format!("{:?}", bi.imported_memories)); 31 | assert_eq!(format!("{:?}", ai.imported_tables), format!("{:?}", bi.imported_tables)); 32 | assert_eq!(format!("{:?}", ai.imported_globals), format!("{:?}", bi.imported_globals)); 33 | assert_eq!(format!("{:?}", ai.exports), format!("{:?}", bi.exports)); 34 | assert_eq!(format!("{:?}", ai.data_initializers), format!("{:?}", bi.data_initializers)); 35 | assert_eq!(format!("{:?}", ai.elem_initializers), format!("{:?}", bi.elem_initializers)); 36 | assert_eq!(format!("{:?}", ai.start_func), format!("{:?}", bi.start_func)); 37 | assert_eq!(format!("{:?}", ai.func_assoc), format!("{:?}", bi.func_assoc)); 38 | assert_eq!(format!("{:?}", ai.signatures), format!("{:?}", bi.signatures)); 39 | assert_eq!(ai.backend, bi.backend); 40 | assert_eq!(format!("{:?}", ai.namespace_table), format!("{:?}", bi.namespace_table)); 41 | assert_eq!(format!("{:?}", ai.name_table), format!("{:?}", bi.name_table)); 42 | assert_eq!(ai.em_symbol_map, bi.em_symbol_map); 43 | assert_eq!(ai.custom_sections, bi.custom_sections); 44 | }, 45 | (Err(err_a), Err(err_b)) => assert_eq!(err_a, err_b), 46 | _ => panic!("One decoding run succeeded while the other failed!"), 47 | } 48 | }); 49 | } -------------------------------------------------------------------------------- /afl-fuzz/src/diff_compile_backend.rs: -------------------------------------------------------------------------------- 1 | #[macro_use] 2 | extern crate afl; 3 | extern crate wasmer_runtime; 4 | extern crate wasmer_runtime_core; 5 | extern crate wasmer_llvm_backend; 6 | extern crate wasmer_singlepass_backend; 7 | 8 | use wasmer_runtime::{compile, compile_with}; 9 | use wasmer_runtime_core::backend::Compiler; 10 | 11 | fn get_llvm_compiler() -> impl Compiler { 12 | use wasmer_llvm_backend::LLVMCompiler; 13 | LLVMCompiler::new() 14 | } 15 | fn get_singlepass_compiler() -> impl Compiler { 16 | use wasmer_singlepass_backend::SinglePassCompiler; 17 | SinglePassCompiler::new() 18 | } 19 | 20 | fn main() { 21 | fuzz!(|data: &[u8]| { 22 | 23 | let res_llvm = compile_with(data, &get_llvm_compiler()); 24 | let res_singlepass = compile_with(data, &get_singlepass_compiler()); 25 | // let _ = compile(data); 26 | 27 | match (res_llvm, res_singlepass) { 28 | (Ok(a), Ok(b)) => { 29 | let ai = a.info(); 30 | let bi = b.info(); 31 | assert_eq!(format!("{:?}", ai.memories), format!("{:?}", bi.memories)); 32 | assert_eq!(format!("{:?}", ai.globals), format!("{:?}", bi.globals)); 33 | assert_eq!(format!("{:?}", ai.tables), format!("{:?}", bi.tables)); 34 | assert_eq!(format!("{:?}", ai.imported_functions), format!("{:?}", bi.imported_functions)); 35 | assert_eq!(format!("{:?}", ai.imported_memories), format!("{:?}", bi.imported_memories)); 36 | assert_eq!(format!("{:?}", ai.imported_tables), format!("{:?}", bi.imported_tables)); 37 | assert_eq!(format!("{:?}", ai.imported_globals), format!("{:?}", bi.imported_globals)); 38 | assert_eq!(format!("{:?}", ai.exports), format!("{:?}", bi.exports)); 39 | assert_eq!(format!("{:?}", ai.data_initializers), format!("{:?}", bi.data_initializers)); 40 | assert_eq!(format!("{:?}", ai.elem_initializers), format!("{:?}", bi.elem_initializers)); 41 | assert_eq!(format!("{:?}", ai.start_func), format!("{:?}", bi.start_func)); 42 | assert_eq!(format!("{:?}", ai.func_assoc), format!("{:?}", bi.func_assoc)); 43 | assert_eq!(format!("{:?}", ai.signatures), format!("{:?}", bi.signatures)); 44 | // assert_eq!(ai.backend, bi.backend); 45 | assert_eq!(format!("{:?}", ai.namespace_table), format!("{:?}", bi.namespace_table)); 46 | assert_eq!(format!("{:?}", ai.name_table), format!("{:?}", bi.name_table)); 47 | assert_eq!(ai.em_symbol_map, bi.em_symbol_map); 48 | assert_eq!(ai.custom_sections, bi.custom_sections); 49 | 50 | println!("[+] OK for both"); 51 | }, 52 | (Err(err_a), Ok(_err_b)) => { 53 | //println!("[-] Error LLVM"); 54 | //println!("{:?}", err_a); 55 | panic!("Only backend LLVM return an Error") 56 | }, 57 | (Ok(_err_a), Err(err_b)) => { 58 | //println!("[-] Error Singlepass"); 59 | //println!("{:?}", err_b); 60 | panic!("Only backend Singlepass return an Error") 61 | }, 62 | (Err(_err_a), Err(_err_b)) => { 63 | println!("[+] Error for both"); 64 | }, 65 | } 66 | }); 67 | } -------------------------------------------------------------------------------- /afl-fuzz/src/simple_instantiate.rs: -------------------------------------------------------------------------------- 1 | #[macro_use] 2 | extern crate afl; 3 | extern crate wasmer_runtime; 4 | 5 | use wasmer_runtime::{ 6 | instantiate, 7 | imports, 8 | }; 9 | 10 | fn main() { 11 | fuzz!(|data: &[u8]| { 12 | let import_object = imports! {}; 13 | let _ = instantiate(data, &import_object); 14 | }); 15 | } -------------------------------------------------------------------------------- /afl-fuzz/src/validate.rs: -------------------------------------------------------------------------------- 1 | #[macro_use] 2 | extern crate afl; 3 | extern crate wasmer_runtime_core; 4 | 5 | use wasmer_runtime_core::backend::Features; 6 | 7 | fn main() { 8 | fuzz!(|data: &[u8]| { 9 | let _ = wasmer_runtime_core::validate_and_report_errors_with_features( 10 | &data, 11 | Features { 12 | // Modify these values to explore additional parts of wasmer. 13 | simd: false, 14 | threads: false, 15 | }, 16 | ); 17 | }); 18 | } -------------------------------------------------------------------------------- /afl-fuzz/src/validate_all_feat.rs: -------------------------------------------------------------------------------- 1 | #[macro_use] 2 | extern crate afl; 3 | extern crate wasmer_runtime_core; 4 | 5 | use wasmer_runtime_core::backend::Features; 6 | 7 | fn main() { 8 | fuzz!(|data: &[u8]| { 9 | let _ = wasmer_runtime_core::validate_and_report_errors_with_features( 10 | &data, 11 | Features { 12 | simd: true, 13 | threads: true, 14 | }, 15 | ); 16 | }); 17 | } 18 | -------------------------------------------------------------------------------- /code_coverage.md: -------------------------------------------------------------------------------- 1 | # Code coverage 2 | 3 | "test coverage is a measure used to describe the degree to which the source code of a program is executed when a particular test suite runs." - [src](https://en.wikipedia.org/wiki/Code_coverage) 4 | 5 | # Kcov 6 | 7 | Kcov is a code coverage tester for compiled programs, Python scripts and shell scripts. It allows collecting code coverage information from executables without special command-line arguments, and continuously produces output from long-running applications. - [website](https://simonkagstrom.github.io/kcov/) / [github](https://github.com/SimonKagstrom/kcov) / [video](https://www.youtube.com/watch?v=1QMHbp5LUKg) 8 | 9 | kcov is also available using cargo: 10 | - [cargo-kcov](https://github.com/kennytm/cargo-kcov) 11 | - install: `cargo install cargo-kcov` 12 | 13 | 14 | ## Installation 15 | 16 | Check the official [INSTALL.md](https://github.com/SimonKagstrom/kcov/blob/master/INSTALL.md#ubuntu) 17 | 18 | ## How that's works? 19 | 20 | Here is the global command: 21 | ``` sh 22 | # First, go inside your fuzzing folder 23 | # like fuzz or hfuzz ou afl-fuzz 24 | cd fuzz 25 | # Create a folder for the coverage results 26 | mkdir cov 27 | # Run kcov on your FUZZ_TARGET 28 | kcov ./cov ./target/debug/FUZZ_TARGET corpus/FUZZ_TARGET/* 29 | ``` 30 | 31 | ## Example with wasmer/compile_debug 32 | 33 | Copy [compile_debug](wasm-fuzz/debug_tools/compile_debug) inside wasmer repo. 34 | ``` sh 35 | $ cp wasm-fuzz/debug_tools/compile_debug . 36 | # compile compile_debug with cargo 37 | $ cd compile_debug 38 | $ cargo build 39 | # create cov output folder 40 | $ mkdir cov 41 | $ kcov --include-path .,.. ./cov ./target/debug/compile_debug ../hfuzz/hfuzz_workspace/compile_with_llvm/input/* 42 | # look the result / open cov/index.html 43 | $ firefox cov/index.html 44 | ``` 45 | 46 |

47 | 48 |

49 | 50 | -------------------------------------------------------------------------------- /coverage/compile_debug/cov/amber.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wasmerio/wasm-fuzz/20c7430e2c04cc1b7eedac6f17b72a1a232454b9/coverage/compile_debug/cov/amber.png -------------------------------------------------------------------------------- /coverage/compile_debug/cov/bcov.css: -------------------------------------------------------------------------------- 1 | /* Based upon the lcov CSS style, style files can be reused */ 2 | body { color: #000000; background-color: #FFFFFF; } 3 | a:link { color: #284FA8; text-decoration: underline; } 4 | a:visited { color: #00CB40; text-decoration: underline; } 5 | a:active { color: #FF0040; text-decoration: underline; } 6 | td.title { text-align: center; padding-bottom: 10px; font-size: 20pt; font-weight: bold; } 7 | td.ruler { background-color: #6688D4; } 8 | td.headerItem { text-align: right; padding-right: 6px; font-family: sans-serif; font-weight: bold; } 9 | td.headerValue { text-align: left; color: #284FA8; font-family: sans-serif; font-weight: bold; } 10 | td.versionInfo { text-align: center; padding-top: 2px; } 11 | th.headerItem { text-align: right; padding-right: 6px; font-family: sans-serif; font-weight: bold; } 12 | th.headerValue { text-align: left; color: #284FA8; font-family: sans-serif; font-weight: bold; } 13 | pre.source { font-family: monospace; white-space: pre; overflow: hidden; text-overflow: ellipsis; } 14 | span.lineNum { background-color: #EFE383; } 15 | span.lineNumLegend { background-color: #EFE383; width: 96px; font-weight: bold ;} 16 | span.lineCov { background-color: #adff9a; } 17 | span.linePartCov { background-color: #fffe80; } 18 | span.lineNoCov { background-color: #ffbbbb; } 19 | span.orderNum { background-color: #e0b373; float: right; width:5em; text-align: left; } 20 | span.orderNumLegend { background-color: #e0b373; width: 96px; font-weight: bold ;} 21 | span.coverHits { background-color: #DFE383; padding-left: 3px; padding-right: 1px; text-align: right; list-style-type: none; display: inline-block; width: 5em; } 22 | span.coverHitsLegend { background-color: #DFE383; width: 96px; font-weight: bold; margin: 0 auto;} 23 | td.tableHead { text-align: center; color: #FFFFFF; background-color: #6688D4; font-family: sans-serif; font-size: 120%; font-weight: bold; } 24 | td.coverFile { text-align: left; padding-left: 10px; padding-right: 20px; color: #284FA8; font-family: monospace; } 25 | td.coverBar { padding-left: 10px; padding-right: 10px; background-color: #DAE7FE; } 26 | td.coverBarOutline { background-color: #000000; } 27 | td.coverPer { text-align: left; padding-left: 10px; padding-right: 10px; font-weight: bold; } 28 | td.coverPerLeftMed { text-align: left; padding-left: 10px; padding-right: 10px; background-color: #fffe80; font-weight: bold; } 29 | td.coverPerLeftLo { text-align: left; padding-left: 10px; padding-right: 10px; background-color: #ffbbbb; font-weight: bold; } 30 | td.coverPerLeftHi { text-align: left; padding-left: 10px; padding-right: 10px; background-color: #adff9a; font-weight: bold; } 31 | td.coverNum { text-align: right; padding-left: 10px; padding-right: 10px; } 32 | td.coverNum { text-align: right; padding-left: 10px; padding-right: 10px; } 33 | -------------------------------------------------------------------------------- /coverage/compile_debug/cov/compile_debug: -------------------------------------------------------------------------------- 1 | ./cov//compile_debug.61fcb268307c63d9/ -------------------------------------------------------------------------------- /coverage/compile_debug/cov/compile_debug.61fcb268307c63d9/amber.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wasmerio/wasm-fuzz/20c7430e2c04cc1b7eedac6f17b72a1a232454b9/coverage/compile_debug/cov/compile_debug.61fcb268307c63d9/amber.png -------------------------------------------------------------------------------- /coverage/compile_debug/cov/compile_debug.61fcb268307c63d9/backend.rs.15dbaea2.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | ??? 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 42 | 43 | 44 |
Coverage Report
20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | 32 | 33 | 34 | 35 | 36 | 37 | 38 | 39 | 40 |
Command:???Line number
Date: Instrumented lines:???Hits
Code covered:???Executed lines:???Order
41 |
45 | 46 | 65 |
66 | 67 | 68 | 69 | 70 |
Generated by: Kcov
71 | 72 | 73 | -------------------------------------------------------------------------------- /coverage/compile_debug/cov/compile_debug.61fcb268307c63d9/backend.rs.a5bd3b0a.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | ??? 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 42 | 43 | 44 |
Coverage Report
20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | 32 | 33 | 34 | 35 | 36 | 37 | 38 | 39 | 40 |
Command:???Line number
Date: Instrumented lines:???Hits
Code covered:???Executed lines:???Order
41 |
45 | 46 | 65 |
66 | 67 | 68 | 69 | 70 |
Generated by: Kcov
71 | 72 | 73 | -------------------------------------------------------------------------------- /coverage/compile_debug/cov/compile_debug.61fcb268307c63d9/bcov.css: -------------------------------------------------------------------------------- 1 | /* Based upon the lcov CSS style, style files can be reused */ 2 | body { color: #000000; background-color: #FFFFFF; } 3 | a:link { color: #284FA8; text-decoration: underline; } 4 | a:visited { color: #00CB40; text-decoration: underline; } 5 | a:active { color: #FF0040; text-decoration: underline; } 6 | td.title { text-align: center; padding-bottom: 10px; font-size: 20pt; font-weight: bold; } 7 | td.ruler { background-color: #6688D4; } 8 | td.headerItem { text-align: right; padding-right: 6px; font-family: sans-serif; font-weight: bold; } 9 | td.headerValue { text-align: left; color: #284FA8; font-family: sans-serif; font-weight: bold; } 10 | td.versionInfo { text-align: center; padding-top: 2px; } 11 | th.headerItem { text-align: right; padding-right: 6px; font-family: sans-serif; font-weight: bold; } 12 | th.headerValue { text-align: left; color: #284FA8; font-family: sans-serif; font-weight: bold; } 13 | pre.source { font-family: monospace; white-space: pre; overflow: hidden; text-overflow: ellipsis; } 14 | span.lineNum { background-color: #EFE383; } 15 | span.lineNumLegend { background-color: #EFE383; width: 96px; font-weight: bold ;} 16 | span.lineCov { background-color: #adff9a; } 17 | span.linePartCov { background-color: #fffe80; } 18 | span.lineNoCov { background-color: #ffbbbb; } 19 | span.orderNum { background-color: #e0b373; float: right; width:5em; text-align: left; } 20 | span.orderNumLegend { background-color: #e0b373; width: 96px; font-weight: bold ;} 21 | span.coverHits { background-color: #DFE383; padding-left: 3px; padding-right: 1px; text-align: right; list-style-type: none; display: inline-block; width: 5em; } 22 | span.coverHitsLegend { background-color: #DFE383; width: 96px; font-weight: bold; margin: 0 auto;} 23 | td.tableHead { text-align: center; color: #FFFFFF; background-color: #6688D4; font-family: sans-serif; font-size: 120%; font-weight: bold; } 24 | td.coverFile { text-align: left; padding-left: 10px; padding-right: 20px; color: #284FA8; font-family: monospace; } 25 | td.coverBar { padding-left: 10px; padding-right: 10px; background-color: #DAE7FE; } 26 | td.coverBarOutline { background-color: #000000; } 27 | td.coverPer { text-align: left; padding-left: 10px; padding-right: 10px; font-weight: bold; } 28 | td.coverPerLeftMed { text-align: left; padding-left: 10px; padding-right: 10px; background-color: #fffe80; font-weight: bold; } 29 | td.coverPerLeftLo { text-align: left; padding-left: 10px; padding-right: 10px; background-color: #ffbbbb; font-weight: bold; } 30 | td.coverPerLeftHi { text-align: left; padding-left: 10px; padding-right: 10px; background-color: #adff9a; font-weight: bold; } 31 | td.coverNum { text-align: right; padding-left: 10px; padding-right: 10px; } 32 | td.coverNum { text-align: right; padding-left: 10px; padding-right: 10px; } 33 | -------------------------------------------------------------------------------- /coverage/compile_debug/cov/compile_debug.61fcb268307c63d9/cache.rs.a40c6273.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | ??? 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 42 | 43 | 44 |
Coverage Report
20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | 32 | 33 | 34 | 35 | 36 | 37 | 38 | 39 | 40 |
Command:???Line number
Date: Instrumented lines:???Hits
Code covered:???Executed lines:???Order
41 |
45 | 46 | 65 |
66 | 67 | 68 | 69 | 70 |
Generated by: Kcov
71 | 72 | 73 | -------------------------------------------------------------------------------- /coverage/compile_debug/cov/compile_debug.61fcb268307c63d9/code.rs.795c8031.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | ??? 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 42 | 43 | 44 |
Coverage Report
20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | 32 | 33 | 34 | 35 | 36 | 37 | 38 | 39 | 40 |
Command:???Line number
Date: Instrumented lines:???Hits
Code covered:???Executed lines:???Order
41 |
45 | 46 | 65 |
66 | 67 | 68 | 69 | 70 |
Generated by: Kcov
71 | 72 | 73 | -------------------------------------------------------------------------------- /coverage/compile_debug/cov/compile_debug.61fcb268307c63d9/codegen.rs.8de2899c.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | ??? 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 42 | 43 | 44 |
Coverage Report
20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | 32 | 33 | 34 | 35 | 36 | 37 | 38 | 39 | 40 |
Command:???Line number
Date: Instrumented lines:???Hits
Code covered:???Executed lines:???Order
41 |
45 | 46 | 65 |
66 | 67 | 68 | 69 | 70 |
Generated by: Kcov
71 | 72 | 73 | -------------------------------------------------------------------------------- /coverage/compile_debug/cov/compile_debug.61fcb268307c63d9/common.rs.787bb9aa.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | ??? 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 42 | 43 | 44 |
Coverage Report
20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | 32 | 33 | 34 | 35 | 36 | 37 | 38 | 39 | 40 |
Command:???Line number
Date: Instrumented lines:???Hits
Code covered:???Executed lines:???Order
41 |
45 | 46 | 65 |
66 | 67 | 68 | 69 | 70 |
Generated by: Kcov
71 | 72 | 73 | -------------------------------------------------------------------------------- /coverage/compile_debug/cov/compile_debug.61fcb268307c63d9/common.rs.787bb9aa.js: -------------------------------------------------------------------------------- 1 | var data = {lines:[ 2 | {"lineNum":" 1","line":"pub fn round_up_to_page_size(size: usize) -> usize {","class":"lineCov","hits":"1","order":"620","possible_hits":"1",}, 3 | {"lineNum":" 2","line":" (size + (4096 - 1)) & !(4096 - 1)","class":"linePartCov","hits":"1","order":"621","possible_hits":"2",}, 4 | {"lineNum":" 3","line":"}","class":"lineCov","hits":"1","order":"622","possible_hits":"1",}, 5 | ]}; 6 | var percent_low = 25;var percent_high = 75; 7 | var header = { "command" : "compile_debug", "date" : "2019-11-28 11:37:30", "instrumented" : 3, "covered" : 3,}; 8 | var merged_data = []; 9 | -------------------------------------------------------------------------------- /coverage/compile_debug/cov/compile_debug.61fcb268307c63d9/coverage.db: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wasmerio/wasm-fuzz/20c7430e2c04cc1b7eedac6f17b72a1a232454b9/coverage/compile_debug/cov/compile_debug.61fcb268307c63d9/coverage.db -------------------------------------------------------------------------------- /coverage/compile_debug/cov/compile_debug.61fcb268307c63d9/data/amber.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wasmerio/wasm-fuzz/20c7430e2c04cc1b7eedac6f17b72a1a232454b9/coverage/compile_debug/cov/compile_debug.61fcb268307c63d9/data/amber.png -------------------------------------------------------------------------------- /coverage/compile_debug/cov/compile_debug.61fcb268307c63d9/data/bcov.css: -------------------------------------------------------------------------------- 1 | /* Based upon the lcov CSS style, style files can be reused */ 2 | body { color: #000000; background-color: #FFFFFF; } 3 | a:link { color: #284FA8; text-decoration: underline; } 4 | a:visited { color: #00CB40; text-decoration: underline; } 5 | a:active { color: #FF0040; text-decoration: underline; } 6 | td.title { text-align: center; padding-bottom: 10px; font-size: 20pt; font-weight: bold; } 7 | td.ruler { background-color: #6688D4; } 8 | td.headerItem { text-align: right; padding-right: 6px; font-family: sans-serif; font-weight: bold; } 9 | td.headerValue { text-align: left; color: #284FA8; font-family: sans-serif; font-weight: bold; } 10 | td.versionInfo { text-align: center; padding-top: 2px; } 11 | th.headerItem { text-align: right; padding-right: 6px; font-family: sans-serif; font-weight: bold; } 12 | th.headerValue { text-align: left; color: #284FA8; font-family: sans-serif; font-weight: bold; } 13 | pre.source { font-family: monospace; white-space: pre; overflow: hidden; text-overflow: ellipsis; } 14 | span.lineNum { background-color: #EFE383; } 15 | span.lineNumLegend { background-color: #EFE383; width: 96px; font-weight: bold ;} 16 | span.lineCov { background-color: #adff9a; } 17 | span.linePartCov { background-color: #fffe80; } 18 | span.lineNoCov { background-color: #ffbbbb; } 19 | span.orderNum { background-color: #e0b373; float: right; width:5em; text-align: left; } 20 | span.orderNumLegend { background-color: #e0b373; width: 96px; font-weight: bold ;} 21 | span.coverHits { background-color: #DFE383; padding-left: 3px; padding-right: 1px; text-align: right; list-style-type: none; display: inline-block; width: 5em; } 22 | span.coverHitsLegend { background-color: #DFE383; width: 96px; font-weight: bold; margin: 0 auto;} 23 | td.tableHead { text-align: center; color: #FFFFFF; background-color: #6688D4; font-family: sans-serif; font-size: 120%; font-weight: bold; } 24 | td.coverFile { text-align: left; padding-left: 10px; padding-right: 20px; color: #284FA8; font-family: monospace; } 25 | td.coverBar { padding-left: 10px; padding-right: 10px; background-color: #DAE7FE; } 26 | td.coverBarOutline { background-color: #000000; } 27 | td.coverPer { text-align: left; padding-left: 10px; padding-right: 10px; font-weight: bold; } 28 | td.coverPerLeftMed { text-align: left; padding-left: 10px; padding-right: 10px; background-color: #fffe80; font-weight: bold; } 29 | td.coverPerLeftLo { text-align: left; padding-left: 10px; padding-right: 10px; background-color: #ffbbbb; font-weight: bold; } 30 | td.coverPerLeftHi { text-align: left; padding-left: 10px; padding-right: 10px; background-color: #adff9a; font-weight: bold; } 31 | td.coverNum { text-align: right; padding-left: 10px; padding-right: 10px; } 32 | td.coverNum { text-align: right; padding-left: 10px; padding-right: 10px; } 33 | -------------------------------------------------------------------------------- /coverage/compile_debug/cov/compile_debug.61fcb268307c63d9/data/glass.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wasmerio/wasm-fuzz/20c7430e2c04cc1b7eedac6f17b72a1a232454b9/coverage/compile_debug/cov/compile_debug.61fcb268307c63d9/data/glass.png -------------------------------------------------------------------------------- /coverage/compile_debug/cov/compile_debug.61fcb268307c63d9/data/js/kcov.js: -------------------------------------------------------------------------------- 1 | window.onload = function () { 2 | 3 | // http://stackoverflow.com/questions/8853396/logical-operator-in-a-handlebars-js-if-conditional 4 | Handlebars.registerHelper('ifCond', function (v1, operator, v2, options) { 5 | switch (operator) { 6 | case '==': 7 | return (v1 == v2) ? options.fn(this) : options.inverse(this); 8 | case '===': 9 | return (v1 === v2) ? options.fn(this) : options.inverse(this); 10 | case '<': 11 | return (v1 < v2) ? options.fn(this) : options.inverse(this); 12 | case '<=': 13 | return (v1 <= v2) ? options.fn(this) : options.inverse(this); 14 | case '>': 15 | return (v1 > v2) ? options.fn(this) : options.inverse(this); 16 | case '>=': 17 | return (v1 >= v2) ? options.fn(this) : options.inverse(this); 18 | case '&&': 19 | return (v1 && v2) ? options.fn(this) : options.inverse(this); 20 | case '||': 21 | return (v1 || v2) ? options.fn(this) : options.inverse(this); 22 | default: 23 | return options.inverse(this); 24 | } 25 | }); 26 | 27 | // http://stackoverflow.com/questions/17095813/handlebars-if-and-numeric-zeroes 28 | Handlebars.registerHelper('exists', function(variable, options) { 29 | if (typeof variable !== 'undefined') { 30 | return options.fn(this); 31 | } else { 32 | return options.inverse(this); 33 | } 34 | }); 35 | 36 | var filesElement = document.getElementById("files-template") 37 | if (filesElement) { 38 | var source = filesElement.innerHTML; 39 | var template = Handlebars.compile(source); 40 | 41 | document.getElementById('files-placeholder').innerHTML = template(data); 42 | } 43 | var linesElement = document.getElementById("lines-template") 44 | if (linesElement) { 45 | var source = linesElement.innerHTML; 46 | var template = Handlebars.compile(source); 47 | document.getElementById('lines-placeholder').innerHTML = template(data); 48 | } 49 | 50 | elem = document.getElementById('header-percent-covered') 51 | 52 | elem.className = toCoverPercentString(header.covered, header.instrumented); 53 | elem.innerHTML = ((header.covered / header.instrumented) * 100).toFixed(1) + "%"; 54 | 55 | document.getElementById('header-command').innerHTML = header.command; 56 | document.getElementById('window-title').innerHTML = "Coverage report - " + header.command; 57 | document.getElementById('header-date').innerHTML = header.date; 58 | document.getElementById('header-covered').innerHTML = header.covered 59 | document.getElementById('header-instrumented').innerHTML = header.instrumented 60 | 61 | $("#index-table").tablesorter({ 62 | theme : 'blue', 63 | sortList : [[1,0]], 64 | cssInfoBlock : "tablesorter-no-sort", 65 | widgets: ["saveSort"], 66 | }); 67 | } 68 | 69 | function toCoverPercentString (covered, instrumented) { 70 | perc = (covered / instrumented) * 100; 71 | 72 | if (perc <= percent_low) 73 | return "coverPerLeftLo"; 74 | else if (perc >= percent_high) 75 | return "coverPerLeftHi"; 76 | 77 | return "coverPerLeftMed"; 78 | } 79 | -------------------------------------------------------------------------------- /coverage/compile_debug/cov/compile_debug.61fcb268307c63d9/dynamic.rs.490debf8.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | ??? 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 42 | 43 | 44 |
Coverage Report
20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | 32 | 33 | 34 | 35 | 36 | 37 | 38 | 39 | 40 |
Command:???Line number
Date: Instrumented lines:???Hits
Code covered:???Executed lines:???Order
41 |
45 | 46 | 65 |
66 | 67 | 68 | 69 | 70 |
Generated by: Kcov
71 | 72 | 73 | -------------------------------------------------------------------------------- /coverage/compile_debug/cov/compile_debug.61fcb268307c63d9/error.rs.83318faf.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | ??? 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 42 | 43 | 44 |
Coverage Report
20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | 32 | 33 | 34 | 35 | 36 | 37 | 38 | 39 | 40 |
Command:???Line number
Date: Instrumented lines:???Hits
Code covered:???Executed lines:???Order
41 |
45 | 46 | 65 |
66 | 67 | 68 | 69 | 70 |
Generated by: Kcov
71 | 72 | 73 | -------------------------------------------------------------------------------- /coverage/compile_debug/cov/compile_debug.61fcb268307c63d9/glass.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wasmerio/wasm-fuzz/20c7430e2c04cc1b7eedac6f17b72a1a232454b9/coverage/compile_debug/cov/compile_debug.61fcb268307c63d9/glass.png -------------------------------------------------------------------------------- /coverage/compile_debug/cov/compile_debug.61fcb268307c63d9/lib.rs.32aa98f6.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | ??? 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 42 | 43 | 44 |
Coverage Report
20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | 32 | 33 | 34 | 35 | 36 | 37 | 38 | 39 | 40 |
Command:???Line number
Date: Instrumented lines:???Hits
Code covered:???Executed lines:???Order
41 |
45 | 46 | 65 |
66 | 67 | 68 | 69 | 70 |
Generated by: Kcov
71 | 72 | 73 | -------------------------------------------------------------------------------- /coverage/compile_debug/cov/compile_debug.61fcb268307c63d9/lib.rs.8a6a6028.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | ??? 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 42 | 43 | 44 |
Coverage Report
20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | 32 | 33 | 34 | 35 | 36 | 37 | 38 | 39 | 40 |
Command:???Line number
Date: Instrumented lines:???Hits
Code covered:???Executed lines:???Order
41 |
45 | 46 | 65 |
66 | 67 | 68 | 69 | 70 |
Generated by: Kcov
71 | 72 | 73 | -------------------------------------------------------------------------------- /coverage/compile_debug/cov/compile_debug.61fcb268307c63d9/lib.rs.c9e9bd1a.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | ??? 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 42 | 43 | 44 |
Coverage Report
20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | 32 | 33 | 34 | 35 | 36 | 37 | 38 | 39 | 40 |
Command:???Line number
Date: Instrumented lines:???Hits
Code covered:???Executed lines:???Order
41 |
45 | 46 | 65 |
66 | 67 | 68 | 69 | 70 |
Generated by: Kcov
71 | 72 | 73 | -------------------------------------------------------------------------------- /coverage/compile_debug/cov/compile_debug.61fcb268307c63d9/lib.rs.c9e9bd1a.js: -------------------------------------------------------------------------------- 1 | var data = {lines:[ 2 | {"lineNum":" 1","line":"#![deny(","class":"lineNoCov","hits":"0","possible_hits":"83",}, 3 | {"lineNum":" 2","line":" nonstandard_style,"}, 4 | {"lineNum":" 3","line":" unused_imports,"}, 5 | {"lineNum":" 4","line":" unused_mut,"}, 6 | {"lineNum":" 5","line":" unused_variables,"}, 7 | {"lineNum":" 6","line":" unused_unsafe,"}, 8 | {"lineNum":" 7","line":" unreachable_patterns"}, 9 | {"lineNum":" 8","line":")]"}, 10 | {"lineNum":" 9","line":"#![cfg_attr(not(target_os = \"windows\"), deny(dead_code))]"}, 11 | {"lineNum":" 10","line":"#![cfg_attr(nightly, feature(unwind_attributes))]"}, 12 | {"lineNum":" 11","line":"#![doc(html_favicon_url = \"https://wasmer.io/static/icons/favicon.ico\")]"}, 13 | {"lineNum":" 12","line":"#![doc(html_logo_url = \"https://avatars3.githubusercontent.com/u/44205449?s=200&v=4\")]"}, 14 | {"lineNum":" 13","line":""}, 15 | {"lineNum":" 14","line":"mod backend;"}, 16 | {"lineNum":" 15","line":"mod code;"}, 17 | {"lineNum":" 16","line":"mod intrinsics;"}, 18 | {"lineNum":" 17","line":"mod platform;"}, 19 | {"lineNum":" 18","line":"mod read_info;"}, 20 | {"lineNum":" 19","line":"mod stackmap;"}, 21 | {"lineNum":" 20","line":"mod state;"}, 22 | {"lineNum":" 21","line":"mod structs;"}, 23 | {"lineNum":" 22","line":"mod trampolines;"}, 24 | {"lineNum":" 23","line":""}, 25 | {"lineNum":" 24","line":"use std::path::PathBuf;"}, 26 | {"lineNum":" 25","line":""}, 27 | {"lineNum":" 26","line":"pub use code::LLVMFunctionCodeGenerator as FunctionCodeGenerator;"}, 28 | {"lineNum":" 27","line":"pub use code::LLVMModuleCodeGenerator as ModuleCodeGenerator;"}, 29 | {"lineNum":" 28","line":""}, 30 | {"lineNum":" 29","line":"use wasmer_runtime_core::codegen::SimpleStreamingCompilerGen;"}, 31 | {"lineNum":" 30","line":""}, 32 | {"lineNum":" 31","line":"pub type LLVMCompiler = SimpleStreamingCompilerGen<"}, 33 | {"lineNum":" 32","line":" code::LLVMModuleCodeGenerator<\'static>,"}, 34 | {"lineNum":" 33","line":" code::LLVMFunctionCodeGenerator<\'static>,"}, 35 | {"lineNum":" 34","line":" backend::LLVMBackend,"}, 36 | {"lineNum":" 35","line":" code::CodegenError,"}, 37 | {"lineNum":" 36","line":">;"}, 38 | {"lineNum":" 37","line":""}, 39 | {"lineNum":" 38","line":"#[derive(Debug, Clone)]"}, 40 | {"lineNum":" 39","line":"/// LLVM backend flags."}, 41 | {"lineNum":" 40","line":"pub struct LLVMOptions {"}, 42 | {"lineNum":" 41","line":" /// Emit LLVM IR before optimization pipeline."}, 43 | {"lineNum":" 42","line":" pub pre_opt_ir: Option,"}, 44 | {"lineNum":" 43","line":""}, 45 | {"lineNum":" 44","line":" /// Emit LLVM IR after optimization pipeline."}, 46 | {"lineNum":" 45","line":" pub post_opt_ir: Option,"}, 47 | {"lineNum":" 46","line":""}, 48 | {"lineNum":" 47","line":" /// Emit LLVM generated native code object file."}, 49 | {"lineNum":" 48","line":" pub obj_file: Option,"}, 50 | {"lineNum":" 49","line":"}"}, 51 | {"lineNum":" 50","line":""}, 52 | {"lineNum":" 51","line":"pub static mut GLOBAL_OPTIONS: LLVMOptions = LLVMOptions {"}, 53 | {"lineNum":" 52","line":" pre_opt_ir: None,"}, 54 | {"lineNum":" 53","line":" post_opt_ir: None,"}, 55 | {"lineNum":" 54","line":" obj_file: None,"}, 56 | {"lineNum":" 55","line":"};"}, 57 | ]}; 58 | var percent_low = 25;var percent_high = 75; 59 | var header = { "command" : "compile_debug", "date" : "2019-11-28 11:37:30", "instrumented" : 1, "covered" : 0,}; 60 | var merged_data = []; 61 | -------------------------------------------------------------------------------- /coverage/compile_debug/cov/compile_debug.61fcb268307c63d9/lib.rs.d35578ae.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | ??? 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 42 | 43 | 44 |
Coverage Report
20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | 32 | 33 | 34 | 35 | 36 | 37 | 38 | 39 | 40 |
Command:???Line number
Date: Instrumented lines:???Hits
Code covered:???Executed lines:???Order
41 |
45 | 46 | 65 |
66 | 67 | 68 | 69 | 70 |
Generated by: Kcov
71 | 72 | 73 | -------------------------------------------------------------------------------- /coverage/compile_debug/cov/compile_debug.61fcb268307c63d9/main.rs.dbc4d83.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | ??? 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 42 | 43 | 44 |
Coverage Report
20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | 32 | 33 | 34 | 35 | 36 | 37 | 38 | 39 | 40 |
Command:???Line number
Date: Instrumented lines:???Hits
Code covered:???Executed lines:???Order
41 |
45 | 46 | 65 |
66 | 67 | 68 | 69 | 70 |
Generated by: Kcov
71 | 72 | 73 | -------------------------------------------------------------------------------- /coverage/compile_debug/cov/compile_debug.61fcb268307c63d9/map.rs.7f65bd8c.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | ??? 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 42 | 43 | 44 |
Coverage Report
20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | 32 | 33 | 34 | 35 | 36 | 37 | 38 | 39 | 40 |
Command:???Line number
Date: Instrumented lines:???Hits
Code covered:???Executed lines:???Order
41 |
45 | 46 | 65 |
66 | 67 | 68 | 69 | 70 |
Generated by: Kcov
71 | 72 | 73 | -------------------------------------------------------------------------------- /coverage/compile_debug/cov/compile_debug.61fcb268307c63d9/memory.rs.6ec0b2f4.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | ??? 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 42 | 43 | 44 |
Coverage Report
20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | 32 | 33 | 34 | 35 | 36 | 37 | 38 | 39 | 40 |
Command:???Line number
Date: Instrumented lines:???Hits
Code covered:???Executed lines:???Order
41 |
45 | 46 | 65 |
66 | 67 | 68 | 69 | 70 |
Generated by: Kcov
71 | 72 | 73 | -------------------------------------------------------------------------------- /coverage/compile_debug/cov/compile_debug.61fcb268307c63d9/metadata/05893bb9: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wasmerio/wasm-fuzz/20c7430e2c04cc1b7eedac6f17b72a1a232454b9/coverage/compile_debug/cov/compile_debug.61fcb268307c63d9/metadata/05893bb9 -------------------------------------------------------------------------------- /coverage/compile_debug/cov/compile_debug.61fcb268307c63d9/metadata/09bf9ed0: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wasmerio/wasm-fuzz/20c7430e2c04cc1b7eedac6f17b72a1a232454b9/coverage/compile_debug/cov/compile_debug.61fcb268307c63d9/metadata/09bf9ed0 -------------------------------------------------------------------------------- /coverage/compile_debug/cov/compile_debug.61fcb268307c63d9/metadata/0dbc4d83: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wasmerio/wasm-fuzz/20c7430e2c04cc1b7eedac6f17b72a1a232454b9/coverage/compile_debug/cov/compile_debug.61fcb268307c63d9/metadata/0dbc4d83 -------------------------------------------------------------------------------- /coverage/compile_debug/cov/compile_debug.61fcb268307c63d9/metadata/15dbaea2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wasmerio/wasm-fuzz/20c7430e2c04cc1b7eedac6f17b72a1a232454b9/coverage/compile_debug/cov/compile_debug.61fcb268307c63d9/metadata/15dbaea2 -------------------------------------------------------------------------------- /coverage/compile_debug/cov/compile_debug.61fcb268307c63d9/metadata/16e4020c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wasmerio/wasm-fuzz/20c7430e2c04cc1b7eedac6f17b72a1a232454b9/coverage/compile_debug/cov/compile_debug.61fcb268307c63d9/metadata/16e4020c -------------------------------------------------------------------------------- /coverage/compile_debug/cov/compile_debug.61fcb268307c63d9/metadata/20551420: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wasmerio/wasm-fuzz/20c7430e2c04cc1b7eedac6f17b72a1a232454b9/coverage/compile_debug/cov/compile_debug.61fcb268307c63d9/metadata/20551420 -------------------------------------------------------------------------------- /coverage/compile_debug/cov/compile_debug.61fcb268307c63d9/metadata/2546ba75: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wasmerio/wasm-fuzz/20c7430e2c04cc1b7eedac6f17b72a1a232454b9/coverage/compile_debug/cov/compile_debug.61fcb268307c63d9/metadata/2546ba75 -------------------------------------------------------------------------------- /coverage/compile_debug/cov/compile_debug.61fcb268307c63d9/metadata/315d6b2c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wasmerio/wasm-fuzz/20c7430e2c04cc1b7eedac6f17b72a1a232454b9/coverage/compile_debug/cov/compile_debug.61fcb268307c63d9/metadata/315d6b2c -------------------------------------------------------------------------------- /coverage/compile_debug/cov/compile_debug.61fcb268307c63d9/metadata/32aa98f6: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wasmerio/wasm-fuzz/20c7430e2c04cc1b7eedac6f17b72a1a232454b9/coverage/compile_debug/cov/compile_debug.61fcb268307c63d9/metadata/32aa98f6 -------------------------------------------------------------------------------- /coverage/compile_debug/cov/compile_debug.61fcb268307c63d9/metadata/390bac72: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wasmerio/wasm-fuzz/20c7430e2c04cc1b7eedac6f17b72a1a232454b9/coverage/compile_debug/cov/compile_debug.61fcb268307c63d9/metadata/390bac72 -------------------------------------------------------------------------------- /coverage/compile_debug/cov/compile_debug.61fcb268307c63d9/metadata/48b95e5c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wasmerio/wasm-fuzz/20c7430e2c04cc1b7eedac6f17b72a1a232454b9/coverage/compile_debug/cov/compile_debug.61fcb268307c63d9/metadata/48b95e5c -------------------------------------------------------------------------------- /coverage/compile_debug/cov/compile_debug.61fcb268307c63d9/metadata/490debf8: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wasmerio/wasm-fuzz/20c7430e2c04cc1b7eedac6f17b72a1a232454b9/coverage/compile_debug/cov/compile_debug.61fcb268307c63d9/metadata/490debf8 -------------------------------------------------------------------------------- /coverage/compile_debug/cov/compile_debug.61fcb268307c63d9/metadata/59bddb4c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wasmerio/wasm-fuzz/20c7430e2c04cc1b7eedac6f17b72a1a232454b9/coverage/compile_debug/cov/compile_debug.61fcb268307c63d9/metadata/59bddb4c -------------------------------------------------------------------------------- /coverage/compile_debug/cov/compile_debug.61fcb268307c63d9/metadata/6e2e7c86: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wasmerio/wasm-fuzz/20c7430e2c04cc1b7eedac6f17b72a1a232454b9/coverage/compile_debug/cov/compile_debug.61fcb268307c63d9/metadata/6e2e7c86 -------------------------------------------------------------------------------- /coverage/compile_debug/cov/compile_debug.61fcb268307c63d9/metadata/6ec0b2f4: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wasmerio/wasm-fuzz/20c7430e2c04cc1b7eedac6f17b72a1a232454b9/coverage/compile_debug/cov/compile_debug.61fcb268307c63d9/metadata/6ec0b2f4 -------------------------------------------------------------------------------- /coverage/compile_debug/cov/compile_debug.61fcb268307c63d9/metadata/787bb9aa: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wasmerio/wasm-fuzz/20c7430e2c04cc1b7eedac6f17b72a1a232454b9/coverage/compile_debug/cov/compile_debug.61fcb268307c63d9/metadata/787bb9aa -------------------------------------------------------------------------------- /coverage/compile_debug/cov/compile_debug.61fcb268307c63d9/metadata/795c8031: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wasmerio/wasm-fuzz/20c7430e2c04cc1b7eedac6f17b72a1a232454b9/coverage/compile_debug/cov/compile_debug.61fcb268307c63d9/metadata/795c8031 -------------------------------------------------------------------------------- /coverage/compile_debug/cov/compile_debug.61fcb268307c63d9/metadata/7f65bd8c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wasmerio/wasm-fuzz/20c7430e2c04cc1b7eedac6f17b72a1a232454b9/coverage/compile_debug/cov/compile_debug.61fcb268307c63d9/metadata/7f65bd8c -------------------------------------------------------------------------------- /coverage/compile_debug/cov/compile_debug.61fcb268307c63d9/metadata/81ab9eb4: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wasmerio/wasm-fuzz/20c7430e2c04cc1b7eedac6f17b72a1a232454b9/coverage/compile_debug/cov/compile_debug.61fcb268307c63d9/metadata/81ab9eb4 -------------------------------------------------------------------------------- /coverage/compile_debug/cov/compile_debug.61fcb268307c63d9/metadata/83318faf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wasmerio/wasm-fuzz/20c7430e2c04cc1b7eedac6f17b72a1a232454b9/coverage/compile_debug/cov/compile_debug.61fcb268307c63d9/metadata/83318faf -------------------------------------------------------------------------------- /coverage/compile_debug/cov/compile_debug.61fcb268307c63d9/metadata/89822316: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wasmerio/wasm-fuzz/20c7430e2c04cc1b7eedac6f17b72a1a232454b9/coverage/compile_debug/cov/compile_debug.61fcb268307c63d9/metadata/89822316 -------------------------------------------------------------------------------- /coverage/compile_debug/cov/compile_debug.61fcb268307c63d9/metadata/8a6a6028: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wasmerio/wasm-fuzz/20c7430e2c04cc1b7eedac6f17b72a1a232454b9/coverage/compile_debug/cov/compile_debug.61fcb268307c63d9/metadata/8a6a6028 -------------------------------------------------------------------------------- /coverage/compile_debug/cov/compile_debug.61fcb268307c63d9/metadata/8dd79674: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wasmerio/wasm-fuzz/20c7430e2c04cc1b7eedac6f17b72a1a232454b9/coverage/compile_debug/cov/compile_debug.61fcb268307c63d9/metadata/8dd79674 -------------------------------------------------------------------------------- /coverage/compile_debug/cov/compile_debug.61fcb268307c63d9/metadata/8de2899c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wasmerio/wasm-fuzz/20c7430e2c04cc1b7eedac6f17b72a1a232454b9/coverage/compile_debug/cov/compile_debug.61fcb268307c63d9/metadata/8de2899c -------------------------------------------------------------------------------- /coverage/compile_debug/cov/compile_debug.61fcb268307c63d9/metadata/8ee3342f: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wasmerio/wasm-fuzz/20c7430e2c04cc1b7eedac6f17b72a1a232454b9/coverage/compile_debug/cov/compile_debug.61fcb268307c63d9/metadata/8ee3342f -------------------------------------------------------------------------------- /coverage/compile_debug/cov/compile_debug.61fcb268307c63d9/metadata/92cc11a9: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wasmerio/wasm-fuzz/20c7430e2c04cc1b7eedac6f17b72a1a232454b9/coverage/compile_debug/cov/compile_debug.61fcb268307c63d9/metadata/92cc11a9 -------------------------------------------------------------------------------- /coverage/compile_debug/cov/compile_debug.61fcb268307c63d9/metadata/99697b90: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wasmerio/wasm-fuzz/20c7430e2c04cc1b7eedac6f17b72a1a232454b9/coverage/compile_debug/cov/compile_debug.61fcb268307c63d9/metadata/99697b90 -------------------------------------------------------------------------------- /coverage/compile_debug/cov/compile_debug.61fcb268307c63d9/metadata/a40c6273: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wasmerio/wasm-fuzz/20c7430e2c04cc1b7eedac6f17b72a1a232454b9/coverage/compile_debug/cov/compile_debug.61fcb268307c63d9/metadata/a40c6273 -------------------------------------------------------------------------------- /coverage/compile_debug/cov/compile_debug.61fcb268307c63d9/metadata/a5bd3b0a: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wasmerio/wasm-fuzz/20c7430e2c04cc1b7eedac6f17b72a1a232454b9/coverage/compile_debug/cov/compile_debug.61fcb268307c63d9/metadata/a5bd3b0a -------------------------------------------------------------------------------- /coverage/compile_debug/cov/compile_debug.61fcb268307c63d9/metadata/c6283b98: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wasmerio/wasm-fuzz/20c7430e2c04cc1b7eedac6f17b72a1a232454b9/coverage/compile_debug/cov/compile_debug.61fcb268307c63d9/metadata/c6283b98 -------------------------------------------------------------------------------- /coverage/compile_debug/cov/compile_debug.61fcb268307c63d9/metadata/c9e9bd1a: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wasmerio/wasm-fuzz/20c7430e2c04cc1b7eedac6f17b72a1a232454b9/coverage/compile_debug/cov/compile_debug.61fcb268307c63d9/metadata/c9e9bd1a -------------------------------------------------------------------------------- /coverage/compile_debug/cov/compile_debug.61fcb268307c63d9/metadata/d35578ae: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wasmerio/wasm-fuzz/20c7430e2c04cc1b7eedac6f17b72a1a232454b9/coverage/compile_debug/cov/compile_debug.61fcb268307c63d9/metadata/d35578ae -------------------------------------------------------------------------------- /coverage/compile_debug/cov/compile_debug.61fcb268307c63d9/metadata/d69ae479: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wasmerio/wasm-fuzz/20c7430e2c04cc1b7eedac6f17b72a1a232454b9/coverage/compile_debug/cov/compile_debug.61fcb268307c63d9/metadata/d69ae479 -------------------------------------------------------------------------------- /coverage/compile_debug/cov/compile_debug.61fcb268307c63d9/metadata/f08adfad: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wasmerio/wasm-fuzz/20c7430e2c04cc1b7eedac6f17b72a1a232454b9/coverage/compile_debug/cov/compile_debug.61fcb268307c63d9/metadata/f08adfad -------------------------------------------------------------------------------- /coverage/compile_debug/cov/compile_debug.61fcb268307c63d9/metadata/fa2a2a55: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wasmerio/wasm-fuzz/20c7430e2c04cc1b7eedac6f17b72a1a232454b9/coverage/compile_debug/cov/compile_debug.61fcb268307c63d9/metadata/fa2a2a55 -------------------------------------------------------------------------------- /coverage/compile_debug/cov/compile_debug.61fcb268307c63d9/mod.rs.c6283b98.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | ??? 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 42 | 43 | 44 |
Coverage Report
20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | 32 | 33 | 34 | 35 | 36 | 37 | 38 | 39 | 40 |
Command:???Line number
Date: Instrumented lines:???Hits
Code covered:???Executed lines:???Order
41 |
45 | 46 | 65 |
66 | 67 | 68 | 69 | 70 |
Generated by: Kcov
71 | 72 | 73 | -------------------------------------------------------------------------------- /coverage/compile_debug/cov/compile_debug.61fcb268307c63d9/module.rs.48b95e5c.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | ??? 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 42 | 43 | 44 |
Coverage Report
20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | 32 | 33 | 34 | 35 | 36 | 37 | 38 | 39 | 40 |
Command:???Line number
Date: Instrumented lines:???Hits
Code covered:???Executed lines:???Order
41 |
45 | 46 | 65 |
66 | 67 | 68 | 69 | 70 |
Generated by: Kcov
71 | 72 | 73 | -------------------------------------------------------------------------------- /coverage/compile_debug/cov/compile_debug.61fcb268307c63d9/parse.rs.89822316.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | ??? 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 42 | 43 | 44 |
Coverage Report
20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | 32 | 33 | 34 | 35 | 36 | 37 | 38 | 39 | 40 |
Command:???Line number
Date: Instrumented lines:???Hits
Code covered:???Executed lines:???Order
41 |
45 | 46 | 65 |
66 | 67 | 68 | 69 | 70 |
Generated by: Kcov
71 | 72 | 73 | -------------------------------------------------------------------------------- /coverage/compile_debug/cov/compile_debug.61fcb268307c63d9/read_info.rs.81ab9eb4.js: -------------------------------------------------------------------------------- 1 | var data = {lines:[ 2 | {"lineNum":" 1","line":"use wasmer_runtime_core::types::Type;"}, 3 | {"lineNum":" 2","line":"use wasmparser::{BinaryReaderError, Type as WpType, TypeOrFuncType as WpTypeOrFuncType};"}, 4 | {"lineNum":" 3","line":""}, 5 | {"lineNum":" 4","line":"pub fn type_to_type(ty: WpType) -> Result {","class":"lineNoCov","hits":"0","possible_hits":"1",}, 6 | {"lineNum":" 5","line":" Ok(match ty {","class":"lineNoCov","hits":"0","possible_hits":"6",}, 7 | {"lineNum":" 6","line":" WpType::I32 => Type::I32,","class":"lineNoCov","hits":"0","possible_hits":"2",}, 8 | {"lineNum":" 7","line":" WpType::I64 => Type::I64,","class":"lineNoCov","hits":"0","possible_hits":"1",}, 9 | {"lineNum":" 8","line":" WpType::F32 => Type::F32,","class":"lineNoCov","hits":"0","possible_hits":"1",}, 10 | {"lineNum":" 9","line":" WpType::F64 => Type::F64,","class":"lineNoCov","hits":"0","possible_hits":"1",}, 11 | {"lineNum":" 10","line":" WpType::V128 => Type::V128,","class":"lineNoCov","hits":"0","possible_hits":"1",}, 12 | {"lineNum":" 11","line":" _ => {"}, 13 | {"lineNum":" 12","line":" return Err(BinaryReaderError {","class":"lineNoCov","hits":"0","possible_hits":"1",}, 14 | {"lineNum":" 13","line":" message: \"that type is not supported as a wasmer type\","}, 15 | {"lineNum":" 14","line":" offset: -1isize as usize,"}, 16 | {"lineNum":" 15","line":" });"}, 17 | {"lineNum":" 16","line":" }"}, 18 | {"lineNum":" 17","line":" })"}, 19 | {"lineNum":" 18","line":"}","class":"lineNoCov","hits":"0","possible_hits":"3",}, 20 | {"lineNum":" 19","line":""}, 21 | {"lineNum":" 20","line":"pub fn blocktype_to_type(ty: WpTypeOrFuncType) -> Result {","class":"lineNoCov","hits":"0","possible_hits":"1",}, 22 | {"lineNum":" 21","line":" match ty {","class":"lineNoCov","hits":"0","possible_hits":"1",}, 23 | {"lineNum":" 22","line":" WpTypeOrFuncType::Type(inner_ty) => type_to_type(inner_ty),","class":"lineNoCov","hits":"0","possible_hits":"2",}, 24 | {"lineNum":" 23","line":" _ => {"}, 25 | {"lineNum":" 24","line":" return Err(BinaryReaderError {","class":"lineNoCov","hits":"0","possible_hits":"1",}, 26 | {"lineNum":" 25","line":" message:"}, 27 | {"lineNum":" 26","line":" \"the wasmer llvm backend does not yet support the multi-value return extension\","}, 28 | {"lineNum":" 27","line":" offset: -1isize as usize,"}, 29 | {"lineNum":" 28","line":" });"}, 30 | {"lineNum":" 29","line":" }"}, 31 | {"lineNum":" 30","line":" }"}, 32 | {"lineNum":" 31","line":"}","class":"lineNoCov","hits":"0","possible_hits":"2",}, 33 | ]}; 34 | var percent_low = 25;var percent_high = 75; 35 | var header = { "command" : "compile_debug", "date" : "2019-11-28 11:37:30", "instrumented" : 14, "covered" : 0,}; 36 | var merged_data = []; 37 | -------------------------------------------------------------------------------- /coverage/compile_debug/cov/compile_debug.61fcb268307c63d9/slice.rs.92cc11a9.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | ??? 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 42 | 43 | 44 |
Coverage Report
20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | 32 | 33 | 34 | 35 | 36 | 37 | 38 | 39 | 40 |
Command:???Line number
Date: Instrumented lines:???Hits
Code covered:???Executed lines:???Order
41 |
45 | 46 | 65 |
66 | 67 | 68 | 69 | 70 |
Generated by: Kcov
71 | 72 | 73 | -------------------------------------------------------------------------------- /coverage/compile_debug/cov/compile_debug.61fcb268307c63d9/stackmap.rs.390bac72.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | ??? 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 42 | 43 | 44 |
Coverage Report
20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | 32 | 33 | 34 | 35 | 36 | 37 | 38 | 39 | 40 |
Command:???Line number
Date: Instrumented lines:???Hits
Code covered:???Executed lines:???Order
41 |
45 | 46 | 65 |
66 | 67 | 68 | 69 | 70 |
Generated by: Kcov
71 | 72 | 73 | -------------------------------------------------------------------------------- /coverage/compile_debug/cov/compile_debug.61fcb268307c63d9/state.rs.5893bb9.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | ??? 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 42 | 43 | 44 |
Coverage Report
20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | 32 | 33 | 34 | 35 | 36 | 37 | 38 | 39 | 40 |
Command:???Line number
Date: Instrumented lines:???Hits
Code covered:???Executed lines:???Order
41 |
45 | 46 | 65 |
66 | 67 | 68 | 69 | 70 |
Generated by: Kcov
71 | 72 | 73 | -------------------------------------------------------------------------------- /coverage/compile_debug/cov/compile_debug.61fcb268307c63d9/state.rs.6e2e7c86.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | ??? 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 42 | 43 | 44 |
Coverage Report
20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | 32 | 33 | 34 | 35 | 36 | 37 | 38 | 39 | 40 |
Command:???Line number
Date: Instrumented lines:???Hits
Code covered:???Executed lines:???Order
41 |
45 | 46 | 65 |
66 | 67 | 68 | 69 | 70 |
Generated by: Kcov
71 | 72 | 73 | -------------------------------------------------------------------------------- /coverage/compile_debug/cov/compile_debug.61fcb268307c63d9/static_.rs.fa2a2a55.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | ??? 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 42 | 43 | 44 |
Coverage Report
20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | 32 | 33 | 34 | 35 | 36 | 37 | 38 | 39 | 40 |
Command:???Line number
Date: Instrumented lines:???Hits
Code covered:???Executed lines:???Order
41 |
45 | 46 | 65 |
66 | 67 | 68 | 69 | 70 |
Generated by: Kcov
71 | 72 | 73 | -------------------------------------------------------------------------------- /coverage/compile_debug/cov/compile_debug.61fcb268307c63d9/structs.rs.8dd79674.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | ??? 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 42 | 43 | 44 |
Coverage Report
20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | 32 | 33 | 34 | 35 | 36 | 37 | 38 | 39 | 40 |
Command:???Line number
Date: Instrumented lines:???Hits
Code covered:???Executed lines:???Order
41 |
45 | 46 | 65 |
66 | 67 | 68 | 69 | 70 |
Generated by: Kcov
71 | 72 | 73 | -------------------------------------------------------------------------------- /coverage/compile_debug/cov/compile_debug.61fcb268307c63d9/structs.rs.8dd79674.js: -------------------------------------------------------------------------------- 1 | var data = {lines:[ 2 | {"lineNum":" 1","line":"use libc::c_char;"}, 3 | {"lineNum":" 2","line":""}, 4 | {"lineNum":" 3","line":"use wasmer_runtime_core::vm;"}, 5 | {"lineNum":" 4","line":""}, 6 | {"lineNum":" 5","line":"#[repr(C)]"}, 7 | {"lineNum":" 6","line":"pub struct LLVMModule {"}, 8 | {"lineNum":" 7","line":" _private: [u8; 0],"}, 9 | {"lineNum":" 8","line":"}"}, 10 | {"lineNum":" 9","line":""}, 11 | {"lineNum":" 10","line":"#[allow(non_camel_case_types, dead_code)]"}, 12 | {"lineNum":" 11","line":"#[derive(Debug, Copy, Clone, PartialEq, Eq)]"}, 13 | {"lineNum":" 12","line":"#[repr(C)]"}, 14 | {"lineNum":" 13","line":"pub enum MemProtect {"}, 15 | {"lineNum":" 14","line":" NONE,"}, 16 | {"lineNum":" 15","line":" READ,"}, 17 | {"lineNum":" 16","line":" READ_WRITE,"}, 18 | {"lineNum":" 17","line":" READ_EXECUTE,"}, 19 | {"lineNum":" 18","line":"}"}, 20 | {"lineNum":" 19","line":""}, 21 | {"lineNum":" 20","line":"#[allow(non_camel_case_types, dead_code)]"}, 22 | {"lineNum":" 21","line":"#[derive(Debug, Copy, Clone, PartialEq, Eq)]","class":"lineCov","hits":"2","order":"687","possible_hits":"2",}, 23 | {"lineNum":" 22","line":"#[repr(C)]"}, 24 | {"lineNum":" 23","line":"pub enum LLVMResult {"}, 25 | {"lineNum":" 24","line":" OK,"}, 26 | {"lineNum":" 25","line":" ALLOCATE_FAILURE,"}, 27 | {"lineNum":" 26","line":" PROTECT_FAILURE,"}, 28 | {"lineNum":" 27","line":" DEALLOC_FAILURE,"}, 29 | {"lineNum":" 28","line":" OBJECT_LOAD_FAILURE,"}, 30 | {"lineNum":" 29","line":"}"}, 31 | {"lineNum":" 30","line":""}, 32 | {"lineNum":" 31","line":"#[repr(C)]"}, 33 | {"lineNum":" 32","line":"pub struct Callbacks {"}, 34 | {"lineNum":" 33","line":" pub alloc_memory: extern \"C\" fn(usize, MemProtect, &mut *mut u8, &mut usize) -> LLVMResult,"}, 35 | {"lineNum":" 34","line":" pub protect_memory: extern \"C\" fn(*mut u8, usize, MemProtect) -> LLVMResult,"}, 36 | {"lineNum":" 35","line":" pub dealloc_memory: extern \"C\" fn(*mut u8, usize) -> LLVMResult,"}, 37 | {"lineNum":" 36","line":""}, 38 | {"lineNum":" 37","line":" pub lookup_vm_symbol: extern \"C\" fn(*const c_char, usize) -> *const vm::Func,"}, 39 | {"lineNum":" 38","line":" pub visit_fde: extern \"C\" fn(*mut u8, usize, extern \"C\" fn(*mut u8)),"}, 40 | {"lineNum":" 39","line":"}"}, 41 | ]}; 42 | var percent_low = 25;var percent_high = 75; 43 | var header = { "command" : "compile_debug", "date" : "2019-11-28 11:37:30", "instrumented" : 1, "covered" : 1,}; 44 | var merged_data = []; 45 | -------------------------------------------------------------------------------- /coverage/compile_debug/cov/compile_debug.61fcb268307c63d9/summary.db: -------------------------------------------------------------------------------- 1 | Emil!ocompile_debug -------------------------------------------------------------------------------- /coverage/compile_debug/cov/compile_debug.61fcb268307c63d9/types.rs.8ee3342f.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | ??? 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 42 | 43 | 44 |
Coverage Report
20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | 32 | 33 | 34 | 35 | 36 | 37 | 38 | 39 | 40 |
Command:???Line number
Date: Instrumented lines:???Hits
Code covered:???Executed lines:???Order
41 |
45 | 46 | 65 |
66 | 67 | 68 | 69 | 70 |
Generated by: Kcov
71 | 72 | 73 | -------------------------------------------------------------------------------- /coverage/compile_debug/cov/compile_debug.61fcb268307c63d9/units.rs.99697b90.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | ??? 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 42 | 43 | 44 |
Coverage Report
20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | 32 | 33 | 34 | 35 | 36 | 37 | 38 | 39 | 40 |
Command:???Line number
Date: Instrumented lines:???Hits
Code covered:???Executed lines:???Order
41 |
45 | 46 | 65 |
66 | 67 | 68 | 69 | 70 |
Generated by: Kcov
71 | 72 | 73 | -------------------------------------------------------------------------------- /coverage/compile_debug/cov/compile_debug.61fcb268307c63d9/unix.rs.16e4020c.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | ??? 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 42 | 43 | 44 |
Coverage Report
20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | 32 | 33 | 34 | 35 | 36 | 37 | 38 | 39 | 40 |
Command:???Line number
Date: Instrumented lines:???Hits
Code covered:???Executed lines:???Order
41 |
45 | 46 | 65 |
66 | 67 | 68 | 69 | 70 |
Generated by: Kcov
71 | 72 | 73 | -------------------------------------------------------------------------------- /coverage/compile_debug/cov/compile_debug.61fcb268307c63d9/vm.rs.315d6b2c.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | ??? 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 42 | 43 | 44 |
Coverage Report
20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | 32 | 33 | 34 | 35 | 36 | 37 | 38 | 39 | 40 |
Command:???Line number
Date: Instrumented lines:???Hits
Code covered:???Executed lines:???Order
41 |
45 | 46 | 65 |
66 | 67 | 68 | 69 | 70 |
Generated by: Kcov
71 | 72 | 73 | -------------------------------------------------------------------------------- /coverage/compile_debug/cov/data/amber.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wasmerio/wasm-fuzz/20c7430e2c04cc1b7eedac6f17b72a1a232454b9/coverage/compile_debug/cov/data/amber.png -------------------------------------------------------------------------------- /coverage/compile_debug/cov/data/bcov.css: -------------------------------------------------------------------------------- 1 | /* Based upon the lcov CSS style, style files can be reused */ 2 | body { color: #000000; background-color: #FFFFFF; } 3 | a:link { color: #284FA8; text-decoration: underline; } 4 | a:visited { color: #00CB40; text-decoration: underline; } 5 | a:active { color: #FF0040; text-decoration: underline; } 6 | td.title { text-align: center; padding-bottom: 10px; font-size: 20pt; font-weight: bold; } 7 | td.ruler { background-color: #6688D4; } 8 | td.headerItem { text-align: right; padding-right: 6px; font-family: sans-serif; font-weight: bold; } 9 | td.headerValue { text-align: left; color: #284FA8; font-family: sans-serif; font-weight: bold; } 10 | td.versionInfo { text-align: center; padding-top: 2px; } 11 | th.headerItem { text-align: right; padding-right: 6px; font-family: sans-serif; font-weight: bold; } 12 | th.headerValue { text-align: left; color: #284FA8; font-family: sans-serif; font-weight: bold; } 13 | pre.source { font-family: monospace; white-space: pre; overflow: hidden; text-overflow: ellipsis; } 14 | span.lineNum { background-color: #EFE383; } 15 | span.lineNumLegend { background-color: #EFE383; width: 96px; font-weight: bold ;} 16 | span.lineCov { background-color: #adff9a; } 17 | span.linePartCov { background-color: #fffe80; } 18 | span.lineNoCov { background-color: #ffbbbb; } 19 | span.orderNum { background-color: #e0b373; float: right; width:5em; text-align: left; } 20 | span.orderNumLegend { background-color: #e0b373; width: 96px; font-weight: bold ;} 21 | span.coverHits { background-color: #DFE383; padding-left: 3px; padding-right: 1px; text-align: right; list-style-type: none; display: inline-block; width: 5em; } 22 | span.coverHitsLegend { background-color: #DFE383; width: 96px; font-weight: bold; margin: 0 auto;} 23 | td.tableHead { text-align: center; color: #FFFFFF; background-color: #6688D4; font-family: sans-serif; font-size: 120%; font-weight: bold; } 24 | td.coverFile { text-align: left; padding-left: 10px; padding-right: 20px; color: #284FA8; font-family: monospace; } 25 | td.coverBar { padding-left: 10px; padding-right: 10px; background-color: #DAE7FE; } 26 | td.coverBarOutline { background-color: #000000; } 27 | td.coverPer { text-align: left; padding-left: 10px; padding-right: 10px; font-weight: bold; } 28 | td.coverPerLeftMed { text-align: left; padding-left: 10px; padding-right: 10px; background-color: #fffe80; font-weight: bold; } 29 | td.coverPerLeftLo { text-align: left; padding-left: 10px; padding-right: 10px; background-color: #ffbbbb; font-weight: bold; } 30 | td.coverPerLeftHi { text-align: left; padding-left: 10px; padding-right: 10px; background-color: #adff9a; font-weight: bold; } 31 | td.coverNum { text-align: right; padding-left: 10px; padding-right: 10px; } 32 | td.coverNum { text-align: right; padding-left: 10px; padding-right: 10px; } 33 | -------------------------------------------------------------------------------- /coverage/compile_debug/cov/data/glass.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wasmerio/wasm-fuzz/20c7430e2c04cc1b7eedac6f17b72a1a232454b9/coverage/compile_debug/cov/data/glass.png -------------------------------------------------------------------------------- /coverage/compile_debug/cov/data/js/kcov.js: -------------------------------------------------------------------------------- 1 | window.onload = function () { 2 | 3 | // http://stackoverflow.com/questions/8853396/logical-operator-in-a-handlebars-js-if-conditional 4 | Handlebars.registerHelper('ifCond', function (v1, operator, v2, options) { 5 | switch (operator) { 6 | case '==': 7 | return (v1 == v2) ? options.fn(this) : options.inverse(this); 8 | case '===': 9 | return (v1 === v2) ? options.fn(this) : options.inverse(this); 10 | case '<': 11 | return (v1 < v2) ? options.fn(this) : options.inverse(this); 12 | case '<=': 13 | return (v1 <= v2) ? options.fn(this) : options.inverse(this); 14 | case '>': 15 | return (v1 > v2) ? options.fn(this) : options.inverse(this); 16 | case '>=': 17 | return (v1 >= v2) ? options.fn(this) : options.inverse(this); 18 | case '&&': 19 | return (v1 && v2) ? options.fn(this) : options.inverse(this); 20 | case '||': 21 | return (v1 || v2) ? options.fn(this) : options.inverse(this); 22 | default: 23 | return options.inverse(this); 24 | } 25 | }); 26 | 27 | // http://stackoverflow.com/questions/17095813/handlebars-if-and-numeric-zeroes 28 | Handlebars.registerHelper('exists', function(variable, options) { 29 | if (typeof variable !== 'undefined') { 30 | return options.fn(this); 31 | } else { 32 | return options.inverse(this); 33 | } 34 | }); 35 | 36 | var filesElement = document.getElementById("files-template") 37 | if (filesElement) { 38 | var source = filesElement.innerHTML; 39 | var template = Handlebars.compile(source); 40 | 41 | document.getElementById('files-placeholder').innerHTML = template(data); 42 | } 43 | var linesElement = document.getElementById("lines-template") 44 | if (linesElement) { 45 | var source = linesElement.innerHTML; 46 | var template = Handlebars.compile(source); 47 | document.getElementById('lines-placeholder').innerHTML = template(data); 48 | } 49 | 50 | elem = document.getElementById('header-percent-covered') 51 | 52 | elem.className = toCoverPercentString(header.covered, header.instrumented); 53 | elem.innerHTML = ((header.covered / header.instrumented) * 100).toFixed(1) + "%"; 54 | 55 | document.getElementById('header-command').innerHTML = header.command; 56 | document.getElementById('window-title').innerHTML = "Coverage report - " + header.command; 57 | document.getElementById('header-date').innerHTML = header.date; 58 | document.getElementById('header-covered').innerHTML = header.covered 59 | document.getElementById('header-instrumented').innerHTML = header.instrumented 60 | 61 | $("#index-table").tablesorter({ 62 | theme : 'blue', 63 | sortList : [[1,0]], 64 | cssInfoBlock : "tablesorter-no-sort", 65 | widgets: ["saveSort"], 66 | }); 67 | } 68 | 69 | function toCoverPercentString (covered, instrumented) { 70 | perc = (covered / instrumented) * 100; 71 | 72 | if (perc <= percent_low) 73 | return "coverPerLeftLo"; 74 | else if (perc >= percent_high) 75 | return "coverPerLeftHi"; 76 | 77 | return "coverPerLeftMed"; 78 | } 79 | -------------------------------------------------------------------------------- /coverage/compile_debug/cov/glass.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wasmerio/wasm-fuzz/20c7430e2c04cc1b7eedac6f17b72a1a232454b9/coverage/compile_debug/cov/glass.png -------------------------------------------------------------------------------- /coverage/compile_debug/cov/index.js: -------------------------------------------------------------------------------- 1 | var data = {files:[ 2 | {"link":"compile_debug.61fcb268307c63d9/index.html","title":"compile_debug","summary_name":"compile_debug","covered_class":"lineNoCov","covered":"9.0","covered_lines":"773","uncovered_lines":"7786","total_lines" : "8559"}, 3 | ], merged_files:[]}; 4 | var percent_low = 25;var percent_high = 75; 5 | var header = { "command" : "compile_debug", "date" : "2019-11-28 11:37:30", "instrumented" : 8559, "covered" : 773,}; 6 | -------------------------------------------------------------------------------- /coverage/compile_debug/cov/libkcov_sowrapper.so: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wasmerio/wasm-fuzz/20c7430e2c04cc1b7eedac6f17b72a1a232454b9/coverage/compile_debug/cov/libkcov_sowrapper.so -------------------------------------------------------------------------------- /coverage/debug_all_coverage/Cargo.toml: -------------------------------------------------------------------------------- 1 | [package] 2 | name = "debug_all_coverage" 3 | version = "0.1.0" 4 | authors = ["Patrick Ventuzelo "] 5 | edition = "2018" 6 | 7 | # See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html 8 | 9 | [profile.dev] 10 | panic = "unwind" 11 | 12 | [profile.release] 13 | panic = "unwind" 14 | 15 | [dependencies] 16 | wasmer-runtime = { path = "../lib/runtime" } 17 | wasmer-runtime-core = { path = "../lib/runtime-core" } 18 | wasmer-singlepass-backend = { path = "../lib/singlepass-backend" } 19 | wasmer-llvm-backend = { path = "../lib/llvm-backend" } 20 | wasmer = { path = "../" } 21 | 22 | # Prevent this from interfering with workspaces 23 | [workspace] 24 | members = ["."] 25 | 26 | [[bin]] 27 | name = "all_coverage" 28 | path = "src/main.rs" -------------------------------------------------------------------------------- /crashes/panic_index_oob_all_backends.wasm: -------------------------------------------------------------------------------- 1 | asm A # -------------------------------------------------------------------------------- /crashes/panic_index_oob_cranelift_blocktype.wasm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wasmerio/wasm-fuzz/20c7430e2c04cc1b7eedac6f17b72a1a232454b9/crashes/panic_index_oob_cranelift_blocktype.wasm -------------------------------------------------------------------------------- /crashes/panic_index_out_range_llvm.wasm: -------------------------------------------------------------------------------- 1 | asm`` h-cget 2 | #AA*pAjO A  A A -------------------------------------------------------------------------------- /crashes/panic_inkwell.wasm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wasmerio/wasm-fuzz/20c7430e2c04cc1b7eedac6f17b72a1a232454b9/crashes/panic_inkwell.wasm -------------------------------------------------------------------------------- /crashes/panic_inkwell_min_unreach.wasm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wasmerio/wasm-fuzz/20c7430e2c04cc1b7eedac6f17b72a1a232454b9/crashes/panic_inkwell_min_unreach.wasm -------------------------------------------------------------------------------- /crashes/panic_ref_type_not_enabled.wasm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wasmerio/wasm-fuzz/20c7430e2c04cc1b7eedac6f17b72a1a232454b9/crashes/panic_ref_type_not_enabled.wasm -------------------------------------------------------------------------------- /crashes/panic_substract_overflow.wasm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wasmerio/wasm-fuzz/20c7430e2c04cc1b7eedac6f17b72a1a232454b9/crashes/panic_substract_overflow.wasm -------------------------------------------------------------------------------- /crashes/panic_substract_overflow_peek1_extra.wasm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wasmerio/wasm-fuzz/20c7430e2c04cc1b7eedac6f17b72a1a232454b9/crashes/panic_substract_overflow_peek1_extra.wasm -------------------------------------------------------------------------------- /crashes/panic_unwrap_brtable_singlepass.wasm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wasmerio/wasm-fuzz/20c7430e2c04cc1b7eedac6f17b72a1a232454b9/crashes/panic_unwrap_brtable_singlepass.wasm -------------------------------------------------------------------------------- /crashes/wasmparser_assert_failed_remove_frame_stack_types.wasm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wasmerio/wasm-fuzz/20c7430e2c04cc1b7eedac6f17b72a1a232454b9/crashes/wasmparser_assert_failed_remove_frame_stack_types.wasm -------------------------------------------------------------------------------- /crashes_diff_compile/SIGABRT.PC.7ffff7a3ded7.STACK.18027d4541.CODE.-6.ADDR.(nil).INSTR.mov____0x108(%rsp),%rcx.fuzz: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wasmerio/wasm-fuzz/20c7430e2c04cc1b7eedac6f17b72a1a232454b9/crashes_diff_compile/SIGABRT.PC.7ffff7a3ded7.STACK.18027d4541.CODE.-6.ADDR.(nil).INSTR.mov____0x108(%rsp),%rcx.fuzz -------------------------------------------------------------------------------- /crashes_diff_compile/SIGABRT.PC.7ffff7a3ded7.STACK.18a7b84e3c.CODE.-6.ADDR.(nil).INSTR.mov____0x108(%rsp),%rcx.fuzz: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wasmerio/wasm-fuzz/20c7430e2c04cc1b7eedac6f17b72a1a232454b9/crashes_diff_compile/SIGABRT.PC.7ffff7a3ded7.STACK.18a7b84e3c.CODE.-6.ADDR.(nil).INSTR.mov____0x108(%rsp),%rcx.fuzz -------------------------------------------------------------------------------- /crashes_diff_compile/SIGABRT.PC.7ffff7a3ded7.STACK.18ac5b3beb.CODE.-6.ADDR.(nil).INSTR.mov____0x108(%rsp),%rcx.fuzz: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wasmerio/wasm-fuzz/20c7430e2c04cc1b7eedac6f17b72a1a232454b9/crashes_diff_compile/SIGABRT.PC.7ffff7a3ded7.STACK.18ac5b3beb.CODE.-6.ADDR.(nil).INSTR.mov____0x108(%rsp),%rcx.fuzz -------------------------------------------------------------------------------- /crashes_diff_compile/SIGABRT.PC.7ffff7a3ded7.STACK.18b1c221ca.CODE.-6.ADDR.(nil).INSTR.mov____0x108(%rsp),%rcx.fuzz: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wasmerio/wasm-fuzz/20c7430e2c04cc1b7eedac6f17b72a1a232454b9/crashes_diff_compile/SIGABRT.PC.7ffff7a3ded7.STACK.18b1c221ca.CODE.-6.ADDR.(nil).INSTR.mov____0x108(%rsp),%rcx.fuzz -------------------------------------------------------------------------------- /crashes_diff_compile/SIGABRT.PC.7ffff7a3ded7.STACK.19040bf294.CODE.-6.ADDR.(nil).INSTR.mov____0x108(%rsp),%rcx.fuzz: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wasmerio/wasm-fuzz/20c7430e2c04cc1b7eedac6f17b72a1a232454b9/crashes_diff_compile/SIGABRT.PC.7ffff7a3ded7.STACK.19040bf294.CODE.-6.ADDR.(nil).INSTR.mov____0x108(%rsp),%rcx.fuzz -------------------------------------------------------------------------------- /crashes_diff_compile/SIGABRT.PC.7ffff7a3ded7.STACK.192a85f89f.CODE.-6.ADDR.(nil).INSTR.mov____0x108(%rsp),%rcx.fuzz: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wasmerio/wasm-fuzz/20c7430e2c04cc1b7eedac6f17b72a1a232454b9/crashes_diff_compile/SIGABRT.PC.7ffff7a3ded7.STACK.192a85f89f.CODE.-6.ADDR.(nil).INSTR.mov____0x108(%rsp),%rcx.fuzz -------------------------------------------------------------------------------- /crashes_diff_compile/SIGABRT.PC.7ffff7a3ded7.STACK.19ac1d7279.CODE.-6.ADDR.(nil).INSTR.mov____0x108(%rsp),%rcx.fuzz: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wasmerio/wasm-fuzz/20c7430e2c04cc1b7eedac6f17b72a1a232454b9/crashes_diff_compile/SIGABRT.PC.7ffff7a3ded7.STACK.19ac1d7279.CODE.-6.ADDR.(nil).INSTR.mov____0x108(%rsp),%rcx.fuzz -------------------------------------------------------------------------------- /crashes_diff_compile/SIGABRT.PC.7ffff7a3ded7.STACK.19c789da48.CODE.-6.ADDR.(nil).INSTR.mov____0x108(%rsp),%rcx.fuzz: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wasmerio/wasm-fuzz/20c7430e2c04cc1b7eedac6f17b72a1a232454b9/crashes_diff_compile/SIGABRT.PC.7ffff7a3ded7.STACK.19c789da48.CODE.-6.ADDR.(nil).INSTR.mov____0x108(%rsp),%rcx.fuzz -------------------------------------------------------------------------------- /crashes_diff_compile/SIGABRT.PC.7ffff7a3ded7.STACK.19da9995bc.CODE.-6.ADDR.(nil).INSTR.mov____0x108(%rsp),%rcx.fuzz: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wasmerio/wasm-fuzz/20c7430e2c04cc1b7eedac6f17b72a1a232454b9/crashes_diff_compile/SIGABRT.PC.7ffff7a3ded7.STACK.19da9995bc.CODE.-6.ADDR.(nil).INSTR.mov____0x108(%rsp),%rcx.fuzz -------------------------------------------------------------------------------- /crashes_diff_compile/SIGABRT.PC.7ffff7a3ded7.STACK.19e3e2b3b0.CODE.-6.ADDR.(nil).INSTR.mov____0x108(%rsp),%rcx.fuzz: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wasmerio/wasm-fuzz/20c7430e2c04cc1b7eedac6f17b72a1a232454b9/crashes_diff_compile/SIGABRT.PC.7ffff7a3ded7.STACK.19e3e2b3b0.CODE.-6.ADDR.(nil).INSTR.mov____0x108(%rsp),%rcx.fuzz -------------------------------------------------------------------------------- /crashes_diff_compile/SIGABRT.PC.7ffff7a3ded7.STACK.1a0cc5b3d3.CODE.-6.ADDR.(nil).INSTR.mov____0x108(%rsp),%rcx.fuzz: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wasmerio/wasm-fuzz/20c7430e2c04cc1b7eedac6f17b72a1a232454b9/crashes_diff_compile/SIGABRT.PC.7ffff7a3ded7.STACK.1a0cc5b3d3.CODE.-6.ADDR.(nil).INSTR.mov____0x108(%rsp),%rcx.fuzz -------------------------------------------------------------------------------- /crashes_diff_compile/SIGABRT.PC.7ffff7a3ded7.STACK.1a15bc9f25.CODE.-6.ADDR.(nil).INSTR.mov____0x108(%rsp),%rcx.fuzz: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wasmerio/wasm-fuzz/20c7430e2c04cc1b7eedac6f17b72a1a232454b9/crashes_diff_compile/SIGABRT.PC.7ffff7a3ded7.STACK.1a15bc9f25.CODE.-6.ADDR.(nil).INSTR.mov____0x108(%rsp),%rcx.fuzz -------------------------------------------------------------------------------- /crashes_diff_compile/SIGABRT.PC.7ffff7a3ded7.STACK.1a1a765f56.CODE.-6.ADDR.(nil).INSTR.mov____0x108(%rsp),%rcx.fuzz: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wasmerio/wasm-fuzz/20c7430e2c04cc1b7eedac6f17b72a1a232454b9/crashes_diff_compile/SIGABRT.PC.7ffff7a3ded7.STACK.1a1a765f56.CODE.-6.ADDR.(nil).INSTR.mov____0x108(%rsp),%rcx.fuzz -------------------------------------------------------------------------------- /crashes_diff_compile/SIGABRT.PC.7ffff7a3ded7.STACK.1a28d0d8b2.CODE.-6.ADDR.(nil).INSTR.mov____0x108(%rsp),%rcx.fuzz: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wasmerio/wasm-fuzz/20c7430e2c04cc1b7eedac6f17b72a1a232454b9/crashes_diff_compile/SIGABRT.PC.7ffff7a3ded7.STACK.1a28d0d8b2.CODE.-6.ADDR.(nil).INSTR.mov____0x108(%rsp),%rcx.fuzz -------------------------------------------------------------------------------- /crashes_diff_compile/SIGABRT.PC.7ffff7a3ded7.STACK.1a60183fe6.CODE.-6.ADDR.(nil).INSTR.mov____0x108(%rsp),%rcx.fuzz: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wasmerio/wasm-fuzz/20c7430e2c04cc1b7eedac6f17b72a1a232454b9/crashes_diff_compile/SIGABRT.PC.7ffff7a3ded7.STACK.1a60183fe6.CODE.-6.ADDR.(nil).INSTR.mov____0x108(%rsp),%rcx.fuzz -------------------------------------------------------------------------------- /crashes_diff_compile/SIGABRT.PC.7ffff7a3ded7.STACK.1a9d23d5a5.CODE.-6.ADDR.(nil).INSTR.mov____0x108(%rsp),%rcx.fuzz: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wasmerio/wasm-fuzz/20c7430e2c04cc1b7eedac6f17b72a1a232454b9/crashes_diff_compile/SIGABRT.PC.7ffff7a3ded7.STACK.1a9d23d5a5.CODE.-6.ADDR.(nil).INSTR.mov____0x108(%rsp),%rcx.fuzz -------------------------------------------------------------------------------- /crashes_diff_compile/SIGABRT.PC.7ffff7a3ded7.STACK.1bd9cf2307.CODE.-6.ADDR.(nil).INSTR.mov____0x108(%rsp),%rcx.fuzz: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wasmerio/wasm-fuzz/20c7430e2c04cc1b7eedac6f17b72a1a232454b9/crashes_diff_compile/SIGABRT.PC.7ffff7a3ded7.STACK.1bd9cf2307.CODE.-6.ADDR.(nil).INSTR.mov____0x108(%rsp),%rcx.fuzz -------------------------------------------------------------------------------- /crashes_diff_compile/SIGABRT.PC.7ffff7a3ded7.STACK.c33420311.CODE.-6.ADDR.(nil).INSTR.mov____0x108(%rsp),%rcx.fuzz: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wasmerio/wasm-fuzz/20c7430e2c04cc1b7eedac6f17b72a1a232454b9/crashes_diff_compile/SIGABRT.PC.7ffff7a3ded7.STACK.c33420311.CODE.-6.ADDR.(nil).INSTR.mov____0x108(%rsp),%rcx.fuzz -------------------------------------------------------------------------------- /crashes_diff_compile/SIGABRT.PC.7ffff7a3ded7.STACK.c72d1c509.CODE.-6.ADDR.(nil).INSTR.mov____0x108(%rsp),%rcx.fuzz: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wasmerio/wasm-fuzz/20c7430e2c04cc1b7eedac6f17b72a1a232454b9/crashes_diff_compile/SIGABRT.PC.7ffff7a3ded7.STACK.c72d1c509.CODE.-6.ADDR.(nil).INSTR.mov____0x108(%rsp),%rcx.fuzz -------------------------------------------------------------------------------- /crashes_diff_compile/SIGABRT.PC.7ffff7a3ded7.STACK.cb4df982c.CODE.-6.ADDR.(nil).INSTR.mov____0x108(%rsp),%rcx.fuzz: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wasmerio/wasm-fuzz/20c7430e2c04cc1b7eedac6f17b72a1a232454b9/crashes_diff_compile/SIGABRT.PC.7ffff7a3ded7.STACK.cb4df982c.CODE.-6.ADDR.(nil).INSTR.mov____0x108(%rsp),%rcx.fuzz -------------------------------------------------------------------------------- /crashes_diff_compile/SIGABRT.PC.7ffff7a3ded7.STACK.d224305cc.CODE.-6.ADDR.(nil).INSTR.mov____0x108(%rsp),%rcx.fuzz: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wasmerio/wasm-fuzz/20c7430e2c04cc1b7eedac6f17b72a1a232454b9/crashes_diff_compile/SIGABRT.PC.7ffff7a3ded7.STACK.d224305cc.CODE.-6.ADDR.(nil).INSTR.mov____0x108(%rsp),%rcx.fuzz -------------------------------------------------------------------------------- /crashes_diff_compile/SIGABRT.PC.7ffff7a3ded7.STACK.d243b7872.CODE.-6.ADDR.(nil).INSTR.mov____0x108(%rsp),%rcx.fuzz: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wasmerio/wasm-fuzz/20c7430e2c04cc1b7eedac6f17b72a1a232454b9/crashes_diff_compile/SIGABRT.PC.7ffff7a3ded7.STACK.d243b7872.CODE.-6.ADDR.(nil).INSTR.mov____0x108(%rsp),%rcx.fuzz -------------------------------------------------------------------------------- /crashes_diff_compile/SIGABRT.PC.7ffff7a3ded7.STACK.d6160ed01.CODE.-6.ADDR.(nil).INSTR.mov____0x108(%rsp),%rcx.fuzz: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wasmerio/wasm-fuzz/20c7430e2c04cc1b7eedac6f17b72a1a232454b9/crashes_diff_compile/SIGABRT.PC.7ffff7a3ded7.STACK.d6160ed01.CODE.-6.ADDR.(nil).INSTR.mov____0x108(%rsp),%rcx.fuzz -------------------------------------------------------------------------------- /crashes_diff_compile/SIGABRT.PC.7ffff7a3ded7.STACK.df2f06eda.CODE.-6.ADDR.(nil).INSTR.mov____0x108(%rsp),%rcx.fuzz: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wasmerio/wasm-fuzz/20c7430e2c04cc1b7eedac6f17b72a1a232454b9/crashes_diff_compile/SIGABRT.PC.7ffff7a3ded7.STACK.df2f06eda.CODE.-6.ADDR.(nil).INSTR.mov____0x108(%rsp),%rcx.fuzz -------------------------------------------------------------------------------- /crashes_diff_compile/SIGABRT.PC.7ffff7a3ded7.STACK.df82ce066.CODE.-6.ADDR.(nil).INSTR.mov____0x108(%rsp),%rcx.fuzz: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wasmerio/wasm-fuzz/20c7430e2c04cc1b7eedac6f17b72a1a232454b9/crashes_diff_compile/SIGABRT.PC.7ffff7a3ded7.STACK.df82ce066.CODE.-6.ADDR.(nil).INSTR.mov____0x108(%rsp),%rcx.fuzz -------------------------------------------------------------------------------- /crashes_diff_compile/SIGABRT.PC.7ffff7a3ded7.STACK.e1a98c8aa.CODE.-6.ADDR.(nil).INSTR.mov____0x108(%rsp),%rcx.fuzz: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wasmerio/wasm-fuzz/20c7430e2c04cc1b7eedac6f17b72a1a232454b9/crashes_diff_compile/SIGABRT.PC.7ffff7a3ded7.STACK.e1a98c8aa.CODE.-6.ADDR.(nil).INSTR.mov____0x108(%rsp),%rcx.fuzz -------------------------------------------------------------------------------- /crashes_diff_compile/SIGABRT.PC.7ffff7a3ded7.STACK.e4dba3dc0.CODE.-6.ADDR.(nil).INSTR.mov____0x108(%rsp),%rcx.fuzz: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wasmerio/wasm-fuzz/20c7430e2c04cc1b7eedac6f17b72a1a232454b9/crashes_diff_compile/SIGABRT.PC.7ffff7a3ded7.STACK.e4dba3dc0.CODE.-6.ADDR.(nil).INSTR.mov____0x108(%rsp),%rcx.fuzz -------------------------------------------------------------------------------- /crashes_diff_compile/SIGABRT.PC.7ffff7a3ded7.STACK.e624bf9a8.CODE.-6.ADDR.(nil).INSTR.mov____0x108(%rsp),%rcx.fuzz: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wasmerio/wasm-fuzz/20c7430e2c04cc1b7eedac6f17b72a1a232454b9/crashes_diff_compile/SIGABRT.PC.7ffff7a3ded7.STACK.e624bf9a8.CODE.-6.ADDR.(nil).INSTR.mov____0x108(%rsp),%rcx.fuzz -------------------------------------------------------------------------------- /crashes_diff_compile/SIGABRT.PC.7ffff7a3ded7.STACK.ecf8d81d0.CODE.-6.ADDR.(nil).INSTR.mov____0x108(%rsp),%rcx.fuzz: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wasmerio/wasm-fuzz/20c7430e2c04cc1b7eedac6f17b72a1a232454b9/crashes_diff_compile/SIGABRT.PC.7ffff7a3ded7.STACK.ecf8d81d0.CODE.-6.ADDR.(nil).INSTR.mov____0x108(%rsp),%rcx.fuzz -------------------------------------------------------------------------------- /crashes_diff_compile/SIGABRT.PC.7ffff7a3ded7.STACK.ed626bd66.CODE.-6.ADDR.(nil).INSTR.mov____0x108(%rsp),%rcx.fuzz: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wasmerio/wasm-fuzz/20c7430e2c04cc1b7eedac6f17b72a1a232454b9/crashes_diff_compile/SIGABRT.PC.7ffff7a3ded7.STACK.ed626bd66.CODE.-6.ADDR.(nil).INSTR.mov____0x108(%rsp),%rcx.fuzz -------------------------------------------------------------------------------- /crashes_diff_compile/SIGABRT.PC.7ffff7a3ded7.STACK.f54f424bc.CODE.-6.ADDR.(nil).INSTR.mov____0x108(%rsp),%rcx.fuzz: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wasmerio/wasm-fuzz/20c7430e2c04cc1b7eedac6f17b72a1a232454b9/crashes_diff_compile/SIGABRT.PC.7ffff7a3ded7.STACK.f54f424bc.CODE.-6.ADDR.(nil).INSTR.mov____0x108(%rsp),%rcx.fuzz -------------------------------------------------------------------------------- /crashes_diff_compile/SIGABRT.PC.7ffff7a3ded7.STACK.f5b9316fc.CODE.-6.ADDR.(nil).INSTR.mov____0x108(%rsp),%rcx.fuzz: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wasmerio/wasm-fuzz/20c7430e2c04cc1b7eedac6f17b72a1a232454b9/crashes_diff_compile/SIGABRT.PC.7ffff7a3ded7.STACK.f5b9316fc.CODE.-6.ADDR.(nil).INSTR.mov____0x108(%rsp),%rcx.fuzz -------------------------------------------------------------------------------- /crashes_diff_compile/SIGABRT.PC.7ffff7a3ded7.STACK.f82c1e071.CODE.-6.ADDR.(nil).INSTR.mov____0x108(%rsp),%rcx.fuzz: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wasmerio/wasm-fuzz/20c7430e2c04cc1b7eedac6f17b72a1a232454b9/crashes_diff_compile/SIGABRT.PC.7ffff7a3ded7.STACK.f82c1e071.CODE.-6.ADDR.(nil).INSTR.mov____0x108(%rsp),%rcx.fuzz -------------------------------------------------------------------------------- /crashes_diff_compile/SIGABRT.PC.7ffff7a3ded7.STACK.f96bc0843.CODE.-6.ADDR.(nil).INSTR.mov____0x108(%rsp),%rcx.fuzz: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wasmerio/wasm-fuzz/20c7430e2c04cc1b7eedac6f17b72a1a232454b9/crashes_diff_compile/SIGABRT.PC.7ffff7a3ded7.STACK.f96bc0843.CODE.-6.ADDR.(nil).INSTR.mov____0x108(%rsp),%rcx.fuzz -------------------------------------------------------------------------------- /crashes_diff_compile/SIGBUS.PC.55555628d9c0.STACK.c7f9e6d2f.CODE.128.ADDR.(nil).INSTR.mov____%ebx,0x14(%rbp).fuzz: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wasmerio/wasm-fuzz/20c7430e2c04cc1b7eedac6f17b72a1a232454b9/crashes_diff_compile/SIGBUS.PC.55555628d9c0.STACK.c7f9e6d2f.CODE.128.ADDR.(nil).INSTR.mov____%ebx,0x14(%rbp).fuzz -------------------------------------------------------------------------------- /crashes_diff_compile/SIGSEGV.PC.555555a2daff.STACK.1a0bb48f24.CODE.1.ADDR.0x29.INSTR.mov____0x8(%rdx),%eax.fuzz: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wasmerio/wasm-fuzz/20c7430e2c04cc1b7eedac6f17b72a1a232454b9/crashes_diff_compile/SIGSEGV.PC.555555a2daff.STACK.1a0bb48f24.CODE.1.ADDR.0x29.INSTR.mov____0x8(%rdx),%eax.fuzz -------------------------------------------------------------------------------- /crashes_diff_compile/SIGSEGV.PC.555555d2dbf2.STACK.e0e93f9b5.CODE.128.ADDR.(nil).INSTR.cmpb___$0xb,0x8(%rdx).fuzz: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wasmerio/wasm-fuzz/20c7430e2c04cc1b7eedac6f17b72a1a232454b9/crashes_diff_compile/SIGSEGV.PC.555555d2dbf2.STACK.e0e93f9b5.CODE.128.ADDR.(nil).INSTR.cmpb___$0xb,0x8(%rdx).fuzz -------------------------------------------------------------------------------- /crashes_diff_compile/SIGSEGV.PC.555555e2659e.STACK.19e7408b15.CODE.1.ADDR.0x18.INSTR.mov____%rdi,(%rcx).fuzz: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wasmerio/wasm-fuzz/20c7430e2c04cc1b7eedac6f17b72a1a232454b9/crashes_diff_compile/SIGSEGV.PC.555555e2659e.STACK.19e7408b15.CODE.1.ADDR.0x18.INSTR.mov____%rdi,(%rcx).fuzz -------------------------------------------------------------------------------- /crashes_diff_compile/SIGSEGV.PC.555555eb3777.STACK.fb6cb3e35.CODE.128.ADDR.(nil).INSTR.mov____%rdx,(%rsi).fuzz: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wasmerio/wasm-fuzz/20c7430e2c04cc1b7eedac6f17b72a1a232454b9/crashes_diff_compile/SIGSEGV.PC.555555eb3777.STACK.fb6cb3e35.CODE.128.ADDR.(nil).INSTR.mov____%rdx,(%rsi).fuzz -------------------------------------------------------------------------------- /crashes_diff_compile/SIGSEGV.PC.555555eb6f46.STACK.1ad8f40fe1.CODE.1.ADDR.0x30.INSTR.mov____0x30(%rsi),%ecx.fuzz: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wasmerio/wasm-fuzz/20c7430e2c04cc1b7eedac6f17b72a1a232454b9/crashes_diff_compile/SIGSEGV.PC.555555eb6f46.STACK.1ad8f40fe1.CODE.1.ADDR.0x30.INSTR.mov____0x30(%rsi),%ecx.fuzz -------------------------------------------------------------------------------- /crashes_diff_compile/SIGSEGV.PC.555555f200f9.STACK.c3f2fb4a7.CODE.1.ADDR.0x4000.INSTR.mov____(%rax),%rbx.fuzz: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wasmerio/wasm-fuzz/20c7430e2c04cc1b7eedac6f17b72a1a232454b9/crashes_diff_compile/SIGSEGV.PC.555555f200f9.STACK.c3f2fb4a7.CODE.1.ADDR.0x4000.INSTR.mov____(%rax),%rbx.fuzz -------------------------------------------------------------------------------- /crashes_diff_compile/SIGSEGV.PC.555555fa3ac3.STACK.fc3e57a23.CODE.128.ADDR.(nil).INSTR.cmpb___$0xd,0x8(%rax).fuzz: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wasmerio/wasm-fuzz/20c7430e2c04cc1b7eedac6f17b72a1a232454b9/crashes_diff_compile/SIGSEGV.PC.555555fa3ac3.STACK.fc3e57a23.CODE.128.ADDR.(nil).INSTR.cmpb___$0xd,0x8(%rax).fuzz -------------------------------------------------------------------------------- /crashes_diff_compile/SIGSEGV.PC.555555fa9407.STACK.fc3e57a23.CODE.1.ADDR.0x31.INSTR.mov____0x10(%rbx),%cl.fuzz: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wasmerio/wasm-fuzz/20c7430e2c04cc1b7eedac6f17b72a1a232454b9/crashes_diff_compile/SIGSEGV.PC.555555fa9407.STACK.fc3e57a23.CODE.1.ADDR.0x31.INSTR.mov____0x10(%rbx),%cl.fuzz -------------------------------------------------------------------------------- /crashes_diff_compile/SIGSEGV.PC.555556085de9.STACK.1b3353035d.CODE.1.ADDR.0x10.INSTR.cmpb___$0x4e,0x10(%rsi).fuzz: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wasmerio/wasm-fuzz/20c7430e2c04cc1b7eedac6f17b72a1a232454b9/crashes_diff_compile/SIGSEGV.PC.555556085de9.STACK.1b3353035d.CODE.1.ADDR.0x10.INSTR.cmpb___$0x4e,0x10(%rsi).fuzz -------------------------------------------------------------------------------- /crashes_diff_compile/SIGSEGV.PC.5555560a1eaf.STACK.18fa00d979.CODE.1.ADDR.0x10.INSTR.mov____0x10(%rax),%cl.fuzz: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wasmerio/wasm-fuzz/20c7430e2c04cc1b7eedac6f17b72a1a232454b9/crashes_diff_compile/SIGSEGV.PC.5555560a1eaf.STACK.18fa00d979.CODE.1.ADDR.0x10.INSTR.mov____0x10(%rax),%cl.fuzz -------------------------------------------------------------------------------- /crashes_diff_compile/SIGSEGV.PC.5555560f1eda.STACK.19fed2a974.CODE.1.ADDR.0x10.INSTR.cmpb___$0x4f,0x10(%rax).fuzz: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wasmerio/wasm-fuzz/20c7430e2c04cc1b7eedac6f17b72a1a232454b9/crashes_diff_compile/SIGSEGV.PC.5555560f1eda.STACK.19fed2a974.CODE.1.ADDR.0x10.INSTR.cmpb___$0x4f,0x10(%rax).fuzz -------------------------------------------------------------------------------- /crashes_diff_compile/SIGSEGV.PC.55555616f849.STACK.186b0c2f6b.CODE.1.ADDR.(nil).INSTR.mov____(%rcx),%rcx.fuzz: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wasmerio/wasm-fuzz/20c7430e2c04cc1b7eedac6f17b72a1a232454b9/crashes_diff_compile/SIGSEGV.PC.55555616f849.STACK.186b0c2f6b.CODE.1.ADDR.(nil).INSTR.mov____(%rcx),%rcx.fuzz -------------------------------------------------------------------------------- /crashes_diff_compile/SIGSEGV.PC.5555563916d8.STACK.1b8aa97047.CODE.1.ADDR.0x4000.INSTR.mov____(%rdx),%rbx.fuzz: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wasmerio/wasm-fuzz/20c7430e2c04cc1b7eedac6f17b72a1a232454b9/crashes_diff_compile/SIGSEGV.PC.5555563916d8.STACK.1b8aa97047.CODE.1.ADDR.0x4000.INSTR.mov____(%rdx),%rbx.fuzz -------------------------------------------------------------------------------- /crashes_diff_compile/SIGSEGV.PC.5555563916e3.STACK.ed3d365a2.CODE.1.ADDR.0x38.INSTR.mov____0x18(%rbx),%r13.fuzz: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wasmerio/wasm-fuzz/20c7430e2c04cc1b7eedac6f17b72a1a232454b9/crashes_diff_compile/SIGSEGV.PC.5555563916e3.STACK.ed3d365a2.CODE.1.ADDR.0x38.INSTR.mov____0x18(%rbx),%r13.fuzz -------------------------------------------------------------------------------- /crashes_diff_compile/SIGSEGV.PC.555556394f53.STACK.de363ce2a.CODE.1.ADDR.0x90.INSTR.cmpb___$0x4e,0x10(%rax).fuzz: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wasmerio/wasm-fuzz/20c7430e2c04cc1b7eedac6f17b72a1a232454b9/crashes_diff_compile/SIGSEGV.PC.555556394f53.STACK.de363ce2a.CODE.1.ADDR.0x90.INSTR.cmpb___$0x4e,0x10(%rax).fuzz -------------------------------------------------------------------------------- /crashes_diff_compile/SIGSEGV.PC.5555563a98f0.STACK.d727892b1.CODE.128.ADDR.(nil).INSTR.mov____0x10(%rdi),%cl.fuzz: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wasmerio/wasm-fuzz/20c7430e2c04cc1b7eedac6f17b72a1a232454b9/crashes_diff_compile/SIGSEGV.PC.5555563a98f0.STACK.d727892b1.CODE.128.ADDR.(nil).INSTR.mov____0x10(%rdi),%cl.fuzz -------------------------------------------------------------------------------- /crashes_diff_compile/SIGSEGV.PC.5555563afa40.STACK.f80a92482.CODE.1.ADDR.0x10.INSTR.mov____0x10(%rdi),%cl.fuzz: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wasmerio/wasm-fuzz/20c7430e2c04cc1b7eedac6f17b72a1a232454b9/crashes_diff_compile/SIGSEGV.PC.5555563afa40.STACK.f80a92482.CODE.1.ADDR.0x10.INSTR.mov____0x10(%rdi),%cl.fuzz -------------------------------------------------------------------------------- /crashes_diff_compile/SIGSEGV.PC.5555563d970f.STACK.1b55f15f96.CODE.1.ADDR.(nil).INSTR.mov____(%r12),%rcx.fuzz: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wasmerio/wasm-fuzz/20c7430e2c04cc1b7eedac6f17b72a1a232454b9/crashes_diff_compile/SIGSEGV.PC.5555563d970f.STACK.1b55f15f96.CODE.1.ADDR.(nil).INSTR.mov____(%r12),%rcx.fuzz -------------------------------------------------------------------------------- /crashes_diff_compile/SIGSEGV.PC.5555563ebef4.STACK.1ad5fd2a37.CODE.1.ADDR.0x31.INSTR.mov____-0x20(%rdi),%eax.fuzz: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wasmerio/wasm-fuzz/20c7430e2c04cc1b7eedac6f17b72a1a232454b9/crashes_diff_compile/SIGSEGV.PC.5555563ebef4.STACK.1ad5fd2a37.CODE.1.ADDR.0x31.INSTR.mov____-0x20(%rdi),%eax.fuzz -------------------------------------------------------------------------------- /crashes_diff_compile/SIGSEGV.PC.5555563ebef4.STACK.e7ce57ea6.CODE.1.ADDR.0x810.INSTR.mov____-0x20(%rdi),%eax.fuzz: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wasmerio/wasm-fuzz/20c7430e2c04cc1b7eedac6f17b72a1a232454b9/crashes_diff_compile/SIGSEGV.PC.5555563ebef4.STACK.e7ce57ea6.CODE.1.ADDR.0x810.INSTR.mov____-0x20(%rdi),%eax.fuzz -------------------------------------------------------------------------------- /crashes_diff_compile/SIGSEGV.PC.5555563ebef4.STACK.ecaf6f09d.CODE.1.ADDR.0x31.INSTR.mov____-0x20(%rdi),%eax.fuzz: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wasmerio/wasm-fuzz/20c7430e2c04cc1b7eedac6f17b72a1a232454b9/crashes_diff_compile/SIGSEGV.PC.5555563ebef4.STACK.ecaf6f09d.CODE.1.ADDR.0x31.INSTR.mov____-0x20(%rdi),%eax.fuzz -------------------------------------------------------------------------------- /crashes_diff_compile/SIGSEGV.PC.5555563ed9a3.STACK.e012ce7f9.CODE.128.ADDR.(nil).INSTR.mov____0x68(%rax),%r15.fuzz: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wasmerio/wasm-fuzz/20c7430e2c04cc1b7eedac6f17b72a1a232454b9/crashes_diff_compile/SIGSEGV.PC.5555563ed9a3.STACK.e012ce7f9.CODE.128.ADDR.(nil).INSTR.mov____0x68(%rax),%r15.fuzz -------------------------------------------------------------------------------- /crashes_diff_compile/SIGSEGV.PC.555556450d90.STACK.18e0c97b53.CODE.1.ADDR.0x55556119e000.INSTR.movzbl_(%rax),%ebp.fuzz: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wasmerio/wasm-fuzz/20c7430e2c04cc1b7eedac6f17b72a1a232454b9/crashes_diff_compile/SIGSEGV.PC.555556450d90.STACK.18e0c97b53.CODE.1.ADDR.0x55556119e000.INSTR.movzbl_(%rax),%ebp.fuzz -------------------------------------------------------------------------------- /crashes_diff_compile/SIGSEGV.PC.555556450d90.STACK.c2b5ee07f.CODE.1.ADDR.0x555561a47000.INSTR.movzbl_(%rax),%ebp.fuzz: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wasmerio/wasm-fuzz/20c7430e2c04cc1b7eedac6f17b72a1a232454b9/crashes_diff_compile/SIGSEGV.PC.555556450d90.STACK.c2b5ee07f.CODE.1.ADDR.0x555561a47000.INSTR.movzbl_(%rax),%ebp.fuzz -------------------------------------------------------------------------------- /crashes_diff_compile/SIGSEGV.PC.555556450d90.STACK.c2b5ee07f.CODE.1.ADDR.0x555561ab3000.INSTR.movzbl_(%rax),%ebp.fuzz: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wasmerio/wasm-fuzz/20c7430e2c04cc1b7eedac6f17b72a1a232454b9/crashes_diff_compile/SIGSEGV.PC.555556450d90.STACK.c2b5ee07f.CODE.1.ADDR.0x555561ab3000.INSTR.movzbl_(%rax),%ebp.fuzz -------------------------------------------------------------------------------- /crashes_diff_compile/SIGSEGV.PC.555556450d90.STACK.d07e126f6.CODE.1.ADDR.0x555560c12000.INSTR.movzbl_(%rax),%ebp.fuzz: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wasmerio/wasm-fuzz/20c7430e2c04cc1b7eedac6f17b72a1a232454b9/crashes_diff_compile/SIGSEGV.PC.555556450d90.STACK.d07e126f6.CODE.1.ADDR.0x555560c12000.INSTR.movzbl_(%rax),%ebp.fuzz -------------------------------------------------------------------------------- /crashes_diff_compile/SIGSEGV.PC.555556669e7d.STACK.e8c2833ee.CODE.1.ADDR.0x4000.INSTR.cmpl___$0x0,(%rax).fuzz: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wasmerio/wasm-fuzz/20c7430e2c04cc1b7eedac6f17b72a1a232454b9/crashes_diff_compile/SIGSEGV.PC.555556669e7d.STACK.e8c2833ee.CODE.1.ADDR.0x4000.INSTR.cmpl___$0x0,(%rax).fuzz -------------------------------------------------------------------------------- /crashes_diff_compile/SIGSEGV.PC.7ffff7a8f248.STACK.ca2ed49ba.CODE.1.ADDR.0x60.INSTR.mov____0x60(%r12),%rax.fuzz: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wasmerio/wasm-fuzz/20c7430e2c04cc1b7eedac6f17b72a1a232454b9/crashes_diff_compile/SIGSEGV.PC.7ffff7a8f248.STACK.ca2ed49ba.CODE.1.ADDR.0x60.INSTR.mov____0x60(%r12),%rax.fuzz -------------------------------------------------------------------------------- /crashes_diff_compile/SIGSEGV.PC.7ffff7a90c6d.STACK.18fad0a323.CODE.128.ADDR.(nil).INSTR.mov____%rsi,0x10(%r14).fuzz: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wasmerio/wasm-fuzz/20c7430e2c04cc1b7eedac6f17b72a1a232454b9/crashes_diff_compile/SIGSEGV.PC.7ffff7a90c6d.STACK.18fad0a323.CODE.128.ADDR.(nil).INSTR.mov____%rsi,0x10(%r14).fuzz -------------------------------------------------------------------------------- /crashes_diff_compile/SIGSEGV.PC.7ffff7a90c6d.STACK.193fee2275.CODE.1.ADDR.0x10.INSTR.mov____%rsi,0x10(%r14).fuzz: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wasmerio/wasm-fuzz/20c7430e2c04cc1b7eedac6f17b72a1a232454b9/crashes_diff_compile/SIGSEGV.PC.7ffff7a90c6d.STACK.193fee2275.CODE.1.ADDR.0x10.INSTR.mov____%rsi,0x10(%r14).fuzz -------------------------------------------------------------------------------- /crashes_diff_compile/SIGSEGV.PC.7ffff7a90c6d.STACK.1a4b45dbe4.CODE.1.ADDR.0x10.INSTR.mov____%rsi,0x10(%r14).fuzz: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wasmerio/wasm-fuzz/20c7430e2c04cc1b7eedac6f17b72a1a232454b9/crashes_diff_compile/SIGSEGV.PC.7ffff7a90c6d.STACK.1a4b45dbe4.CODE.1.ADDR.0x10.INSTR.mov____%rsi,0x10(%r14).fuzz -------------------------------------------------------------------------------- /crashes_diff_compile/SIGSEGV.PC.7ffff7a90c6d.STACK.1a55d8ee66.CODE.1.ADDR.0x10.INSTR.mov____%rsi,0x10(%r14).fuzz: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wasmerio/wasm-fuzz/20c7430e2c04cc1b7eedac6f17b72a1a232454b9/crashes_diff_compile/SIGSEGV.PC.7ffff7a90c6d.STACK.1a55d8ee66.CODE.1.ADDR.0x10.INSTR.mov____%rsi,0x10(%r14).fuzz -------------------------------------------------------------------------------- /crashes_diff_compile/SIGSEGV.PC.7ffff7a90c6d.STACK.1a923accd3.CODE.128.ADDR.(nil).INSTR.mov____%rsi,0x10(%r14).fuzz: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wasmerio/wasm-fuzz/20c7430e2c04cc1b7eedac6f17b72a1a232454b9/crashes_diff_compile/SIGSEGV.PC.7ffff7a90c6d.STACK.1a923accd3.CODE.128.ADDR.(nil).INSTR.mov____%rsi,0x10(%r14).fuzz -------------------------------------------------------------------------------- /crashes_diff_compile/SIGSEGV.PC.7ffff7a90c6d.STACK.c93b612eb.CODE.1.ADDR.0x10.INSTR.mov____%rsi,0x10(%r14).fuzz: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wasmerio/wasm-fuzz/20c7430e2c04cc1b7eedac6f17b72a1a232454b9/crashes_diff_compile/SIGSEGV.PC.7ffff7a90c6d.STACK.c93b612eb.CODE.1.ADDR.0x10.INSTR.mov____%rsi,0x10(%r14).fuzz -------------------------------------------------------------------------------- /crashes_diff_compile/SIGSEGV.PC.7ffff7a90c6d.STACK.cfdbd1fbb.CODE.1.ADDR.0x10.INSTR.mov____%rsi,0x10(%r14).fuzz: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wasmerio/wasm-fuzz/20c7430e2c04cc1b7eedac6f17b72a1a232454b9/crashes_diff_compile/SIGSEGV.PC.7ffff7a90c6d.STACK.cfdbd1fbb.CODE.1.ADDR.0x10.INSTR.mov____%rsi,0x10(%r14).fuzz -------------------------------------------------------------------------------- /crashes_diff_compile/SIGSEGV.PC.7ffff7a90c6d.STACK.d0d2bd8ba.CODE.1.ADDR.0x30.INSTR.mov____%rsi,0x10(%r14).fuzz: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wasmerio/wasm-fuzz/20c7430e2c04cc1b7eedac6f17b72a1a232454b9/crashes_diff_compile/SIGSEGV.PC.7ffff7a90c6d.STACK.d0d2bd8ba.CODE.1.ADDR.0x30.INSTR.mov____%rsi,0x10(%r14).fuzz -------------------------------------------------------------------------------- /crashes_diff_compile/SIGSEGV.PC.7ffff7a90c6d.STACK.d2f254938.CODE.1.ADDR.0x51.INSTR.mov____%rsi,0x10(%r14).fuzz: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wasmerio/wasm-fuzz/20c7430e2c04cc1b7eedac6f17b72a1a232454b9/crashes_diff_compile/SIGSEGV.PC.7ffff7a90c6d.STACK.d2f254938.CODE.1.ADDR.0x51.INSTR.mov____%rsi,0x10(%r14).fuzz -------------------------------------------------------------------------------- /crashes_diff_compile/SIGSEGV.PC.7ffff7a90c6d.STACK.d796051cb.CODE.128.ADDR.(nil).INSTR.mov____%rsi,0x10(%r14).fuzz: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wasmerio/wasm-fuzz/20c7430e2c04cc1b7eedac6f17b72a1a232454b9/crashes_diff_compile/SIGSEGV.PC.7ffff7a90c6d.STACK.d796051cb.CODE.128.ADDR.(nil).INSTR.mov____%rsi,0x10(%r14).fuzz -------------------------------------------------------------------------------- /crashes_diff_compile/SIGSEGV.PC.7ffff7a90c6d.STACK.da8ff8a53.CODE.1.ADDR.0x31.INSTR.mov____%rsi,0x10(%r14).fuzz: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wasmerio/wasm-fuzz/20c7430e2c04cc1b7eedac6f17b72a1a232454b9/crashes_diff_compile/SIGSEGV.PC.7ffff7a90c6d.STACK.da8ff8a53.CODE.1.ADDR.0x31.INSTR.mov____%rsi,0x10(%r14).fuzz -------------------------------------------------------------------------------- /crashes_diff_compile/SIGSEGV.PC.7ffff7a90c6d.STACK.da8ff8a53.CODE.1.ADDR.0x8.INSTR.mov____%rsi,0x10(%r14).fuzz: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wasmerio/wasm-fuzz/20c7430e2c04cc1b7eedac6f17b72a1a232454b9/crashes_diff_compile/SIGSEGV.PC.7ffff7a90c6d.STACK.da8ff8a53.CODE.1.ADDR.0x8.INSTR.mov____%rsi,0x10(%r14).fuzz -------------------------------------------------------------------------------- /crashes_diff_compile/SIGSEGV.PC.7ffff7a90c6d.STACK.e3324a8e6.CODE.1.ADDR.0x10.INSTR.mov____%rsi,0x10(%r14).fuzz: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wasmerio/wasm-fuzz/20c7430e2c04cc1b7eedac6f17b72a1a232454b9/crashes_diff_compile/SIGSEGV.PC.7ffff7a90c6d.STACK.e3324a8e6.CODE.1.ADDR.0x10.INSTR.mov____%rsi,0x10(%r14).fuzz -------------------------------------------------------------------------------- /crashes_diff_compile/SIGSEGV.PC.7ffff7a90c6d.STACK.fa2fd939b.CODE.1.ADDR.0x13.INSTR.mov____%rsi,0x10(%r14).fuzz: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wasmerio/wasm-fuzz/20c7430e2c04cc1b7eedac6f17b72a1a232454b9/crashes_diff_compile/SIGSEGV.PC.7ffff7a90c6d.STACK.fa2fd939b.CODE.1.ADDR.0x13.INSTR.mov____%rsi,0x10(%r14).fuzz -------------------------------------------------------------------------------- /crashes_diff_compile/substrat_overflow.wasm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wasmerio/wasm-fuzz/20c7430e2c04cc1b7eedac6f17b72a1a232454b9/crashes_diff_compile/substrat_overflow.wasm -------------------------------------------------------------------------------- /debug_crash_analysis.md: -------------------------------------------------------------------------------- 1 | # Debugging / Crashes analysis 2 | 3 | This file contains some tips/technics to debug `wasmer` when a crash occurs. 4 | 5 | # Compiling wasmer for debugging 6 | 7 | `wasmer` can be compiled in debug mode using: `make debug`. 8 | 9 | Nevertheless, the command line inside the `Makefile` do not compiled `wasmer` with the same features than in `release` mode. 10 | 11 | 12 | Prefered way is to compiled `wasmer` with: 13 | ``` sh 14 | $ RUSTFLAGS=-g cargo build --release --features backend-singlepass,backend-llvm,loader-kernel,debug,trace 15 | ``` 16 | 17 | # Calling wasmer using APIs 18 | 19 | Check [debug_tools](debug_tools/) and [debug_all_coverage](coverage/debug_all_coverage/). 20 | 21 | Copy them into `wasmer` folder and build them with: 22 | ``` sh 23 | $ cd debug_all_coverage 24 | $ RUSTFLAGS=-g cargo build 25 | $ ./target/debug/all_coverage 26 | ``` 27 | 28 | # Backtracing 29 | 30 | ## RUST_BACKTRACE=1 31 | 32 | `RUST_BACKTRACE=1` flag will print the stack trace in default configuration. 33 | 34 | Example: 35 | ``` rust 36 | 14: wasmer_runtime_core::compile_with_config 37 | at lib/runtime-core/src/lib.rs:136 38 | 15: wasmer_runtime::compile_with_config_with 39 | at lib/runtime/src/lib.rs:166 40 | 16: wasmer::execute_wasm::{{closure}} 41 | at src/bin/wasmer.rs:499 42 | 17: wasmer::execute_wasm 43 | at src/bin/wasmer.rs:521 44 | 18: wasmer::run 45 | at src/bin/wasmer.rs:771 46 | 19: wasmer::main 47 | at src/bin/wasmer.rs:839 48 | ``` 49 | 50 | ## RUST_BACKTRACE=full 51 | 52 | `RUST_BACKTRACE=full` will generate a more verbose backtrace. 53 | 54 | Example: 55 | ``` rust 56 | 14: 0x55f333002d90 - wasmer_runtime_core::compile_with_config::hcdd376dfdc67e519 57 | at lib/runtime-core/src/lib.rs:136 58 | 15: 0x55f33210c1dc - wasmer_runtime::compile_with_config_with::h4156185fba90a126 59 | at lib/runtime/src/lib.rs:166 60 | 16: 0x55f331f95f8b - wasmer::execute_wasm::{{closure}}::hfa583575fc99f722 61 | at src/bin/wasmer.rs:499 62 | 17: 0x55f331f95f8b - wasmer::execute_wasm::h52c404e8f976f72b 63 | at src/bin/wasmer.rs:521 64 | 18: 0x55f331f9b75c - wasmer::run::h906b1ab63d6f61be 65 | at src/bin/wasmer.rs:771 66 | 19: 0x55f331f9b75c - wasmer::main::hc1c29fab9a506321 67 | at src/bin/wasmer.rs:839 68 | ``` 69 | 70 | If you want more details, you can use the [backtrace-rs](https://github.com/rust-lang/backtrace-rs) library - [documentation](https://docs.rs/backtrace/0.3.40/backtrace/) 71 | 72 | # Debugger (gdb, lldb) 73 | 74 | More informations here: 75 | - https://bitshifter.github.io/rr+rust/index.html#1 76 | - http://smallcultfollowing.com/babysteps/blog/2018/09/21/office-hours-0-debugging-with-gdb/ 77 | - https://os.phil-opp.com/set-up-gdb/ 78 | - https://sourceware.org/gdb/current/onlinedocs/gdb/Rust.html 79 | 80 | # Crash minimization 81 | 82 | See [testcase_minimization.md](testcase_minimization.md) for more details about crash minimization. -------------------------------------------------------------------------------- /debug_tools/compile_debug/Cargo.toml: -------------------------------------------------------------------------------- 1 | [package] 2 | name = "compile_debug" 3 | version = "0.1.0" 4 | authors = ["Patrick Ventuzelo "] 5 | edition = "2018" 6 | 7 | # See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html 8 | 9 | [dependencies] 10 | wasmer-runtime = { path = "../lib/runtime" } 11 | wasmer-runtime-core = { path = "../lib/runtime-core" } 12 | wasmer = { path = "../" } 13 | wasmer-llvm-backend = { path = "../lib/llvm-backend" } 14 | 15 | # Prevent this from interfering with workspaces 16 | [workspace] 17 | members = ["."] 18 | 19 | [[bin]] 20 | name = "compile_debug" 21 | path = "src/main.rs" 22 | -------------------------------------------------------------------------------- /debug_tools/compile_debug/src/main.rs: -------------------------------------------------------------------------------- 1 | use std::env; 2 | use std::fs::{File}; 3 | use std::io; 4 | use std::io::Read; 5 | use std::path::PathBuf; 6 | 7 | 8 | extern crate wasmer_llvm_backend; 9 | extern crate wasmer_runtime_core; 10 | extern crate wasmer_runtime; 11 | 12 | use wasmer_runtime::{ 13 | compile_with, 14 | }; 15 | use wasmer_runtime_core::backend::Compiler; 16 | 17 | /// Read the contents of a file 18 | fn read_contents(path: &PathBuf) -> Result, io::Error> { 19 | let mut buffer: Vec = Vec::new(); 20 | let mut file = File::open(path)?; 21 | file.read_to_end(&mut buffer)?; 22 | // We force to close the file 23 | drop(file); 24 | Ok(buffer) 25 | } 26 | 27 | fn get_llvm_compiler() -> impl Compiler { 28 | use wasmer_llvm_backend::LLVMCompiler; 29 | LLVMCompiler::new() 30 | } 31 | 32 | fn main() { 33 | println!("Start compile_debug"); 34 | let args: Vec = env::args().collect(); 35 | 36 | // first argument is wasm file path 37 | let wasm_path = std::path::PathBuf::from(&args[1]); 38 | println!("File path: {:?}", wasm_path); 39 | 40 | let wasm_binary: Vec = read_contents(&wasm_path).unwrap(); 41 | //println!("wasm_binary: {:?}", wasm_binary); 42 | 43 | // CALL THE API HERE 44 | let _res = compile_with(&wasm_binary[..], &get_llvm_compiler()); 45 | // CALL THE API HERE 46 | 47 | println!("OK"); 48 | } 49 | -------------------------------------------------------------------------------- /debug_tools/diff_compile_debug/Cargo.toml: -------------------------------------------------------------------------------- 1 | [package] 2 | name = "compile_debug" 3 | version = "0.1.0" 4 | authors = ["Patrick Ventuzelo "] 5 | edition = "2018" 6 | 7 | # See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html 8 | 9 | [dependencies] 10 | wasmer-runtime = { path = "../lib/runtime" } 11 | wasmer-runtime-core = { path = "../lib/runtime-core" } 12 | wasmer = { path = "../" } 13 | wasmer-llvm-backend = { path = "../lib/llvm-backend" } 14 | wasmer-singlepass-backend = { path = "../lib/singlepass-backend" } 15 | 16 | # Prevent this from interfering with workspaces 17 | [workspace] 18 | members = ["."] 19 | 20 | [[bin]] 21 | name = "diff_compile_debug" 22 | path = "src/main.rs" 23 | -------------------------------------------------------------------------------- /fuzz/Cargo.toml: -------------------------------------------------------------------------------- 1 | 2 | [package] 3 | name = "wasmer-fuzz" 4 | version = "0.0.1" 5 | authors = ["Automatically generated"] 6 | publish = false 7 | 8 | [package.metadata] 9 | cargo-fuzz = true 10 | 11 | [dependencies] 12 | wasmer-runtime = { path = "../lib/runtime" } 13 | wasmer-runtime-core = { path = "../lib/runtime-core" } 14 | wasmer = { path = "../" } 15 | libfuzzer-sys = { git = "https://github.com/rust-fuzz/libfuzzer-sys.git" } 16 | wasmer-llvm-backend = { path = "../lib/llvm-backend" } 17 | wasmer-singlepass-backend = { path = "../lib/singlepass-backend" } 18 | 19 | # Prevent this from interfering with workspaces 20 | [workspace] 21 | members = ["."] 22 | 23 | [[bin]] 24 | name = "compile" 25 | path = "fuzz_targets/compile.rs" 26 | 27 | [[bin]] 28 | name = "compile_with_llvm" 29 | path = "fuzz_targets/compile_with_llvm.rs" 30 | 31 | [[bin]] 32 | name = "diff_compile_backend" 33 | path = "fuzz_targets/diff_compile_backend.rs" 34 | 35 | [[bin]] 36 | name = "simple_instantiate" 37 | path = "fuzz_targets/simple_instantiate.rs" 38 | 39 | [[bin]] 40 | name = "validate" 41 | path = "fuzz_targets/validate.rs" 42 | 43 | [[bin]] 44 | name = "validate_all_feat" 45 | path = "fuzz_targets/validate_all_feat.rs" 46 | -------------------------------------------------------------------------------- /fuzz/fuzz_targets/compile.rs: -------------------------------------------------------------------------------- 1 | #![no_main] 2 | #[macro_use] 3 | extern crate libfuzzer_sys; 4 | extern crate wasmer_runtime; 5 | 6 | use wasmer_runtime::compile; 7 | 8 | fuzz_target!(|data: &[u8]| { 9 | let _ = compile(data); 10 | }); 11 | -------------------------------------------------------------------------------- /fuzz/fuzz_targets/compile_with_llvm.rs: -------------------------------------------------------------------------------- 1 | #![no_main] 2 | #[macro_use] 3 | extern crate libfuzzer_sys; 4 | extern crate wasmer_llvm_backend; 5 | extern crate wasmer_runtime_core; 6 | extern crate wasmer_runtime; 7 | 8 | use wasmer_runtime::{ 9 | compile_with, 10 | }; 11 | use wasmer_runtime_core::backend::Compiler; 12 | 13 | fn get_llvm_compiler() -> impl Compiler { 14 | use wasmer_llvm_backend::LLVMCompiler; 15 | LLVMCompiler::new() 16 | } 17 | 18 | fuzz_target!(|data: &[u8]| { 19 | let _ = compile_with(data, &get_llvm_compiler()); 20 | }); -------------------------------------------------------------------------------- /fuzz/fuzz_targets/diff_compile_backend.rs: -------------------------------------------------------------------------------- 1 | #![no_main] 2 | #[macro_use] 3 | extern crate libfuzzer_sys; 4 | extern crate wasmer_runtime; 5 | extern crate wasmer_runtime_core; 6 | extern crate wasmer_llvm_backend; 7 | extern crate wasmer_singlepass_backend; 8 | 9 | use wasmer_runtime::{compile, compile_with}; 10 | use wasmer_runtime_core::backend::Compiler; 11 | 12 | fn get_llvm_compiler() -> impl Compiler { 13 | use wasmer_llvm_backend::LLVMCompiler; 14 | LLVMCompiler::new() 15 | } 16 | fn get_singlepass_compiler() -> impl Compiler { 17 | use wasmer_singlepass_backend::SinglePassCompiler; 18 | SinglePassCompiler::new() 19 | } 20 | 21 | fuzz_target!(|data: &[u8]| { 22 | let res_llvm = compile_with(data, &get_llvm_compiler()); 23 | let res_singlepass = compile_with(data, &get_singlepass_compiler()); 24 | // let _ = compile(data); 25 | 26 | match (res_llvm, res_singlepass) { 27 | (Ok(a), Ok(b)) => { 28 | let ai = a.info(); 29 | let bi = b.info(); 30 | assert_eq!(format!("{:?}", ai.memories), format!("{:?}", bi.memories)); 31 | assert_eq!(format!("{:?}", ai.globals), format!("{:?}", bi.globals)); 32 | assert_eq!(format!("{:?}", ai.tables), format!("{:?}", bi.tables)); 33 | assert_eq!(format!("{:?}", ai.imported_functions), format!("{:?}", bi.imported_functions)); 34 | assert_eq!(format!("{:?}", ai.imported_memories), format!("{:?}", bi.imported_memories)); 35 | assert_eq!(format!("{:?}", ai.imported_tables), format!("{:?}", bi.imported_tables)); 36 | assert_eq!(format!("{:?}", ai.imported_globals), format!("{:?}", bi.imported_globals)); 37 | assert_eq!(format!("{:?}", ai.exports), format!("{:?}", bi.exports)); 38 | assert_eq!(format!("{:?}", ai.data_initializers), format!("{:?}", bi.data_initializers)); 39 | assert_eq!(format!("{:?}", ai.elem_initializers), format!("{:?}", bi.elem_initializers)); 40 | assert_eq!(format!("{:?}", ai.start_func), format!("{:?}", bi.start_func)); 41 | assert_eq!(format!("{:?}", ai.func_assoc), format!("{:?}", bi.func_assoc)); 42 | assert_eq!(format!("{:?}", ai.signatures), format!("{:?}", bi.signatures)); 43 | // assert_eq!(ai.backend, bi.backend); 44 | assert_eq!(format!("{:?}", ai.namespace_table), format!("{:?}", bi.namespace_table)); 45 | assert_eq!(format!("{:?}", ai.name_table), format!("{:?}", bi.name_table)); 46 | assert_eq!(ai.em_symbol_map, bi.em_symbol_map); 47 | assert_eq!(ai.custom_sections, bi.custom_sections); 48 | 49 | //println!("[+] OK for both"); 50 | }, 51 | (Err(_err_a), Ok(_err_b)) => { 52 | //println!("[-] Error LLVM"); 53 | //println!("{:?}", err_a); 54 | panic!("Only backend LLVM return an Error") 55 | }, 56 | (Ok(_err_a), Err(_err_b)) => { 57 | //println!("[-] Error Singlepass"); 58 | //println!("{:?}", err_b); 59 | panic!("Only backend Singlepass return an Error") 60 | }, 61 | (Err(_err_a), Err(_err_b)) => { 62 | //println!("[+] Error for both"); 63 | }, 64 | } 65 | }); 66 | -------------------------------------------------------------------------------- /fuzz/fuzz_targets/simple_instantiate.rs: -------------------------------------------------------------------------------- 1 | #![no_main] 2 | #[macro_use] 3 | extern crate libfuzzer_sys; 4 | extern crate wasmer_runtime; 5 | 6 | use wasmer_runtime::{imports, instantiate}; 7 | 8 | fuzz_target!(|data: &[u8]| { 9 | let import_object = imports! {}; 10 | let _ = instantiate(data, &import_object); 11 | }); 12 | -------------------------------------------------------------------------------- /fuzz/fuzz_targets/validate.rs: -------------------------------------------------------------------------------- 1 | #![no_main] 2 | #[macro_use] 3 | extern crate libfuzzer_sys; 4 | extern crate wasmer_runtime_core; 5 | 6 | use wasmer_runtime_core::backend::Features; 7 | 8 | fuzz_target!(|data: &[u8]| { 9 | let _ = wasmer_runtime_core::validate_and_report_errors_with_features( 10 | &data, 11 | Features { 12 | // Modify these values to explore additional parts of wasmer. 13 | simd: false, 14 | threads: false, 15 | }, 16 | ); 17 | }); 18 | -------------------------------------------------------------------------------- /fuzz/fuzz_targets/validate_all_feat.rs: -------------------------------------------------------------------------------- 1 | #![no_main] 2 | #[macro_use] 3 | extern crate libfuzzer_sys; 4 | extern crate wasmer_runtime_core; 5 | 6 | use wasmer_runtime_core::backend::Features; 7 | 8 | fuzz_target!(|data: &[u8]| { 9 | let _ = wasmer_runtime_core::validate_and_report_errors_with_features( 10 | &data, 11 | Features { 12 | simd: true, 13 | threads: true, 14 | }, 15 | ); 16 | }); 17 | -------------------------------------------------------------------------------- /hfuzz/Cargo.toml: -------------------------------------------------------------------------------- 1 | [package] 2 | name = "hfuzz" 3 | version = "0.1.0" 4 | authors = ["Patrick Ventuzelo "] 5 | edition = "2018" 6 | 7 | # See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html 8 | 9 | [dependencies] 10 | honggfuzz = "0.5" 11 | wasmer-runtime = { path = "../lib/runtime" } 12 | wasmer-runtime-core = { path = "../lib/runtime-core" } 13 | wasmer-singlepass-backend = { path = "../lib/singlepass-backend" } 14 | wasmer-llvm-backend = { path = "../lib/llvm-backend" } 15 | wasmer = { path = "../" } 16 | binaryen = "0.8.1" 17 | 18 | # Prevent this from interfering with workspaces 19 | [workspace] 20 | members = ["."] 21 | 22 | [[bin]] 23 | name = "diff_compile_backend" 24 | path = "src/diff_compile_backend.rs" 25 | 26 | [[bin]] 27 | name = "compile" 28 | path = "src/compile.rs" 29 | 30 | [[bin]] 31 | name = "compile_with_threads" 32 | path = "src/compile_with_threads.rs" 33 | 34 | [[bin]] 35 | name = "compile_with_llvm" 36 | path = "src/compile_with_llvm.rs" 37 | 38 | [[bin]] 39 | name = "compile_with_config_with_llvm" 40 | path = "src/compile_with_config_with_llvm.rs" 41 | 42 | [[bin]] 43 | name = "compile_kwasmd_config" 44 | path = "src/compile_kwasmd_config.rs" 45 | 46 | [[bin]] 47 | name = "validate" 48 | path = "src/validate.rs" 49 | 50 | [[bin]] 51 | name = "validate_all_feat" 52 | path = "src/validate_all_feat.rs" 53 | 54 | [[bin]] 55 | name = "simple_instantiate" 56 | path = "src/simple_instantiate.rs" 57 | 58 | [[bin]] 59 | name = "instantiate_binaryen" 60 | path = "src/instantiate_binaryen.rs" 61 | -------------------------------------------------------------------------------- /hfuzz/src/compile.rs: -------------------------------------------------------------------------------- 1 | #[macro_use] 2 | extern crate honggfuzz; 3 | 4 | use wasmer_runtime::{ 5 | compile, 6 | }; 7 | 8 | fn main() { 9 | loop { 10 | fuzz!(|data: &[u8]| { 11 | let _ = compile(data); 12 | }); 13 | } 14 | } -------------------------------------------------------------------------------- /hfuzz/src/compile_kwasmd_config.rs: -------------------------------------------------------------------------------- 1 | #[macro_use] 2 | extern crate honggfuzz; 3 | 4 | use wasmer_runtime::{ 5 | compile_with_config_with, 6 | }; 7 | 8 | use wasmer_runtime_core::{ 9 | backend::{CompilerConfig, MemoryBoundCheckMode}, 10 | }; 11 | 12 | use wasmer_singlepass_backend::SinglePassCompiler; 13 | 14 | fn main() { 15 | loop { 16 | fuzz!(|data: &[u8]| { 17 | let config = CompilerConfig { 18 | symbol_map: None, 19 | memory_bound_check_mode: MemoryBoundCheckMode::Disable, 20 | enforce_stack_check: true, 21 | track_state: false, 22 | features: Default::default(), 23 | }; 24 | let _ = compile_with_config_with(data, config, &SinglePassCompiler::new(),); 25 | }); 26 | } 27 | } -------------------------------------------------------------------------------- /hfuzz/src/compile_with_config_with_llvm.rs: -------------------------------------------------------------------------------- 1 | #[macro_use] 2 | extern crate honggfuzz; 3 | 4 | use wasmer_runtime::{ 5 | compile_with_config_with, 6 | }; 7 | 8 | use wasmer_runtime_core::{ 9 | backend::{CompilerConfig, Compiler, Features}, 10 | }; 11 | 12 | fn get_llvm_compiler() -> impl Compiler { 13 | use wasmer_llvm_backend::LLVMCompiler; 14 | LLVMCompiler::new() 15 | } 16 | 17 | fn main() { 18 | loop { 19 | fuzz!(|data: &[u8]| { 20 | let config = CompilerConfig { 21 | symbol_map: None, 22 | track_state: false, 23 | features: Features { 24 | simd: true, 25 | threads: true, 26 | }, 27 | ..Default::default() 28 | }; 29 | 30 | let _ = compile_with_config_with(data, config, &get_llvm_compiler()); 31 | }); 32 | } 33 | } -------------------------------------------------------------------------------- /hfuzz/src/compile_with_llvm.rs: -------------------------------------------------------------------------------- 1 | #[macro_use] 2 | extern crate honggfuzz; 3 | extern crate wasmer_llvm_backend; 4 | extern crate wasmer_runtime_core; 5 | 6 | use wasmer_runtime::{ 7 | compile_with, 8 | }; 9 | use wasmer_runtime_core::backend::Compiler; 10 | 11 | fn get_llvm_compiler() -> impl Compiler { 12 | use wasmer_llvm_backend::LLVMCompiler; 13 | LLVMCompiler::new() 14 | } 15 | 16 | fn main() { 17 | loop { 18 | fuzz!(|data: &[u8]| { 19 | let _ = compile_with(data, &get_llvm_compiler()); 20 | }); 21 | } 22 | } -------------------------------------------------------------------------------- /hfuzz/src/compile_with_threads.rs: -------------------------------------------------------------------------------- 1 | #[macro_use] 2 | extern crate honggfuzz; 3 | 4 | use wasmer_runtime::{ 5 | compile_with_config, 6 | }; 7 | use wasmer_runtime_core::backend::{CompilerConfig, Features}; 8 | 9 | fn main() { 10 | loop { 11 | fuzz!(|data: &[u8]| { 12 | let config = CompilerConfig { 13 | features: Features { 14 | // SIMD is only supported in the LLVM backend for now 15 | // Default backend is Backend::Cranelift 16 | simd: false, 17 | threads: true, 18 | }, 19 | ..Default::default() 20 | }; 21 | let _ = compile_with_config(data, config); 22 | }); 23 | } 24 | } -------------------------------------------------------------------------------- /hfuzz/src/diff_compile_backend.rs: -------------------------------------------------------------------------------- 1 | #[macro_use] 2 | extern crate honggfuzz; 3 | extern crate wasmer_runtime; 4 | extern crate wasmer_runtime_core; 5 | extern crate wasmer_llvm_backend; 6 | extern crate wasmer_singlepass_backend; 7 | 8 | use wasmer_runtime::{compile, compile_with}; 9 | use wasmer_runtime_core::backend::Compiler; 10 | 11 | fn get_llvm_compiler() -> impl Compiler { 12 | use wasmer_llvm_backend::LLVMCompiler; 13 | LLVMCompiler::new() 14 | } 15 | fn get_singlepass_compiler() -> impl Compiler { 16 | use wasmer_singlepass_backend::SinglePassCompiler; 17 | SinglePassCompiler::new() 18 | } 19 | 20 | fn main() { 21 | loop { 22 | fuzz!(|data: &[u8]| { 23 | 24 | let res_llvm = compile_with(data, &get_llvm_compiler()); 25 | let res_singlepass = compile_with(data, &get_singlepass_compiler()); 26 | // let _ = compile(data); 27 | 28 | match (res_llvm, res_singlepass) { 29 | (Ok(a), Ok(b)) => { 30 | let ai = a.info(); 31 | let bi = b.info(); 32 | assert_eq!(format!("{:?}", ai.memories), format!("{:?}", bi.memories)); 33 | assert_eq!(format!("{:?}", ai.globals), format!("{:?}", bi.globals)); 34 | assert_eq!(format!("{:?}", ai.tables), format!("{:?}", bi.tables)); 35 | assert_eq!(format!("{:?}", ai.imported_functions), format!("{:?}", bi.imported_functions)); 36 | assert_eq!(format!("{:?}", ai.imported_memories), format!("{:?}", bi.imported_memories)); 37 | assert_eq!(format!("{:?}", ai.imported_tables), format!("{:?}", bi.imported_tables)); 38 | assert_eq!(format!("{:?}", ai.imported_globals), format!("{:?}", bi.imported_globals)); 39 | assert_eq!(format!("{:?}", ai.exports), format!("{:?}", bi.exports)); 40 | assert_eq!(format!("{:?}", ai.data_initializers), format!("{:?}", bi.data_initializers)); 41 | assert_eq!(format!("{:?}", ai.elem_initializers), format!("{:?}", bi.elem_initializers)); 42 | assert_eq!(format!("{:?}", ai.start_func), format!("{:?}", bi.start_func)); 43 | assert_eq!(format!("{:?}", ai.func_assoc), format!("{:?}", bi.func_assoc)); 44 | assert_eq!(format!("{:?}", ai.signatures), format!("{:?}", bi.signatures)); 45 | // assert_eq!(ai.backend, bi.backend); 46 | assert_eq!(format!("{:?}", ai.namespace_table), format!("{:?}", bi.namespace_table)); 47 | assert_eq!(format!("{:?}", ai.name_table), format!("{:?}", bi.name_table)); 48 | assert_eq!(ai.em_symbol_map, bi.em_symbol_map); 49 | assert_eq!(ai.custom_sections, bi.custom_sections); 50 | 51 | println!("[+] OK for both"); 52 | }, 53 | (Err(err_a), Ok(_err_b)) => { 54 | //println!("[-] Error LLVM"); 55 | //println!("{:?}", err_a); 56 | panic!("Only backend LLVM return an Error") 57 | }, 58 | (Ok(_err_a), Err(err_b)) => { 59 | //println!("[-] Error Singlepass"); 60 | //println!("{:?}", err_b); 61 | panic!("Only backend Singlepass return an Error") 62 | }, 63 | (Err(_err_a), Err(_err_b)) => { 64 | println!("[+] Error for both"); 65 | }, 66 | } 67 | }); 68 | } 69 | } 70 | -------------------------------------------------------------------------------- /hfuzz/src/instantiate_binaryen.rs: -------------------------------------------------------------------------------- 1 | #[macro_use] 2 | extern crate honggfuzz; 3 | extern crate binaryen; 4 | 5 | use wasmer_runtime::{ 6 | instantiate, 7 | imports, 8 | }; 9 | 10 | fn main() { 11 | loop { 12 | fuzz!(|data: &[u8]| { 13 | let binaryen_module = binaryen::tools::translate_to_fuzz_mvp(data); 14 | let wasm = binaryen_module.write(); 15 | let import_object = imports! {}; 16 | let _ = instantiate(&wasm, &import_object); 17 | }); 18 | } 19 | } -------------------------------------------------------------------------------- /hfuzz/src/simple_instantiate.rs: -------------------------------------------------------------------------------- 1 | #[macro_use] 2 | extern crate honggfuzz; 3 | 4 | use wasmer_runtime::{ 5 | instantiate, 6 | imports, 7 | }; 8 | 9 | fn main() { 10 | loop { 11 | fuzz!(|data: &[u8]| { 12 | let import_object = imports! {}; 13 | let _ = instantiate(data, &import_object); 14 | }); 15 | } 16 | } -------------------------------------------------------------------------------- /hfuzz/src/validate.rs: -------------------------------------------------------------------------------- 1 | #[macro_use] 2 | extern crate honggfuzz; 3 | extern crate wasmer_runtime_core; 4 | 5 | use wasmer_runtime_core::{ 6 | backend::{Features}, 7 | }; 8 | 9 | fn main() { 10 | loop { 11 | fuzz!(|data: &[u8]| { 12 | let _ = wasmer_runtime_core::validate_and_report_errors_with_features( 13 | &data, 14 | Features { 15 | /// Enable support for the SIMD proposal. 16 | /// Enable support for the threads proposal. 17 | simd: false, threads: false,}, 18 | ) 19 | .map_err(|_err| ()); 20 | }); 21 | } 22 | } -------------------------------------------------------------------------------- /hfuzz/src/validate_all_feat.rs: -------------------------------------------------------------------------------- 1 | #[macro_use] 2 | extern crate honggfuzz; 3 | 4 | use wasmer_runtime_core::{ 5 | backend::{Features}, 6 | }; 7 | 8 | fn main() { 9 | loop { 10 | fuzz!(|data: &[u8]| { 11 | let _ = wasmer_runtime_core::validate_and_report_errors_with_features( 12 | &data, 13 | Features { 14 | /// Enable support for the SIMD proposal. 15 | /// Enable support for the threads proposal. 16 | simd: true, threads: true,}, 17 | ) 18 | .map_err(|_err| ()); 19 | }); 20 | } 21 | } -------------------------------------------------------------------------------- /images/afl_rust_interface.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wasmerio/wasm-fuzz/20c7430e2c04cc1b7eedac6f17b72a1a232454b9/images/afl_rust_interface.png -------------------------------------------------------------------------------- /images/cargofuzz_interface.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wasmerio/wasm-fuzz/20c7430e2c04cc1b7eedac6f17b72a1a232454b9/images/cargofuzz_interface.png -------------------------------------------------------------------------------- /images/honggfuzz_interface_compile.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wasmerio/wasm-fuzz/20c7430e2c04cc1b7eedac6f17b72a1a232454b9/images/honggfuzz_interface_compile.png -------------------------------------------------------------------------------- /images/honggfuzz_interface_validate.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wasmerio/wasm-fuzz/20c7430e2c04cc1b7eedac6f17b72a1a232454b9/images/honggfuzz_interface_validate.png -------------------------------------------------------------------------------- /images/kcov_coverage_example.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wasmerio/wasm-fuzz/20c7430e2c04cc1b7eedac6f17b72a1a232454b9/images/kcov_coverage_example.png -------------------------------------------------------------------------------- /scripts/testwasmer.sh: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | 3 | tempfile=`mktemp` && cat > ${tempfile} 4 | result=1 5 | 6 | trap 'rm -f ${tempfile}; exit ${result}' EXIT TERM ALRM 7 | 8 | ./target/release/wasmer run ${tempfile} 9 | 10 | # Check if we were killed with SIGSEGV 11 | if test $? -eq 101; then 12 | result=0 # We want this input 13 | fi 14 | --------------------------------------------------------------------------------