Releases: WebAssembly/binaryen
Releases · WebAssembly/binaryen
1.38.48: Enable exnref instrumentation when EH is enabled (#2379)
`exnref` is enabled by not reference type feature but exception handling feature. Sorry that I missed this in #2377.
1.38.47
version_89: Add basic exception handling support (#2282)
This adds basic support for exception handling instructions, according to the spec: https://github.com/WebAssembly/exception-handling/blob/master/proposals/Exceptions.md This PR includes support for: - Binary reading/writing - Wast reading/writing - Stack IR - Validation - binaryen.js + C API - Few IR routines: branch-utils, type-updating, etc - Few passes: just enough to make `wasm-opt -O` pass - Tests This PR does not include support for many optimization passes, fuzzer, or interpreter. They will be follow-up PRs. Try-catch construct is modeled in Binaryen IR in a similar manner to that of if-else: each of try body and catch body will contain a block, which can be omitted if there is only a single instruction. This block will not be emitted in wast or binary, as in if-else. As in if-else, `class Try` contains two expressions each for try body and catch body, and `catch` is not modeled as an instruction. `exnref` value pushed by `catch` is get by `pop` instruction. `br_on_exn` is special: it returns different types of values when taken and not taken. We make `exnref`, the type `br_on_exn` pushes if not taken, as `br_on_exn`'s type.
version_88: Compile Linux release binaries with Clang (#2274)
This fixes #2273 for... unknown reasons. The tl;dr; is that the current release binaries built in this Alpine container seem to segfault when run over some wasm files when an exception is thrown, but clang-built binaries magically seems to not segfault!
version_87: [fuzzing] Give each testcase handler a list of feature flags it requi…
…res. (#2225) That way we can still test new flags on modes that do support them (e.g. FuzzExec runs on everything)
version_86
Create version_86
version_85: Initial tail call implementation (#2197)
Including parsing, printing, assembling, disassembling. TODO: - interpreting - effects - finalization and typing - fuzzing - JS/C API
1.38.32
version_84
Generate `dynCall` function for all signature used by `invoke` functi… …ons. (#2095) Previously we were only creating `dynCall` functions for signatures that we have statically in the table. However for dynamic linking we may need to invoke functions that we don't have table entries for (e.g. table entries from a different module).
version_83
wasm2js: optimize loops and eqz (#2051)