X86 X006+X007-L "Fre PodWW Wse Rfi PodRR Fre Rfi PodRR+Fre PodWR Fre PodWW Wse Rfi PodRR Fre Rfi PodRR" {} P0 | P1 | P2 | P3 ; Lock00: | Lock12: | Lock27: | Lock39: ; MOV %atom,$1 | MOV %atom,$1 | MOV %atom,$1 | MOV %atom,$1 ; XCHG [L_b],%atom | XCHG [L_a],%atom | XCHG [L_d],%atom | XCHG [L_c],%atom ; CMP %atom,$0 | CMP %atom,$0 | CMP %atom,$0 | CMP %atom,$0 ; JE Lock02 | JE Lock14 | JE Lock29 | JE Lock41 ; Lock01: | Lock13: | Lock28: | Lock40: ; MOV %atom,[L_b] | MOV %atom,[L_a] | MOV %atom,[L_d] | MOV %atom,[L_c] ; CMP %atom,$0 | CMP %atom,$0 | CMP %atom,$0 | CMP %atom,$0 ; JE Lock00 | JE Lock12 | JE Lock27 | JE Lock39 ; JMP Lock01 | JMP Lock13 | JMP Lock28 | JMP Lock40 ; Lock02: | Lock14: | Lock29: | Lock41: ; MOV [b],$1 | MOV [a],$1 | MOV [d],$1 | MOV [c],$2 ; MOV [L_b],$0 | MOV [L_a],$0 | MOV [L_d],$0 | MOV [L_c],$0 ; Lock03: | Lock15: | Lock30: | Lock42: ; MOV %atom,$1 | MOV %atom,$1 | MOV %atom,$1 | MOV %atom,$1 ; XCHG [L_z],%atom | XCHG [L_x],%atom | XCHG [L_y],%atom | XCHG [L_c],%atom ; CMP %atom,$0 | CMP %atom,$0 | CMP %atom,$0 | CMP %atom,$0 ; JE Lock05 | JE Lock17 | JE Lock32 | JE Lock44 ; Lock04: | Lock16: | Lock31: | Lock43: ; MOV %atom,[L_z] | MOV %atom,[L_x] | MOV %atom,[L_y] | MOV %atom,[L_c] ; CMP %atom,$0 | CMP %atom,$0 | CMP %atom,$0 | CMP %atom,$0 ; JE Lock03 | JE Lock15 | JE Lock30 | JE Lock42 ; JMP Lock04 | JMP Lock16 | JMP Lock31 | JMP Lock43 ; Lock05: | Lock17: | Lock32: | Lock44: ; MOV [z],$1 | MOV [x],$2 | MOV [y],$1 | MOV EAX,[c] ; MOV [L_z],$0 | MOV [L_x],$0 | MOV [L_y],$0 | MOV [L_c],$0 ; Lock06: | Lock18: | MOV ECX,[d] | Lock45: ; MOV %atom,$1 | MOV %atom,$1 | Lock33: | MOV %atom,$1 ; XCHG [L_c],%atom | XCHG [L_b],%atom | MOV %atom,$1 | XCHG [L_d],%atom ; CMP %atom,$0 | CMP %atom,$0 | XCHG [L_a],%atom | CMP %atom,$0 ; JE Lock08 | JE Lock20 | CMP %atom,$0 | JE Lock47 ; Lock07: | Lock19: | JE Lock35 | Lock46: ; MOV %atom,[L_c] | MOV %atom,[L_b] | Lock34: | MOV %atom,[L_d] ; CMP %atom,$0 | CMP %atom,$0 | MOV %atom,[L_a] | CMP %atom,$0 ; JE Lock06 | JE Lock18 | CMP %atom,$0 | JE Lock45 ; JMP Lock07 | JMP Lock19 | JE Lock33 | JMP Lock46 ; Lock08: | Lock20: | JMP Lock34 | Lock47: ; MOV [c],$1 | MOV ECX,[b] | Lock35: | MOV EBX,[d] ; MOV [L_c],$0 | MOV [L_b],$0 | MOV EDX,[a] | MOV [L_d],$0 ; Lock09: | Lock21: | MOV [L_a],$0 | ; MOV %atom,$1 | MOV %atom,$1 | MOV EAX,[y] | ; XCHG [L_x],%atom | XCHG [L_x],%atom | Lock36: | ; CMP %atom,$0 | CMP %atom,$0 | MOV %atom,$1 | ; JE Lock11 | JE Lock23 | XCHG [L_z],%atom | ; Lock10: | Lock22: | CMP %atom,$0 | ; MOV %atom,[L_x] | MOV %atom,[L_x] | JE Lock38 | ; CMP %atom,$0 | CMP %atom,$0 | Lock37: | ; JE Lock09 | JE Lock21 | MOV %atom,[L_z] | ; JMP Lock10 | JMP Lock22 | CMP %atom,$0 | ; Lock11: | Lock23: | JE Lock36 | ; MOV [x],$1 | MOV EAX,[x] | JMP Lock37 | ; MOV [L_x],$0 | MOV [L_x],$0 | Lock38: | ; | Lock24: | MOV EBX,[z] | ; | MOV %atom,$1 | MOV [L_z],$0 | ; | XCHG [L_y],%atom | | ; | CMP %atom,$0 | | ; | JE Lock26 | | ; | Lock25: | | ; | MOV %atom,[L_y] | | ; | CMP %atom,$0 | | ; | JE Lock24 | | ; | JMP Lock25 | | ; | Lock26: | | ; | MOV EBX,[y] | | ; | MOV [L_y],$0 | | ; forall (2:EAX=1 /\ 2:ECX=1 /\ (1:EAX=2 /\ (1:EBX=1 /\ (1:ECX=1 /\ (2:EBX=1 /\ (2:EDX=1 /\ (3:EAX=2 /\ (3:EBX=1 /\ (c=2 /\ (x=2 \/ x=1) \/ c=1 /\ (x=2 \/ x=1)) \/ 3:EBX=0 /\ (c=2 /\ (x=2 \/ x=1) \/ c=1 /\ (x=2 \/ x=1))) \/ 3:EAX=1 /\ c=1 /\ (3:EBX=1 /\ (x=2 \/ x=1) \/ 3:EBX=0 /\ (x=2 \/ x=1))) \/ 2:EDX=0 /\ (3:EAX=2 /\ (3:EBX=1 /\ (c=2 /\ (x=2 \/ x=1) \/ c=1 /\ (x=2 \/ x=1)) \/ 3:EBX=0 /\ (c=2 /\ (x=2 \/ x=1) \/ c=1 /\ (x=2 \/ x=1))) \/ 3:EAX=1 /\ c=1 /\ (3:EBX=1 /\ (x=2 \/ x=1) \/ 3:EBX=0 /\ (x=2 \/ x=1)))) \/ 2:EBX=0 /\ (2:EDX=1 /\ (3:EAX=2 /\ (3:EBX=1 /\ (c=2 /\ (x=2 \/ x=1) \/ c=1 /\ (x=2 \/ x=1)) \/ 3:EBX=0 /\ c=1 /\ (x=2 \/ x=1)) \/ 3:EAX=1 /\ 3:EBX=1 /\ c=1 /\ (x=2 \/ x=1)) \/ 2:EDX=0 /\ (3:EAX=2 /\ (3:EBX=1 /\ (c=2 /\ (x=2 \/ x=1) \/ c=1 /\ (x=2 \/ x=1)) \/ 3:EBX=0 /\ c=1 /\ (x=2 \/ x=1)) \/ 3:EAX=1 /\ 3:EBX=1 /\ c=1 /\ (x=2 \/ x=1)))) \/ 1:ECX=0 /\ x=1 /\ (2:EBX=1 /\ (2:EDX=1 /\ (3:EAX=2 /\ (3:EBX=1 /\ (c=2 \/ c=1) \/ 3:EBX=0 /\ (c=2 \/ c=1)) \/ 3:EAX=1 /\ c=1 /\ (3:EBX=1 \/ 3:EBX=0)) \/ 2:EDX=0 /\ (3:EAX=2 /\ (3:EBX=1 /\ (c=2 \/ c=1) \/ 3:EBX=0 /\ c=1) \/ 3:EAX=1 /\ 3:EBX=1 /\ c=1)) \/ 2:EBX=0 /\ (2:EDX=1 /\ (3:EAX=2 /\ (3:EBX=1 /\ (c=2 \/ c=1) \/ 3:EBX=0 /\ c=1) \/ 3:EAX=1 /\ 3:EBX=1 /\ c=1) \/ 2:EDX=0 /\ (3:EAX=2 /\ (3:EBX=1 /\ (c=2 \/ c=1) \/ 3:EBX=0 /\ c=1) \/ 3:EAX=1 /\ 3:EBX=1 /\ c=1)))) \/ 1:EBX=0 /\ 2:EDX=1 /\ (1:ECX=1 /\ (2:EBX=1 /\ (3:EAX=2 /\ (3:EBX=1 /\ (c=2 /\ (x=2 \/ x=1) \/ c=1 /\ (x=2 \/ x=1)) \/ 3:EBX=0 /\ (c=2 /\ (x=2 \/ x=1) \/ c=1 /\ (x=2 \/ x=1))) \/ 3:EAX=1 /\ c=1 /\ (3:EBX=1 /\ (x=2 \/ x=1) \/ 3:EBX=0 /\ (x=2 \/ x=1))) \/ 2:EBX=0 /\ x=1 /\ (3:EAX=2 /\ (3:EBX=1 /\ (c=2 \/ c=1) \/ 3:EBX=0 /\ c=1) \/ 3:EAX=1 /\ 3:EBX=1 /\ c=1)) \/ 1:ECX=0 /\ x=1 /\ (2:EBX=1 /\ (3:EAX=2 /\ (3:EBX=1 /\ (c=2 \/ c=1) \/ 3:EBX=0 /\ (c=2 \/ c=1)) \/ 3:EAX=1 /\ c=1 /\ (3:EBX=1 \/ 3:EBX=0)) \/ 2:EBX=0 /\ (3:EAX=2 /\ (3:EBX=1 /\ (c=2 \/ c=1) \/ 3:EBX=0 /\ c=1) \/ 3:EAX=1 /\ 3:EBX=1 /\ c=1)))) \/ 1:EAX=1 /\ x=1 /\ (1:EBX=1 /\ (1:ECX=1 /\ (2:EBX=1 /\ (2:EDX=1 /\ (3:EAX=2 /\ (3:EBX=1 /\ (c=2 \/ c=1) \/ 3:EBX=0 /\ (c=2 \/ c=1)) \/ 3:EAX=1 /\ c=1 /\ (3:EBX=1 \/ 3:EBX=0)) \/ 2:EDX=0 /\ (3:EAX=2 /\ (3:EBX=1 /\ (c=2 \/ c=1) \/ 3:EBX=0 /\ (c=2 \/ c=1)) \/ 3:EAX=1 /\ c=1 /\ (3:EBX=1 \/ 3:EBX=0))) \/ 2:EBX=0 /\ (2:EDX=1 /\ (3:EAX=2 /\ (3:EBX=1 /\ (c=2 \/ c=1) \/ 3:EBX=0 /\ c=1) \/ 3:EAX=1 /\ 3:EBX=1 /\ c=1) \/ 2:EDX=0 /\ (3:EAX=2 /\ (3:EBX=1 /\ (c=2 \/ c=1) \/ 3:EBX=0 /\ c=1) \/ 3:EAX=1 /\ 3:EBX=1 /\ c=1))) \/ 1:ECX=0 /\ (2:EBX=1 /\ (2:EDX=1 /\ (3:EAX=2 /\ (3:EBX=1 /\ (c=2 \/ c=1) \/ 3:EBX=0 /\ (c=2 \/ c=1)) \/ 3:EAX=1 /\ c=1 /\ (3:EBX=1 \/ 3:EBX=0)) \/ 2:EDX=0 /\ (3:EAX=2 /\ (3:EBX=1 /\ (c=2 \/ c=1) \/ 3:EBX=0 /\ c=1) \/ 3:EAX=1 /\ 3:EBX=1 /\ c=1)) \/ 2:EBX=0 /\ (2:EDX=1 /\ (3:EAX=2 /\ (3:EBX=1 /\ (c=2 \/ c=1) \/ 3:EBX=0 /\ c=1) \/ 3:EAX=1 /\ 3:EBX=1 /\ c=1) \/ 2:EDX=0 /\ (3:EAX=2 /\ (3:EBX=1 /\ (c=2 \/ c=1) \/ 3:EBX=0 /\ c=1) \/ 3:EAX=1 /\ 3:EBX=1 /\ c=1)))) \/ 1:EBX=0 /\ 2:EBX=1 /\ 2:EDX=1 /\ (1:ECX=1 /\ (3:EAX=2 /\ (3:EBX=1 /\ (c=2 \/ c=1) \/ 3:EBX=0 /\ (c=2 \/ c=1)) \/ 3:EAX=1 /\ c=1 /\ (3:EBX=1 \/ 3:EBX=0)) \/ 1:ECX=0 /\ (3:EAX=2 /\ (3:EBX=1 /\ (c=2 \/ c=1) \/ 3:EBX=0 /\ (c=2 \/ c=1)) \/ 3:EAX=1 /\ c=1 /\ (3:EBX=1 \/ 3:EBX=0))))))