Open
Description
Many C++ libraries require exceptions, like libriscv
and Binaryen itself. Compiling them to WASI would work (as wasi-sdk
, iirc, supports WASM exceptions), but some WASM parsers (like my fork of waffle
) and WASM compilers (like w2c2
) do not.
For compatibility with those compilers and parsers, we would need a WASM exception lowering pass. Generically, the only sound option is lowering to GC, however MVP lowering might be required for some usages, where we would redirect exception data to either a seperate memory or an unused segment of the existing one.
As one of the few WASM analysis tools that support exceptions, Binaryen seems fit to contain some exception lowering pass, even if it would be unnecessary for most pure-Binaryen workloads.
Metadata
Metadata
Assignees
Labels
No labels