diff --git a/instrs.txt b/instrs.txt index 8d6553b..ce90a43 100644 --- a/instrs.txt +++ b/instrs.txt @@ -1391,7 +1391,7 @@ df//5 M MEM64 - - - FILD df//6 M FPU - - - FBSTP df//7 M MEM64 - - - FISTP # FSTSW AX -df//e0 O GP16 - - - FSTSW +df//e0 A GP16 - - - FSTSW df//f0+ AO FPU FPU - - FCOMIP df//f8+ AO FPU FPU - - FUCOMIP # diff --git a/parseinstrs.py b/parseinstrs.py index 1b154ba..9de654a 100644 --- a/parseinstrs.py +++ b/parseinstrs.py @@ -69,6 +69,7 @@ ENCODINGS = { "OI": InstrFlags(modreg_idx=0^3, imm_idx=1^3, imm_control=4), "OA": InstrFlags(modreg_idx=0^3, zeroreg_idx=1^3), "AO": InstrFlags(modreg_idx=1^3, zeroreg_idx=0^3), + "A": InstrFlags(zeroreg_idx=0^3), "D": InstrFlags(imm_idx=0^3, imm_control=6), "FD": InstrFlags(zeroreg_idx=0^3, imm_idx=1^3, imm_control=2), "TD": InstrFlags(zeroreg_idx=1^3, imm_idx=0^3, imm_control=2), diff --git a/tests/prefixes.txt b/tests/prefixes.txt index a5d1f21..a14d865 100644 --- a/tests/prefixes.txt +++ b/tests/prefixes.txt @@ -29,3 +29,4 @@ decode 8ec0 [MOV_G2S reg0:r0 reg4:r0] decode 8ec8 UD decode d8c1 [FADD reg0:r0 reg0:r1] decode64 41d8c1 [FADD reg0:r0 reg0:r1] +decode64 41dfe0 [FSTSW reg2:r0]