x86: add 3 new undocumented instructions fdisi8087_nop, feni8087_nop & ffreep

This commit is contained in:
Nguyen Anh Quynh 2014-12-26 23:59:35 +08:00
parent 534b948661
commit 59c72afe7a
11 changed files with 26502 additions and 26436 deletions

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@ -997,6 +997,7 @@ static name_map insn_name_maps[] = {
{ X86_INS_FPREM, "fprem" },
{ X86_INS_FPREM1, "fprem1" },
{ X86_INS_FPTAN, "fptan" },
{ X86_INS_FFREEP, "ffreep" },
{ X86_INS_FRNDINT, "frndint" },
{ X86_INS_FRSTOR, "frstor" },
{ X86_INS_FNSAVE, "fnsave" },
@ -1489,6 +1490,7 @@ static name_map insn_name_maps[] = {
{ X86_INS_FST, "fst" },
{ X86_INS_FSTP, "fstp" },
{ X86_INS_FSTPNCE, "fstpnce" },
{ X86_INS_FXCH, "fxch" },
{ X86_INS_SUBPD, "subpd" },
{ X86_INS_SUBPS, "subps" },
{ X86_INS_FSUBR, "fsubr" },
@ -2088,7 +2090,6 @@ static name_map insn_name_maps[] = {
{ X86_INS_XACQUIRE, "xacquire" },
{ X86_INS_XBEGIN, "xbegin" },
{ X86_INS_XCHG, "xchg" },
{ X86_INS_FXCH, "fxch" },
{ X86_INS_XCRYPTCBC, "xcryptcbc" },
{ X86_INS_XCRYPTCFB, "xcryptcfb" },
{ X86_INS_XCRYPTCTR, "xcryptctr" },
@ -2109,6 +2110,8 @@ static name_map insn_name_maps[] = {
{ X86_INS_XSHA256, "xsha256" },
{ X86_INS_XSTORE, "xstore" },
{ X86_INS_XTEST, "xtest" },
{ X86_INS_FDISI8087_NOP, "fdisi8087_nop" },
{ X86_INS_FENI8087_NOP, "feni8087_nop" },
};
#endif
@ -6111,6 +6114,12 @@ static insn_map insns[] = { // full x86 instructions
X86_FPTAN, X86_INS_FPTAN,
#ifndef CAPSTONE_DIET
{ 0 }, { 0 }, { 0 }, 0, 0
#endif
},
{
X86_FP_FFREEP, X86_INS_FFREEP,
#ifndef CAPSTONE_DIET
{ 0 }, { X86_REG_FPSW, 0 }, { 0 }, 0, 0
#endif
},
{
@ -37851,6 +37860,18 @@ static insn_map insns[] = { // full x86 instructions
X86_XTEST, X86_INS_XTEST,
#ifndef CAPSTONE_DIET
{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
#endif
},
{
X86_fdisi8087_nop, X86_INS_FDISI8087_NOP,
#ifndef CAPSTONE_DIET
{ 0 }, { 0 }, { 0 }, 0, 0
#endif
},
{
X86_feni8087_nop, X86_INS_FENI8087_NOP,
#ifndef CAPSTONE_DIET
{ 0 }, { 0 }, { 0 }, 0, 0
#endif
},
};

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@ -2,7 +2,7 @@
from distutils.core import setup
VERSION = '3.0'
VERSION = '4.0'
# clean package directory first
#import os.path, shutil, sys

View File

@ -3,7 +3,7 @@ from distutils.extension import Extension
from distutils.command.install_lib import install_lib as _install
from Cython.Distutils import build_ext
VERSION = '3.0'
VERSION = '4.0'
compile_args = ['-O3', '-fomit-frame-pointer']

View File

@ -443,6 +443,7 @@ typedef enum x86_insn {
X86_INS_FPREM,
X86_INS_FPREM1,
X86_INS_FPTAN,
X86_INS_FFREEP,
X86_INS_FRNDINT,
X86_INS_FRSTOR,
X86_INS_FNSAVE,
@ -935,6 +936,7 @@ typedef enum x86_insn {
X86_INS_FST,
X86_INS_FSTP,
X86_INS_FSTPNCE,
X86_INS_FXCH,
X86_INS_SUBPD,
X86_INS_SUBPS,
X86_INS_FSUBR,
@ -1534,7 +1536,6 @@ typedef enum x86_insn {
X86_INS_XACQUIRE,
X86_INS_XBEGIN,
X86_INS_XCHG,
X86_INS_FXCH,
X86_INS_XCRYPTCBC,
X86_INS_XCRYPTCFB,
X86_INS_XCRYPTCTR,
@ -1555,8 +1556,10 @@ typedef enum x86_insn {
X86_INS_XSHA256,
X86_INS_XSTORE,
X86_INS_XTEST,
X86_INS_FDISI8087_NOP,
X86_INS_FENI8087_NOP,
X86_INS_ENDING, // mark the end of the list of insn
X86_INS_ENDING, // mark the end of the list of insn
} x86_insn;
//> Group of X86 instructions