wasm-micro-runtime/doc/stability_wasm_proposals.md
liang.he 41b2c6d0d5
Show wasm proposals status during compilation and execution (#3989)
- add default build configuration options and enhance message output for WAMR features
- Add Wasm proposal status printing functionality
2025-02-05 15:28:26 +08:00

4.2 KiB

Wasm Proposals

This document is intended to describe the current status of WebAssembly proposals and WASI proposals in WAMR.

Only track proposals that are followed in the WebAssembly proposals and WASI proposals.

Normally, the document tracks proposals that are in phase 4. However, if a proposal in an earlier phase receives support, it will be added to the list below.

The status represents the configuration product-mini/platforms/linux/CMakeLists.txt. There may be minor differences between the top-level CMakeLists and platform-specific CMakeLists.

Users can turn those features on or off by using compilation options. If a relevant compilation option is not available(N/A), it indicates that the feature is permanently enabled.

On-by-default Wasm Proposals

Proposal >= Phase 4 Compilation Option
Bulk memory operations Yes WAMR_BUILD_BULK_MEMORY
Extended Constant Expressions Yes N/A
Fixed-width SIMD1 Yes WAMR_BUILD_SIMD
Multi-value Yes N/A
Non-trapping float-to-int conversions Yes N/A
Reference Types Yes WAMR_BUILD_REF_TYPES
Sign-extension operators Yes N/A
WebAssembly C and C++ API No N/A

Off-by-default Wasm Proposals

Proposal >= Phase 4 Compilation Option
Garbage collection Yes WAMR_BUILD_GC
Legacy Exception handling2 No WAMR_BUILD_EXCE_HANDLING
Memory64 Yes WAMR_BUILD_MEMORY64
Multiple memories3 Yes WAMR_BUILD_MULTI_MEMORY
Reference-Typed Strings No WAMR_BUILD_STRINGREF
Tail call Yes WAMR_BUILD_TAIL_CALL
Threads4 Yes WAMR_BUILD_SHARED_MEMORY
Typed Function References Yes WAMR_BUILD_GC

Unimplemented Wasm Proposals

Proposal >= Phase 4
Branch Hinting Yes
Custom Annotation Syntax in the Text Format Yes
Exception handling5 Yes
Import/Export of Mutable Globals Yes
JS String Builtins Yes
Relaxed SIMD Yes

On-by-default WASI Proposals

Proposal >= Phase 4 Compilation Option

Off-by-default WASI Proposals

Proposal >= Phase 4 Compilation Option
Machine Learning (wasi-nn) No WAMR_BUILD_WASI_NN
Threads No WAMR_BUILD_LIB_WASI_THREADS

Unimplemented WASI Proposals

Proposal >= Phase 4

WAMR features

WAMR offers a variety of customizable features to create a highly efficient runtime. For more details, please refer to build_wamr.


  1. llvm-jit and aot only. ↩︎

  2. interpreter only. a legacy version. This proposal is currently also known as the "legacy proposal" and still supported in the web, but can be deprecated in future and the use of this proposal is discouraged. ↩︎

  3. interpreter only ↩︎

  4. WAMR_BUILD_LIB_PTHREAD can also be used to enable ↩︎

  5. up-to-date version ↩︎