#singlepass #compiler

无需std linera-wasmer-compiler-singlepass

Wasmer WebAssembly运行时的单遍编译器

2个版本

4.3.1-linera.22024年6月7日

121WebAssembly

Download history 217/week @ 2024-06-01 146/week @ 2024-06-08 103/week @ 2024-06-15 30/week @ 2024-06-22 70/week @ 2024-06-29 16/week @ 2024-07-06 67/week @ 2024-07-13 82/week @ 2024-07-20 110/week @ 2024-07-27 90/week @ 2024-08-03

每月下载356
用于 linera-wasmer

MIT许可证

2MB
43K SLoC

wasmer-compiler-singlepass 构建状态 加入Wasmer Slack MIT许可证 crates.io

该包包含了一个基于Singlepass线性编译器的编译器实现。

使用方法

use wasmer::{Store, EngineBuilder};
use wasmer_compiler_singlepass::Singlepass;

let compiler = Singlepass::new();
let mut store = Store::new(compiler);

注意:您可以在此处找到使用Singlepass编译器的完整示例

何时使用Singlepass

Singlepass被设计成以线性时间输出编译代码,因此不易受到JIT炸弹的影响,并且提供了比wasmer-compiler-craneliftwasmer-compiler-llvm大几个数量级的编译性能,但运行速度略慢。

Singlepass不易受到JIT炸弹的影响,并提供了非常可预测的编译速度,这使得它非常适合需要快速且一致的编译时间的区块链和其他系统。

依赖关系

~14–26MB
~445K SLoC