Add support for the new WASM Exception Handling feature (#66435)
* [mono] Fix parsing options added by utils/options.h when using --response.
* [mono][jit] Add support for WASM EH.
WASM EH uses the newly added llvm catchpad instructions instead of
the old landingpad instructions. Add a --wasm-exceptions option
to control whenever the old JS style or the new WASM style code
is generated.
* Add support for the new WASM Exception Handling feature.
It is controlled by the $(WasmExceptionHandling) msbuild property.
Its only used in AOT mode, the interpreter mode wouldn't benefit from it.
The only file in the runtime which contains a throw or a catch is
llvm-runtime.cpp, so create 2 small static libraries from this file:
* libmono-wasm-eh-js - compiled to use JS style EH
* libmono-wasm-eh-wasm - compiled to use WASM style EH
This avoids the need to compile 2 versions of the whole runtime.
Requires emscripten 3.x.
* Add missing quote
* Update src/mono/mono/mini/CMakeLists.txt
Co-authored-by: Aleksey Kliger (λgeek) <akliger@gmail.com>
* Update src/mono/CMakeLists.txt
Co-authored-by: Aleksey Kliger (λgeek) <akliger@gmail.com>
Co-authored-by: Radek Doulik <radek.doulik@gmail.com>
Co-authored-by: Aleksey Kliger (λgeek) <akliger@gmail.com>