Wasm backend Template Haskell support
Closes #24376.
Current status: it works with unreg/NCG backend now. ghci
also works. JSFFI doesn't work in bytecode yet, but works when compiled into wasm shared library and invoked by bytecode.
TODOs:
-
host_fully_static
logic in hadrian/ci -
Build shared library for libffi-wasm
-
Build shared library for in-tree GMP -
PIC and shared libraries support for unreg backend -
PIC and shared libraries support for NCG -
RTS linker for wasm -
External interpreter logic -
JSFFI support in dynamic code -
ghci
support -
Support loading home modules in TH in make mode -
Fix testsuite -
Off-CI manual testing with real world TH splices -
Fix https://github.com/llvm/llvm-project/issues/108599 in our wasi-sdk fork -
Ship patched nodejs with increased wasm limits to load large wasm shared libs
Edited by Cheng Shao