* fixes to the x86 instruction flags tracking attributes:

* AAA and AAS also read flags (AF)
  * CMC reads and writes flags (it inverts CF)
  * CMPSx and SCASx write flags
  * CMPSx, SCASx, LODSx, STOSx, MOVSx read the direction flag
  * NOT doesn't affect flags
  * REP isn't affected by and doesn't affect flags
  * REPE/REPNE/REPZ/REPNZ/REPC/REPNC don't write flags, only read them
  * ROL and ROR don't read flags
  * SAL doesn't read flags
  * SHLD and SHRD don't read flags

git-svn-id: trunk@35849 -
This commit is contained in:
nickysn 2017-04-19 15:42:50 +00:00
parent 7ee0c07b8d
commit 189e49998c
5 changed files with 121 additions and 118 deletions

View File

@ -1,10 +1,10 @@
{ don't edit, this file is generated from x86ins.dat } { don't edit, this file is generated from x86ins.dat }
( (
(Ch: (Ch_None, Ch_None, Ch_None)), (Ch: (Ch_None, Ch_None, Ch_None)),
(Ch: (Ch_MEAX, Ch_RWFlags, Ch_None)),
(Ch: (Ch_MEAX, Ch_WFlags, Ch_None)), (Ch: (Ch_MEAX, Ch_WFlags, Ch_None)),
(Ch: (Ch_MEAX, Ch_WFlags, Ch_None)), (Ch: (Ch_MEAX, Ch_WFlags, Ch_None)),
(Ch: (Ch_MEAX, Ch_WFlags, Ch_None)), (Ch: (Ch_MEAX, Ch_RWFlags, Ch_None)),
(Ch: (Ch_MEAX, Ch_WFlags, Ch_None)),
(Ch: (Ch_Mop2, Ch_Rop1, Ch_RWFlags)), (Ch: (Ch_Mop2, Ch_Rop1, Ch_RWFlags)),
(Ch: (Ch_Mop2, Ch_Rop1, Ch_WFlags)), (Ch: (Ch_Mop2, Ch_Rop1, Ch_WFlags)),
(Ch: (Ch_Mop2, Ch_Rop1, Ch_WFlags)), (Ch: (Ch_Mop2, Ch_Rop1, Ch_WFlags)),
@ -24,11 +24,11 @@
(Ch: (Ch_CDirFlag, Ch_None, Ch_None)), (Ch: (Ch_CDirFlag, Ch_None, Ch_None)),
(Ch: (Ch_WFlags, Ch_None, Ch_None)), (Ch: (Ch_WFlags, Ch_None, Ch_None)),
(Ch: (Ch_None, Ch_None, Ch_None)), (Ch: (Ch_None, Ch_None, Ch_None)),
(Ch: (Ch_WFlags, Ch_None, Ch_None)), (Ch: (Ch_RWFlags, Ch_None, Ch_None)),
(Ch: (Ch_ROp1, Ch_ROp2, Ch_WFlags)), (Ch: (Ch_ROp1, Ch_ROp2, Ch_WFlags)),
(Ch: (Ch_All, Ch_None, Ch_None)), (Ch: (Ch_All, Ch_WFlags, Ch_RDirFlag)),
(Ch: (Ch_All, Ch_None, Ch_None)), (Ch: (Ch_All, Ch_WFlags, Ch_RDirFlag)),
(Ch: (Ch_All, Ch_None, Ch_None)), (Ch: (Ch_All, Ch_WFlags, Ch_RDirFlag)),
(Ch: (Ch_All, Ch_None, Ch_None)), (Ch: (Ch_All, Ch_None, Ch_None)),
(Ch: (Ch_All, Ch_None, Ch_None)), (Ch: (Ch_All, Ch_None, Ch_None)),
(Ch: (Ch_All, Ch_None, Ch_None)), (Ch: (Ch_All, Ch_None, Ch_None)),
@ -181,9 +181,9 @@
(Ch: (Ch_All, Ch_None, Ch_None)), (Ch: (Ch_All, Ch_None, Ch_None)),
(Ch: (Ch_All, Ch_None, Ch_None)), (Ch: (Ch_All, Ch_None, Ch_None)),
(Ch: (Ch_None, Ch_None, Ch_None)), (Ch: (Ch_None, Ch_None, Ch_None)),
(Ch: (Ch_WEAX, Ch_RWESI, Ch_None)), (Ch: (Ch_WEAX, Ch_RWESI, Ch_RDirFlag)),
(Ch: (Ch_WEAX, Ch_RWESI, Ch_None)), (Ch: (Ch_WEAX, Ch_RWESI, Ch_RDirFlag)),
(Ch: (Ch_WEAX, Ch_RWESI, Ch_None)), (Ch: (Ch_WEAX, Ch_RWESI, Ch_RDirFlag)),
(Ch: (Ch_RWECX, Ch_None, Ch_None)), (Ch: (Ch_RWECX, Ch_None, Ch_None)),
(Ch: (Ch_RWECX, Ch_RFlags, Ch_None)), (Ch: (Ch_RWECX, Ch_RFlags, Ch_None)),
(Ch: (Ch_RWECX, Ch_RFlags, Ch_None)), (Ch: (Ch_RWECX, Ch_RFlags, Ch_None)),
@ -196,16 +196,16 @@
(Ch: (Ch_Wop2, Ch_Rop1, Ch_None)), (Ch: (Ch_Wop2, Ch_Rop1, Ch_None)),
(Ch: (Ch_Rop1, Ch_Wop2, Ch_None)), (Ch: (Ch_Rop1, Ch_Wop2, Ch_None)),
(Ch: (Ch_Rop1, Ch_Wop2, Ch_None)), (Ch: (Ch_Rop1, Ch_Wop2, Ch_None)),
(Ch: (Ch_All, Ch_None, Ch_None)), (Ch: (Ch_All, Ch_RDirFlag, Ch_None)),
(Ch: (Ch_All, Ch_None, Ch_None)), (Ch: (Ch_All, Ch_RDirFlag, Ch_None)),
(Ch: (Ch_All, Ch_None, Ch_None)), (Ch: (Ch_All, Ch_RDirFlag, Ch_None)),
(Ch: (Ch_Wop2, Ch_Rop1, Ch_None)), (Ch: (Ch_Wop2, Ch_Rop1, Ch_None)),
(Ch: (Ch_Wop2, Ch_Rop1, Ch_None)), (Ch: (Ch_Wop2, Ch_Rop1, Ch_None)),
(Ch: (Ch_RWEAX, Ch_WEDX, Ch_WFlags)), (Ch: (Ch_RWEAX, Ch_WEDX, Ch_WFlags)),
(Ch: (Ch_None, Ch_None, Ch_None)), (Ch: (Ch_None, Ch_None, Ch_None)),
(Ch: (Ch_Mop1, Ch_None, Ch_None)), (Ch: (Ch_Mop1, Ch_None, Ch_None)),
(Ch: (Ch_None, Ch_None, Ch_None)), (Ch: (Ch_None, Ch_None, Ch_None)),
(Ch: (Ch_Mop1, Ch_WFlags, Ch_None)), (Ch: (Ch_Mop1, Ch_None, Ch_None)),
(Ch: (Ch_Mop2, Ch_Rop1, Ch_WFlags)), (Ch: (Ch_Mop2, Ch_Rop1, Ch_WFlags)),
(Ch: (Ch_Rop1, Ch_Rop2, Ch_None)), (Ch: (Ch_Rop1, Ch_Rop2, Ch_None)),
(Ch: (Ch_All, Ch_None, Ch_None)), (Ch: (Ch_All, Ch_None, Ch_None)),
@ -309,27 +309,27 @@
(Ch: (Ch_WEAX, Ch_WEDX, Ch_None)), (Ch: (Ch_WEAX, Ch_WEDX, Ch_None)),
(Ch: (Ch_WEAX, Ch_WEDX, Ch_None)), (Ch: (Ch_WEAX, Ch_WEDX, Ch_None)),
(Ch: (Ch_WEAX, Ch_WEDX, Ch_None)), (Ch: (Ch_WEAX, Ch_WEDX, Ch_None)),
(Ch: (Ch_RWECX, Ch_RWFlags, Ch_None)), (Ch: (Ch_RWECX, Ch_None, Ch_None)),
(Ch: (Ch_RWECX, Ch_RWFlags, Ch_None)), (Ch: (Ch_RWECX, Ch_RFlags, Ch_None)),
(Ch: (Ch_RWECX, Ch_RWFlags, Ch_None)), (Ch: (Ch_RWECX, Ch_RFlags, Ch_None)),
(Ch: (Ch_RWECX, Ch_RWFLAGS, Ch_None)), (Ch: (Ch_RWECX, Ch_RFLAGS, Ch_None)),
(Ch: (Ch_RWECX, Ch_RWFLAGS, Ch_None)), (Ch: (Ch_RWECX, Ch_RFLAGS, Ch_None)),
(Ch: (Ch_All, Ch_None, Ch_None)), (Ch: (Ch_All, Ch_None, Ch_None)),
(Ch: (Ch_All, Ch_None, Ch_None)), (Ch: (Ch_All, Ch_None, Ch_None)),
(Ch: (Ch_All, Ch_None, Ch_None)), (Ch: (Ch_All, Ch_None, Ch_None)),
(Ch: (Ch_Mop2, Ch_Rop1, Ch_RWFlags)), (Ch: (Ch_Mop2, Ch_Rop1, Ch_WFlags)),
(Ch: (Ch_Mop2, Ch_Rop1, Ch_RWFlags)), (Ch: (Ch_Mop2, Ch_Rop1, Ch_WFlags)),
(Ch: (Ch_All, Ch_None, Ch_None)), (Ch: (Ch_All, Ch_None, Ch_None)),
(Ch: (Ch_All, Ch_None, Ch_None)), (Ch: (Ch_All, Ch_None, Ch_None)),
(Ch: (Ch_All, Ch_None, Ch_None)), (Ch: (Ch_All, Ch_None, Ch_None)),
(Ch: (Ch_WFlags, Ch_REAX, Ch_None)), (Ch: (Ch_WFlags, Ch_REAX, Ch_None)),
(Ch: (Ch_Mop2, Ch_Rop1, Ch_RWFlags)), (Ch: (Ch_Mop2, Ch_Rop1, Ch_WFlags)),
(Ch: (Ch_WEAX, Ch_RFLAGS, Ch_None)), (Ch: (Ch_WEAX, Ch_RFLAGS, Ch_None)),
(Ch: (Ch_Mop2, Ch_Rop1, Ch_WFlags)), (Ch: (Ch_Mop2, Ch_Rop1, Ch_WFlags)),
(Ch: (Ch_Mop2, Ch_Rop1, Ch_RWFlags)), (Ch: (Ch_Mop2, Ch_Rop1, Ch_RWFlags)),
(Ch: (Ch_All, Ch_None, Ch_None)), (Ch: (Ch_All, Ch_WFlags, Ch_RDirFlag)),
(Ch: (Ch_All, Ch_None, Ch_None)), (Ch: (Ch_All, Ch_WFlags, Ch_RDirFlag)),
(Ch: (Ch_All, Ch_None, Ch_None)), (Ch: (Ch_All, Ch_WFlags, Ch_RDirFlag)),
(Ch: (Ch_None, Ch_None, Ch_None)), (Ch: (Ch_None, Ch_None, Ch_None)),
(Ch: (Ch_None, Ch_None, Ch_None)), (Ch: (Ch_None, Ch_None, Ch_None)),
(Ch: (Ch_None, Ch_None, Ch_None)), (Ch: (Ch_None, Ch_None, Ch_None)),
@ -338,9 +338,9 @@
(Ch: (Ch_None, Ch_None, Ch_None)), (Ch: (Ch_None, Ch_None, Ch_None)),
(Ch: (Ch_Wop1, Ch_None, Ch_None)), (Ch: (Ch_Wop1, Ch_None, Ch_None)),
(Ch: (Ch_Mop2, Ch_Rop1, Ch_WFlags)), (Ch: (Ch_Mop2, Ch_Rop1, Ch_WFlags)),
(Ch: (Ch_MOp3, Ch_RWFlags, Ch_Rop2)), (Ch: (Ch_MOp3, Ch_WFlags, Ch_Rop2)),
(Ch: (Ch_Mop2, Ch_Rop1, Ch_WFlags)), (Ch: (Ch_Mop2, Ch_Rop1, Ch_WFlags)),
(Ch: (Ch_MOp3, Ch_RWFlags, Ch_Rop2)), (Ch: (Ch_MOp3, Ch_WFlags, Ch_Rop2)),
(Ch: (Ch_Wop1, Ch_None, Ch_None)), (Ch: (Ch_Wop1, Ch_None, Ch_None)),
(Ch: (Ch_Wop1, Ch_None, Ch_None)), (Ch: (Ch_Wop1, Ch_None, Ch_None)),
(Ch: (Ch_All, Ch_None, Ch_None)), (Ch: (Ch_All, Ch_None, Ch_None)),

View File

@ -1,10 +1,10 @@
{ don't edit, this file is generated from x86ins.dat } { don't edit, this file is generated from x86ins.dat }
( (
(Ch: (Ch_None, Ch_None, Ch_None)), (Ch: (Ch_None, Ch_None, Ch_None)),
(Ch: (Ch_MEAX, Ch_RWFlags, Ch_None)),
(Ch: (Ch_MEAX, Ch_WFlags, Ch_None)), (Ch: (Ch_MEAX, Ch_WFlags, Ch_None)),
(Ch: (Ch_MEAX, Ch_WFlags, Ch_None)), (Ch: (Ch_MEAX, Ch_WFlags, Ch_None)),
(Ch: (Ch_MEAX, Ch_WFlags, Ch_None)), (Ch: (Ch_MEAX, Ch_RWFlags, Ch_None)),
(Ch: (Ch_MEAX, Ch_WFlags, Ch_None)),
(Ch: (Ch_Mop2, Ch_Rop1, Ch_RWFlags)), (Ch: (Ch_Mop2, Ch_Rop1, Ch_RWFlags)),
(Ch: (Ch_Mop2, Ch_Rop1, Ch_WFlags)), (Ch: (Ch_Mop2, Ch_Rop1, Ch_WFlags)),
(Ch: (Ch_Mop2, Ch_Rop1, Ch_WFlags)), (Ch: (Ch_Mop2, Ch_Rop1, Ch_WFlags)),
@ -24,11 +24,11 @@
(Ch: (Ch_CDirFlag, Ch_None, Ch_None)), (Ch: (Ch_CDirFlag, Ch_None, Ch_None)),
(Ch: (Ch_WFlags, Ch_None, Ch_None)), (Ch: (Ch_WFlags, Ch_None, Ch_None)),
(Ch: (Ch_None, Ch_None, Ch_None)), (Ch: (Ch_None, Ch_None, Ch_None)),
(Ch: (Ch_WFlags, Ch_None, Ch_None)), (Ch: (Ch_RWFlags, Ch_None, Ch_None)),
(Ch: (Ch_ROp1, Ch_ROp2, Ch_WFlags)), (Ch: (Ch_ROp1, Ch_ROp2, Ch_WFlags)),
(Ch: (Ch_All, Ch_None, Ch_None)), (Ch: (Ch_All, Ch_WFlags, Ch_RDirFlag)),
(Ch: (Ch_All, Ch_None, Ch_None)), (Ch: (Ch_All, Ch_WFlags, Ch_RDirFlag)),
(Ch: (Ch_All, Ch_None, Ch_None)), (Ch: (Ch_All, Ch_WFlags, Ch_RDirFlag)),
(Ch: (Ch_All, Ch_None, Ch_None)), (Ch: (Ch_All, Ch_None, Ch_None)),
(Ch: (Ch_All, Ch_None, Ch_None)), (Ch: (Ch_All, Ch_None, Ch_None)),
(Ch: (Ch_All, Ch_None, Ch_None)), (Ch: (Ch_All, Ch_None, Ch_None)),
@ -181,9 +181,9 @@
(Ch: (Ch_All, Ch_None, Ch_None)), (Ch: (Ch_All, Ch_None, Ch_None)),
(Ch: (Ch_All, Ch_None, Ch_None)), (Ch: (Ch_All, Ch_None, Ch_None)),
(Ch: (Ch_None, Ch_None, Ch_None)), (Ch: (Ch_None, Ch_None, Ch_None)),
(Ch: (Ch_WEAX, Ch_RWESI, Ch_None)), (Ch: (Ch_WEAX, Ch_RWESI, Ch_RDirFlag)),
(Ch: (Ch_WEAX, Ch_RWESI, Ch_None)), (Ch: (Ch_WEAX, Ch_RWESI, Ch_RDirFlag)),
(Ch: (Ch_WEAX, Ch_RWESI, Ch_None)), (Ch: (Ch_WEAX, Ch_RWESI, Ch_RDirFlag)),
(Ch: (Ch_RWECX, Ch_None, Ch_None)), (Ch: (Ch_RWECX, Ch_None, Ch_None)),
(Ch: (Ch_RWECX, Ch_RFlags, Ch_None)), (Ch: (Ch_RWECX, Ch_RFlags, Ch_None)),
(Ch: (Ch_RWECX, Ch_RFlags, Ch_None)), (Ch: (Ch_RWECX, Ch_RFlags, Ch_None)),
@ -196,16 +196,16 @@
(Ch: (Ch_Wop2, Ch_Rop1, Ch_None)), (Ch: (Ch_Wop2, Ch_Rop1, Ch_None)),
(Ch: (Ch_Rop1, Ch_Wop2, Ch_None)), (Ch: (Ch_Rop1, Ch_Wop2, Ch_None)),
(Ch: (Ch_Rop1, Ch_Wop2, Ch_None)), (Ch: (Ch_Rop1, Ch_Wop2, Ch_None)),
(Ch: (Ch_All, Ch_None, Ch_None)), (Ch: (Ch_All, Ch_RDirFlag, Ch_None)),
(Ch: (Ch_All, Ch_None, Ch_None)), (Ch: (Ch_All, Ch_RDirFlag, Ch_None)),
(Ch: (Ch_All, Ch_None, Ch_None)), (Ch: (Ch_All, Ch_RDirFlag, Ch_None)),
(Ch: (Ch_Wop2, Ch_Rop1, Ch_None)), (Ch: (Ch_Wop2, Ch_Rop1, Ch_None)),
(Ch: (Ch_Wop2, Ch_Rop1, Ch_None)), (Ch: (Ch_Wop2, Ch_Rop1, Ch_None)),
(Ch: (Ch_RWEAX, Ch_WEDX, Ch_WFlags)), (Ch: (Ch_RWEAX, Ch_WEDX, Ch_WFlags)),
(Ch: (Ch_None, Ch_None, Ch_None)), (Ch: (Ch_None, Ch_None, Ch_None)),
(Ch: (Ch_Mop1, Ch_None, Ch_None)), (Ch: (Ch_Mop1, Ch_None, Ch_None)),
(Ch: (Ch_None, Ch_None, Ch_None)), (Ch: (Ch_None, Ch_None, Ch_None)),
(Ch: (Ch_Mop1, Ch_WFlags, Ch_None)), (Ch: (Ch_Mop1, Ch_None, Ch_None)),
(Ch: (Ch_Mop2, Ch_Rop1, Ch_WFlags)), (Ch: (Ch_Mop2, Ch_Rop1, Ch_WFlags)),
(Ch: (Ch_Rop1, Ch_Rop2, Ch_None)), (Ch: (Ch_Rop1, Ch_Rop2, Ch_None)),
(Ch: (Ch_All, Ch_None, Ch_None)), (Ch: (Ch_All, Ch_None, Ch_None)),
@ -309,27 +309,27 @@
(Ch: (Ch_WEAX, Ch_WEDX, Ch_None)), (Ch: (Ch_WEAX, Ch_WEDX, Ch_None)),
(Ch: (Ch_WEAX, Ch_WEDX, Ch_None)), (Ch: (Ch_WEAX, Ch_WEDX, Ch_None)),
(Ch: (Ch_WEAX, Ch_WEDX, Ch_None)), (Ch: (Ch_WEAX, Ch_WEDX, Ch_None)),
(Ch: (Ch_RWECX, Ch_RWFlags, Ch_None)), (Ch: (Ch_RWECX, Ch_None, Ch_None)),
(Ch: (Ch_RWECX, Ch_RWFlags, Ch_None)), (Ch: (Ch_RWECX, Ch_RFlags, Ch_None)),
(Ch: (Ch_RWECX, Ch_RWFlags, Ch_None)), (Ch: (Ch_RWECX, Ch_RFlags, Ch_None)),
(Ch: (Ch_RWECX, Ch_RWFLAGS, Ch_None)), (Ch: (Ch_RWECX, Ch_RFLAGS, Ch_None)),
(Ch: (Ch_RWECX, Ch_RWFLAGS, Ch_None)), (Ch: (Ch_RWECX, Ch_RFLAGS, Ch_None)),
(Ch: (Ch_All, Ch_None, Ch_None)), (Ch: (Ch_All, Ch_None, Ch_None)),
(Ch: (Ch_All, Ch_None, Ch_None)), (Ch: (Ch_All, Ch_None, Ch_None)),
(Ch: (Ch_All, Ch_None, Ch_None)), (Ch: (Ch_All, Ch_None, Ch_None)),
(Ch: (Ch_Mop2, Ch_Rop1, Ch_RWFlags)), (Ch: (Ch_Mop2, Ch_Rop1, Ch_WFlags)),
(Ch: (Ch_Mop2, Ch_Rop1, Ch_RWFlags)), (Ch: (Ch_Mop2, Ch_Rop1, Ch_WFlags)),
(Ch: (Ch_All, Ch_None, Ch_None)), (Ch: (Ch_All, Ch_None, Ch_None)),
(Ch: (Ch_All, Ch_None, Ch_None)), (Ch: (Ch_All, Ch_None, Ch_None)),
(Ch: (Ch_All, Ch_None, Ch_None)), (Ch: (Ch_All, Ch_None, Ch_None)),
(Ch: (Ch_WFlags, Ch_REAX, Ch_None)), (Ch: (Ch_WFlags, Ch_REAX, Ch_None)),
(Ch: (Ch_Mop2, Ch_Rop1, Ch_RWFlags)), (Ch: (Ch_Mop2, Ch_Rop1, Ch_WFlags)),
(Ch: (Ch_WEAX, Ch_RFLAGS, Ch_None)), (Ch: (Ch_WEAX, Ch_RFLAGS, Ch_None)),
(Ch: (Ch_Mop2, Ch_Rop1, Ch_WFlags)), (Ch: (Ch_Mop2, Ch_Rop1, Ch_WFlags)),
(Ch: (Ch_Mop2, Ch_Rop1, Ch_RWFlags)), (Ch: (Ch_Mop2, Ch_Rop1, Ch_RWFlags)),
(Ch: (Ch_All, Ch_None, Ch_None)), (Ch: (Ch_All, Ch_WFlags, Ch_RDirFlag)),
(Ch: (Ch_All, Ch_None, Ch_None)), (Ch: (Ch_All, Ch_WFlags, Ch_RDirFlag)),
(Ch: (Ch_All, Ch_None, Ch_None)), (Ch: (Ch_All, Ch_WFlags, Ch_RDirFlag)),
(Ch: (Ch_None, Ch_None, Ch_None)), (Ch: (Ch_None, Ch_None, Ch_None)),
(Ch: (Ch_None, Ch_None, Ch_None)), (Ch: (Ch_None, Ch_None, Ch_None)),
(Ch: (Ch_None, Ch_None, Ch_None)), (Ch: (Ch_None, Ch_None, Ch_None)),
@ -338,9 +338,9 @@
(Ch: (Ch_None, Ch_None, Ch_None)), (Ch: (Ch_None, Ch_None, Ch_None)),
(Ch: (Ch_Wop1, Ch_None, Ch_None)), (Ch: (Ch_Wop1, Ch_None, Ch_None)),
(Ch: (Ch_Mop2, Ch_Rop1, Ch_WFlags)), (Ch: (Ch_Mop2, Ch_Rop1, Ch_WFlags)),
(Ch: (Ch_MOp3, Ch_RWFlags, Ch_Rop2)), (Ch: (Ch_MOp3, Ch_WFlags, Ch_Rop2)),
(Ch: (Ch_Mop2, Ch_Rop1, Ch_WFlags)), (Ch: (Ch_Mop2, Ch_Rop1, Ch_WFlags)),
(Ch: (Ch_MOp3, Ch_RWFlags, Ch_Rop2)), (Ch: (Ch_MOp3, Ch_WFlags, Ch_Rop2)),
(Ch: (Ch_Wop1, Ch_None, Ch_None)), (Ch: (Ch_Wop1, Ch_None, Ch_None)),
(Ch: (Ch_Wop1, Ch_None, Ch_None)), (Ch: (Ch_Wop1, Ch_None, Ch_None)),
(Ch: (Ch_All, Ch_None, Ch_None)), (Ch: (Ch_All, Ch_None, Ch_None)),
@ -972,8 +972,8 @@
(Ch: (Ch_All, Ch_None, Ch_None)), (Ch: (Ch_All, Ch_None, Ch_None)),
(Ch: (Ch_All, Ch_None, Ch_None)), (Ch: (Ch_All, Ch_None, Ch_None)),
(Ch: (Ch_Mop2, Ch_Rop1, Ch_None)), (Ch: (Ch_Mop2, Ch_Rop1, Ch_None)),
(Ch: (Ch_RWECX, Ch_RWFlags, Ch_None)), (Ch: (Ch_RWECX, Ch_RFlags, Ch_None)),
(Ch: (Ch_RWECX, Ch_RWFlags, Ch_None)), (Ch: (Ch_RWECX, Ch_RFlags, Ch_None)),
(Ch: (Ch_Mop1, Ch_RWEAX, Ch_None)), (Ch: (Ch_Mop1, Ch_RWEAX, Ch_None)),
(Ch: (Ch_Mop1, Ch_RWEAX, Ch_None)), (Ch: (Ch_Mop1, Ch_RWEAX, Ch_None)),
(Ch: (Ch_Mop2, Ch_Rop1, Ch_None)), (Ch: (Ch_Mop2, Ch_Rop1, Ch_None)),

View File

@ -213,7 +213,7 @@ interface
this changed content afterwards (add/sub/..., but e.g. not rep this changed content afterwards (add/sub/..., but e.g. not rep
or movsd)} or movsd)}
Ch_MEAX, Ch_MECX, Ch_MEDX, Ch_MEBX, Ch_MESP, Ch_MEBP, Ch_MESI, Ch_MEDI, Ch_MEAX, Ch_MECX, Ch_MEDX, Ch_MEBX, Ch_MESP, Ch_MEBP, Ch_MESI, Ch_MEDI,
Ch_CDirFlag {clear direction flag}, Ch_SDirFlag {set dir flag}, Ch_CDirFlag {clear direction flag}, Ch_SDirFlag {set dir flag},Ch_RDirFlag {read direction flag},
Ch_RFlags, Ch_WFlags, Ch_RWFlags, Ch_FPU, Ch_RFlags, Ch_WFlags, Ch_RWFlags, Ch_FPU,
Ch_Rop1, Ch_Wop1, Ch_RWop1,Ch_Mop1, Ch_Rop1, Ch_Wop1, Ch_RWop1,Ch_Mop1,
Ch_Rop2, Ch_Wop2, Ch_RWop2,Ch_Mop2, Ch_Rop2, Ch_Wop2, Ch_RWop2,Ch_Mop2,

View File

@ -16,7 +16,7 @@
void void none void void none
[AAA] [AAA]
(Ch_MEAX, Ch_WFlags, Ch_None) (Ch_MEAX, Ch_RWFlags, Ch_None)
void \1\x37 8086,NOX86_64 void \1\x37 8086,NOX86_64
[AAD,aadX] [AAD,aadX]
@ -30,7 +30,7 @@ void \2\xD4\x0A 8086,NOX86_64
imm \1\xD4\24 8086,SB,NOX86_64 imm \1\xD4\24 8086,SB,NOX86_64
[AAS] [AAS]
(Ch_MEAX, Ch_WFlags, Ch_None) (Ch_MEAX, Ch_RWFlags, Ch_None)
void \1\x3F 8086,NOX86_64 void \1\x3F 8086,NOX86_64
[ADC,adcX] [ADC,adcX]
@ -170,7 +170,7 @@ void \1\xFA 8086
void \2\x0F\x06 286,PRIV void \2\x0F\x06 286,PRIV
[CMC] [CMC]
(Ch_WFlags, Ch_None, Ch_None) (Ch_RWFlags, Ch_None, Ch_None)
void \1\xF5 8086 void \1\xF5 8086
[CMP,cmpX] [CMP,cmpX]
@ -193,16 +193,16 @@ mem,imm16 \324\1\x81\207\31 8086,SW
mem,imm8 \1\x80\207\21 8086,SB mem,imm8 \1\x80\207\21 8086,SB
[CMPSB] [CMPSB]
(Ch_All, Ch_None, Ch_None) (Ch_All, Ch_WFlags, Ch_RDirFlag)
void \332\1\xA6 8086 void \332\1\xA6 8086
[CMPSD,cmpsl] [CMPSD,cmpsl]
(Ch_All, Ch_None, Ch_None) (Ch_All, Ch_WFlags, Ch_RDirFlag)
void \332\325\1\xA7 386 void \332\325\1\xA7 386
xmmreg,xmmrm,imm \334\2\x0F\xC2\110\26 WILLAMETTE,SSE2,SM2,SB,AR2 xmmreg,xmmrm,imm \334\2\x0F\xC2\110\26 WILLAMETTE,SSE2,SM2,SB,AR2
[CMPSW] [CMPSW]
(Ch_All, Ch_None, Ch_None) (Ch_All, Ch_WFlags, Ch_RDirFlag)
void \332\324\1\xA7 8086 void \332\324\1\xA7 8086
[CMPXCHG,cmpxchgX] [CMPXCHG,cmpxchgX]
@ -983,15 +983,15 @@ void \2\x0F\x05 286,UNDOC
void \1\xF0 8086,PRE void \1\xF0 8086,PRE
[LODSB] [LODSB]
(Ch_WEAX, Ch_RWESI, Ch_None) (Ch_WEAX, Ch_RWESI, Ch_RDirFlag)
void \1\xAC 8086 void \1\xAC 8086
[LODSD,lodsl] [LODSD,lodsl]
(Ch_WEAX, Ch_RWESI, Ch_None) (Ch_WEAX, Ch_RWESI, Ch_RDirFlag)
void \325\1\xAD 386 void \325\1\xAD 386
[LODSW] [LODSW]
(Ch_WEAX, Ch_RWESI, Ch_None) (Ch_WEAX, Ch_RWESI, Ch_RDirFlag)
void \324\1\xAD 8086 void \324\1\xAD 8086
[LOOP] [LOOP]
@ -1104,22 +1104,22 @@ xmmreg,reg64 \361\326\2\x0F\x6E\110 WILLAMETTE,SSE2,X86_64
reg64,xmmreg \361\326\2\x0F\x7E\101 WILLAMETTE,SSE2,X86_64 reg64,xmmreg \361\326\2\x0F\x7E\101 WILLAMETTE,SSE2,X86_64
[MOVSB] [MOVSB]
(Ch_All, Ch_None, Ch_None) (Ch_All, Ch_RDirFlag, Ch_None)
void \1\xA4 8086 void \1\xA4 8086
[MOVSD,movsl] [MOVSD,movsl]
; Ch_All isn't correct for the sse move, but how can it be solved? (FK) ; Ch_All and Ch_RDirFlag aren't correct for the sse move, but how can it be solved? (FK)
(Ch_All, Ch_None, Ch_None) (Ch_All, Ch_RDirFlag, Ch_None)
void \325\1\xA5 386 void \325\1\xA5 386
xmmreg,xmmrm \334\2\x0F\x10\110 WILLAMETTE,SSE2 xmmreg,xmmrm \334\2\x0F\x10\110 WILLAMETTE,SSE2
xmmrm,xmmreg \334\2\x0F\x11\101 WILLAMETTE,SSE2 xmmrm,xmmreg \334\2\x0F\x11\101 WILLAMETTE,SSE2
[MOVSQ] [MOVSQ]
(Ch_All, Ch_None, Ch_None) (Ch_All, Ch_RDirFlag, Ch_None)
void \326\1\xA5 X86_64 void \326\1\xA5 X86_64
[MOVSW] [MOVSW]
(Ch_All, Ch_None, Ch_None) (Ch_All, Ch_RDirFlag, Ch_None)
void \324\1\xA5 8086 void \324\1\xA5 8086
[MOVSX,movsY] [MOVSX,movsY]
@ -1153,7 +1153,7 @@ rm8 \1\xF6\203 8086
void \1\x90 8086 void \1\x90 8086
[NOT,notX] [NOT,notX]
(Ch_Mop1, Ch_WFlags, Ch_None) (Ch_Mop1, Ch_None, Ch_None)
rm16|32|64 \320\1\xF7\202 8086 rm16|32|64 \320\1\xF7\202 8086
rm8 \1\xF6\202 8086 rm8 \1\xF6\202 8086
@ -1686,23 +1686,23 @@ void \2\x0F\x33 P6
void \2\x0F\x31 PENT void \2\x0F\x31 PENT
[REP] [REP]
(Ch_RWECX, Ch_RWFlags, Ch_None) (Ch_RWECX, Ch_None, Ch_None)
void \1\xF3 8086,PRE void \1\xF3 8086,PRE
[REPE] [REPE]
(Ch_RWECX, Ch_RWFlags, Ch_None) (Ch_RWECX, Ch_RFlags, Ch_None)
void \1\xF3 8086,PRE void \1\xF3 8086,PRE
[REPNE] [REPNE]
(Ch_RWECX, Ch_RWFlags, Ch_None) (Ch_RWECX, Ch_RFlags, Ch_None)
void \1\xF2 8086,PRE void \1\xF2 8086,PRE
[REPNZ] [REPNZ]
(Ch_RWECX, Ch_RWFLAGS, Ch_None) (Ch_RWECX, Ch_RFLAGS, Ch_None)
void \1\xF2 8086,PRE void \1\xF2 8086,PRE
[REPZ] [REPZ]
(Ch_RWECX, Ch_RWFLAGS, Ch_None) (Ch_RWECX, Ch_RFLAGS, Ch_None)
void \1\xF3 8086,PRE void \1\xF3 8086,PRE
[RET] [RET]
@ -1721,7 +1721,7 @@ void \1\xC3 8086
imm \1\xC2\30 8086,SW imm \1\xC2\30 8086,SW
[ROL,rolX] [ROL,rolX]
(Ch_Mop2, Ch_Rop1, Ch_RWFlags) (Ch_Mop2, Ch_Rop1, Ch_WFlags)
rm16|32|64,unity \320\1\xD1\200 8086 rm16|32|64,unity \320\1\xD1\200 8086
rm16|32|64,reg_cl \320\1\xD3\200 8086 rm16|32|64,reg_cl \320\1\xD3\200 8086
rm16|32|64,imm \320\1\xC1\200\25 186,SB rm16|32|64,imm \320\1\xC1\200\25 186,SB
@ -1730,7 +1730,7 @@ rm8,reg_cl \1\xD2\200 8086
rm8,imm \1\xC0\200\25 186,SB rm8,imm \1\xC0\200\25 186,SB
[ROR,rorX] [ROR,rorX]
(Ch_Mop2, Ch_Rop1, Ch_RWFlags) (Ch_Mop2, Ch_Rop1, Ch_WFlags)
rm16|32|64,unity \320\1\xD1\201 8086 rm16|32|64,unity \320\1\xD1\201 8086
rm16|32|64,reg_cl \320\1\xD3\201 8086 rm16|32|64,reg_cl \320\1\xD3\201 8086
rm16|32|64,imm \320\1\xC1\201\25 186,SB rm16|32|64,imm \320\1\xC1\201\25 186,SB
@ -1756,7 +1756,7 @@ void \2\x0F\xAA PENT,SMM
void \1\x9E 8086 void \1\x9E 8086
[SAL,salX] [SAL,salX]
(Ch_Mop2, Ch_Rop1, Ch_RWFlags) (Ch_Mop2, Ch_Rop1, Ch_WFlags)
rm16|32|64,unity \320\1\xD1\204 8086,ND rm16|32|64,unity \320\1\xD1\204 8086,ND
rm16|32|64,reg_cl \320\1\xD3\204 8086,ND rm16|32|64,reg_cl \320\1\xD3\204 8086,ND
rm16|32|64,imm \320\1\xC1\204\25 186,ND,SB rm16|32|64,imm \320\1\xC1\204\25 186,ND,SB
@ -1794,19 +1794,19 @@ reg_al,imm \1\x1C\21 8086,SB
rm8,imm \1\x80\203\21 8086,SB rm8,imm \1\x80\203\21 8086,SB
[SCASB] [SCASB]
(Ch_All, Ch_None, Ch_None) (Ch_All, Ch_WFlags, Ch_RDirFlag)
void \332\1\xAE 8086 void \332\1\xAE 8086
[SCASD,scasl] [SCASD,scasl]
(Ch_All, Ch_None, Ch_None) (Ch_All, Ch_WFlags, Ch_RDirFlag)
void \332\325\1\xAF 386 void \332\325\1\xAF 386
[SCASQ] [SCASQ]
(Ch_All, Ch_None, Ch_None) (Ch_All, Ch_WFlags, Ch_RDirFlag)
void \332\326\1\xAF X86_64 void \332\326\1\xAF X86_64
[SCASW] [SCASW]
(Ch_All, Ch_None, Ch_None) (Ch_All, Ch_WFlags, Ch_RDirFlag)
void \332\324\1\xAF 8086 void \332\324\1\xAF 8086
[SEGCS,cs] [SEGCS,cs]
@ -1847,7 +1847,7 @@ rm8,reg_cl \1\xD2\204 8086
rm8,imm \1\xC0\204\25 186,SB rm8,imm \1\xC0\204\25 186,SB
[SHLD,shldX] [SHLD,shldX]
(Ch_MOp3, Ch_RWFlags, Ch_Rop2) (Ch_MOp3, Ch_WFlags, Ch_Rop2)
rm16|32|64,reg16|32|64,imm \321\2\x0F\xA4\101\26 386,SM2,SB,AR2 rm16|32|64,reg16|32|64,imm \321\2\x0F\xA4\101\26 386,SM2,SB,AR2
rm16|32|64,reg16|32|64,reg_cl \321\2\x0F\xA5\101 386,SM rm16|32|64,reg16|32|64,reg_cl \321\2\x0F\xA5\101 386,SM
@ -1861,7 +1861,7 @@ rm8,reg_cl \1\xD2\205 8086
rm8,imm \1\xC0\205\25 186,SB rm8,imm \1\xC0\205\25 186,SB
[SHRD,shrdX] [SHRD,shrdX]
(Ch_MOp3, Ch_RWFlags, Ch_Rop2) (Ch_MOp3, Ch_WFlags, Ch_Rop2)
rm16|32|64,reg16|32|64,imm \321\2\x0F\xAC\101\26 386,SM2,SB,AR2 rm16|32|64,reg16|32|64,imm \321\2\x0F\xAC\101\26 386,SM2,SB,AR2
rm16|32|64,reg16|32|64,reg_cl \321\2\x0F\xAD\101 386,SM rm16|32|64,reg16|32|64,reg_cl \321\2\x0F\xAD\101 386,SM
@ -1903,14 +1903,17 @@ void \1\xFD 8086
void \1\xFB 8086 void \1\xFB 8086
[STOSB] [STOSB]
; todo: also needs Ch_CDirFlag
(Ch_REAX, Ch_WMemEDI, Ch_RWEDI) (Ch_REAX, Ch_WMemEDI, Ch_RWEDI)
void \1\xAA 8086 void \1\xAA 8086
[STOSD,stosl] [STOSD,stosl]
; todo: also needs Ch_CDirFlag
(Ch_REAX, Ch_WMemEDI, Ch_RWEDI) (Ch_REAX, Ch_WMemEDI, Ch_RWEDI)
void \325\1\xAB 386 void \325\1\xAB 386
[STOSW] [STOSW]
; todo: also needs Ch_CDirFlag
(Ch_REAX, Ch_WMemEDI, Ch_RWEDI) (Ch_REAX, Ch_WMemEDI, Ch_RWEDI)
void \324\1\xAB 8086 void \324\1\xAB 8086
@ -3457,15 +3460,15 @@ void \3\x0F\x01\xf9 SSE4,SM
;******************************************************************************* ;*******************************************************************************
;******************************************************************************* ;*******************************************************************************
[STOSQ] [STOSQ]
(Ch_RRAX, Ch_WMemEDI, Ch_RWRDI) (Ch_RRAX, Ch_WMemEDI, Ch_RWRDI, Ch_RDirFlag)
void \326\1\xAB X86_64 void \326\1\xAB X86_64
[LODSQ] [LODSQ]
(Ch_WRAX, Ch_RWRSI, Ch_None) (Ch_WRAX, Ch_RWRSI, Ch_RDirFlag)
void \326\1\xAD X86_64 void \326\1\xAD X86_64
[CMPSQ] [CMPSQ]
(Ch_All, Ch_None, Ch_None) (Ch_All, Ch_WFlags, Ch_RDirFlag)
void \326\1\xA7 X86_64 void \326\1\xA7 X86_64
;******************************************************************************* ;*******************************************************************************
@ -5065,11 +5068,11 @@ rm8,imm \2\x0F\x1E\200\25 NEC,SB
rm16,imm \2\x0F\x1F\200\25 NEC,SW,IMM4,16BITONLY rm16,imm \2\x0F\x1F\200\25 NEC,SW,IMM4,16BITONLY
[REPC] [REPC]
(Ch_RWECX, Ch_RWFlags, Ch_None) (Ch_RWECX, Ch_RFlags, Ch_None)
void \1\x65 NEC,PRE,16BITONLY void \1\x65 NEC,PRE,16BITONLY
[REPNC] [REPNC]
(Ch_RWECX, Ch_RWFlags, Ch_None) (Ch_RWECX, Ch_RFlags, Ch_None)
void \1\x64 NEC,PRE,16BITONLY void \1\x64 NEC,PRE,16BITONLY
[ROL4] [ROL4]

View File

@ -18,11 +18,11 @@
(Ch: (Ch_CDirFlag, Ch_None, Ch_None)), (Ch: (Ch_CDirFlag, Ch_None, Ch_None)),
(Ch: (Ch_WFlags, Ch_None, Ch_None)), (Ch: (Ch_WFlags, Ch_None, Ch_None)),
(Ch: (Ch_None, Ch_None, Ch_None)), (Ch: (Ch_None, Ch_None, Ch_None)),
(Ch: (Ch_WFlags, Ch_None, Ch_None)), (Ch: (Ch_RWFlags, Ch_None, Ch_None)),
(Ch: (Ch_ROp1, Ch_ROp2, Ch_WFlags)), (Ch: (Ch_ROp1, Ch_ROp2, Ch_WFlags)),
(Ch: (Ch_All, Ch_None, Ch_None)), (Ch: (Ch_All, Ch_WFlags, Ch_RDirFlag)),
(Ch: (Ch_All, Ch_None, Ch_None)), (Ch: (Ch_All, Ch_WFlags, Ch_RDirFlag)),
(Ch: (Ch_All, Ch_None, Ch_None)), (Ch: (Ch_All, Ch_WFlags, Ch_RDirFlag)),
(Ch: (Ch_All, Ch_None, Ch_None)), (Ch: (Ch_All, Ch_None, Ch_None)),
(Ch: (Ch_All, Ch_None, Ch_None)), (Ch: (Ch_All, Ch_None, Ch_None)),
(Ch: (Ch_All, Ch_None, Ch_None)), (Ch: (Ch_All, Ch_None, Ch_None)),
@ -171,9 +171,9 @@
(Ch: (Ch_All, Ch_None, Ch_None)), (Ch: (Ch_All, Ch_None, Ch_None)),
(Ch: (Ch_All, Ch_None, Ch_None)), (Ch: (Ch_All, Ch_None, Ch_None)),
(Ch: (Ch_None, Ch_None, Ch_None)), (Ch: (Ch_None, Ch_None, Ch_None)),
(Ch: (Ch_WEAX, Ch_RWESI, Ch_None)), (Ch: (Ch_WEAX, Ch_RWESI, Ch_RDirFlag)),
(Ch: (Ch_WEAX, Ch_RWESI, Ch_None)), (Ch: (Ch_WEAX, Ch_RWESI, Ch_RDirFlag)),
(Ch: (Ch_WEAX, Ch_RWESI, Ch_None)), (Ch: (Ch_WEAX, Ch_RWESI, Ch_RDirFlag)),
(Ch: (Ch_RWECX, Ch_None, Ch_None)), (Ch: (Ch_RWECX, Ch_None, Ch_None)),
(Ch: (Ch_RWECX, Ch_RFlags, Ch_None)), (Ch: (Ch_RWECX, Ch_RFlags, Ch_None)),
(Ch: (Ch_RWECX, Ch_RFlags, Ch_None)), (Ch: (Ch_RWECX, Ch_RFlags, Ch_None)),
@ -186,17 +186,17 @@
(Ch: (Ch_Wop2, Ch_Rop1, Ch_None)), (Ch: (Ch_Wop2, Ch_Rop1, Ch_None)),
(Ch: (Ch_Rop1, Ch_Wop2, Ch_None)), (Ch: (Ch_Rop1, Ch_Wop2, Ch_None)),
(Ch: (Ch_Rop1, Ch_Wop2, Ch_None)), (Ch: (Ch_Rop1, Ch_Wop2, Ch_None)),
(Ch: (Ch_All, Ch_None, Ch_None)), (Ch: (Ch_All, Ch_RDirFlag, Ch_None)),
(Ch: (Ch_All, Ch_None, Ch_None)), (Ch: (Ch_All, Ch_RDirFlag, Ch_None)),
(Ch: (Ch_All, Ch_None, Ch_None)), (Ch: (Ch_All, Ch_RDirFlag, Ch_None)),
(Ch: (Ch_All, Ch_None, Ch_None)), (Ch: (Ch_All, Ch_RDirFlag, Ch_None)),
(Ch: (Ch_Wop2, Ch_Rop1, Ch_None)), (Ch: (Ch_Wop2, Ch_Rop1, Ch_None)),
(Ch: (Ch_Wop2, Ch_Rop1, Ch_None)), (Ch: (Ch_Wop2, Ch_Rop1, Ch_None)),
(Ch: (Ch_RWEAX, Ch_WEDX, Ch_WFlags)), (Ch: (Ch_RWEAX, Ch_WEDX, Ch_WFlags)),
(Ch: (Ch_None, Ch_None, Ch_None)), (Ch: (Ch_None, Ch_None, Ch_None)),
(Ch: (Ch_Mop1, Ch_None, Ch_None)), (Ch: (Ch_Mop1, Ch_None, Ch_None)),
(Ch: (Ch_None, Ch_None, Ch_None)), (Ch: (Ch_None, Ch_None, Ch_None)),
(Ch: (Ch_Mop1, Ch_WFlags, Ch_None)), (Ch: (Ch_Mop1, Ch_None, Ch_None)),
(Ch: (Ch_Mop2, Ch_Rop1, Ch_WFlags)), (Ch: (Ch_Mop2, Ch_Rop1, Ch_WFlags)),
(Ch: (Ch_Rop1, Ch_Rop2, Ch_None)), (Ch: (Ch_Rop1, Ch_Rop2, Ch_None)),
(Ch: (Ch_All, Ch_None, Ch_None)), (Ch: (Ch_All, Ch_None, Ch_None)),
@ -294,27 +294,27 @@
(Ch: (Ch_WEAX, Ch_WEDX, Ch_None)), (Ch: (Ch_WEAX, Ch_WEDX, Ch_None)),
(Ch: (Ch_WEAX, Ch_WEDX, Ch_None)), (Ch: (Ch_WEAX, Ch_WEDX, Ch_None)),
(Ch: (Ch_WEAX, Ch_WEDX, Ch_None)), (Ch: (Ch_WEAX, Ch_WEDX, Ch_None)),
(Ch: (Ch_RWECX, Ch_RWFlags, Ch_None)), (Ch: (Ch_RWECX, Ch_None, Ch_None)),
(Ch: (Ch_RWECX, Ch_RWFlags, Ch_None)), (Ch: (Ch_RWECX, Ch_RFlags, Ch_None)),
(Ch: (Ch_RWECX, Ch_RWFlags, Ch_None)), (Ch: (Ch_RWECX, Ch_RFlags, Ch_None)),
(Ch: (Ch_RWECX, Ch_RWFLAGS, Ch_None)), (Ch: (Ch_RWECX, Ch_RFLAGS, Ch_None)),
(Ch: (Ch_RWECX, Ch_RWFLAGS, Ch_None)), (Ch: (Ch_RWECX, Ch_RFLAGS, Ch_None)),
(Ch: (Ch_All, Ch_None, Ch_None)), (Ch: (Ch_All, Ch_None, Ch_None)),
(Ch: (Ch_All, Ch_None, Ch_None)), (Ch: (Ch_All, Ch_None, Ch_None)),
(Ch: (Ch_All, Ch_None, Ch_None)), (Ch: (Ch_All, Ch_None, Ch_None)),
(Ch: (Ch_Mop2, Ch_Rop1, Ch_RWFlags)), (Ch: (Ch_Mop2, Ch_Rop1, Ch_WFlags)),
(Ch: (Ch_Mop2, Ch_Rop1, Ch_RWFlags)), (Ch: (Ch_Mop2, Ch_Rop1, Ch_WFlags)),
(Ch: (Ch_All, Ch_None, Ch_None)), (Ch: (Ch_All, Ch_None, Ch_None)),
(Ch: (Ch_All, Ch_None, Ch_None)), (Ch: (Ch_All, Ch_None, Ch_None)),
(Ch: (Ch_All, Ch_None, Ch_None)), (Ch: (Ch_All, Ch_None, Ch_None)),
(Ch: (Ch_WFlags, Ch_REAX, Ch_None)), (Ch: (Ch_WFlags, Ch_REAX, Ch_None)),
(Ch: (Ch_Mop2, Ch_Rop1, Ch_RWFlags)), (Ch: (Ch_Mop2, Ch_Rop1, Ch_WFlags)),
(Ch: (Ch_Mop2, Ch_Rop1, Ch_WFlags)), (Ch: (Ch_Mop2, Ch_Rop1, Ch_WFlags)),
(Ch: (Ch_Mop2, Ch_Rop1, Ch_RWFlags)), (Ch: (Ch_Mop2, Ch_Rop1, Ch_RWFlags)),
(Ch: (Ch_All, Ch_None, Ch_None)), (Ch: (Ch_All, Ch_WFlags, Ch_RDirFlag)),
(Ch: (Ch_All, Ch_None, Ch_None)), (Ch: (Ch_All, Ch_WFlags, Ch_RDirFlag)),
(Ch: (Ch_All, Ch_None, Ch_None)), (Ch: (Ch_All, Ch_WFlags, Ch_RDirFlag)),
(Ch: (Ch_All, Ch_None, Ch_None)), (Ch: (Ch_All, Ch_WFlags, Ch_RDirFlag)),
(Ch: (Ch_None, Ch_None, Ch_None)), (Ch: (Ch_None, Ch_None, Ch_None)),
(Ch: (Ch_None, Ch_None, Ch_None)), (Ch: (Ch_None, Ch_None, Ch_None)),
(Ch: (Ch_None, Ch_None, Ch_None)), (Ch: (Ch_None, Ch_None, Ch_None)),
@ -323,9 +323,9 @@
(Ch: (Ch_None, Ch_None, Ch_None)), (Ch: (Ch_None, Ch_None, Ch_None)),
(Ch: (Ch_Wop1, Ch_None, Ch_None)), (Ch: (Ch_Wop1, Ch_None, Ch_None)),
(Ch: (Ch_Mop2, Ch_Rop1, Ch_WFlags)), (Ch: (Ch_Mop2, Ch_Rop1, Ch_WFlags)),
(Ch: (Ch_MOp3, Ch_RWFlags, Ch_Rop2)), (Ch: (Ch_MOp3, Ch_WFlags, Ch_Rop2)),
(Ch: (Ch_Mop2, Ch_Rop1, Ch_WFlags)), (Ch: (Ch_Mop2, Ch_Rop1, Ch_WFlags)),
(Ch: (Ch_MOp3, Ch_RWFlags, Ch_Rop2)), (Ch: (Ch_MOp3, Ch_WFlags, Ch_Rop2)),
(Ch: (Ch_Wop1, Ch_None, Ch_None)), (Ch: (Ch_Wop1, Ch_None, Ch_None)),
(Ch: (Ch_Wop1, Ch_None, Ch_None)), (Ch: (Ch_Wop1, Ch_None, Ch_None)),
(Ch: (Ch_All, Ch_None, Ch_None)), (Ch: (Ch_All, Ch_None, Ch_None)),
@ -663,9 +663,9 @@
(Ch: (Ch_All, Ch_None, Ch_None)), (Ch: (Ch_All, Ch_None, Ch_None)),
(Ch: (Ch_All, Ch_None, Ch_None)), (Ch: (Ch_All, Ch_None, Ch_None)),
(Ch: (Ch_WEAX, Ch_WEDX, Ch_None)), (Ch: (Ch_WEAX, Ch_WEDX, Ch_None)),
(Ch: (Ch_RRAX, Ch_WMemEDI, Ch_RWRDI)), (Ch: (Ch_RRAX, Ch_WMemEDI, Ch_RWRDI, Ch_RDirFlag)),
(Ch: (Ch_WRAX, Ch_RWRSI, Ch_None)), (Ch: (Ch_WRAX, Ch_RWRSI, Ch_RDirFlag)),
(Ch: (Ch_All, Ch_None, Ch_None)), (Ch: (Ch_All, Ch_WFlags, Ch_RDirFlag)),
(Ch: (Ch_Wop3, Ch_Rop2, Ch_Rop1)), (Ch: (Ch_Wop3, Ch_Rop2, Ch_Rop1)),
(Ch: (Ch_Wop3, Ch_Rop2, Ch_Rop1)), (Ch: (Ch_Wop3, Ch_Rop2, Ch_Rop1)),
(Ch: (Ch_Wop3, Ch_Rop2, Ch_Rop1)), (Ch: (Ch_Wop3, Ch_Rop2, Ch_Rop1)),