-
Notifications
You must be signed in to change notification settings - Fork 0
WebAssembly support
Brianna Marshall edited this page Oct 7, 2025
·
4 revisions
WebAssembly 1.0 Core Specification
| Instruction | |
|---|---|
| inn.const inn | ✅ |
| fnn.const fnn | ✅ |
| inn.iunop | ✅ |
| fnn.funop | ✅ |
| inn.binop | ✅ |
| fnn.fbinop | ✅ |
| inn.itestop | ✅ |
| inn.irelop | ✅ |
| fnn.frelop | ✅ |
| i32.wrap_i64 | ✅ |
| i64.extend_i32_sx | ✅ |
| inn.trunc_fmm_sx | ✅ |
| f32.demote_f64 | ✅ |
| f64.promote_f32 | ✅ |
| fnn.convert_imm_sx | ✅ |
| inn.reinterpret_fnn | ✅ |
| fnn.reinterpret_inn | ✅ |
| Instruction | |
|---|---|
| drop | ✅ |
| select | ❌ |
| Instruction | |
|---|---|
| local.get localidx | ✅ |
| local.set localidx | ✅ |
| local.tee localidx | ❌ |
| global.get globalidx | ❌ |
| global.set globalidx | ❌ |
| Instruction | |
|---|---|
| inn.load memarg | ✅¹ |
| fnn.load memarg | ✅¹ |
| inn.store memarg | ✅² |
| fnn.store memarg | ✅² |
| inn.load8_sx memarg | ❌ |
| inn.load16_sx memarg | ❌ |
| i64.load32_sx memarg | ❌ |
| inn.store8 memarg | ❌ |
| inn.store16 memarg | ❌ |
| i64.store32 memarg | ❌ |
| memory.size | ❌³ |
| memory.grow | ❌³ |
¹Via ref.load.
²Via ref.store.
³Managed by the runtime.
| Instruction | |
|---|---|
| nop | ✅ |
| unreachable | ✅ |
| block resulttype instr* end | ✅ |
| loop resulttype instr* end | ✅ |
| if resulttype instr* else instr* end | ✅ |
| br labelidx | ✅ |
| br_if labelidx | ❌ |
| br_table vec(labelidx) labelidx | ❌ |
| return | ✅ |
| call funcidx | ✅ |
| call_indirect typeidx | ✅ |
- No host calls
- No declaring or importing memories or tables
- No start function