Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Appearance settings

UlteSoft/uwvm2

Open more actions menu

Repository files navigation

uwvm2 logo

Ultimate WebAssembly Virtual Machine 2

Important

This project is currently only developer stable

Introduction

Ultimate WebAssembly Virtual Machine 2

Features

WASM Feature Extensions

Most wasm standards are supported. See feature.md. For detailed changes in each WebAssembly release, see wasm-release.md.

Supports multiple platforms

Supports over 100 triplet platforms, including DOS series, POSIX series, Windows 9x series, Windows NT series, and the Host C Library Series. Supports interpretation execution (INT), just-in-time compilation (JIT), and tiered compilation (TC). See support.md for details.

High-performance, secure, and highly scalable standard parser

High-performance, spec-compliant WebAssembly binary parser built on concept-oriented C++26 with SIMD-aware design and extensive fuzzing for safety and robustness. See readme.md for details.

WASI host extensions

WebAssembly System Interface Preview 1 (WASI P1) host bindings for wasm32-wasip1 and wasm64-wasip1 targets, built on the same cross-platform runtime as UWVM2 and exposing file-system and related services to WebAssembly modules. See imported/readme.md for details.

Flexible linear memory models

uwvm2 provides three host-side models for implementing WebAssembly linear memory (mmap-based, multi-threaded allocator-based, and single-thread allocator-based backends), allowing efficient execution on platforms with or without virtual memory support. See readme.md for a detailed description.

Commandline interface

  • Get version information
$ uwvm --version
  • Get a list of commands
$ uwvm --help
  • Running uwvm2 virtual machine
$ uwvm <param0> <param1> ... --run <wasm> <argv1> <argv2> ...
  • WASI mount dir
$ uwvm --wasi-mount-dir <wasi dir> <system dir> ... --run ...

How to build

  • Windows (aka. unknown-windows-msvc). See windows.md
  • MinGW (aka. unknown-windows-gnu, unknown-w64-mingw32). See mingw.md
  • Linux (aka. unknown-linux-unknown). See linux.md
  • Darwin (aka. unknown-apple-darwin). See darwin.md
  • FreeBSD (aka. unknown-freebsd(Version)). See freebsd.md
  • WASM-WASI (self-hosting) (aka. [wasm32|wasm64]-[wasip1|wasip2]-(threads)). See wasm-wasi.md
  • Other platforms: See how-to-build

About

Ultimate WebAssembly Virtual Machine 2

Resources

License

Contributing

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 8

Morty Proxy This is a proxified and sanitized view of the page, visit original site.