X86 X041+X042-L "Fre PodWW Wse PodWW Rfi PodRR+Fre PodWR Fre PodWW Wse PodWW Rfi PodRR" {} P0 | P1 | P2 ; Lock00: | Lock12: | Lock24: ; MOV %atom,$1 | MOV %atom,$1 | MOV %atom,$1 ; XCHG [L_z],%atom | XCHG [L_x],%atom | XCHG [L_c],%atom ; CMP %atom,$0 | CMP %atom,$0 | CMP %atom,$0 ; JE Lock02 | JE Lock14 | JE Lock26 ; Lock01: | Lock13: | Lock25: ; MOV %atom,[L_z] | MOV %atom,[L_x] | MOV %atom,[L_c] ; CMP %atom,$0 | CMP %atom,$0 | CMP %atom,$0 ; JE Lock00 | JE Lock12 | JE Lock24 ; JMP Lock01 | JMP Lock13 | JMP Lock25 ; Lock02: | Lock14: | Lock26: ; MOV [z],$1 | MOV [x],$2 | MOV [c],$2 ; MOV [L_z],$0 | MOV [L_x],$0 | MOV [L_c],$0 ; Lock03: | MOV [y],$1 | MOV [d],$1 ; MOV %atom,$1 | MOV EAX,[y] | MOV EAX,[d] ; XCHG [L_b],%atom | Lock15: | Lock27: ; CMP %atom,$0 | MOV %atom,$1 | MOV %atom,$1 ; JE Lock05 | XCHG [L_z],%atom | XCHG [L_a],%atom ; Lock04: | CMP %atom,$0 | CMP %atom,$0 ; MOV %atom,[L_b] | JE Lock17 | JE Lock29 ; CMP %atom,$0 | Lock16: | Lock28: ; JE Lock03 | MOV %atom,[L_z] | MOV %atom,[L_a] ; JMP Lock04 | CMP %atom,$0 | CMP %atom,$0 ; Lock05: | JE Lock15 | JE Lock27 ; MOV [b],$1 | JMP Lock16 | JMP Lock28 ; MOV [L_b],$0 | Lock17: | Lock29: ; Lock06: | MOV EBX,[z] | MOV EBX,[a] ; MOV %atom,$1 | MOV [L_z],$0 | MOV [L_a],$0 ; XCHG [L_x],%atom | Lock18: | ; CMP %atom,$0 | MOV %atom,$1 | ; JE Lock08 | XCHG [L_a],%atom | ; Lock07: | CMP %atom,$0 | ; MOV %atom,[L_x] | JE Lock20 | ; CMP %atom,$0 | Lock19: | ; JE Lock06 | MOV %atom,[L_a] | ; JMP Lock07 | CMP %atom,$0 | ; Lock08: | JE Lock18 | ; MOV [x],$1 | JMP Lock19 | ; MOV [L_x],$0 | Lock20: | ; Lock09: | MOV [a],$1 | ; MOV %atom,$1 | MOV [L_a],$0 | ; XCHG [L_c],%atom | Lock21: | ; CMP %atom,$0 | MOV %atom,$1 | ; JE Lock11 | XCHG [L_b],%atom | ; Lock10: | CMP %atom,$0 | ; MOV %atom,[L_c] | JE Lock23 | ; CMP %atom,$0 | Lock22: | ; JE Lock09 | MOV %atom,[L_b] | ; JMP Lock10 | CMP %atom,$0 | ; Lock11: | JE Lock21 | ; MOV [c],$1 | JMP Lock22 | ; MOV [L_c],$0 | Lock23: | ; | MOV ECX,[b] | ; | MOV [L_b],$0 | ; forall (1:EAX=1 /\ 2:EAX=1 /\ (1:EBX=1 /\ (1:ECX=1 /\ (2:EBX=1 /\ (c=2 /\ (x=2 \/ x=1) \/ c=1 /\ (x=2 \/ x=1)) \/ 2:EBX=0 /\ (c=2 /\ (x=2 \/ x=1) \/ c=1 /\ (x=2 \/ x=1))) \/ 1:ECX=0 /\ x=1 /\ (2:EBX=1 /\ (c=2 \/ c=1) \/ 2:EBX=0 /\ c=1)) \/ 1:EBX=0 /\ x=1 /\ (1:ECX=1 /\ (2:EBX=1 /\ (c=2 \/ c=1) \/ 2:EBX=0 /\ (c=2 \/ c=1)) \/ 1:ECX=0 /\ (2:EBX=1 /\ (c=2 \/ c=1) \/ 2:EBX=0 /\ c=1))))