Skip to content

Commit e3c1081

Browse files
authored
[spec] Remove obsolete notes and fix inaccurate side conditions (#1311)
1 parent f607ec9 commit e3c1081

File tree

2 files changed

+4
-10
lines changed

2 files changed

+4
-10
lines changed

document/core/binary/instructions.rst

Lines changed: 0 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -71,9 +71,6 @@ Control Instructions
7171
Unlike any :ref:`other occurrence <binary-typeidx>`, the :ref:`type index <syntax-typeidx>` in a :ref:`block type <syntax-blocktype>` is encoded as a positive :ref:`signed integer <syntax-sint>`, so that its |SignedLEB128| bit pattern cannot collide with the encoding of :ref:`value types <binary-valtype>` or the special code :math:`\hex{40}`, which correspond to the LEB128 encoding of negative integers.
7272
To avoid any loss in the range of allowed indices, it is treated as a 33 bit signed integer.
7373

74-
In future versions of WebAssembly, the zero byte occurring in the encoding
75-
of the |CALLINDIRECT| instruction may be used to index additional tables.
76-
7774

7875
.. index:: reference instruction
7976
pair: binary format; instruction
@@ -95,9 +92,6 @@ Reference Instructions
9592
\hex{D2}~~x{:}\Bfuncidx &\Rightarrow& \REFFUNC~x \\
9693
\end{array}
9794
98-
.. note::
99-
These opcode assignments are preliminary.
100-
10195
10296
.. index:: parametric instruction, value type, polymorphism
10397
pair: binary format; instruction

document/core/text/instructions.rst

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -71,7 +71,7 @@ However, the special case of a type use that is syntactically empty or consists
7171
&
7272
\begin{array}[t]{@{}lcll@{}}
7373
(t{:}\Tresult)^? &\Rightarrow& t^? \\
74-
x,I'{:}\Ttypeuse_I &\Rightarrow& x & (\iff I' = \{\}) \\
74+
x,I'{:}\Ttypeuse_I &\Rightarrow& x & (\iff I' = \{\ILOCALS~(\epsilon)^\ast\}) \\
7575
\end{array} \\
7676
\production{block instruction} & \Tblockinstr_I &::=&
7777
\text{block}~~I'{:}\Tlabel_I~~\X{bt}{:}\Tblocktype~~(\X{in}{:}\Tinstr_{I'})^\ast~~\text{end}~~\Tid^?
@@ -87,7 +87,7 @@ However, the special case of a type use that is syntactically empty or consists
8787
\end{array}
8888
8989
.. note::
90-
The side condition stating that the :ref:`identifier context <text-context>` :math:`I'` must be empty in the rule for |Ttypeuse| block types enforces that no identifier can be bound in any |Tparam| declaration for a block type.
90+
The side condition stating that the :ref:`identifier context <text-context>` :math:`I'` must only contain unnamed entries in the rule for |Ttypeuse| block types enforces that no identifier can be bound in any |Tparam| declaration for a block type.
9191

9292

9393
.. _text-nop:
@@ -113,11 +113,11 @@ All other control instruction are represented verbatim.
113113
\text{return} &\Rightarrow& \RETURN \\ &&|&
114114
\text{call}~~x{:}\Tfuncidx_I &\Rightarrow& \CALL~x \\ &&|&
115115
\text{call\_indirect}~~x{:}\Ttableidx~~y,I'{:}\Ttypeuse_I &\Rightarrow& \CALLINDIRECT~x~y
116-
& (\iff I' = \{\}) \\
116+
& (\iff I' = \{\ILOCALS~(\epsilon)^\ast\}) \\
117117
\end{array}
118118
119119
.. note::
120-
The side condition stating that the :ref:`identifier context <text-context>` :math:`I'` must be empty in the rule for |CALLINDIRECT| enforces that no identifier can be bound in any |Tparam| declaration appearing in the type annotation.
120+
The side condition stating that the :ref:`identifier context <text-context>` :math:`I'` must only contain unnamed entries in the rule for |CALLINDIRECT| enforces that no identifier can be bound in any |Tparam| declaration appearing in the type annotation.
121121

122122

123123
Abbreviations

0 commit comments

Comments
 (0)