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