C WRC+wmb+acq
Hash=c1a3c5deaec592b3f813dab25346a64f
Prefetch=1:x=F,1:y=W,2:y=F,2:x=T
Com=Rf Rf Fr
Orig=RfeOnceOnce FenceWmbdRWOnceOnce RfeOnceAcquire PodRRAcquireOnce FreOnceOnce
{}
P0(int* x) {
WRITE_ONCE(*x,1);
}
P1(int* x,int* y) {
int r0 = READ_ONCE(*x);
smp_wmb();
WRITE_ONCE(*y,1);
}
P2(int* x,int* y) {
int r0 = smp_load_acquire(y);
int r1 = READ_ONCE(*x);
}
exists (1:r0=1 /\ 2:r0=1 /\ 2:r1=0)
C11 equivalent: c11-prop-src/WRC+wmb+acq.litmus