#webassembly #wasm

wasmtime-environ

Standalone environment support for WebAsssembly code in Cranelift

11 breaking releases

✓ Uses Rust 2018 edition

new 0.15.0 Mar 31, 2020
0.12.0 Feb 26, 2020
0.8.0 Nov 19, 2019
0.1.0 Dec 17, 2018
0.0.0 Aug 3, 2018

#205 in WebAssembly

Download history 167/week @ 2019-12-15 158/week @ 2019-12-22 156/week @ 2019-12-29 356/week @ 2020-01-05 447/week @ 2020-01-12 335/week @ 2020-01-19 375/week @ 2020-01-26 512/week @ 2020-02-02 769/week @ 2020-02-09 1021/week @ 2020-02-16 874/week @ 2020-02-23 882/week @ 2020-03-01 1015/week @ 2020-03-08 902/week @ 2020-03-15 902/week @ 2020-03-22 1705/week @ 2020-03-29

3,036 downloads per month
Used in 24 crates (12 directly)

Apache-2.0 WITH LLVM-exception and maybe MPL-2.0

2MB
43K SLoC

This is the wasmtime-environ crate, which contains the implementations of the ModuleEnvironment and FuncEnvironment traits from cranelift-wasm. They effectively implement an ABI for basic wasm compilation that defines how linear memories are allocated, how indirect calls work, and other details. They can be used for JITing, native object files, or other purposes.


lib.rs:

Standalone environment for WebAssembly using Cranelift. Provides functions to translate get_global, set_global, memory.size, memory.grow, call_indirect that hardcode in the translation the base addresses of regions of memory that will hold the globals, tables and linear memories.

Dependencies

~12MB
~263K SLoC