Linux-libre 5.3.12-gnu
[librecmc/linux-libre.git] / tools / memory-model / litmus-tests / CoRR+poonceonce+Once.litmus
1 C CoRR+poonceonce+Once
2
3 (*
4  * Result: Never
5  *
6  * Test of read-read coherence, that is, whether or not two successive
7  * reads from the same variable are ordered.
8  *)
9
10 {}
11
12 P0(int *x)
13 {
14         WRITE_ONCE(*x, 1);
15 }
16
17 P1(int *x)
18 {
19         int r0;
20         int r1;
21
22         r0 = READ_ONCE(*x);
23         r1 = READ_ONCE(*x);
24 }
25
26 exists (1:r0=1 /\ 1:r1=0)