1# @ajax/wasm-opcodes
23The WebAssembly instruction set as data. For every instruction the decoder knows — the MVP, sign
4extension, non-trapping float-to-int, multi-value, reference types and bulk memory as rows; SIMD,
5relaxed SIMD and atomics by rule — `wasm_op_info` gives its immediates, its operand signature when it
6is a plain one (`"ff>f"`), the proposal that introduced it, the access size of a load or store, and
7wasmparser's name for it (its `Operator` variant: `F32Add`), which meshd's float guard prints.
89SIMD and atomics are known only by their immediates (named `Simd`, `RelaxedSimd`, `Atomic`): enough for
10the decoder and the float guard to walk and refuse them, not to run them.
1112Part of [alpha-c-mesh](https://github.com/thomasdavis/alpha-c-mesh)'s WebAssembly interpreter (it replaces
13wasmparser in the port of alpha-rust-mesh's `mesh-host/src/wasm.rs`).
1415Tests: `tests/opcodes.c`.