Skip to content

Commit 36a5499

Browse files
committed
update conventions to mention actions
1 parent be7006e commit 36a5499

2 files changed

Lines changed: 8 additions & 7 deletions

File tree

document/core/exec/conventions.rst

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -65,13 +65,14 @@ Formal Notation
6565
For the interested reader, a more thorough introduction can be found in respective text books. [#cite-tapl]_
6666

6767
The formal execution rules use a standard approach for specifying operational semantics, rendering them into *reduction rules*.
68-
Every rule has the following general form:
68+
Execution rules for each instruction have the following general form:
6969

7070
.. math::
71-
\X{configuration} \quad\stepto\quad \X{configuration}
71+
\X{configuration} \quad\stepto^{\act^\ast}\quad \X{configuration}
7272
7373
A *configuration* is a syntactic description of a program state.
74-
Each rule specifies one *step* of execution.
74+
Each rule specifies one *step* of execution, resulting in an altered configuration.
75+
In addition, steps which involve operations related to :ref:`shared memory concurrency <relaxed>` may emit a number of :ref:`actions <syntax-act>` which are used to specify relevant concurrent behaviours (for further details, see :ref:`Events <syntax-evt>` and the :ref:`Relaxed Memory Model <relaxed>`).
7576
As long as there is at most one reduction rule applicable to a given configuration, reduction -- and thereby execution -- is *deterministic*.
7677
WebAssembly has only very few exceptions to this, which are noted explicitly in this specification.
7778

document/core/exec/runtime.rst

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -884,10 +884,10 @@ Finally, the following definition of *evaluation context* and associated structu
884884
885885
.. math::
886886
\begin{array}{rcl}
887-
S; F; E[\instr^\ast] &\stepto& S'; F'; E[{\instr'}^\ast] \\
888-
&& (\iff S; F; \instr^\ast \stepto S'; F'; {\instr'}^\ast) \\
889-
S; F; \FRAME_n\{F'\}~\instr^\ast~\END &\stepto& S'; F; \FRAME_n\{F''\}~\instr'^\ast~\END \\
890-
&& (\iff S; F'; \instr^\ast \stepto S'; F''; {\instr'}^\ast) \\[1ex]
887+
S; F; E[\instr^\ast] &\stepto^{\act^\ast}& S'; F'; E[{\instr'}^\ast] \\
888+
&& (\iff S; F; \instr^\ast \stepto^{\act^\ast} S'; F'; {\instr'}^\ast) \\
889+
S; F; \FRAME_n\{F'\}~\instr^\ast~\END &\stepto^{\act^\ast}& S'; F; \FRAME_n\{F''\}~\instr'^\ast~\END \\
890+
&& (\iff S; F'; \instr^\ast \stepto^{\act^\ast} S'; F''; {\instr'}^\ast) \\[1ex]
891891
S; F; E[\TRAP] &\stepto& S; F; \TRAP
892892
\qquad (\iff E \neq [\_]) \\
893893
S; F; \FRAME_n\{F'\}~\TRAP~\END &\stepto& S; F; \TRAP \\

0 commit comments

Comments
 (0)