mirror of
https://github.com/fluencelabs/wasmer
synced 2024-12-13 22:25:40 +00:00
5c1c786e35
1002: Update the LLVM pass list. r=nlewycky a=nlewycky # Description Adds optimizations of loops, and inlinling and some simple interprocedural optimization. Measured on the libsodium benchmarks, the new pass pipeline is a 2.35% geomean improvement. No major performance regressions known. Co-authored-by: Nick Lewycky <nick@wasmer.io> |
||
---|---|---|
.. | ||
cpp | ||
src | ||
build.rs | ||
Cargo.toml | ||
README.md |
Wasmer LLVM backend
Wasmer is a standalone JIT WebAssembly runtime, aiming to be fully compatible with Emscripten, Rust and Go. Learn more.
This crate represents the LLVM backend integration for Wasmer.
Usage
Usage in Wasmer Standalone
If you are using the wasmer
CLI, you can specify the backend with:
wasmer run program.wasm --backend=llvm
Usage in Wasmer Embedded
If you are using Wasmer Embedded, you can specify
the LLVM backend to the compile_with
function:
use wasmer_llvm_backend::LLVMCompiler;
// ...
let module = wasmer_runtime_core::compile_with(&wasm_binary[..], &LLVMCompiler::new());