Skip to content
This repository has been archived by the owner on Jan 15, 2025. It is now read-only.

Commit

Permalink
Update appendix for memory64 (#97)
Browse files Browse the repository at this point in the history
Split out from WebAssembly/spec#1839
  • Loading branch information
sbc100 authored Nov 6, 2024
1 parent 1795669 commit ed1fc53
Showing 1 changed file with 41 additions and 0 deletions.
41 changes: 41 additions & 0 deletions document/core/appendix/changes.rst
Original file line number Diff line number Diff line change
Expand Up @@ -389,6 +389,44 @@ Added the ability to use multiple memories per module. [#proposal-multimem]_
* :ref:`Data segments <syntax-elem>` take a :ref:`memory index <syntax-memidx>`


.. index:: address type, number type, table, memory, instruction

64-bit Address Space
....................

Added the ability to declare an :math:`\I64` :ref:`address type <syntax-addrtype>` for :ref:`tables <syntax-tabletype>` and :ref:`memories <syntax-memtype>`. [#proposal-addr64]_

* :ref:`Address types <syntax-addrtype>` denote a subset of the integral :ref:`number types <syntax-numtype>`

* :ref:`Table types <syntax-tabletype>` include an :ref:`address type <syntax-addrtype>`

* :ref:`Memory types <syntax-memtype>` include an :ref:`address type <syntax-addrtype>`

* Operand types of :ref:`table <syntax-instr-table>` and :ref:`memory <syntax-instr-memory>` instructions now depend on the subject's declared address type:

- |TABLEGET|
- |TABLESET|
- |TABLESIZE|
- |TABLEGROW|
- |TABLEFILL|
- |TABLECOPY|
- |TABLEINIT|
- |MEMORYSIZE|
- |MEMORYGROW|
- |MEMORYFILL|
- |MEMORYCOPY|
- |MEMORYINIT|
- :math:`t\K{.load}`
- :math:`t\K{.store}`
- :math:`t\K{.load}\!N\!\K{\_}\sx`
- :math:`t\K{.store}\!N`
- :math:`\K{v128.load}\!N\!\K{x}\!M\!\K{\_}\sx`
- :math:`\K{v128.load}\!N\!\K{\_zero}`
- :math:`\K{v128.load}\!N\!\K{\_splat}`
- :math:`\K{v128.load}\!N\!\K{\_lane}`
- :math:`\K{v128.store}\!N\!\K{\_lane}`


.. index:: reference, reference type, heap type, value type, local, local type, instruction, instruction type, table, function, function type, matching, subtyping

Typeful References
Expand Down Expand Up @@ -595,6 +633,9 @@ mirroring the role of custom sections in the binary format. [#proposal-annot]_
.. [#proposal-multimem]
https://github.com/WebAssembly/spec/blob/main/proposals/multi-memory/
.. [#proposal-addr64]
https://github.com/WebAssembly/spec/blob/main/proposals/memory64/
.. [#proposal-typedref]
https://github.com/WebAssembly/spec/tree/main/proposals/function-references/
Expand Down

0 comments on commit ed1fc53

Please sign in to comment.