PPC PPOCXXA "SyncdWW Rfe DpCtrldW PosWR Rmw PosWR DpAddrdR Fre" Com=Rf Fr { ok=1; 0:r2=x; 0:r4=y; 1:r2=y; 1:r4=z; 1:r10=x; 1:r12=ok; } P0 | P1 ; li r1,1 | lwz r1,0(r2) ; stw r1,0(r2) | cmpw r1,r1 ; sync | beq LC00 ; li r3,1 | LC00: ; stw r3,0(r4) | li r3,1 ; | stw r3,0(r4) ; | lwarx r5,r0,r4 ; | li r6,2 ; | stwcx. r6,r0,r4 ; | bne Fail1 ; | lwz r7,0(r4) ; | xor r8,r7,r7 ; | lwzx r9,r8,r10 ; | b Exit1 ; | Fail1: ; | li r11,0 ; | stw r11,0(r12) ; | Exit1: ; exists (ok=1 /\ z=2 /\ 1:r1=1 /\ 1:r9=0)