A tiny, lightweight and efficient WebAssembly virtual machine.
Not production-ready yet, feel free to keep tracking the project status by clicking "Watch".
If you want to compile and use this project, please install the following softwares in advance:
then, run the following command to compile:
npm run build
- Code Lint:
We use "cpplint" to check the code style, you can install it by follow command:
pip install cpplint
And lint the source code by:
npm run lint
- Memory Check:
Install "valgrind" on MacOS according to the following articles first:
How to Install Valgrind on macOS High Sierra
Then run the following command to detect the memory leak of the binary version program:
npm run memcheck
- Basic Wasm interpreter on fibonacci;
- Basic optimizations:
- Cache based opcode&immediates;
- Constant pool;
- Module stream loading;
- JIT compiler based optimization;
- Stage based full-path type validation;
- Full Wasm MVP proposals support;
- Experimental SIMD instructions;
- Basic WASI standard libraries;
Licensed under the MIT License;