Table of Contents

  1. 1Introduction
    • 1.1Introduction
      • 1.1.1Design Goals
      • 1.1.2Scope
      • 1.1.3Security Considerations
      • 1.1.4Dependencies
    • 1.2Overview
      • 1.2.1Concepts
      • 1.2.2Semantic Phases
  2. 2Structure
    • 2.1Conventions
      • 2.1.1Grammar Notation
      • 2.1.2Auxiliary Notation
      • 2.1.3Vectors
    • 2.2Values
      • 2.2.1Bytes
      • 2.2.2Integers
      • 2.2.3Floating-Point
      • 2.2.4Names
    • 2.3Types
      • 2.3.1Value Types
      • 2.3.2Result Types
      • 2.3.3Function Types
      • 2.3.4Limits
      • 2.3.5Memory Types
      • 2.3.6Table Types
      • 2.3.7Global Types
      • 2.3.8External Types
    • 2.4Instructions
      • 2.4.1Numeric Instructions
      • 2.4.2Parametric Instructions
      • 2.4.3Variable Instructions
      • 2.4.4Memory Instructions
      • 2.4.5Control Instructions
      • 2.4.6Expressions
    • 2.5Modules
      • 2.5.1Indices
      • 2.5.2Types
      • 2.5.3Functions
      • 2.5.4Tables
      • 2.5.5Memories
      • 2.5.6Globals
      • 2.5.7Element Segments
      • 2.5.8Data Segments
      • 2.5.9Start Function
      • 2.5.10Exports
      • 2.5.11Imports
  3. 3Validation
    • 3.1Conventions
      • 3.1.1Contexts
      • 3.1.2Prose Notation
      • 3.1.3Formal Notation
    • 3.2Types
      • 3.2.1Limits
      • 3.2.2Block Types
      • 3.2.3Function Types
      • 3.2.4Table Types
      • 3.2.5Memory Types
      • 3.2.6Global Types
      • 3.2.7External Types
    • 3.3Instructions
      • 3.3.1Numeric Instructions
      • 3.3.2Parametric Instructions
      • 3.3.3Variable Instructions
      • 3.3.4Memory Instructions
      • 3.3.5Control Instructions
      • 3.3.6Instruction Sequences
      • 3.3.7Expressions
    • 3.4Modules
      • 3.4.1Functions
      • 3.4.2Tables
      • 3.4.3Memories
      • 3.4.4Globals
      • 3.4.5Element Segments
      • 3.4.6Data Segments
      • 3.4.7Start Function
      • 3.4.8Exports
      • 3.4.9Imports
      • 3.4.10Modules
  4. 4Execution
    • 4.1Conventions
      • 4.1.1Prose Notation
      • 4.1.2Formal Notation
    • 4.2Runtime Structure
      • 4.2.1Values
      • 4.2.2Results
      • 4.2.3Store
      • 4.2.4Addresses
      • 4.2.5Module Instances
      • 4.2.6Function Instances
      • 4.2.7Table Instances
      • 4.2.8Memory Instances
      • 4.2.9Global Instances
      • 4.2.10Export Instances
      • 4.2.11External Values
      • 4.2.12Stack
      • 4.2.13Administrative Instructions
    • 4.3Numerics
      • 4.3.1Representations
      • 4.3.2Integer Operations
      • 4.3.3Floating-Point Operations
      • 4.3.4Conversions
    • 4.4Instructions
      • 4.4.1Numeric Instructions
      • 4.4.2Parametric Instructions
      • 4.4.3Variable Instructions
      • 4.4.4Memory Instructions
      • 4.4.5Control Instructions
      • 4.4.6Blocks
      • 4.4.7Function Calls
      • 4.4.8Expressions
    • 4.5Modules
      • 4.5.1External Typing
      • 4.5.2Import Matching
      • 4.5.3Allocation
      • 4.5.4Instantiation
      • 4.5.5Invocation
  5. 5Binary Format
    • 5.1Conventions
      • 5.1.1Grammar
      • 5.1.2Auxiliary Notation
      • 5.1.3Vectors
    • 5.2Values
      • 5.2.1Bytes
      • 5.2.2Integers
      • 5.2.3Floating-Point
      • 5.2.4Names
    • 5.3Types
      • 5.3.1Value Types
      • 5.3.2Result Types
      • 5.3.3Function Types
      • 5.3.4Limits
      • 5.3.5Memory Types
      • 5.3.6Table Types
      • 5.3.7Global Types
    • 5.4Instructions
      • 5.4.1Control Instructions
      • 5.4.2Parametric Instructions
      • 5.4.3Variable Instructions
      • 5.4.4Memory Instructions
      • 5.4.5Numeric Instructions
      • 5.4.6Expressions
    • 5.5Modules
      • 5.5.1Indices
      • 5.5.2Sections
      • 5.5.3Custom Section
      • 5.5.4Type Section
      • 5.5.5Import Section
      • 5.5.6Function Section
      • 5.5.7Table Section
      • 5.5.8Memory Section
      • 5.5.9Global Section
      • 5.5.10Export Section
      • 5.5.11Start Section
      • 5.5.12Element Section
      • 5.5.13Code Section
      • 5.5.14Data Section
      • 5.5.15Modules
  6. 6Text Format
    • 6.1Conventions
      • 6.1.1Grammar
      • 6.1.2Abbreviations
      • 6.1.3Contexts
      • 6.1.4Vectors
    • 6.2Lexical Format
      • 6.2.1Characters
      • 6.2.2Tokens
      • 6.2.3White Space
      • 6.2.4Comments
    • 6.3Values
      • 6.3.1Integers
      • 6.3.2Floating-Point
      • 6.3.3Strings
      • 6.3.4Names
      • 6.3.5Identifiers
    • 6.4Types
      • 6.4.1Value Types
      • 6.4.2Function Types
      • 6.4.3Limits
      • 6.4.4Memory Types
      • 6.4.5Table Types
      • 6.4.6Global Types
    • 6.5Instructions
      • 6.5.1Labels
      • 6.5.2Control Instructions
      • 6.5.3Parametric Instructions
      • 6.5.4Variable Instructions
      • 6.5.5Memory Instructions
      • 6.5.6Numeric Instructions
      • 6.5.7Folded Instructions
      • 6.5.8Expressions
    • 6.6Modules
      • 6.6.1Indices
      • 6.6.2Types
      • 6.6.3Type Uses
      • 6.6.4Imports
      • 6.6.5Functions
      • 6.6.6Tables
      • 6.6.7Memories
      • 6.6.8Globals
      • 6.6.9Exports
      • 6.6.10Start Function
      • 6.6.11Element Segments
      • 6.6.12Data Segments
      • 6.6.13Modules
  7. 7Appendix
    • 7.1Embedding
      • 7.1.1Types
      • 7.1.2Errors
      • 7.1.3Pre- and Post-Conditions
      • 7.1.4Store
      • 7.1.5Modules
      • 7.1.6Module Instances
      • 7.1.7Functions
      • 7.1.8Tables
      • 7.1.9Memories
      • 7.1.10Globals
    • 7.2Implementation Limitations
      • 7.2.1Syntactic Limits
      • 7.2.2Validation
      • 7.2.3Execution
    • 7.3Validation Algorithm
      • 7.3.1Data Structures
      • 7.3.2Validation of Opcode Sequences
    • 7.4Custom Sections
      • 7.4.1Name Section
    • 7.5Soundness
      • 7.5.1Values and Results
      • 7.5.2Store Validity
      • 7.5.3Configuration Validity
      • 7.5.4Administrative Instructions
      • 7.5.5Store Extension
      • 7.5.6Theorems
W3C @ Logo

WebAssembly Core Specification

W3C Working Draft 07 October 2021

back to top
  • Index of Types
  • Index of Instructions
  • Index of Semantic Rules

  • Index

Quick search



2 Structure¶

  • 2.1 Conventions
    • 2.1.1 Grammar Notation
    • 2.1.2 Auxiliary Notation
    • 2.1.3 Vectors
  • 2.2 Values
    • 2.2.1 Bytes
    • 2.2.2 Integers
    • 2.2.3 Floating-Point
    • 2.2.4 Names
  • 2.3 Types
    • 2.3.1 Value Types
    • 2.3.2 Result Types
    • 2.3.3 Function Types
    • 2.3.4 Limits
    • 2.3.5 Memory Types
    • 2.3.6 Table Types
    • 2.3.7 Global Types
    • 2.3.8 External Types
  • 2.4 Instructions
    • 2.4.1 Numeric Instructions
    • 2.4.2 Parametric Instructions
    • 2.4.3 Variable Instructions
    • 2.4.4 Memory Instructions
    • 2.4.5 Control Instructions
    • 2.4.6 Expressions
  • 2.5 Modules
    • 2.5.1 Indices
    • 2.5.2 Types
    • 2.5.3 Functions
    • 2.5.4 Tables
    • 2.5.5 Memories
    • 2.5.6 Globals
    • 2.5.7 Element Segments
    • 2.5.8 Data Segments
    • 2.5.9 Start Function
    • 2.5.10 Exports
    • 2.5.11 Imports
©2017, WebAssembly Community Group.