PPC PPC096-L "Fre Rfe PodRR Fre PodWR Fre Rfi DpAddrdR" {0:r5=L_z; 0:r6=L_x; 1:r6=L_y; 1:r5=L_x; 2:r8=L_z; 2:r7=L_y; 3:r3=L_z; 0:r2=z; 0:r4=x; 1:r2=x; 1:r4=y; 2:r2=y; 2:r6=z; 3:r2=z;} P0 | P1 | P2 | P3 ; LOCK(r5) | li r1,1 | li r1,1 | li r1,1 ; lwz r1,0(r2) | LOCK(r5) | LOCK(r7) | LOCK(r3) ; UNLOCK(r5) | stw r1,0(r2) | stw r1,0(r2) | stw r1,0(r2) ; LOCK(r6) | UNLOCK(r5) | UNLOCK(r7) | UNLOCK(r3) ; lwz r3,0(r4) | LOCK(r6) | lwz r3,0(r2) | ; UNLOCK(r6) | lwz r3,0(r4) | xor r4,r3,r3 | ; | UNLOCK(r6) | LOCK(r8) | ; | | lwzx r5,r4,r6 | ; | | UNLOCK(r8) | ; forall (2:r3=1 /\ (0:r1=1 /\ (0:r3=1 /\ (1:r3=1 /\ (2:r5=1 \/ 2:r5=0) \/ 1:r3=0 /\ (2:r5=1 \/ 2:r5=0)) \/ 0:r3=0 /\ (1:r3=1 /\ (2:r5=1 \/ 2:r5=0) \/ 1:r3=0 /\ 2:r5=1)) \/ 0:r1=0 /\ (0:r3=1 /\ (1:r3=1 /\ (2:r5=1 \/ 2:r5=0) \/ 1:r3=0 /\ (2:r5=1 \/ 2:r5=0)) \/ 0:r3=0 /\ (1:r3=1 /\ (2:r5=1 \/ 2:r5=0) \/ 1:r3=0 /\ (2:r5=1 \/ 2:r5=0)))))