Skip to content

Commit ba81d7a

Browse files
committed
Add multi memories to Changes
1 parent feb104f commit ba81d7a

File tree

1 file changed

+54
-36
lines changed

1 file changed

+54
-36
lines changed

document/core/appendix/changes.rst

Lines changed: 54 additions & 36 deletions
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,7 @@ Release 2.0
1515
Sign extension instructions
1616
...........................
1717

18-
Added new numeric instructions for performing sign extension within integer representations [#proposal-signext]_.
18+
Added new numeric instructions for performing sign extension within integer representations. [#proposal-signext]_
1919

2020
* New :ref:`numeric instructions <syntax-instr-numeric>`: :math:`\K{i}\X{nn}\K{.}\EXTEND\X{N}\K{\_s}`
2121

@@ -25,7 +25,7 @@ Added new numeric instructions for performing sign extension within integer repr
2525
Non-trapping float-to-int conversions
2626
.....................................
2727

28-
Added new conversion instructions that avoid trapping when converting a floating-point number to an integer [#proposal-cvtsat]_.
28+
Added new conversion instructions that avoid trapping when converting a floating-point number to an integer. [#proposal-cvtsat]_
2929

3030
* New :ref:`numeric instructions <syntax-instr-numeric>`: :math:`\K{i}\X{nn}\K{.}\TRUNC\K{\_sat\_f}\X{mm}\K{\_}\sx`
3131

@@ -35,7 +35,7 @@ Added new conversion instructions that avoid trapping when converting a floating
3535
Multiple values
3636
...............
3737

38-
Generalized the result type of blocks and functions to allow for multiple values; in addition, introduced the ability to have block parameters [#proposal-multivalue]_.
38+
Generalized the result type of blocks and functions to allow for multiple values; in addition, introduced the ability to have block parameters. [#proposal-multivalue]_
3939

4040
* :ref:`Function types <syntax-functype>` allow more than one result
4141

@@ -47,7 +47,7 @@ Generalized the result type of blocks and functions to allow for multiple values
4747
Reference types
4848
...............
4949

50-
Added |FUNCREF| and |EXTERNREF| as new value types and respective instructions [#proposal-reftype]_.
50+
Added |FUNCREF| and |EXTERNREF| as new value types and respective instructions. [#proposal-reftype]_
5151

5252
* New :ref:`value types <syntax-valtype>`: :ref:`reference types <syntax-reftype>` |FUNCREF| and |EXTERNREF|
5353

@@ -63,19 +63,19 @@ Added |FUNCREF| and |EXTERNREF| as new value types and respective instructions [
6363
Table instructions
6464
..................
6565

66-
Added instructions to directly access and modify tables [#proposal-reftype]_.
66+
Added instructions to directly access and modify tables. [#proposal-reftype]_
6767

6868
* :ref:`Table types <syntax-tabletype>` allow any :ref:`reference type <syntax-reftype>` as element type
6969

7070
* New :ref:`table instructions <syntax-instr-table>`: |TABLEGET|, |TABLESET|, |TABLESIZE|, |TABLEGROW|
7171

7272

73-
.. index:: table, instruction, table index, element segment
73+
.. index:: table, instruction, table index, element segment, import, export
7474

7575
Multiple tables
7676
...............
7777

78-
Added the ability to use multiple tables per module [#proposal-reftype]_.
78+
Added the ability to use multiple tables per module. [#proposal-reftype]_
7979

8080
* :ref:`Modules <syntax-module>` may :ref:`define <syntax-table>`, :ref:`import <syntax-import>`, and :ref:`export <syntax-export>` multiple tables
8181

@@ -89,7 +89,7 @@ Added the ability to use multiple tables per module [#proposal-reftype]_.
8989
Bulk memory and table instructions
9090
..................................
9191

92-
Added instructions that modify ranges of memory or table entries [#proposal-reftype]_ [#proposal-bulk]_
92+
Added instructions that modify ranges of memory or table entries. [#proposal-reftype]_ [#proposal-bulk]_
9393

9494
* New :ref:`memory instructions <syntax-instr-memory>`: |MEMORYFILL|, |MEMORYINIT|, |MEMORYCOPY|, |DATADROP|
9595

@@ -138,17 +138,36 @@ Added vector type and instructions that manipulate multiple numeric values in pa
138138
* New injection/projection :ref:`vector instructions <syntax-instr-vec>`: :math:`\K{i}\!N\!\K{x}\!M\!\K{.splat}`, :math:`\K{f}\!N\!\K{x}\!M\!\K{.splat}`, :math:`\K{i}\!N\!\K{x}\!M\!\K{.bitmask}`
139139

140140

141+
.. [#proposal-signext]
142+
https://github.com/WebAssembly/spec/tree/main/proposals/sign-extension-ops/
143+
144+
.. [#proposal-cvtsat]
145+
https://github.com/WebAssembly/spec/tree/main/proposals/nontrapping-float-to-int-conversion/
146+
147+
.. [#proposal-multivalue]
148+
https://github.com/WebAssembly/spec/tree/main/proposals/multi-value/
149+
150+
.. [#proposal-reftype]
151+
https://github.com/WebAssembly/spec/tree/main/proposals/reference-types/
152+
153+
.. [#proposal-bulk]
154+
https://github.com/WebAssembly/spec/tree/main/proposals/bulk-memory-operations/
155+
156+
.. [#proposal-vectype]
157+
https://github.com/WebAssembly/spec/tree/main/proposals/simd/
158+
159+
141160
Release 3.0
142161
~~~~~~~~~~~
143162

144163
.. index: instruction, expression, constant
145164
146-
Extended Constant Expressions
165+
Extended constant expressions
147166
.............................
148167

149-
Allowed basic numeric computations in constant expressions [#proposal-extconst]_.
168+
Allowed basic numeric computations in constant expressions. [#proposal-extconst]_
150169

151-
* Extended set of :ref:`constant instructions <valid-const>` with :math:`\K{i}\!N\!\K{.add}`, :math:`\K{i}\!N\!\K{.sub}`, and :math:`\K{i}\!N\!\K{.mul}`
170+
* Extended set of :ref:`constant instructions <valid-const>` with :math:`\K{i}\X{nn}\K{.add}`, :math:`\K{i}\X{nn}\K{.sub}`, and :math:`\K{i}\X{nn}\K{.mul}`, and |GLOBALGET| for any previously declared immutable :ref:`global <syntax-global>`
152171

153172
.. note::
154173
The :ref:`garbage collection <extension-gc>` added further constant instructions.
@@ -159,17 +178,31 @@ Allowed basic numeric computations in constant expressions [#proposal-extconst]_
159178
Tail calls
160179
..........
161180

162-
Added instructions to perform tail calls [#proposal-tailcall]_.
181+
Added instructions to perform tail calls. [#proposal-tailcall]_
182+
183+
* New :ref:`control instructions <syntax-instr-control>`: |RETURNCALL| and |RETURNCALLINDIRECT|
184+
185+
186+
.. index: instruction, memory, memory index, data segment, import, export
187+
188+
Multiple memories
189+
.................
163190

164-
* New :ref:`control instructions <syntax-instr-control>`: :math:`RETURNCALL` and :math:`RETURNCALLINDIRECT`
191+
Added the ability to use multiple memories per module. [#proposal-multimem]_
192+
193+
* :ref:`Modules <syntax-module>` may :ref:`define <syntax-mem>`, :ref:`import <syntax-import>`, and :ref:`export <syntax-export>` multiple memories
194+
195+
* :ref:`Memory instructions <syntax-instr-memory>` take a :ref:`memory index <syntax-memidx>` immediate: |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}`
196+
197+
* :ref:`Data segments <syntax-elem>` take a :ref:`memory index <syntax-memidx>`
165198

166199

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

169-
Typeful References
202+
Typeful references
170203
..................
171204

172-
Added more precise types for references [#proposal-typedref]_.
205+
Added more precise types for references. [#proposal-typedref]_
173206

174207
* New generalised form of :ref:`reference types <syntax-reftype>`: :math:`(\REF~\NULL^?~\heaptype)`
175208

@@ -191,10 +224,10 @@ Added more precise types for references [#proposal-typedref]_.
191224
.. index:: reference, reference type, heap type, field type, storage type, structure type, array type, composite type, sub type, recursive type
192225
.. _extension-gc:
193226

194-
Garbage Collection
227+
Garbage collection
195228
..................
196229

197-
Added managed reference types [#proposal-gc]_.
230+
Added managed reference types. [#proposal-gc]_
198231

199232
* New forms of :ref:`heap types <syntax-heaptype>`: |ANY|, |EQT|, |I31|, |STRUCT|, |ARRAY|, |NONE|, |NOFUNC|, |NOEXTERN|
200233

@@ -214,33 +247,18 @@ Added managed reference types [#proposal-gc]_.
214247

215248
* New :ref:`reference instructions <syntax-instr-ref>` for converting :ref:`host types <syntax-externtype>`: |ANYCONVERTEXTERN|, |EXTERNCONVERTANY|
216249

217-
* Extended set of :ref:`constant instructions <valid-const>` with |REFI31|, |STRUCTNEW|, |STRUCTNEWDEFAULT|, |ARRAYNEW|, |ARRAYNEWDEFAULT|, |ARRAYNEWFIXED|, |ANYCONVERTEXTERN|, |EXTERNCONVERTANY|, and |GLOBALGET| for any previously declared immutable :ref:`global <syntax-global>`
218-
219-
220-
.. [#proposal-signext]
221-
https://github.com/WebAssembly/spec/tree/main/proposals/sign-extension-ops/
222-
223-
.. [#proposal-cvtsat]
224-
https://github.com/WebAssembly/spec/tree/main/proposals/nontrapping-float-to-int-conversion/
225-
226-
.. [#proposal-multivalue]
227-
https://github.com/WebAssembly/spec/tree/main/proposals/multi-value/
250+
* Extended set of :ref:`constant instructions <valid-const>` with |REFI31|, |STRUCTNEW|, |STRUCTNEWDEFAULT|, |ARRAYNEW|, |ARRAYNEWDEFAULT|, |ARRAYNEWFIXED|, |ANYCONVERTEXTERN|, |EXTERNCONVERTANY|
228251

229-
.. [#proposal-reftype]
230-
https://github.com/WebAssembly/spec/tree/main/proposals/reference-types/
231-
232-
.. [#proposal-bulk]
233-
https://github.com/WebAssembly/spec/tree/main/proposals/bulk-memory-operations/
234-
235-
.. [#proposal-vectype]
236-
https://github.com/WebAssembly/spec/tree/main/proposals/simd/
237252

238253
.. [#proposal-extconst]
239254
https://github.com/WebAssembly/extended-const/blob/main/proposals/extended-const/
240255
241256
.. [#proposal-tailcall]
242257
https://github.com/WebAssembly/spec/tree/main/proposals/tail-call/
243258
259+
.. [#proposal-multimem]
260+
https://github.com/WebAssembly/multi-memory/blob/main/proposals/multi-memory/
261+
244262
.. [#proposal-typedref]
245263
https://github.com/WebAssembly/spec/tree/main/proposals/function-references/
246264

0 commit comments

Comments
 (0)