Skip to content

xyjixyjixyji/wasm-interpreter

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

# Wasm Interpreter

This is a course project for CMU 17770, Virtual Machines and Managed Runtimes.

This codebase contains code for a Wasm Interpreter in pure Rust, the internal
data type only supports i32, f64 (so no opaque types for other types in Wasm
GC). It also only supports limited number of instructions, but mainly major
ones, it is complete, but maybe less efficient if some certain instructions
are more handy. Also, passive elements are not supported and custom section is
not implemented.

It also includes a very simple single pass jit compiler, which compiles the
entire module once into amd64 assembly code and then execute the code. The
assembly code is not well optimized, so be careful.

## Side note on writing a jit compiler

todo

About

A WebAssembly VM with JIT compiler

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published