Skip to content

Commit f0ca09c

Browse files
committed
add pred timestamp to events
1 parent 68764dc commit f0ca09c

2 files changed

Lines changed: 9 additions & 9 deletions

File tree

document/core/exec/relaxed.rst

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,7 @@ Preliminary Definitions
2121

2222
.. math::
2323
\begin{array}{rcl}
24-
\timeevt(\act^\ast~\AT~\time) & = & \time \\
24+
\timeevt(\act^\ast~\AT~\time_p~\time) & = & \time \\
2525
\\
2626
\locact(\ARD_{\ord}~\loc~\byte^\ast~\NOTEARS^?) & = & \loc \\
2727
\locact(\AWR_{\ord}~\loc~\byte^\ast~\NOTEARS^?) & = & \loc \\
@@ -54,8 +54,8 @@ Preliminary Definitions
5454
\tearfreeact(\AWR_{\ord}~\loc~\byte^\ast) & = & \bot \qquad \iff \ord = \UNORD \vee \ord = \INIT \\
5555
\tearfreeact(\act) & = & \top \qquad \otherwise \\
5656
\\
57-
\X{func}_{\reg}(\act_1^\ast~\act~\act_2^\ast~\AT~\time) & = & \X{func}(\act) \qquad \iff \locact(\act) = \reg[\u32] \\
58-
\X{func}_{\reg}(\act_1^\ast~\act~\act_2^\ast~\AT~\time, \act_3^\ast~\act'~\act_4^\ast~\AT~\time') & = & \X{func}(\act.\act') \qquad \iff \locact(\act) = \locact(\act') = \reg[\u32] \\
57+
\X{func}_{\reg}(\act_1^\ast~\act~\act_2^\ast~\AT~\time_p~\time) & = & \X{func}(\act) \qquad \iff \locact(\act) = \reg[\u32] \\
58+
\X{func}_{\reg}(\act_1^\ast~\act~\act_2^\ast~\AT~\time_p~\time, \act_3^\ast~\act'~\act_4^\ast~\AT~\time'_p~\time') & = & \X{func}(\act.\act') \qquad \iff \locact(\act) = \locact(\act') = \reg[\u32] \\
5959
\end{array}
6060
6161
.. todo:: add loc for wait/woken/timeout/notify

document/core/exec/runtime.rst

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -676,12 +676,12 @@ Events
676676
The interaction of a computation with the :ref:`store <syntax-store>` is described through *events*.
677677
An event is a (possibly empty) set of *actions*, such as reads and writes,
678678
that are atomically performed by the execution of an individual :ref:`instruction <syntax-instr>`.
679-
Each event is annotated with a :ref:`time stamp <syntax-time>` that uniquely identifies it.
679+
Each event is annotated with two :ref:`time stamps <syntax-time>`: the first records the time stamp of the event's immediate predecessor while the second uniquely identifies the event.
680680

681681
.. math::
682682
\begin{array}{llcl}
683683
\production{(event)} & \evt &::=&
684-
\act^\ast~\AT~\time \\
684+
\act^\ast~\AT~\time~\time \\
685685
\production{(action)} & \act &::=&
686686
\ARD_{\ord}~\loc~\storeval~\NOTEARS^? \\&&|&
687687
\AWR_{\ord}~\loc~\storeval~\NOTEARS^? \\&&|&
@@ -756,8 +756,8 @@ Relations between time stamps are lifted to relations between events.
756756

757757
.. math::
758758
\begin{array}{lclclcl}
759-
\act_1^\ast~\AT~\time_1 & \prectot & \act_2^\ast~\AT~\time_2 &=& \time_1 & \prectot & \time_2 \\
760-
\act_1^\ast~\AT~\time_1 & \prechb & \act_2^\ast~\AT~\time_2 &=& \time_1 & \prechb & \time_2 \\
759+
\act_1^\ast~\AT~\time_p~\time_1 & \prectot & \act_2^\ast~\AT~\time'_p~\time_2 &=& \time_1 & \prectot & \time_2 \\
760+
\act_1^\ast~\AT~\time_p~\time_1 & \prechb & \act_2^\ast~\AT~\time'_p~\time_2 &=& \time_1 & \prechb & \time_2 \\
761761
\end{array}
762762
763763
.. todo:: define notational shorthands over actions and events (or better put that in relaxed.rst?)
@@ -824,7 +824,7 @@ The following structural rule for global reduction delegates to local reduction
824824
.. math::
825825
\begin{array}{@{}c@{}}
826826
S; P_1^\ast~(F; \instr^\ast \AT h)~P_2^\ast
827-
\qquad \stepto^{\act^\ast~\AT~h'} \qquad
827+
\qquad \stepto^{\act^\ast~\AT~h~h'} \qquad
828828
S'; P_1^\ast~(F'; {\instr'}^\ast \AT h')~P_2^\ast \\
829829
\qquad
830830
\begin{array}[t]{@{}r@{~}l@{}}
@@ -839,7 +839,7 @@ The following rule for global reduction describes the creation of a new thread b
839839
.. math::
840840
\begin{array}{@{}c@{}}
841841
S; P_1^\ast~(F; \instr^\ast \AT h)~P_2^\ast
842-
\qquad \stepto^{\epsilon~\AT~h'} \qquad
842+
\qquad \stepto^{\epsilon~\AT~h~h'} \qquad
843843
S'; P_1^\ast~(F'; {\instr'}^\ast \AT h')~P_2^\ast~(\epsilon; (\HOSTE~[\epsilon]) \AT h'') \\
844844
\qquad
845845
\begin{array}[t]{@{}r@{~}l@{}}

0 commit comments

Comments
 (0)