Files
extism/kernel
zach 6f4b43bedc feat: add benchmarking, optimize bounds checking in the kernel (#505)
- Adds benchmarking, run with `cargo bench` or `cargo criterion`
- Adds `MemoryRoot::pointer_in_bounds_fast` to do less precise bounds
checking in loads/stores

---------

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
Co-authored-by: zshipko <zshipko@users.noreply.github.com>
2023-10-12 13:24:34 -07:00
..
2023-10-10 16:15:18 -07:00

Extism kernel

The Extism kernel implements core parts of the Extism runtime in Rust compiled to WebAssembly. This code is a conceptual re-write of memory.rs with the goal of making core parts of the Extism implementation more portable across WebAssembly runtimes.

See lib.rs for more details about the implementation itself.

Building

Because this crate is built using the wasm32-unknown-unknown target, it is a separate build process from the extism-runtime crate.

To build extism-runtime.wasm, strip it and copy it to the proper location in the extism-runtime tree you can run:

$ sh build.sh