LISA WWC+poacquireonce+poonceonce+Release
"RfeReleaseAcquire PodRWAcquireOnce RfeOnceOnce PodRWOnceOnce WseOnceRelease"
Cycle=PodRWAcquireOnce RfeOnceOnce PodRWOnceOnce WseOnceRelease RfeReleaseAcquire
Relax=WseOnceRelease RfeReleaseAcquire
Safe=PodRWAcquireOnce RfeOnceOnce PodRWOnceOnce
Prefetch=1:x=F,1:y=W,2:y=F,2:x=W
Com=Rf Rf Ws
Orig=RfeReleaseAcquire PodRWAcquireOnce RfeOnceOnce PodRWOnceOnce WseOnceRelease
{
}
P0 | P1 | P2 ;
w[release] x 2 | r[acquire] r0 x | r[once] r0 y ;
| w[once] y 1 | w[once] x 1 ;
Observed
x=2; 2:r0=1; 1:r0=2;
and x=2; 2:r0=1; 1:r0=1;
and x=1; 2:r0=1; 1:r0=1;