diff options
author | Alon Zakai <alonzakai@gmail.com> | 2019-01-10 19:31:20 -0800 |
---|---|---|
committer | GitHub <noreply@github.com> | 2019-01-10 19:31:20 -0800 |
commit | 45714b5fc6cf14c112bc4f188aca427464ab69d8 (patch) | |
tree | 11a85c5fce2dfaa36650e0e6766d4d3f8b0a2366 /src/emscripten-optimizer/optimizer.h | |
parent | 4084d6e70922f8b1cc00c3a24bf5db41e03d5e79 (diff) | |
download | binaryen-45714b5fc6cf14c112bc4f188aca427464ab69d8.tar.gz binaryen-45714b5fc6cf14c112bc4f188aca427464ab69d8.tar.bz2 binaryen-45714b5fc6cf14c112bc4f188aca427464ab69d8.zip |
Compare binaryen fuzz-exec to JS VMs (#1856)
The main fuzz_opt.py script compares JS VMs, and separately runs binaryen's fuzz-exec that compares the binaryen interpreter to itself (before and after opts). This PR lets us directly compare binaryen's interpreter output to JS VMs. This found a bunch of minor things we can do better on both sides, giving more fuzz coverage.
To enable this, a bunch of tiny fixes were needed:
* Add --fuzz-exec-before which is like --fuzz-exec but just runs the code before opts are run, instead of before and after.
* Normalize double printing (so JS and C++ print comparable things). This includes negative zero in JS, which we never printed properly til now.
* Various improvements to how we print fuzz-exec logging - remove unuseful things, and normalize the others across JS and C++.
* Properly legalize the wasm when --emit-js-wrapper (i.e., we will run the code from JS), and use that in the JS wrapper code.
Diffstat (limited to 'src/emscripten-optimizer/optimizer.h')
0 files changed, 0 insertions, 0 deletions