Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Windows/msvc support for runtime, codegen and builtins as well as support for a wider list of platforms/architectures/compilers including Android (arm architectures), Windows 32-bit etc. - Support for growable indirect function call tables - Support for library sandboxing apis --- wasm function type index lookup (so host can add new callbacks), make heaps aligned to 4gb for compatiblity with the RLBox sandboxing framework - Allow multiple sandbox instances of the same library by moving global vars into a context structure that is passed to every function - Migrated from emscripten to use of wasi-clang - Upstream libc-wasi does not support windows, so I have written a minimal cross platform wasi support which includes just basic wasi function (just enough to get simple IO libraries running. Nothing complicated like networking or filesystem is supported) - Removed use of per function call signal handler, setjmp/longjmp as this slows transitions - Removed name mangling to simplify function lookup - Remove stack depth counting as this adds unnecessary overhead - A debugging aid built directly into wasm2c generated code that is similar to valgrind like shadow memory (significantly eases debugging of wasm) - A wasm2c runner that can run full applications (code that has a main), when they are compiled via wasm2c to C and then to a shared library (.so/.dll)
- Loading branch information