LISA Z6.2+pooncerelease+ctrlonceonce+poacquireonce
"PodWWOnceRelease RfeReleaseOnce DpCtrldWOnceOnce RfeOnceAcquire PodRWAcquireOnce WseOnceOnce"
Cycle=PodRWAcquireOnce WseOnceOnce PodWWOnceRelease RfeReleaseOnce DpCtrldWOnceOnce RfeOnceAcquire
Relax=RfeOnceAcquire RfeReleaseOnce
Safe=PodRWAcquireOnce WseOnceOnce DpCtrldWOnceOnce PodWWOnceRelease
Prefetch=0:x=F,0:y=W,1:y=F,1:z=W,2:z=F,2:x=W
Com=Rf Rf Ws
Orig=PodWWOnceRelease RfeReleaseOnce DpCtrldWOnceOnce RfeOnceAcquire PodRWAcquireOnce WseOnceOnce
{
}
P0 | P1 | P2 ;
w[once] x 2 | r[once] r0 y | r[acquire] r0 z ;
w[release] y 1 | mov r1 (eq r0 0) | w[once] x 1 ;
| b[] r1 LC00 | ;
| LC00: | ;
| w[once] z 1 | ;
Observed
x=2; 2:r0=1; 1:r0=1;