#llvm #compiler

hc-wasmer-compiler-llvm

LLVM compiler for Wasmer WebAssembly runtime

2 releases

4.3.6-hc.1 Aug 28, 2024
4.3.6-hc.0 Aug 27, 2024

#660 in WebAssembly


Used in hc-wasmer

MIT license

1.5MB
31K SLoC

wasmer-compiler-llvm Build Status Join Wasmer Slack MIT License crates.io

This crate contains a compiler implementation based on the LLVM Compiler Infrastructure.

Usage

use wasmer::{Store, EngineBuilder};
use wasmer_compiler_llvm::LLVM;

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

Note: you can find a full working example using LLVM compiler here.

When to use LLVM

We recommend using LLVM as the default compiler when running WebAssembly files on any production system, as it offers maximum peformance near to native speeds.

Requirements

The LLVM compiler requires a valid installation of LLVM in your system. It currently requires LLVM 15.

You can install LLVM easily on your Debian-like system via this command:

wget https://apt.llvm.org/llvm.sh -O /tmp/llvm.sh
sudo bash /tmp/llvm.sh 15

Or in macOS:

brew install llvm@15

Or via any of the pre-built binaries that LLVM offers.

Dependencies

~12–21MB
~331K SLoC