LISA IRRWIW+poacquireonces+ReleaseOnce
"RfeReleaseAcquire PodRRAcquireOnce FreOnceOnce RfeOnceAcquire PodRWAcquireOnce WseOnceRelease"
Cycle=PodRWAcquireOnce WseOnceRelease RfeReleaseAcquire PodRRAcquireOnce FreOnceOnce RfeOnceAcquire
Relax=RfeOnceAcquire WseOnceRelease RfeReleaseAcquire
Safe=PodRWAcquireOnce PodRRAcquireOnce FreOnceOnce
Prefetch=1:x=F,1:y=T,3:y=F,3:x=W
Com=Rf Fr Rf Ws
Orig=RfeReleaseAcquire PodRRAcquireOnce FreOnceOnce RfeOnceAcquire PodRWAcquireOnce WseOnceRelease
{
}
P0 | P1 | P2 | P3 ;
w[release] x 2 | r[acquire] r0 x | w[once] y 1 | r[acquire] r0 y ;
| r[once] r1 y | | w[once] x 1 ;
Observed
x=2; 3:r0=1; 1:r1=0; 1:r0=1;
and x=1; 3:r0=1; 1:r1=0; 1:r0=1;