Robin Freyler
Robin Freyler
The Wasmi bytecode dispatcher that organizes the execution of Wasmi bytecode handles each individular Wasmi bytecode differentily. The most notable difference are: - Fallible or infallible Wasmi instructions returning either...
Wasmi has tons of translation unit tests that are deeply connected to how Wasmi encodes Wasm instructions. Folder: https://github.com/wasmi-labs/wasmi/tree/main/crates/wasmi/src/engine/translator/tests On the one handside having these tests is great and helped...
This issue is tracking progress on the creation of Python bindings for Wasmi using the PyO3 library. Python is one of the most if not the most popular programming language...
Wasmi experimentally supports the official Wasm C-API. However, the state of Wasmi's implementation is experimental, mostly due to missing automated tests. I am currently not sure how other runtimes, e.g....
Wasmi has WASI p1 support for a long time now, thanks to @OLUWAMUYIWA . However, it is since in experimental state because it is missing automated tests. While we are...
This reduces compile time of the Wasm based benchmark binaries: - Wasmi from 7.6s -> 7.4s - Wasmtime from 26.1s -> 19.5s I have made sure that benchmark results of...
### Usage Scenario To combat compile times and to improve structure of their Rust code, people often tend to use a Cargo workspace and split up their crate into many...
Currently, Wasmi uses stack slots (a.k.a. `Slot`) to load and store values from the stack when executing operation of a function. Each function on the call stack has its own...
With https://github.com/wasmi-labs/wasmi/pull/1650 new Wasmi operators have been introduced together with 2 different modes of bytecode layout: `indirect-dispatch` and `!indirect-dispatch`. - `indirect-dispatch` encodes all operators with a 16-bit op-code. - `!indirect-dispatch`...
Currently `Slot` is a thin-wrapper around a `u16` value representing indices into a functions stack slots. During execution Wasmi has to multiply those stack slot indices with 8 to get...