Integration of QUIX86 decoder From: Alexander Kudryavtsev --- Kconfig | 4 palacios/include/palacios/quix86.h | 2044 + palacios/src/palacios/Makefile | 1 palacios/src/palacios/quix86.c |56291 ++++++++++++++++++++++++++++++++++++ palacios/src/palacios/vmm_quix86.c | 939 + 5 files changed, 59279 insertions(+), 0 deletions(-) create mode 100644 palacios/include/palacios/quix86.h create mode 100644 palacios/src/palacios/quix86.c create mode 100644 palacios/src/palacios/vmm_quix86.c diff --git a/Kconfig b/Kconfig index 5397fec..ad9f30c 100644 --- a/Kconfig +++ b/Kconfig @@ -103,6 +103,10 @@ config V3_DECODER help This selects the internal V3Vee x86 decoder +config QUIX86_DECODER + bool "QUIX86 decoder" + help + This selects QUIX86 decoder endchoice diff --git a/palacios/include/palacios/quix86.h b/palacios/include/palacios/quix86.h new file mode 100644 index 0000000..8226e00 --- /dev/null +++ b/palacios/include/palacios/quix86.h @@ -0,0 +1,2044 @@ +/* +------------------------------------------------------------------------+ + | quix86 | + +------------------------------------------------------------------------+ + | This file is part of quix86, an x86-64 instruction decoder. | + | | + | Copyright (C) 2011 Institute for System Programming of Russian Academy | + | of Sciences. | + | | + | Contact e-mail: . | + | | + | quix86 is free software: you can redistribute it and/or modify it | + | under the terms of the GNU General Public License as published by the | + | Free Software Foundation, either version 3 of the License, or (at your | + | option) any later version. | + | | + | quix86 is distributed in the hope that it will be useful, but WITHOUT | + | ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or | + | FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License | + | for more details. | + | | + | You should have received a copy of the GNU General Public License | + | along with quix86. If not, see . | + +------------------------------------------------------------------------+ */ + +#ifndef QUIX86_H +#define QUIX86_H + +/* Provide definitions for INT8..INT64 and UINT8..UINT64. */ +#ifdef _MSC_VER + /* Definitions for INT8..INT64. */ +# define QX86_INT8 __int8 +# define QX86_INT16 __int16 +# define QX86_INT32 __int32 +# define QX86_INT64 __int64 + + /* Definitions for UINT8..UINT64. */ +# define QX86_UINT8 unsigned __int8 +# define QX86_UINT16 unsigned __int16 +# define QX86_UINT32 unsigned __int32 +# define QX86_UINT64 unsigned __int64 +#else + /* No built-in types. See if we have one of the standard headers. */ +# if defined(HAVE_INTTYPES_H) || defined(HAVE_STDINT_H) + /* Prefer as it's somewhat smaller. */ +# ifdef HAVE_STDINT_H + /* Include . */ +# include +# else + /* Include instead. */ +# include +# endif + + /* Definitions for INT8..INT64. */ +# define QX86_INT8 int8_t +# define QX86_INT16 int16_t +# define QX86_INT32 int32_t +# define QX86_INT64 int64_t + + /* Definitions for UINT8..UINT64. */ +# define QX86_UINT8 uint8_t +# define QX86_UINT16 uint16_t +# define QX86_UINT32 uint32_t +# define QX86_UINT64 uint64_t +# else + /* Likely definitions for INT8..INT64. */ +# define QX86_INT8 signed char +# define QX86_INT16 short +# define QX86_INT32 int +# define QX86_INT64 long long + + /* Likely definitions for UINT8..UINT64. */ +# define QX86_UINT8 unsigned char +# define QX86_UINT16 unsigned short +# define QX86_UINT32 unsigned int +# define QX86_UINT64 unsigned long long +# endif +#endif + +/* Provide wrappers around const and inline for compilers that don't support + C99. */ +#ifdef _MSC_VER + /* Microsoft Visual C is not C99-conformant. Use alternative keywords. */ +# define QX86_CONST const +# define QX86_INLINE __inline +# define QX86_RESTRICT /* ILB */ +#elif defined(__STDC_VERSION__) && (__STDC_VERSION__ >= 199901L) + /* C99 supported. */ +# define QX86_CONST const +# define QX86_INLINE inline +# define QX86_RESTRICT restrict +#elif defined(__cplusplus) + /* C++ mode supports const and inline. */ +# define QX86_CONST const +# define QX86_INLINE inline +# define QX86_RESTRICT /* ILB */ +#else + /* Assume none of the qualifiers is supported. */ +# define QX86_CONST const +# define QX86_INLINE /* ILB */ +# define QX86_RESTRICT /* ILB */ +#endif + +/* Wrap declarations in extern "C" if needed. */ +#ifdef __cplusplus + /* Need wrapper. */ +# define QX86_EXTERN_C extern "C" +#else + /* No wrapper required. */ +# define QX86_EXTERN_C /* ILB */ +#endif + +/** + * 8-bit signed integer type. + * + * \author icee + * \since 1.0 + */ +typedef QX86_INT8 qx86_int8; + +/** + * 16-bit signed integer type. + * + * \author icee + * \since 1.0 + */ +typedef QX86_INT16 qx86_int16; + +/** + * 32-bit signed integer type. + * + * \author icee + * \since 1.0 + */ +typedef QX86_INT32 qx86_int32; + +/** + * 64-bit signed integer type. + * + * \author icee + * \since 1.0 + */ +typedef QX86_INT64 qx86_int64; + +/** + * 8-bit unsigned integer type. + * + * \author icee + * \since 1.0 + */ +typedef QX86_UINT8 qx86_uint8; + +/** + * 16-bit unsigned integer type. + * + * \author icee + * \since 1.0 + */ +typedef QX86_UINT16 qx86_uint16; + +/** + * 32-bit unsigned integer type. + * + * \author icee + * \since 1.0 + */ +typedef QX86_UINT32 qx86_uint32; + +/** + * 64-bit unsigned integer type. + * + * \author icee + * \since 1.0 + */ +typedef QX86_UINT64 qx86_uint64; + +/* Public API structure declarations. */ +typedef struct qx86_amode qx86_amode; +typedef struct qx86_ctx qx86_ctx; +typedef struct qx86_insn qx86_insn; +typedef struct qx86_insn_attributes qx86_insn_attributes; +typedef struct qx86_insn_modifiers qx86_insn_modifiers; +typedef struct qx86_print_options_intel qx86_print_options_intel; +typedef struct qx86_mtab_item qx86_mtab_item; +typedef struct qx86_opcode_map qx86_opcode_map; +typedef struct qx86_opcode_map_item qx86_opcode_map_item; +typedef struct qx86_operand qx86_operand; +typedef struct qx86_operand_far_pointer qx86_operand_far_pointer; +typedef struct qx86_operand_form qx86_operand_form; +typedef struct qx86_operand_form_amode qx86_operand_form_amode; +typedef struct qx86_operand_form_rtuple qx86_operand_form_rtuple; +typedef struct qx86_operand_immediate qx86_operand_immediate; +typedef struct qx86_operand_jump_offset qx86_operand_jump_offset; +typedef struct qx86_operand_memory qx86_operand_memory; +typedef struct qx86_operand_register qx86_operand_register; +typedef struct qx86_print_item qx86_print_item; +typedef struct qx86_rtab_item qx86_rtab_item; +typedef struct qx86_rtuple qx86_rtuple; +typedef struct qx86_stuple qx86_stuple; + +/* Public API union declarations. */ +typedef union qx86_operand_union qx86_operand_union; +typedef union qx86_operand_form_union qx86_operand_form_union; + +/* Public API enumerations. */ + + +/** + * Enumeration of x86 instruction defects. + * + * \author icee + * \since 1.0 + */ +enum +{ + QX86_DEFECT_NONE = 0, + + QX86_DEFECT_MODRM_MOD_NOT_3 = 1 << 0, + QX86_DEFECT_MODRM_MOD_3 = 1 << 1 +}; + + + +/** + * Enumeration of x86 displacement sizes. + * + * \author icee + * \since 1.0 + */ +enum +{ + QX86_DISP_NONE = 0, + QX86_DISP_8 = 1, + QX86_DISP_16 = 2, + QX86_DISP_32 = 4, + QX86_DISP_64 = 8, + + QX86_DISP_INVALID = 3 +}; + + + +/** + * Enumeration of quix86 error codes. + * + * \author icee + * \since 1.0 + */ +enum +{ + QX86_SUCCESS = 0, + + QX86_E_INTERNAL = 1, + QX86_E_API = 2, + + QX86_E_INSN_INCOMPLETE = 3, + QX86_E_INSN_UNDEFINED = 4, + + QX86_E_INSUFFICIENT_BUFFER = 5, + + QX86_E_CALLBACK = 6, + + QX86_E_COUNT = 7 +}; + + + +/** + * Enumeration of instruction classes. + * + * An instruction can belong to multiple instruction classes at the same time. + * + * \author icee + * \since 1.0 + */ +enum +{ + QX86_ICLASS_NONE = 0, + + QX86_ICLASS_CONDITIONAL_EXECUTION = 1 << 0, + + QX86_ICLASS_TRANSFER = 1 << 1, + QX86_ICLASS_TRANSFER_LINKED = 1 << 2, + QX86_ICLASS_TRANSFER_LINKED_BACK = 1 << 3, + QX86_ICLASS_TRANSFER_SERVICE = 1 << 4 +}; + + + +/** + * Architectural limits of the x86. + * + * \author icee + * \since 1.0 + */ +enum +{ + QX86_IMMEDIATE_SIZE_MAX = 8, + QX86_INSN_SIZE_MAX = 15, + QX86_OPERAND_NMAX = 4 +}; + + +/** + * Enumeration of x86 instruction mnemonics. + * + * \author icee + * \since 1.0 + */ +enum qx86_mnemonic +{ + QX86_MNEMONIC_NONE = 0, + + /* Enumerators are sorted based on their names. */ + QX86_MNEMONIC_AAA = 1, + QX86_MNEMONIC_AAD = 2, + QX86_MNEMONIC_AAM = 3, + QX86_MNEMONIC_AAS = 4, + QX86_MNEMONIC_ADC = 5, + QX86_MNEMONIC_ADD = 6, + QX86_MNEMONIC_ADDPD = 7, + QX86_MNEMONIC_ADDPS = 8, + QX86_MNEMONIC_ADDSD = 9, + QX86_MNEMONIC_ADDSS = 10, + QX86_MNEMONIC_ADDSUBPD = 11, + QX86_MNEMONIC_ADDSUBPS = 12, + QX86_MNEMONIC_AESDEC = 13, + QX86_MNEMONIC_AESDECLAST = 14, + QX86_MNEMONIC_AESENC = 15, + QX86_MNEMONIC_AESENCLAST = 16, + QX86_MNEMONIC_AESIMC = 17, + QX86_MNEMONIC_AESKEYGENASSIST = 18, + QX86_MNEMONIC_AND = 19, + QX86_MNEMONIC_ANDNPD = 20, + QX86_MNEMONIC_ANDNPS = 21, + QX86_MNEMONIC_ANDPD = 22, + QX86_MNEMONIC_ANDPS = 23, + QX86_MNEMONIC_ARPL = 24, + QX86_MNEMONIC_BLENDPD = 25, + QX86_MNEMONIC_BLENDPS = 26, + QX86_MNEMONIC_BLENDVPD = 27, + QX86_MNEMONIC_BLENDVPS = 28, + QX86_MNEMONIC_BOUND = 29, + QX86_MNEMONIC_BSF = 30, + QX86_MNEMONIC_BSR = 31, + QX86_MNEMONIC_BSWAP = 32, + QX86_MNEMONIC_BT = 33, + QX86_MNEMONIC_BTC = 34, + QX86_MNEMONIC_BTR = 35, + QX86_MNEMONIC_BTS = 36, + QX86_MNEMONIC_CALL = 37, + QX86_MNEMONIC_CALLF = 38, + QX86_MNEMONIC_CBW = 39, + QX86_MNEMONIC_CDQ = 40, + QX86_MNEMONIC_CDQE = 41, + QX86_MNEMONIC_CLC = 42, + QX86_MNEMONIC_CLD = 43, + QX86_MNEMONIC_CLFLUSH = 44, + QX86_MNEMONIC_CLGI = 45, + QX86_MNEMONIC_CLI = 46, + QX86_MNEMONIC_CLTS = 47, + QX86_MNEMONIC_CMC = 48, + QX86_MNEMONIC_CMOVA = 49, + QX86_MNEMONIC_CMOVAE = 50, + QX86_MNEMONIC_CMOVB = 51, + QX86_MNEMONIC_CMOVBE = 52, + QX86_MNEMONIC_CMOVG = 53, + QX86_MNEMONIC_CMOVGE = 54, + QX86_MNEMONIC_CMOVL = 55, + QX86_MNEMONIC_CMOVLE = 56, + QX86_MNEMONIC_CMOVNO = 57, + QX86_MNEMONIC_CMOVNP = 58, + QX86_MNEMONIC_CMOVNS = 59, + QX86_MNEMONIC_CMOVNZ = 60, + QX86_MNEMONIC_CMOVO = 61, + QX86_MNEMONIC_CMOVP = 62, + QX86_MNEMONIC_CMOVS = 63, + QX86_MNEMONIC_CMOVZ = 64, + QX86_MNEMONIC_CMP = 65, + QX86_MNEMONIC_CMPPD = 66, + QX86_MNEMONIC_CMPPS = 67, + QX86_MNEMONIC_CMPSB = 68, + QX86_MNEMONIC_CMPSD = 69, + QX86_MNEMONIC_CMPSD_SSE = 70, + QX86_MNEMONIC_CMPSQ = 71, + QX86_MNEMONIC_CMPSS = 72, + QX86_MNEMONIC_CMPSW = 73, + QX86_MNEMONIC_CMPXCHG = 74, + QX86_MNEMONIC_CMPXCHG16B = 75, + QX86_MNEMONIC_CMPXCHG8B = 76, + QX86_MNEMONIC_COMISD = 77, + QX86_MNEMONIC_COMISS = 78, + QX86_MNEMONIC_CPUID = 79, + QX86_MNEMONIC_CQO = 80, + QX86_MNEMONIC_CRC32 = 81, + QX86_MNEMONIC_CVTDQ2PD = 82, + QX86_MNEMONIC_CVTDQ2PS = 83, + QX86_MNEMONIC_CVTPD2DQ = 84, + QX86_MNEMONIC_CVTPD2PI = 85, + QX86_MNEMONIC_CVTPD2PS = 86, + QX86_MNEMONIC_CVTPI2PD = 87, + QX86_MNEMONIC_CVTPI2PS = 88, + QX86_MNEMONIC_CVTPS2DQ = 89, + QX86_MNEMONIC_CVTPS2PD = 90, + QX86_MNEMONIC_CVTPS2PI = 91, + QX86_MNEMONIC_CVTSD2SI = 92, + QX86_MNEMONIC_CVTSD2SS = 93, + QX86_MNEMONIC_CVTSI2SD = 94, + QX86_MNEMONIC_CVTSI2SS = 95, + QX86_MNEMONIC_CVTSS2SD = 96, + QX86_MNEMONIC_CVTSS2SI = 97, + QX86_MNEMONIC_CVTTPD2DQ = 98, + QX86_MNEMONIC_CVTTPD2PI = 99, + QX86_MNEMONIC_CVTTPS2DQ = 100, + QX86_MNEMONIC_CVTTPS2PI = 101, + QX86_MNEMONIC_CVTTSD2SI = 102, + QX86_MNEMONIC_CVTTSS2SI = 103, + QX86_MNEMONIC_CWD = 104, + QX86_MNEMONIC_CWDE = 105, + QX86_MNEMONIC_DAA = 106, + QX86_MNEMONIC_DAS = 107, + QX86_MNEMONIC_DEC = 108, + QX86_MNEMONIC_DIV = 109, + QX86_MNEMONIC_DIVPD = 110, + QX86_MNEMONIC_DIVPS = 111, + QX86_MNEMONIC_DIVSD = 112, + QX86_MNEMONIC_DIVSS = 113, + QX86_MNEMONIC_DPPD = 114, + QX86_MNEMONIC_DPPS = 115, + QX86_MNEMONIC_EMMS = 116, + QX86_MNEMONIC_ENTER = 117, + QX86_MNEMONIC_EXTRACTPS = 118, + QX86_MNEMONIC_EXTRQ = 119, + QX86_MNEMONIC_F2XM1 = 120, + QX86_MNEMONIC_FABS = 121, + QX86_MNEMONIC_FADD = 122, + QX86_MNEMONIC_FADDP = 123, + QX86_MNEMONIC_FBLD = 124, + QX86_MNEMONIC_FBSTP = 125, + QX86_MNEMONIC_FCHS = 126, + QX86_MNEMONIC_FCMOVB = 127, + QX86_MNEMONIC_FCMOVBE = 128, + QX86_MNEMONIC_FCMOVE = 129, + QX86_MNEMONIC_FCMOVNB = 130, + QX86_MNEMONIC_FCMOVNBE = 131, + QX86_MNEMONIC_FCMOVNE = 132, + QX86_MNEMONIC_FCMOVNU = 133, + QX86_MNEMONIC_FCMOVU = 134, + QX86_MNEMONIC_FCOM = 135, + QX86_MNEMONIC_FCOMI = 136, + QX86_MNEMONIC_FCOMIP = 137, + QX86_MNEMONIC_FCOMP = 138, + QX86_MNEMONIC_FCOMPP = 139, + QX86_MNEMONIC_FCOS = 140, + QX86_MNEMONIC_FDECSTP = 141, + QX86_MNEMONIC_FDIV = 142, + QX86_MNEMONIC_FDIVP = 143, + QX86_MNEMONIC_FDIVR = 144, + QX86_MNEMONIC_FDIVRP = 145, + QX86_MNEMONIC_FEMMS = 146, + QX86_MNEMONIC_FFREE = 147, + QX86_MNEMONIC_FIADD = 148, + QX86_MNEMONIC_FICOM = 149, + QX86_MNEMONIC_FICOMP = 150, + QX86_MNEMONIC_FIDIV = 151, + QX86_MNEMONIC_FIDIVR = 152, + QX86_MNEMONIC_FILD = 153, + QX86_MNEMONIC_FIMUL = 154, + QX86_MNEMONIC_FINCSTP = 155, + QX86_MNEMONIC_FIST = 156, + QX86_MNEMONIC_FISTP = 157, + QX86_MNEMONIC_FISTTP = 158, + QX86_MNEMONIC_FISUB = 159, + QX86_MNEMONIC_FISUBR = 160, + QX86_MNEMONIC_FLD = 161, + QX86_MNEMONIC_FLD1 = 162, + QX86_MNEMONIC_FLDCW = 163, + QX86_MNEMONIC_FLDENV = 164, + QX86_MNEMONIC_FLDL2E = 165, + QX86_MNEMONIC_FLDL2T = 166, + QX86_MNEMONIC_FLDLG2 = 167, + QX86_MNEMONIC_FLDLN2 = 168, + QX86_MNEMONIC_FLDPI = 169, + QX86_MNEMONIC_FLDZ = 170, + QX86_MNEMONIC_FMUL = 171, + QX86_MNEMONIC_FMULP = 172, + QX86_MNEMONIC_FNCLEX = 173, + QX86_MNEMONIC_FNINIT = 174, + QX86_MNEMONIC_FNOP = 175, + QX86_MNEMONIC_FNSAVE = 176, + QX86_MNEMONIC_FNSTCW = 177, + QX86_MNEMONIC_FNSTENV = 178, + QX86_MNEMONIC_FNSTSW = 179, + QX86_MNEMONIC_FPATAN = 180, + QX86_MNEMONIC_FPREM = 181, + QX86_MNEMONIC_FPREM1 = 182, + QX86_MNEMONIC_FPTAN = 183, + QX86_MNEMONIC_FRNDINT = 184, + QX86_MNEMONIC_FRSTOR = 185, + QX86_MNEMONIC_FSCALE = 186, + QX86_MNEMONIC_FSIN = 187, + QX86_MNEMONIC_FSINCOS = 188, + QX86_MNEMONIC_FSQRT = 189, + QX86_MNEMONIC_FST = 190, + QX86_MNEMONIC_FSTP = 191, + QX86_MNEMONIC_FSUB = 192, + QX86_MNEMONIC_FSUBP = 193, + QX86_MNEMONIC_FSUBR = 194, + QX86_MNEMONIC_FSUBRP = 195, + QX86_MNEMONIC_FTST = 196, + QX86_MNEMONIC_FUCOM = 197, + QX86_MNEMONIC_FUCOMI = 198, + QX86_MNEMONIC_FUCOMIP = 199, + QX86_MNEMONIC_FUCOMP = 200, + QX86_MNEMONIC_FUCOMPP = 201, + QX86_MNEMONIC_FWAIT = 202, + QX86_MNEMONIC_FXAM = 203, + QX86_MNEMONIC_FXCH = 204, + QX86_MNEMONIC_FXRSTOR = 205, + QX86_MNEMONIC_FXSAVE = 206, + QX86_MNEMONIC_FXTRACT = 207, + QX86_MNEMONIC_FYL2X = 208, + QX86_MNEMONIC_FYL2XP1 = 209, + QX86_MNEMONIC_GETSEC = 210, + QX86_MNEMONIC_HADDPD = 211, + QX86_MNEMONIC_HADDPS = 212, + QX86_MNEMONIC_HLT = 213, + QX86_MNEMONIC_HSUBPD = 214, + QX86_MNEMONIC_HSUBPS = 215, + QX86_MNEMONIC_IDIV = 216, + QX86_MNEMONIC_IMUL = 217, + QX86_MNEMONIC_IN = 218, + QX86_MNEMONIC_INC = 219, + QX86_MNEMONIC_INSB = 220, + QX86_MNEMONIC_INSD = 221, + QX86_MNEMONIC_INSERTPS = 222, + QX86_MNEMONIC_INSERTQ = 223, + QX86_MNEMONIC_INSW = 224, + QX86_MNEMONIC_INT = 225, + QX86_MNEMONIC_INT1 = 226, + QX86_MNEMONIC_INT3 = 227, + QX86_MNEMONIC_INTO = 228, + QX86_MNEMONIC_INVD = 229, + QX86_MNEMONIC_INVEPT = 230, + QX86_MNEMONIC_INVLPG = 231, + QX86_MNEMONIC_INVLPGA = 232, + QX86_MNEMONIC_INVVPID = 233, + QX86_MNEMONIC_IRET = 234, + QX86_MNEMONIC_IRETD = 235, + QX86_MNEMONIC_IRETQ = 236, + QX86_MNEMONIC_JA = 237, + QX86_MNEMONIC_JAE = 238, + QX86_MNEMONIC_JB = 239, + QX86_MNEMONIC_JBE = 240, + QX86_MNEMONIC_JCXZ = 241, + QX86_MNEMONIC_JECXZ = 242, + QX86_MNEMONIC_JG = 243, + QX86_MNEMONIC_JGE = 244, + QX86_MNEMONIC_JL = 245, + QX86_MNEMONIC_JLE = 246, + QX86_MNEMONIC_JMP = 247, + QX86_MNEMONIC_JMPF = 248, + QX86_MNEMONIC_JNO = 249, + QX86_MNEMONIC_JNP = 250, + QX86_MNEMONIC_JNS = 251, + QX86_MNEMONIC_JNZ = 252, + QX86_MNEMONIC_JO = 253, + QX86_MNEMONIC_JP = 254, + QX86_MNEMONIC_JRCXZ = 255, + QX86_MNEMONIC_JS = 256, + QX86_MNEMONIC_JZ = 257, + QX86_MNEMONIC_LAHF = 258, + QX86_MNEMONIC_LAR = 259, + QX86_MNEMONIC_LCS = 260, + QX86_MNEMONIC_LDDQU = 261, + QX86_MNEMONIC_LDMXCSR = 262, + QX86_MNEMONIC_LDS = 263, + QX86_MNEMONIC_LEA = 264, + QX86_MNEMONIC_LEAVE = 265, + QX86_MNEMONIC_LES = 266, + QX86_MNEMONIC_LFENCE = 267, + QX86_MNEMONIC_LFS = 268, + QX86_MNEMONIC_LGDT = 269, + QX86_MNEMONIC_LGS = 270, + QX86_MNEMONIC_LIDT = 271, + QX86_MNEMONIC_LLDT = 272, + QX86_MNEMONIC_LMSW = 273, + QX86_MNEMONIC_LODSB = 274, + QX86_MNEMONIC_LODSD = 275, + QX86_MNEMONIC_LODSQ = 276, + QX86_MNEMONIC_LODSW = 277, + QX86_MNEMONIC_LOOP = 278, + QX86_MNEMONIC_LOOPNZ = 279, + QX86_MNEMONIC_LOOPZ = 280, + QX86_MNEMONIC_LSL = 281, + QX86_MNEMONIC_LSS = 282, + QX86_MNEMONIC_LTR = 283, + QX86_MNEMONIC_LZCNT = 284, + QX86_MNEMONIC_MASKMOVDQU = 285, + QX86_MNEMONIC_MASKMOVQ = 286, + QX86_MNEMONIC_MAXPD = 287, + QX86_MNEMONIC_MAXPS = 288, + QX86_MNEMONIC_MAXSD = 289, + QX86_MNEMONIC_MAXSS = 290, + QX86_MNEMONIC_MFENCE = 291, + QX86_MNEMONIC_MINPD = 292, + QX86_MNEMONIC_MINPS = 293, + QX86_MNEMONIC_MINSD = 294, + QX86_MNEMONIC_MINSS = 295, + QX86_MNEMONIC_MONITOR = 296, + QX86_MNEMONIC_MOV = 297, + QX86_MNEMONIC_MOVAPD = 298, + QX86_MNEMONIC_MOVAPS = 299, + QX86_MNEMONIC_MOVBE = 300, + QX86_MNEMONIC_MOVD = 301, + QX86_MNEMONIC_MOVDDUP = 302, + QX86_MNEMONIC_MOVDQ2Q = 303, + QX86_MNEMONIC_MOVDQA = 304, + QX86_MNEMONIC_MOVDQU = 305, + QX86_MNEMONIC_MOVHLPS = 306, + QX86_MNEMONIC_MOVHPD = 307, + QX86_MNEMONIC_MOVHPS = 308, + QX86_MNEMONIC_MOVLHPS = 309, + QX86_MNEMONIC_MOVLPD = 310, + QX86_MNEMONIC_MOVLPS = 311, + QX86_MNEMONIC_MOVMSKPD = 312, + QX86_MNEMONIC_MOVMSKPS = 313, + QX86_MNEMONIC_MOVNTDQ = 314, + QX86_MNEMONIC_MOVNTDQA = 315, + QX86_MNEMONIC_MOVNTI = 316, + QX86_MNEMONIC_MOVNTPD = 317, + QX86_MNEMONIC_MOVNTPS = 318, + QX86_MNEMONIC_MOVNTQ = 319, + QX86_MNEMONIC_MOVNTSD = 320, + QX86_MNEMONIC_MOVNTSS = 321, + QX86_MNEMONIC_MOVQ = 322, + QX86_MNEMONIC_MOVQ2DQ = 323, + QX86_MNEMONIC_MOVSB = 324, + QX86_MNEMONIC_MOVSD = 325, + QX86_MNEMONIC_MOVSD_SSE = 326, + QX86_MNEMONIC_MOVSHDUP = 327, + QX86_MNEMONIC_MOVSLDUP = 328, + QX86_MNEMONIC_MOVSQ = 329, + QX86_MNEMONIC_MOVSS = 330, + QX86_MNEMONIC_MOVSW = 331, + QX86_MNEMONIC_MOVSX = 332, + QX86_MNEMONIC_MOVSXD = 333, + QX86_MNEMONIC_MOVUPD = 334, + QX86_MNEMONIC_MOVUPS = 335, + QX86_MNEMONIC_MOVZX = 336, + QX86_MNEMONIC_MPSADBW = 337, + QX86_MNEMONIC_MUL = 338, + QX86_MNEMONIC_MULPD = 339, + QX86_MNEMONIC_MULPS = 340, + QX86_MNEMONIC_MULSD = 341, + QX86_MNEMONIC_MULSS = 342, + QX86_MNEMONIC_MWAIT = 343, + QX86_MNEMONIC_NEG = 344, + QX86_MNEMONIC_NOP = 345, + QX86_MNEMONIC_NOT = 346, + QX86_MNEMONIC_OR = 347, + QX86_MNEMONIC_ORPD = 348, + QX86_MNEMONIC_ORPS = 349, + QX86_MNEMONIC_OUT = 350, + QX86_MNEMONIC_OUTSB = 351, + QX86_MNEMONIC_OUTSD = 352, + QX86_MNEMONIC_OUTSW = 353, + QX86_MNEMONIC_PABSB = 354, + QX86_MNEMONIC_PABSD = 355, + QX86_MNEMONIC_PABSW = 356, + QX86_MNEMONIC_PACKSSDW = 357, + QX86_MNEMONIC_PACKSSWB = 358, + QX86_MNEMONIC_PACKUSDW = 359, + QX86_MNEMONIC_PACKUSWB = 360, + QX86_MNEMONIC_PADDB = 361, + QX86_MNEMONIC_PADDD = 362, + QX86_MNEMONIC_PADDQ = 363, + QX86_MNEMONIC_PADDSB = 364, + QX86_MNEMONIC_PADDSW = 365, + QX86_MNEMONIC_PADDUSB = 366, + QX86_MNEMONIC_PADDUSW = 367, + QX86_MNEMONIC_PADDW = 368, + QX86_MNEMONIC_PALIGNR = 369, + QX86_MNEMONIC_PAND = 370, + QX86_MNEMONIC_PANDN = 371, + QX86_MNEMONIC_PAUSE = 372, + QX86_MNEMONIC_PAVGB = 373, + QX86_MNEMONIC_PAVGUSB = 374, + QX86_MNEMONIC_PAVGW = 375, + QX86_MNEMONIC_PBLENDVB = 376, + QX86_MNEMONIC_PBLENDW = 377, + QX86_MNEMONIC_PCLMULQDQ = 378, + QX86_MNEMONIC_PCMPEQB = 379, + QX86_MNEMONIC_PCMPEQD = 380, + QX86_MNEMONIC_PCMPEQQ = 381, + QX86_MNEMONIC_PCMPEQW = 382, + QX86_MNEMONIC_PCMPESTRI = 383, + QX86_MNEMONIC_PCMPESTRM = 384, + QX86_MNEMONIC_PCMPGTB = 385, + QX86_MNEMONIC_PCMPGTD = 386, + QX86_MNEMONIC_PCMPGTQ = 387, + QX86_MNEMONIC_PCMPGTW = 388, + QX86_MNEMONIC_PCMPISTRI = 389, + QX86_MNEMONIC_PCMPISTRM = 390, + QX86_MNEMONIC_PEXTRB = 391, + QX86_MNEMONIC_PEXTRD = 392, + QX86_MNEMONIC_PEXTRQ = 393, + QX86_MNEMONIC_PEXTRW = 394, + QX86_MNEMONIC_PF2ID = 395, + QX86_MNEMONIC_PF2IW = 396, + QX86_MNEMONIC_PFACC = 397, + QX86_MNEMONIC_PFADD = 398, + QX86_MNEMONIC_PFCMPEQ = 399, + QX86_MNEMONIC_PFCMPGE = 400, + QX86_MNEMONIC_PFCMPGT = 401, + QX86_MNEMONIC_PFMAX = 402, + QX86_MNEMONIC_PFMIN = 403, + QX86_MNEMONIC_PFMUL = 404, + QX86_MNEMONIC_PFNACC = 405, + QX86_MNEMONIC_PFPNACC = 406, + QX86_MNEMONIC_PFRCP = 407, + QX86_MNEMONIC_PFRCPIT1 = 408, + QX86_MNEMONIC_PFRCPIT2 = 409, + QX86_MNEMONIC_PFRSQIT1 = 410, + QX86_MNEMONIC_PFRSQRT = 411, + QX86_MNEMONIC_PFSUB = 412, + QX86_MNEMONIC_PFSUBR = 413, + QX86_MNEMONIC_PHADDD = 414, + QX86_MNEMONIC_PHADDSW = 415, + QX86_MNEMONIC_PHADDW = 416, + QX86_MNEMONIC_PHMINPOSUW = 417, + QX86_MNEMONIC_PHSUBD = 418, + QX86_MNEMONIC_PHSUBSW = 419, + QX86_MNEMONIC_PHSUBW = 420, + QX86_MNEMONIC_PI2FD = 421, + QX86_MNEMONIC_PI2FW = 422, + QX86_MNEMONIC_PINSRB = 423, + QX86_MNEMONIC_PINSRD = 424, + QX86_MNEMONIC_PINSRQ = 425, + QX86_MNEMONIC_PINSRW = 426, + QX86_MNEMONIC_PMADDUBSW = 427, + QX86_MNEMONIC_PMADDWD = 428, + QX86_MNEMONIC_PMAXSB = 429, + QX86_MNEMONIC_PMAXSD = 430, + QX86_MNEMONIC_PMAXSW = 431, + QX86_MNEMONIC_PMAXUB = 432, + QX86_MNEMONIC_PMAXUD = 433, + QX86_MNEMONIC_PMAXUW = 434, + QX86_MNEMONIC_PMINSB = 435, + QX86_MNEMONIC_PMINSD = 436, + QX86_MNEMONIC_PMINSW = 437, + QX86_MNEMONIC_PMINUB = 438, + QX86_MNEMONIC_PMINUD = 439, + QX86_MNEMONIC_PMINUW = 440, + QX86_MNEMONIC_PMOVMSKB = 441, + QX86_MNEMONIC_PMOVSXBD = 442, + QX86_MNEMONIC_PMOVSXBQ = 443, + QX86_MNEMONIC_PMOVSXBW = 444, + QX86_MNEMONIC_PMOVSXDQ = 445, + QX86_MNEMONIC_PMOVSXWD = 446, + QX86_MNEMONIC_PMOVSXWQ = 447, + QX86_MNEMONIC_PMOVZXBD = 448, + QX86_MNEMONIC_PMOVZXBQ = 449, + QX86_MNEMONIC_PMOVZXBW = 450, + QX86_MNEMONIC_PMOVZXDQ = 451, + QX86_MNEMONIC_PMOVZXWD = 452, + QX86_MNEMONIC_PMOVZXWQ = 453, + QX86_MNEMONIC_PMULDQ = 454, + QX86_MNEMONIC_PMULHRSW = 455, + QX86_MNEMONIC_PMULHRW = 456, + QX86_MNEMONIC_PMULHUW = 457, + QX86_MNEMONIC_PMULHW = 458, + QX86_MNEMONIC_PMULLD = 459, + QX86_MNEMONIC_PMULLW = 460, + QX86_MNEMONIC_PMULUDQ = 461, + QX86_MNEMONIC_POP = 462, + QX86_MNEMONIC_POPA = 463, + QX86_MNEMONIC_POPAD = 464, + QX86_MNEMONIC_POPCNT = 465, + QX86_MNEMONIC_POPF = 466, + QX86_MNEMONIC_POPFD = 467, + QX86_MNEMONIC_POPFQ = 468, + QX86_MNEMONIC_POR = 469, + QX86_MNEMONIC_PREFETCH = 470, + QX86_MNEMONIC_PREFETCHNTA = 471, + QX86_MNEMONIC_PREFETCHT0 = 472, + QX86_MNEMONIC_PREFETCHT1 = 473, + QX86_MNEMONIC_PREFETCHT2 = 474, + QX86_MNEMONIC_PREFETCHW = 475, + QX86_MNEMONIC_PSADBW = 476, + QX86_MNEMONIC_PSHUFB = 477, + QX86_MNEMONIC_PSHUFD = 478, + QX86_MNEMONIC_PSHUFHW = 479, + QX86_MNEMONIC_PSHUFLW = 480, + QX86_MNEMONIC_PSHUFW = 481, + QX86_MNEMONIC_PSIGNB = 482, + QX86_MNEMONIC_PSIGND = 483, + QX86_MNEMONIC_PSIGNW = 484, + QX86_MNEMONIC_PSLLD = 485, + QX86_MNEMONIC_PSLLDQ = 486, + QX86_MNEMONIC_PSLLQ = 487, + QX86_MNEMONIC_PSLLW = 488, + QX86_MNEMONIC_PSRAD = 489, + QX86_MNEMONIC_PSRAW = 490, + QX86_MNEMONIC_PSRLD = 491, + QX86_MNEMONIC_PSRLDQ = 492, + QX86_MNEMONIC_PSRLQ = 493, + QX86_MNEMONIC_PSRLW = 494, + QX86_MNEMONIC_PSUBB = 495, + QX86_MNEMONIC_PSUBD = 496, + QX86_MNEMONIC_PSUBQ = 497, + QX86_MNEMONIC_PSUBSB = 498, + QX86_MNEMONIC_PSUBSW = 499, + QX86_MNEMONIC_PSUBUSB = 500, + QX86_MNEMONIC_PSUBUSW = 501, + QX86_MNEMONIC_PSUBW = 502, + QX86_MNEMONIC_PSWAPD = 503, + QX86_MNEMONIC_PTEST = 504, + QX86_MNEMONIC_PUNPCKHBW = 505, + QX86_MNEMONIC_PUNPCKHDQ = 506, + QX86_MNEMONIC_PUNPCKHQDQ = 507, + QX86_MNEMONIC_PUNPCKHWD = 508, + QX86_MNEMONIC_PUNPCKLBW = 509, + QX86_MNEMONIC_PUNPCKLDQ = 510, + QX86_MNEMONIC_PUNPCKLQDQ = 511, + QX86_MNEMONIC_PUNPCKLWD = 512, + QX86_MNEMONIC_PUSH = 513, + QX86_MNEMONIC_PUSHA = 514, + QX86_MNEMONIC_PUSHAD = 515, + QX86_MNEMONIC_PUSHF = 516, + QX86_MNEMONIC_PUSHFD = 517, + QX86_MNEMONIC_PUSHFQ = 518, + QX86_MNEMONIC_PXOR = 519, + QX86_MNEMONIC_RCL = 520, + QX86_MNEMONIC_RCPPS = 521, + QX86_MNEMONIC_RCPSS = 522, + QX86_MNEMONIC_RCR = 523, + QX86_MNEMONIC_RDMSR = 524, + QX86_MNEMONIC_RDPMC = 525, + QX86_MNEMONIC_RDTSC = 526, + QX86_MNEMONIC_RDTSCP = 527, + QX86_MNEMONIC_RET = 528, + QX86_MNEMONIC_RETF = 529, + QX86_MNEMONIC_ROL = 530, + QX86_MNEMONIC_ROR = 531, + QX86_MNEMONIC_ROUNDPD = 532, + QX86_MNEMONIC_ROUNDPS = 533, + QX86_MNEMONIC_ROUNDSD = 534, + QX86_MNEMONIC_ROUNDSS = 535, + QX86_MNEMONIC_RSM = 536, + QX86_MNEMONIC_RSQRTPS = 537, + QX86_MNEMONIC_RSQRTSS = 538, + QX86_MNEMONIC_SAHF = 539, + QX86_MNEMONIC_SALC = 540, + QX86_MNEMONIC_SAR = 541, + QX86_MNEMONIC_SBB = 542, + QX86_MNEMONIC_SCASB = 543, + QX86_MNEMONIC_SCASD = 544, + QX86_MNEMONIC_SCASQ = 545, + QX86_MNEMONIC_SCASW = 546, + QX86_MNEMONIC_SETA = 547, + QX86_MNEMONIC_SETAE = 548, + QX86_MNEMONIC_SETB = 549, + QX86_MNEMONIC_SETBE = 550, + QX86_MNEMONIC_SETG = 551, + QX86_MNEMONIC_SETGE = 552, + QX86_MNEMONIC_SETL = 553, + QX86_MNEMONIC_SETLE = 554, + QX86_MNEMONIC_SETNO = 555, + QX86_MNEMONIC_SETNP = 556, + QX86_MNEMONIC_SETNS = 557, + QX86_MNEMONIC_SETNZ = 558, + QX86_MNEMONIC_SETO = 559, + QX86_MNEMONIC_SETP = 560, + QX86_MNEMONIC_SETS = 561, + QX86_MNEMONIC_SETZ = 562, + QX86_MNEMONIC_SFENCE = 563, + QX86_MNEMONIC_SGDT = 564, + QX86_MNEMONIC_SHL = 565, + QX86_MNEMONIC_SHLD = 566, + QX86_MNEMONIC_SHR = 567, + QX86_MNEMONIC_SHRD = 568, + QX86_MNEMONIC_SHUFPD = 569, + QX86_MNEMONIC_SHUFPS = 570, + QX86_MNEMONIC_SIDT = 571, + QX86_MNEMONIC_SKINIT = 572, + QX86_MNEMONIC_SLDT = 573, + QX86_MNEMONIC_SMSW = 574, + QX86_MNEMONIC_SQRTPD = 575, + QX86_MNEMONIC_SQRTPS = 576, + QX86_MNEMONIC_SQRTSD = 577, + QX86_MNEMONIC_SQRTSS = 578, + QX86_MNEMONIC_STC = 579, + QX86_MNEMONIC_STD = 580, + QX86_MNEMONIC_STGI = 581, + QX86_MNEMONIC_STI = 582, + QX86_MNEMONIC_STMXCSR = 583, + QX86_MNEMONIC_STOSB = 584, + QX86_MNEMONIC_STOSD = 585, + QX86_MNEMONIC_STOSQ = 586, + QX86_MNEMONIC_STOSW = 587, + QX86_MNEMONIC_STR = 588, + QX86_MNEMONIC_SUB = 589, + QX86_MNEMONIC_SUBPD = 590, + QX86_MNEMONIC_SUBPS = 591, + QX86_MNEMONIC_SUBSD = 592, + QX86_MNEMONIC_SUBSS = 593, + QX86_MNEMONIC_SWAPGS = 594, + QX86_MNEMONIC_SYSCALL = 595, + QX86_MNEMONIC_SYSENTER = 596, + QX86_MNEMONIC_SYSEXIT = 597, + QX86_MNEMONIC_SYSRET = 598, + QX86_MNEMONIC_TEST = 599, + QX86_MNEMONIC_UCOMISD = 600, + QX86_MNEMONIC_UCOMISS = 601, + QX86_MNEMONIC_UD2 = 602, + QX86_MNEMONIC_UNPCKHPD = 603, + QX86_MNEMONIC_UNPCKHPS = 604, + QX86_MNEMONIC_UNPCKLPD = 605, + QX86_MNEMONIC_UNPCKLPS = 606, + QX86_MNEMONIC_VERR = 607, + QX86_MNEMONIC_VERW = 608, + QX86_MNEMONIC_VMCALL = 609, + QX86_MNEMONIC_VMCLEAR = 610, + QX86_MNEMONIC_VMLAUNCH = 611, + QX86_MNEMONIC_VMLOAD = 612, + QX86_MNEMONIC_VMMCALL = 613, + QX86_MNEMONIC_VMPTRLD = 614, + QX86_MNEMONIC_VMPTRST = 615, + QX86_MNEMONIC_VMREAD = 616, + QX86_MNEMONIC_VMRESUME = 617, + QX86_MNEMONIC_VMRUN = 618, + QX86_MNEMONIC_VMSAVE = 619, + QX86_MNEMONIC_VMWRITE = 620, + QX86_MNEMONIC_VMXOFF = 621, + QX86_MNEMONIC_VMXON = 622, + QX86_MNEMONIC_WBINVD = 623, + QX86_MNEMONIC_WRMSR = 624, + QX86_MNEMONIC_XADD = 625, + QX86_MNEMONIC_XCHG = 626, + QX86_MNEMONIC_XGETBV = 627, + QX86_MNEMONIC_XLAT = 628, + QX86_MNEMONIC_XOR = 629, + QX86_MNEMONIC_XORPD = 630, + QX86_MNEMONIC_XORPS = 631, + QX86_MNEMONIC_XRSTOR = 632, + QX86_MNEMONIC_XSAVE = 633, + QX86_MNEMONIC_XSETBV = 634, + + QX86_MNEMONIC_COUNT = 635 +}; + + +/** + * Enumeration of mnemonic attributes. + * + * \author icee + * \since 1.0 + */ +enum +{ + QX86_MATTRIBUTE_NONE = 0, + QX86_MATTRIBUTE_REP = 1 << 0, + QX86_MATTRIBUTE_REPZ = 1 << 1, + QX86_MATTRIBUTE_DEFAULT_SIZE_64 = 1 << 2, + QX86_MATTRIBUTE_FIXED_SIZE_64 = 1 << 3, + QX86_MATTRIBUTE_INTERLOCKABLE = 1 << 4, + QX86_MATTRIBUTE_IMPLICIT_LOCK = 1 << 5 +}; + + + +/** + * Enumeration of ModRM fields. + * + * \author icee + * \since 1.0 + */ +enum +{ + QX86_MODRM_FIELD_NONE = 0, + + QX86_MODRM_FIELD_MOD = 1 << 0, + QX86_MODRM_FIELD_REG = 1 << 2, + QX86_MODRM_FIELD_RM = 1 << 3 +}; + + + +/** + * Enumeration of x86 opcode escapes. + * + * \author icee + * \since 1.0 + */ +enum +{ + QX86_OPCODE_ESCAPE_NONE = 0, + + QX86_OPCODE_ESCAPE_0F = 1, + QX86_OPCODE_ESCAPE_0F_38 = 2, + QX86_OPCODE_ESCAPE_0F_3A = 3, + + QX86_OPCODE_ESCAPE_COUNT = 4 +}; + + + +/** + * Enumeration of opcode map indexes. + * + * \author icee + * \since 1.0 + */ +enum +{ + QX86_OPCODE_MAP_INDEX_NONE = 0, + + QX86_OPCODE_MAP_INDEX_NB = 1, + QX86_OPCODE_MAP_INDEX_PB = 2, + + QX86_OPCODE_MAP_INDEX_AS = 3, + QX86_OPCODE_MAP_INDEX_CS = 4, + QX86_OPCODE_MAP_INDEX_OS = 5, + + QX86_OPCODE_MAP_INDEX_SP = 6, + + QX86_OPCODE_MAP_INDEX_MOD = 7, + QX86_OPCODE_MAP_INDEX_REG = 8, + QX86_OPCODE_MAP_INDEX_RM = 9, + + QX86_OPCODE_MAP_INDEX_COUNT = 10 +}; + + + +/** + * Enumeration of opcode map item codes. + * + * \author icee + * \since 1.0 + */ +enum +{ + QX86_OPCODE_MAP_ITEM_CODE_NONE = -0, + QX86_OPCODE_MAP_ITEM_CODE_LINK = -1, + QX86_OPCODE_MAP_ITEM_CODE_PREFIX = -2 +}; + + + +/** + * Enumeration of x86 operand attributes. + * + * \author icee + * \since 1.0 + */ +enum +{ + QX86_OPERAND_ATTRIBUTE_NONE = 0, + + QX86_OPERAND_ATTRIBUTE_READ = 1, + QX86_OPERAND_ATTRIBUTE_WRITTEN = 2, + QX86_OPERAND_ATTRIBUTE_READWRITTEN = 3, + + QX86_OPERAND_ATTRIBUTE_RW_CERTAIN = 4 +}; + + + +/** + * Enumeration of x86 operand form types. + * + * \author icee + * \since 1.0 + */ +enum +{ + QX86_OPERAND_FORM_TYPE_NONE = 0, + + QX86_OPERAND_FORM_TYPE_AMODE = 1, + QX86_OPERAND_FORM_TYPE_IMPLICIT_1 = 2, + QX86_OPERAND_FORM_TYPE_RTUPLE = 3, + + QX86_OPERAND_FORM_COUNT = 4 +}; + + + +/** + * Enumeration of x86 operand types. + * + * \author icee + * \since 1.0 + */ +enum +{ + QX86_OPERAND_TYPE_NONE = 0, + + QX86_OPERAND_TYPE_FAR_POINTER = 1, + QX86_OPERAND_TYPE_IMMEDIATE = 2, + QX86_OPERAND_TYPE_JUMP_OFFSET = 3, + QX86_OPERAND_TYPE_MEMORY = 4, + QX86_OPERAND_TYPE_REGISTER = 5, + + QX86_OPERAND_TYPE_COUNT = 6 +}; + + + +/** + * Enumeration of x86 register classes. + * + * \author icee + * \since 1.0 + */ +enum +{ + QX86_RCLASS_NONE = 0, + QX86_RCLASS_IP = 1, + QX86_RCLASS_FLAGS = 2, + QX86_RCLASS_RESERVED_3 = 3, + + QX86_RCLASS_REG8 = 4, + QX86_RCLASS_REG16 = 5, + QX86_RCLASS_REG32 = 6, + QX86_RCLASS_REG64 = 7, + + QX86_RCLASS_CREG = 8, + QX86_RCLASS_DREG = 9, + QX86_RCLASS_SREG = 10, + QX86_RCLASS_RESERVED_11 = 11, + + QX86_RCLASS_X87 = 12, + QX86_RCLASS_MMX = 13, + QX86_RCLASS_XMM = 14, + QX86_RCLASS_YMM = 15, + + QX86_RCLASS_COUNT = 16 +}; + + + +/** + * Enumeration of x86 registers. + * + * \author icee + * \since 1.0 + */ +enum +{ + QX86_REGISTER_NONE = 0, + QX86_REGISTER_INVALID = 1, + QX86_REGISTER_SPECIAL = 2, + QX86_REGISTER_RESERVED_3 = 3, + + QX86_REGISTER_RESERVED_4 = 4, + QX86_REGISTER_IP = 5, + QX86_REGISTER_EIP = 6, + QX86_REGISTER_RIP = 7, + + QX86_REGISTER_RESERVED_8 = 8, + QX86_REGISTER_FLAGS = 9, + QX86_REGISTER_EFLAGS = 10, + QX86_REGISTER_RFLAGS = 11, + + QX86_REGISTER_AH = 12, + QX86_REGISTER_CH = 13, + QX86_REGISTER_DH = 14, + QX86_REGISTER_BH = 15, + + QX86_REGISTER_AL = 16, + QX86_REGISTER_CL = 17, + QX86_REGISTER_DL = 18, + QX86_REGISTER_BL = 19, + QX86_REGISTER_SPL = 20, + QX86_REGISTER_BPL = 21, + QX86_REGISTER_SIL = 22, + QX86_REGISTER_DIL = 23, + QX86_REGISTER_R8B = 24, + QX86_REGISTER_R9B = 25, + QX86_REGISTER_R10B = 26, + QX86_REGISTER_R11B = 27, + QX86_REGISTER_R12B = 28, + QX86_REGISTER_R13B = 29, + QX86_REGISTER_R14B = 30, + QX86_REGISTER_R15B = 31, + + QX86_REGISTER_AX = 32, + QX86_REGISTER_CX = 33, + QX86_REGISTER_DX = 34, + QX86_REGISTER_BX = 35, + QX86_REGISTER_SP = 36, + QX86_REGISTER_BP = 37, + QX86_REGISTER_SI = 38, + QX86_REGISTER_DI = 39, + QX86_REGISTER_R8W = 40, + QX86_REGISTER_R9W = 41, + QX86_REGISTER_R10W = 42, + QX86_REGISTER_R11W = 43, + QX86_REGISTER_R12W = 44, + QX86_REGISTER_R13W = 45, + QX86_REGISTER_R14W = 46, + QX86_REGISTER_R15W = 47, + + QX86_REGISTER_EAX = 48, + QX86_REGISTER_ECX = 49, + QX86_REGISTER_EDX = 50, + QX86_REGISTER_EBX = 51, + QX86_REGISTER_ESP = 52, + QX86_REGISTER_EBP = 53, + QX86_REGISTER_ESI = 54, + QX86_REGISTER_EDI = 55, + QX86_REGISTER_R8D = 56, + QX86_REGISTER_R9D = 57, + QX86_REGISTER_R10D = 58, + QX86_REGISTER_R11D = 59, + QX86_REGISTER_R12D = 60, + QX86_REGISTER_R13D = 61, + QX86_REGISTER_R14D = 62, + QX86_REGISTER_R15D = 63, + + QX86_REGISTER_RAX = 64, + QX86_REGISTER_RCX = 65, + QX86_REGISTER_RDX = 66, + QX86_REGISTER_RBX = 67, + QX86_REGISTER_RSP = 68, + QX86_REGISTER_RBP = 69, + QX86_REGISTER_RSI = 70, + QX86_REGISTER_RDI = 71, + QX86_REGISTER_R8 = 72, + QX86_REGISTER_R9 = 73, + QX86_REGISTER_R10 = 74, + QX86_REGISTER_R11 = 75, + QX86_REGISTER_R12 = 76, + QX86_REGISTER_R13 = 77, + QX86_REGISTER_R14 = 78, + QX86_REGISTER_R15 = 79, + + QX86_REGISTER_CR0 = 80, + QX86_REGISTER_CR1 = 81, + QX86_REGISTER_CR2 = 82, + QX86_REGISTER_CR3 = 83, + QX86_REGISTER_CR4 = 84, + QX86_REGISTER_CR5 = 85, + QX86_REGISTER_CR6 = 86, + QX86_REGISTER_CR7 = 87, + QX86_REGISTER_CR8 = 88, + QX86_REGISTER_CR9 = 89, + QX86_REGISTER_CR10 = 90, + QX86_REGISTER_CR11 = 91, + QX86_REGISTER_CR12 = 92, + QX86_REGISTER_CR13 = 93, + QX86_REGISTER_CR14 = 94, + QX86_REGISTER_CR15 = 95, + + QX86_REGISTER_DR0 = 96, + QX86_REGISTER_DR1 = 97, + QX86_REGISTER_DR2 = 98, + QX86_REGISTER_DR3 = 99, + QX86_REGISTER_DR4 = 100, + QX86_REGISTER_DR5 = 101, + QX86_REGISTER_DR6 = 102, + QX86_REGISTER_DR7 = 103, + QX86_REGISTER_DR8 = 104, + QX86_REGISTER_DR9 = 105, + QX86_REGISTER_DR10 = 106, + QX86_REGISTER_DR11 = 107, + QX86_REGISTER_DR12 = 108, + QX86_REGISTER_DR13 = 109, + QX86_REGISTER_DR14 = 110, + QX86_REGISTER_DR15 = 111, + + QX86_REGISTER_ES = 112, + QX86_REGISTER_CS = 113, + QX86_REGISTER_SS = 114, + QX86_REGISTER_DS = 115, + QX86_REGISTER_FS = 116, + QX86_REGISTER_GS = 117, + QX86_REGISTER_SR6 = 118, + QX86_REGISTER_SR7 = 119, + + QX86_REGISTER_ST0 = 120, + QX86_REGISTER_ST1 = 121, + QX86_REGISTER_ST2 = 122, + QX86_REGISTER_ST3 = 123, + QX86_REGISTER_ST4 = 124, + QX86_REGISTER_ST5 = 125, + QX86_REGISTER_ST6 = 126, + QX86_REGISTER_ST7 = 127, + + QX86_REGISTER_FPR0 = 128, + QX86_REGISTER_FPR1 = 129, + QX86_REGISTER_FPR2 = 130, + QX86_REGISTER_FPR3 = 131, + QX86_REGISTER_FPR4 = 132, + QX86_REGISTER_FPR5 = 133, + QX86_REGISTER_FPR6 = 134, + QX86_REGISTER_FPR7 = 135, + + QX86_REGISTER_MMX0 = 136, + QX86_REGISTER_MMX1 = 137, + QX86_REGISTER_MMX2 = 138, + QX86_REGISTER_MMX3 = 139, + QX86_REGISTER_MMX4 = 140, + QX86_REGISTER_MMX5 = 141, + QX86_REGISTER_MMX6 = 142, + QX86_REGISTER_MMX7 = 143, + + QX86_REGISTER_XMM0 = 144, + QX86_REGISTER_XMM1 = 145, + QX86_REGISTER_XMM2 = 146, + QX86_REGISTER_XMM3 = 147, + QX86_REGISTER_XMM4 = 148, + QX86_REGISTER_XMM5 = 149, + QX86_REGISTER_XMM6 = 150, + QX86_REGISTER_XMM7 = 151, + QX86_REGISTER_XMM8 = 152, + QX86_REGISTER_XMM9 = 153, + QX86_REGISTER_XMM10 = 154, + QX86_REGISTER_XMM11 = 155, + QX86_REGISTER_XMM12 = 156, + QX86_REGISTER_XMM13 = 157, + QX86_REGISTER_XMM14 = 158, + QX86_REGISTER_XMM15 = 159, + + QX86_REGISTER_YMM0 = 160, + QX86_REGISTER_YMM1 = 161, + QX86_REGISTER_YMM2 = 162, + QX86_REGISTER_YMM3 = 163, + QX86_REGISTER_YMM4 = 164, + QX86_REGISTER_YMM5 = 165, + QX86_REGISTER_YMM6 = 166, + QX86_REGISTER_YMM7 = 167, + QX86_REGISTER_YMM8 = 168, + QX86_REGISTER_YMM9 = 169, + QX86_REGISTER_YMM10 = 170, + QX86_REGISTER_YMM11 = 171, + QX86_REGISTER_YMM12 = 172, + QX86_REGISTER_YMM13 = 173, + QX86_REGISTER_YMM14 = 174, + QX86_REGISTER_YMM15 = 175, + + QX86_REGISTER_COUNT = 176 +}; + + + +/** + * Enumeration of ModRM and SIB scale values. + * + * \author icee + * \since 1.0 + */ +enum +{ + QX86_SCALE_NONE = 0, + QX86_SCALE_X2 = 1, + QX86_SCALE_X4 = 2, + QX86_SCALE_X8 = 3, + QX86_SCALE_INVALID = 4 +}; + + + +/** + * Enumeration of x86 code, address, operand, and stack sizes. + * + * \author icee + * \since 1.0 + */ +enum +{ + QX86_SIZE_16 = 0, + QX86_SIZE_32 = 1, + QX86_SIZE_64 = 2, + QX86_SIZE_INVALID = 3, + QX86_SIZE_MASK = 3 +}; + + + +/** + * Enumeration of x86 subregisters. + * + * \author icee + * \since 1.0 + */ +enum +{ + QX86_SUBREG_NONE = 0, + + QX86_SUBREG_BASE = 1, + QX86_SUBREG_LIMIT = 2, + QX86_SUBREG_FLAGS = 3, + + QX86_SUBREG_COUNT = 4 +}; + + +/* Public API structures. */ + + +/** + * Addressing mode definition structure. + * + * \author icee + * \since 1.0 + */ +struct qx86_amode +{ + const char * referenceName; + const char * name; + + qx86_uint8 modrmField; + qx86_uint8 rclass; + + int (*decodeFunc)(qx86_insn *, int); +}; + + + +/** + * Callback function definition. + * + * \author icee + * \since 1.0 + */ +typedef int (*qx86_callback)(void *data, int rindex, int subreg, unsigned char *value); + + + +/** + * Decode context structure. + * + * \author icee + * \since 1.0 + */ +struct qx86_ctx +{ + qx86_uint8 * ptr; + int ptrSize; + + int pumpIndex; +}; + + + + + +/** + * Instruction attributes definition structure. + * + * \author icee + * \since 1.0 + */ +struct qx86_insn_attributes +{ + qx86_uint8 addressSize; + qx86_uint8 addressSizeOverridden; + + qx86_uint8 operandSize; + qx86_uint8 operandSizeOverridden; + + qx86_uint8 interlocked; +}; + + + +/** + * Instruction modifiers definition structure. + * + * \author icee + * \since 1.0 + */ +struct qx86_insn_modifiers +{ + qx86_uint8 modrm; + qx86_int8 modrmIndex; + + qx86_uint8 sib; + qx86_int8 sibIndex; + + qx86_uint8 rex; + qx86_int8 rexIndex; + + qx86_uint8 prefixSize; + + qx86_uint8 escape; + qx86_uint8 opcodePrefix; + + /* XXX: values 0x00, 0xF2, 0xF3. */ + qx86_uint8 repeatPrefix; + + int sriOverride; + + qx86_uint8 extendedB; + qx86_uint8 extendedR; + qx86_uint8 extendedX; +}; + + + + + + + +/** + * Far pointer instruction operand definition structure. + * + * \author icee + * \since 1.0 + */ +struct qx86_operand_far_pointer +{ + qx86_uint8 offset[QX86_IMMEDIATE_SIZE_MAX]; + qx86_uint8 offsetSize; + + qx86_uint8 selector[2]; +}; + + + +/** + * Immediate instruction operand definition structure. + * + * \author icee + * \since 1.0 + */ +struct qx86_operand_immediate +{ + qx86_uint8 value[QX86_IMMEDIATE_SIZE_MAX]; + qx86_uint8 valueSize; +}; + + + +/** + * Jump offset instruction operand definition structure. + * + * \author icee + * \since 1.0 + */ +struct qx86_operand_jump_offset +{ + qx86_uint8 offset[QX86_IMMEDIATE_SIZE_MAX]; + qx86_uint8 offsetSize; +}; + + + +/** + * Memory instruction operand definition structure. + * + * \author icee + * \since 1.0 + */ +struct qx86_operand_memory +{ + int sri; + int bri; + int iri; + + int scale; + + qx86_uint8 disp[QX86_IMMEDIATE_SIZE_MAX]; + qx86_uint8 dispSize; +}; + + + +/** + * Register instruction operand definition structure. + * + * \author icee + * \since 1.0 + */ +struct qx86_operand_register +{ + int rindex; +}; + + +/** + * Instruction operand definition union. + * + * \author icee + * \since 1.0 + */ +union qx86_operand_union +{ + qx86_operand_far_pointer f; + qx86_operand_immediate i; + qx86_operand_jump_offset j; + qx86_operand_memory m; + qx86_operand_register r; +}; + + +/** + * Instruction operand definition structure. + * + * \author icee + * \since 1.0 + */ +struct qx86_operand +{ + qx86_uint8 ot; + + int attributes; + int size; + + qx86_operand_union u; +}; + + +/** + * Instruction definition structure. + * + * \author icee + * \since 1.0 + */ +struct qx86_insn +{ + qx86_uint8 rawSize; + qx86_uint8 raw[QX86_INSN_SIZE_MAX]; + + int processorMode; + + int mnemonic; + qx86_int8 operandCount; + + qx86_operand operands[QX86_OPERAND_NMAX]; + qx86_operand_form * operandForms[QX86_OPERAND_NMAX]; + + qx86_insn_attributes attributes; + qx86_insn_modifiers modifiers; + + qx86_uint8 iclass; + qx86_uint8 defects; + + qx86_callback callback; + void * data; +}; + + + +/** + * Mnemonic table item definition structure. + * + * \author icee + * \since 1.0 + */ +struct qx86_mtab_item +{ + const char * referenceName; + const char * name; + + qx86_uint8 attributes; + qx86_uint8 iclass; + + int demoted; + int promoted; + + // TODO: AT&T print. +}; + + + +/** + * Opcode map definition structure. + * + * \author icee + * \since 1.0 + */ +struct qx86_opcode_map +{ + qx86_uint8 index; + qx86_uint8 limit; + + qx86_opcode_map_item * items; +}; + + + + + + + + + +/** + * Addressing mode instruction operand form definition structure. + * + * \author icee + * \since 1.0 + */ +struct qx86_operand_form_amode +{ + qx86_amode * amode; + qx86_stuple * stuple; +}; + + + +/** + * Register tuple instruction operand form definition structure. + * + * \author icee + * \since 1.0 + */ +struct qx86_operand_form_rtuple +{ + qx86_rtuple * rtuple; +}; + + +/** + * Instruction operand form definition union. + * + * \author icee + * \since 1.0 + */ +union qx86_operand_form_union +{ + const void * initializer[2]; + + qx86_operand_form_amode a; + qx86_operand_form_rtuple r; +}; + + +/** + * Instruction operand form definition structure. + * + * \author icee + * \since 1.0 + */ +struct qx86_operand_form +{ + int ft; + int attributes; + qx86_operand_form_union u; +}; + + +/** + * Opcode map item definition structure. + * + * \author icee + * \since 1.0 + */ +struct qx86_opcode_map_item +{ + int code; + qx86_opcode_map * link; + + int operandCount; + qx86_operand_form operandForms[QX86_OPERAND_NMAX]; +}; + + + +/** + * Print item definition structure. + * + * \author icee + * \since 1.0 + */ +struct qx86_print_item +{ + const qx86_uint8 * number; + int numberSize; + + const char * string; +}; + + + +/** + * Intel print options structure. + * + * \author icee + * \since 1.0 + */ +struct qx86_print_options_intel +{ + int flipCase : 1; +}; + + + +/** + * Register table item definition structure. + * + * \author icee + * \since 1.0 + */ +struct qx86_rtab_item +{ + const char * referenceName; + const char * name; + + qx86_uint8 rclass; + qx86_uint8 size; +}; + + + +/** + * Register tuple definition structure. + * + * \author icee + * \since 1.0 + */ +struct qx86_rtuple +{ + const char * referenceName; + const char * name; + + int rindexes[12]; +}; + + + +/** + * Size tuple definition structure. + * + * \author icee + * \since 1.0 + */ +struct qx86_stuple +{ + const char * referenceName; + const char * name; + + const char * atoms[4]; + int sizes[4]; +}; + + +/** + * Extract the mod ModRM field value. + * + * \param modrm + * ModRM octet value. + * + * \return ModRM mod field value. + * + * \author icee + * \since 1.0 + */ +#define QX86_MODRM_MOD(modrm) ((qx86_uint8) ((modrm) >> 6)) + +/** + * Extract the reg ModRM field value. + * + * \param modrm + * ModRM octet value. + * + * \return ModRM reg field value. + * + * \author icee + * \since 1.0 + */ +#define QX86_MODRM_REG(modrm) ((qx86_uint8) (((modrm) >> 3) & 7)) + +/** + * Extract the r/m ModRM field value. + * + * \param modrm + * ModRM octet value. + * + * \return ModRM rm field value. + * + * \author icee + * \since 1.0 + */ +#define QX86_MODRM_RM(modrm) ((qx86_uint8) ((modrm) & 7)) + +/** + * Extract the b REX field value. + * + * \param rex + * REX octet value. + * + * \return REX b field value. + * + * \author icee + * \since 1.0 + */ +#define QX86_REX_B(rex) ((qx86_uint8) (0 != ((rex) & 1))) + +/** + * Extract the r REX field value. + * + * \param rex + * REX octet value. + * + * \return REX r field value. + * + * \author icee + * \since 1.0 + */ +#define QX86_REX_R(rex) ((qx86_uint8) (0 != ((rex) & 4))) + +/** + * Extract the w REX field value. + * + * \param rex + * REX octet value. + * + * \return REX w field value. + * + * \author icee + * \since 1.0 + */ +#define QX86_REX_W(rex) ((qx86_uint8) (0 != ((rex) & 8))) + +/** + * Extract the x REX field value. + * + * \param rex + * REX octet value. + * + * \return REX x field value. + * + * \author icee + * \since 1.0 + */ +#define QX86_REX_X(rex) ((qx86_uint8) (0 != ((rex) & 2))) + +/** + * Extract the base SIB field value. + * + * \param sib + * SIB octet value. + * + * \return SIB base field value. + * + * \author icee + * \since 1.0 + */ +#define QX86_SIB_BASE(sib) ((qx86_uint8) ((sib) & 7)) + +/** + * Extract the index SIB field value. + * + * \param sib + * SIB octet value. + * + * \return SIB index field value. + * + * \author icee + * \since 1.0 + */ +#define QX86_SIB_INDEX(sib) ((qx86_uint8) (((sib) >> 3) & 7)) + +/** + * Extract the scale SIB field value. + * + * \param sib + * SIB octet value. + * + * \return SIB scale field value. + * + * \author icee + * \since 1.0 + */ +#define QX86_SIB_SCALE(sib) ((qx86_uint8) ((sib) >> 6)) + +/** + * Convert a #qx86_size enumerator to number of octets. The \a size value must + * be valid. + * + * \param size + * A #qx86_size enumerator. + * + * \return Number of octets. + * + * \author icee + * \since 1.0 + */ +#define QX86_SIZE_OCTETS(size) (2 << (size)) + +/* XXX XXX XXX */ +extern QX86_CONST qx86_mtab_item qx86_mtab[QX86_MNEMONIC_COUNT]; +extern QX86_CONST qx86_rtab_item qx86_rtab[QX86_REGISTER_COUNT]; + +/** + * Calculate effective address of an x86 memory operand. + * + * TODO: documentation. + * + * \author icee + * \since 1.0 + */ +QX86_EXTERN_C int +qx86_calculate_effective_address(QX86_CONST qx86_insn *insn, int operandIndex, qx86_uint64 *address); + +/** + * Calculate linear address of an x86 memory operand. + * + * TODO: documentation. + * + * \author icee + * \since 1.0 + */ +QX86_EXTERN_C int +qx86_calculate_linear_address(QX86_CONST qx86_insn *insn, int operandIndex, qx86_uint64 *address); + +/** + * Decode an x86 instruction. + * + * TODO: documentation. + * + * \author icee + * \since 1.0 + */ +QX86_EXTERN_C int +qx86_decode(qx86_insn *insn, int processorMode, QX86_CONST void *ptr, int ptrSize); + +/** + * Print a decoded x86 instruction using the Intel format. + * + * TODO: documentation. + * + * \param insn + * Instruction to print. + * \param options + * Printer options. + * \param[out] buffer + * Pre-allocated buffer to print to. + * \param[in,out] bufferSize + * TODO. + * + * \return TODO. + * + * \author icee + * \since 1.0 + */ +QX86_EXTERN_C int +qx86_print_intel(QX86_CONST qx86_insn *insn, QX86_CONST qx86_print_options_intel *options, char *buffer, int *bufferSize); + +#endif diff --git a/palacios/src/palacios/Makefile b/palacios/src/palacios/Makefile index 63a822b..bb285ba 100644 --- a/palacios/src/palacios/Makefile +++ b/palacios/src/palacios/Makefile @@ -41,6 +41,7 @@ obj-y := \ obj-$(V3_CONFIG_XED) += vmm_xed.o obj-$(V3_CONFIG_V3_DECODER) += vmm_v3dec.o +obj-$(V3_CONFIG_QUIX86_DECODER) += vmm_quix86.o quix86.o obj-$(V3_CONFIG_SVM) += svm.o \ svm_io.o \ diff --git a/palacios/src/palacios/quix86.c b/palacios/src/palacios/quix86.c new file mode 100644 index 0000000..241876d --- /dev/null +++ b/palacios/src/palacios/quix86.c @@ -0,0 +1,56291 @@ +/* +------------------------------------------------------------------------+ + | quix86 | + +------------------------------------------------------------------------+ + | This file is part of quix86, an x86-64 instruction decoder. | + | | + | Copyright (C) 2011 Institute for System Programming of Russian Academy | + | of Sciences. | + | | + | Contact e-mail: . | + | | + | quix86 is free software: you can redistribute it and/or modify it | + | under the terms of the GNU General Public License as published by the | + | Free Software Foundation, either version 3 of the License, or (at your | + | option) any later version. | + | | + | quix86 is distributed in the hope that it will be useful, but WITHOUT | + | ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or | + | FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License | + | for more details. | + | | + | You should have received a copy of the GNU General Public License | + | along with quix86. If not, see . | + +------------------------------------------------------------------------+ */ + +/* Include public headers. */ +#include + + +/* Function: decode amode operand; qx86-f-decode-amode.c. */ +static int +qx86_decode_amode(qx86_insn *insn, int index); + +/* Function: decode A amode operand; qx86-f-decode-amode-a.c. */ +static int +qx86_decode_amode_a(qx86_insn *insn, int index); + +/* Function: decode I amode operand; qx86-f-decode-amode-i.c. */ +static int +qx86_decode_amode_i(qx86_insn *insn, int index); + +/* Function: decode J amode operand; qx86-f-decode-amode-j.c. */ +static int +qx86_decode_amode_j(qx86_insn *insn, int index); + +/* Function: decode M amode operand; qx86-f-decode-amode-m.c. */ +static int +qx86_decode_amode_m(qx86_insn *insn, int index); + +/* Function: decode O amode operand; qx86-f-decode-amode-o.c. */ +static int +qx86_decode_amode_o(qx86_insn *insn, int index); + +/* Function: decode X amode operand; qx86-f-decode-amode-x.c. */ +static int +qx86_decode_amode_x(qx86_insn *insn, int index); + +/* Function: decode Y amode operand; qx86-f-decode-amode-y.c. */ +static int +qx86_decode_amode_y(qx86_insn *insn, int index); + +/* Function: decode implicit-1 operand; qx86-f-decode-implicit-1.c. */ +static int +qx86_decode_implicit_1(qx86_insn *insn, int index); + +/* Function: decode ModRM and SIB; qx86-f-decode-modifiers.c. */ +static int +qx86_decode_modifiers(qx86_insn *insn); + +/* Function: decode opcode; qx86-f-decode-opcode.c. */ +static int +qx86_decode_opcode(qx86_insn *insn); + +/* Function: decode operand; qx86-f-decode-operand.c. */ +static int +qx86_decode_operand(qx86_insn *insn, int index); + +/* Function: decode prefixes; qx86-f-decode-prefixes.c. */ +static int +qx86_decode_prefixes(qx86_insn *insn); + +/* Function: decode rtuple operand; qx86-f-decode-rtuple.c. */ +static int +qx86_decode_rtuple(qx86_insn *insn, int index); + +/* Function: choose an opcode map item; qx86-f-opcode-map-choose.c. */ +static int +qx86_opcode_map_choose(qx86_insn *insn, qx86_opcode_map *map, qx86_opcode_map_item **item); + +/* Function: print items to buffer; qx86-f-print.c. */ +static int +qx86_print(qx86_print_item *item, char *buffer, int *bufferSize); + + +/* Private data: addressing modes; qx86-d-amode.c. */ +static qx86_amode qx86_amode_A; +static qx86_amode qx86_amode_C; +static qx86_amode qx86_amode_D; +static qx86_amode qx86_amode_E; +static qx86_amode qx86_amode_G; +static qx86_amode qx86_amode_I; +static qx86_amode qx86_amode_J; +static qx86_amode qx86_amode_M; +static qx86_amode qx86_amode_N; +static qx86_amode qx86_amode_O; +static qx86_amode qx86_amode_P; +static qx86_amode qx86_amode_Q; +static qx86_amode qx86_amode_R; +static qx86_amode qx86_amode_S; +static qx86_amode qx86_amode_U; +static qx86_amode qx86_amode_V; +static qx86_amode qx86_amode_W; +static qx86_amode qx86_amode_X; +static qx86_amode qx86_amode_Y; + +/* Private data: character case flip table; qx86-d-flip-case.c. */ +static char qx86_flip_case[128]; + +/* Private data: ModRM decode tables; qx86-d-modrm.c. */ +static int * qx86_modrm_base[4]; +static int * qx86_modrm_disp[4]; +static int * qx86_modrm_index[4]; +static int * qx86_modrm_scale[4]; + +static int * qx86_modrm_rindex[QX86_RCLASS_COUNT]; + +/* Private data: mnemonic table; qx86-d-mtab.c; generated. */ +//static qx86_mtab_item qx86_mtab[QX86_MNEMONIC_COUNT]; + +/* Private data: opcode maps; qx86-d-opcode-map.c; generated. */ +static qx86_opcode_map * qx86_opcode_maps[QX86_OPCODE_ESCAPE_COUNT]; + +/* Private data: register table; qx86-d-rtab.c. */ +//static qx86_rtab_item qx86_rtab[QX86_REGISTER_COUNT]; + +/* Private data: register tuples; qx86-d-rtuple.c. */ +static qx86_rtuple qx86_rtuple_AL; +static qx86_rtuple qx86_rtuple_CL; + +static qx86_rtuple qx86_rtuple_AX; +static qx86_rtuple qx86_rtuple_DX; + +static qx86_rtuple qx86_rtuple_eAX; +static qx86_rtuple qx86_rtuple_eCX; +static qx86_rtuple qx86_rtuple_eDX; +static qx86_rtuple qx86_rtuple_eBX; +static qx86_rtuple qx86_rtuple_eSI; +static qx86_rtuple qx86_rtuple_eDI; +static qx86_rtuple qx86_rtuple_eSP; +static qx86_rtuple qx86_rtuple_eBP; + +static qx86_rtuple qx86_rtuple_rAX; +static qx86_rtuple qx86_rtuple_rSI; +static qx86_rtuple qx86_rtuple_rDI; + +static qx86_rtuple qx86_rtuple_r0; +static qx86_rtuple qx86_rtuple_r1; +static qx86_rtuple qx86_rtuple_r2; +static qx86_rtuple qx86_rtuple_r3; +static qx86_rtuple qx86_rtuple_r4; +static qx86_rtuple qx86_rtuple_r5; +static qx86_rtuple qx86_rtuple_r6; +static qx86_rtuple qx86_rtuple_r7; + +static qx86_rtuple qx86_rtuple_R0B; +static qx86_rtuple qx86_rtuple_R1B; +static qx86_rtuple qx86_rtuple_R2B; +static qx86_rtuple qx86_rtuple_R3B; +static qx86_rtuple qx86_rtuple_R4B; +static qx86_rtuple qx86_rtuple_R5B; +static qx86_rtuple qx86_rtuple_R6B; +static qx86_rtuple qx86_rtuple_R7B; + +static qx86_rtuple qx86_rtuple_ST0; +static qx86_rtuple qx86_rtuple_ST1; +static qx86_rtuple qx86_rtuple_ST2; +static qx86_rtuple qx86_rtuple_ST3; +static qx86_rtuple qx86_rtuple_ST4; +static qx86_rtuple qx86_rtuple_ST5; +static qx86_rtuple qx86_rtuple_ST6; +static qx86_rtuple qx86_rtuple_ST7; + +static qx86_rtuple qx86_rtuple_ES; +static qx86_rtuple qx86_rtuple_CS; +static qx86_rtuple qx86_rtuple_SS; +static qx86_rtuple qx86_rtuple_DS; +static qx86_rtuple qx86_rtuple_FS; +static qx86_rtuple qx86_rtuple_GS; + +/* Private data: SIB decode tables; qx86-d-sib.c. */ +static int * qx86_sib_base[4]; +static int * qx86_sib_base_special[4]; +static int * qx86_sib_index[4]; + +/* Private data: address and operand size tables; qx86-d-size.c. */ +static int * qx86_address_size[4]; +static int * qx86_operand_size[4]; + +/* Private data: size tuples; qx86-d-stuple.c. */ +static qx86_stuple qx86_stuple_a; +static qx86_stuple qx86_stuple_b; +static qx86_stuple qx86_stuple_d; +static qx86_stuple qx86_stuple_dq; +static qx86_stuple qx86_stuple_f; +static qx86_stuple qx86_stuple_fe; +static qx86_stuple qx86_stuple_fx; +static qx86_stuple qx86_stuple_i; +static qx86_stuple qx86_stuple_p; +static qx86_stuple qx86_stuple_pd; +static qx86_stuple qx86_stuple_ps; +static qx86_stuple qx86_stuple_q; +static qx86_stuple qx86_stuple_s; +static qx86_stuple qx86_stuple_sb; +static qx86_stuple qx86_stuple_sd; +static qx86_stuple qx86_stuple_se; +static qx86_stuple qx86_stuple_ss; +static qx86_stuple qx86_stuple_v; +static qx86_stuple qx86_stuple_w; +static qx86_stuple qx86_stuple_z; + + + + +QX86_INLINE static int +qx86_extract_address(qx86_uint8 *octets, qx86_uint64 *address) +{ +# ifdef QUIX86_BIG_ENDIAN + { + /* Big endian. Compiler will optimize this, I believe. */ + ((qx86_octet *) address)[0] = octets[3]; + ((qx86_octet *) address)[1] = octets[2]; + ((qx86_octet *) address)[2] = octets[1]; + ((qx86_octet *) address)[3] = octets[0]; + } +# else + { + /* Little endian. Use one move. */ + *address = *((qx86_uint64 *) octets); + } +# endif + + /* Success. */ + return QX86_SUCCESS; +} + + + +QX86_INLINE static int +qx86_pump(qx86_insn *insn, qx86_uint8 *octets, int size) +{ + /* Make sure we have at least size octets left. */ + if (((qx86_ctx *) insn->data)->ptrSize >= size) + { + /* Copy octets. Can't use memcpy() here because some compilers would + emit an actual call instead of an intrinsic. */ + for (((qx86_ctx *) insn->data)->ptrSize -= size; size; --size) + { + /* Copy one octet. */ + insn->raw[insn->rawSize++] = *octets++ = *(((qx86_ctx *) insn->data)->ptr++); + } + + /* Success. */ + return QX86_SUCCESS; + } + else + { + /* Incomplete instruction. */ + return QX86_E_INSN_INCOMPLETE; + } +} + + + +QX86_INLINE static int +qx86_unpump(qx86_insn *insn) +{ + /* Unwind ptr and ptrSize. */ + --(((qx86_ctx *) insn->data)->ptr); + ++(((qx86_ctx *) insn->data)->ptrSize); + + /* Decrement rawSize. */ + --insn->rawSize; + + /* Success. */ + return QX86_SUCCESS; +} + + + + +/* Reference: see JMPF. */ +static qx86_amode qx86_amode_A + = +{ + "A", "A", + QX86_MODRM_FIELD_NONE, QX86_RCLASS_NONE, + qx86_decode_amode_a +}; + +/* Reference: none. */ +static qx86_amode qx86_amode_C + = +{ + "C", "C", + QX86_MODRM_FIELD_REG, QX86_RCLASS_CREG, + 0 +}; + +/* Reference: none. */ +static qx86_amode qx86_amode_D + = +{ + "D", "D", + QX86_MODRM_FIELD_REG, QX86_RCLASS_DREG, + 0 +}; + +/* Reference: none. */ +static qx86_amode qx86_amode_E + = +{ + "E", "E", + QX86_MODRM_FIELD_MOD, QX86_RCLASS_RESERVED_3, + 0 +}; + +/* Reference: none. */ +static qx86_amode qx86_amode_G + = +{ + "G", "G", + QX86_MODRM_FIELD_REG, QX86_RCLASS_RESERVED_3, + 0 +}; + +/* Reference: none. */ +static qx86_amode qx86_amode_I + = +{ + "I", "I", + QX86_MODRM_FIELD_NONE, QX86_RCLASS_NONE, + qx86_decode_amode_i +}; + +/* Reference: see JMP. */ +static qx86_amode qx86_amode_J + = +{ + "J", "J", + QX86_MODRM_FIELD_NONE, QX86_RCLASS_NONE, + qx86_decode_amode_j +}; + +/* Reference: none. */ +static qx86_amode qx86_amode_M + = +{ + "M", "M", + QX86_MODRM_FIELD_NONE, QX86_RCLASS_NONE, + qx86_decode_amode_m +}; + +/* Reference: none. */ +static qx86_amode qx86_amode_N + = +{ + "N", "N", + QX86_MODRM_FIELD_RM, QX86_RCLASS_MMX, + 0 +}; + +/* Reference: see MOV. */ +static qx86_amode qx86_amode_O + = +{ + "O", "O", + QX86_MODRM_FIELD_NONE, QX86_RCLASS_NONE, + qx86_decode_amode_o +}; + +/* Reference: none. */ +static qx86_amode qx86_amode_P + = +{ + "P", "P", + QX86_MODRM_FIELD_REG, QX86_RCLASS_MMX, + 0 +}; + +/* Reference: none. */ +static qx86_amode qx86_amode_Q + = +{ + "Q", "Q", + QX86_MODRM_FIELD_MOD, QX86_RCLASS_MMX, + 0 +}; + +/* Reference: none. */ +static qx86_amode qx86_amode_R + = +{ + "R", "R", + QX86_MODRM_FIELD_RM, QX86_RCLASS_RESERVED_3, + 0 +}; + +/* Reference: none. */ +static qx86_amode qx86_amode_S + = +{ + "S", "S", + QX86_MODRM_FIELD_REG, QX86_RCLASS_SREG, + 0 +}; + +/* Reference: none. */ +static qx86_amode qx86_amode_U + = +{ + "U", "U", + QX86_MODRM_FIELD_RM, QX86_RCLASS_XMM, + 0 +}; + +/* Reference: none. */ +static qx86_amode qx86_amode_V + = +{ + "V", "V", + QX86_MODRM_FIELD_REG, QX86_RCLASS_XMM, + 0 +}; + +/* Reference: none. */ +static qx86_amode qx86_amode_W + = +{ + "W", "W", + QX86_MODRM_FIELD_MOD, QX86_RCLASS_XMM, + 0 +}; + +/* Reference: see MOVSB. */ +static qx86_amode qx86_amode_X + = +{ + "X", "X", + QX86_MODRM_FIELD_NONE, QX86_RCLASS_NONE, + qx86_decode_amode_x +}; + +/* Reference: see MOVSB. */ +static qx86_amode qx86_amode_Y + = +{ + "Y", "Y", + QX86_MODRM_FIELD_NONE, QX86_RCLASS_NONE, + qx86_decode_amode_y +}; + +/* Reference: Latin-1. */ +static char qx86_flip_case[128] + = +{ + 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, + 0x08, 0x09, 0x0A, 0x0B, 0x0C, 0x0D, 0x0E, 0x0F, + + 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, + 0x18, 0x19, 0x1A, 0x1B, 0x1C, 0x1D, 0x1E, 0x1F, + + 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, + 0x28, 0x29, 0x2A, 0x2B, 0x2C, 0x2D, 0x2E, 0x2F, + + 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, + 0x38, 0x39, 0x3A, 0x3B, 0x3C, 0x3D, 0x3E, 0x3F, + + 0x40, 0x61, 0x62, 0x63, 0x64, 0x65, 0x66, 0x67, + 0x68, 0x69, 0x6A, 0x6B, 0x6C, 0x6D, 0x6E, 0x6F, + + 0x70, 0x71, 0x72, 0x73, 0x74, 0x75, 0x76, 0x77, + 0x78, 0x79, 0x7A, 0x5B, 0x5C, 0x5D, 0x5E, 0x5F, + + 0x60, 0x41, 0x42, 0x43, 0x44, 0x45, 0x46, 0x47, + 0x48, 0x49, 0x4A, 0x4B, 0x4C, 0x4D, 0x4E, 0x4F, + + 0x50, 0x51, 0x52, 0x53, 0x54, 0x55, 0x56, 0x57, + 0x58, 0x59, 0x5A, 0x7B, 0x7C, 0x7D, 0x7E, 0x7F +}; + +/* Reference: AMD Architecture Programmer's Manual 3: Table A-12, A-14. */ +static int qx86_modrm_rindex_reg8[32] + = +{ + QX86_REGISTER_AL, QX86_REGISTER_CL, + QX86_REGISTER_DL, QX86_REGISTER_BL, + QX86_REGISTER_AH, QX86_REGISTER_CH, + QX86_REGISTER_DH, QX86_REGISTER_BH, + + QX86_REGISTER_INVALID, QX86_REGISTER_INVALID, + QX86_REGISTER_INVALID, QX86_REGISTER_INVALID, + QX86_REGISTER_INVALID, QX86_REGISTER_INVALID, + QX86_REGISTER_INVALID, QX86_REGISTER_INVALID, + + QX86_REGISTER_AL, QX86_REGISTER_CL, + QX86_REGISTER_DL, QX86_REGISTER_BL, + QX86_REGISTER_SPL, QX86_REGISTER_BPL, + QX86_REGISTER_SIL, QX86_REGISTER_DIL, + + QX86_REGISTER_R8B, QX86_REGISTER_R9B, + QX86_REGISTER_R10B, QX86_REGISTER_R11B, + QX86_REGISTER_R12B, QX86_REGISTER_R13B, + QX86_REGISTER_R14B, QX86_REGISTER_R15B +}; + +/* Reference: AMD Architecture Programmer's Manual 3: Table A-12, A-14. */ +static int qx86_modrm_rindex_reg16[32] + = +{ + QX86_REGISTER_AX, QX86_REGISTER_CX, + QX86_REGISTER_DX, QX86_REGISTER_BX, + QX86_REGISTER_SP, QX86_REGISTER_BP, + QX86_REGISTER_SI, QX86_REGISTER_DI, + + QX86_REGISTER_INVALID, QX86_REGISTER_INVALID, + QX86_REGISTER_INVALID, QX86_REGISTER_INVALID, + QX86_REGISTER_INVALID, QX86_REGISTER_INVALID, + QX86_REGISTER_INVALID, QX86_REGISTER_INVALID, + + QX86_REGISTER_AX, QX86_REGISTER_CX, + QX86_REGISTER_DX, QX86_REGISTER_BX, + QX86_REGISTER_SP, QX86_REGISTER_BP, + QX86_REGISTER_SI, QX86_REGISTER_DI, + + QX86_REGISTER_R8W, QX86_REGISTER_R9W, + QX86_REGISTER_R10W, QX86_REGISTER_R11W, + QX86_REGISTER_R12W, QX86_REGISTER_R13W, + QX86_REGISTER_R14W, QX86_REGISTER_R15W +}; + +/* Reference: AMD Architecture Programmer's Manual 3: Table A-12, A-14. */ +static int qx86_modrm_rindex_reg32[32] + = +{ + QX86_REGISTER_EAX, QX86_REGISTER_ECX, + QX86_REGISTER_EDX, QX86_REGISTER_EBX, + QX86_REGISTER_ESP, QX86_REGISTER_EBP, + QX86_REGISTER_ESI, QX86_REGISTER_EDI, + + QX86_REGISTER_INVALID, QX86_REGISTER_INVALID, + QX86_REGISTER_INVALID, QX86_REGISTER_INVALID, + QX86_REGISTER_INVALID, QX86_REGISTER_INVALID, + QX86_REGISTER_INVALID, QX86_REGISTER_INVALID, + + QX86_REGISTER_EAX, QX86_REGISTER_ECX, + QX86_REGISTER_EDX, QX86_REGISTER_EBX, + QX86_REGISTER_ESP, QX86_REGISTER_EBP, + QX86_REGISTER_ESI, QX86_REGISTER_EDI, + + QX86_REGISTER_R8D, QX86_REGISTER_R9D, + QX86_REGISTER_R10D, QX86_REGISTER_R11D, + QX86_REGISTER_R12D, QX86_REGISTER_R13D, + QX86_REGISTER_R14D, QX86_REGISTER_R15D +}; + +/* Reference: AMD Architecture Programmer's Manual 3: Table A-12, A-14. */ +static int qx86_modrm_rindex_reg64[32] + = +{ + QX86_REGISTER_RAX, QX86_REGISTER_RCX, + QX86_REGISTER_RDX, QX86_REGISTER_RBX, + QX86_REGISTER_RSP, QX86_REGISTER_RBP, + QX86_REGISTER_RSI, QX86_REGISTER_RDI, + + QX86_REGISTER_INVALID, QX86_REGISTER_INVALID, + QX86_REGISTER_INVALID, QX86_REGISTER_INVALID, + QX86_REGISTER_INVALID, QX86_REGISTER_INVALID, + QX86_REGISTER_INVALID, QX86_REGISTER_INVALID, + + QX86_REGISTER_RAX, QX86_REGISTER_RCX, + QX86_REGISTER_RDX, QX86_REGISTER_RBX, + QX86_REGISTER_RSP, QX86_REGISTER_RBP, + QX86_REGISTER_RSI, QX86_REGISTER_RDI, + + QX86_REGISTER_R8, QX86_REGISTER_R9, + QX86_REGISTER_R10, QX86_REGISTER_R11, + QX86_REGISTER_R12, QX86_REGISTER_R13, + QX86_REGISTER_R14, QX86_REGISTER_R15 +}; + +/* Reference: AMD Architecture Programmer's Manual 3: Table A-12, A-14. */ +static int qx86_modrm_rindex_creg[32] + = +{ + QX86_REGISTER_CR0, QX86_REGISTER_CR1, + QX86_REGISTER_CR2, QX86_REGISTER_CR3, + QX86_REGISTER_CR4, QX86_REGISTER_CR5, + QX86_REGISTER_CR6, QX86_REGISTER_CR7, + + QX86_REGISTER_INVALID, QX86_REGISTER_INVALID, + QX86_REGISTER_INVALID, QX86_REGISTER_INVALID, + QX86_REGISTER_INVALID, QX86_REGISTER_INVALID, + QX86_REGISTER_INVALID, QX86_REGISTER_INVALID, + + QX86_REGISTER_CR0, QX86_REGISTER_CR1, + QX86_REGISTER_CR2, QX86_REGISTER_CR3, + QX86_REGISTER_CR4, QX86_REGISTER_CR5, + QX86_REGISTER_CR6, QX86_REGISTER_CR7, + + QX86_REGISTER_CR8, QX86_REGISTER_CR9, + QX86_REGISTER_CR10, QX86_REGISTER_CR11, + QX86_REGISTER_CR12, QX86_REGISTER_CR13, + QX86_REGISTER_CR14, QX86_REGISTER_CR15 +}; + +/* Reference: AMD Architecture Programmer's Manual 3: Table A-12, A-14. */ +static int qx86_modrm_rindex_dreg[32] + = +{ + QX86_REGISTER_DR0, QX86_REGISTER_DR1, + QX86_REGISTER_DR2, QX86_REGISTER_DR3, + QX86_REGISTER_DR4, QX86_REGISTER_DR5, + QX86_REGISTER_DR6, QX86_REGISTER_DR7, + + QX86_REGISTER_INVALID, QX86_REGISTER_INVALID, + QX86_REGISTER_INVALID, QX86_REGISTER_INVALID, + QX86_REGISTER_INVALID, QX86_REGISTER_INVALID, + QX86_REGISTER_INVALID, QX86_REGISTER_INVALID, + + QX86_REGISTER_DR0, QX86_REGISTER_DR1, + QX86_REGISTER_DR2, QX86_REGISTER_DR3, + QX86_REGISTER_DR4, QX86_REGISTER_DR5, + QX86_REGISTER_DR6, QX86_REGISTER_DR7, + + QX86_REGISTER_DR8, QX86_REGISTER_DR9, + QX86_REGISTER_DR10, QX86_REGISTER_DR11, + QX86_REGISTER_DR12, QX86_REGISTER_DR13, + QX86_REGISTER_DR14, QX86_REGISTER_DR15 +}; + +/* Reference: AMD Architecture Programmer's Manual 3: Table A-12, A-14. */ +static int qx86_modrm_rindex_sreg[32] + = +{ + QX86_REGISTER_ES, QX86_REGISTER_CS, + QX86_REGISTER_SS, QX86_REGISTER_DS, + QX86_REGISTER_FS, QX86_REGISTER_GS, + QX86_REGISTER_SR6, QX86_REGISTER_SR7, + + QX86_REGISTER_INVALID, QX86_REGISTER_INVALID, + QX86_REGISTER_INVALID, QX86_REGISTER_INVALID, + QX86_REGISTER_INVALID, QX86_REGISTER_INVALID, + QX86_REGISTER_INVALID, QX86_REGISTER_INVALID, + + QX86_REGISTER_ES, QX86_REGISTER_CS, + QX86_REGISTER_SS, QX86_REGISTER_DS, + QX86_REGISTER_FS, QX86_REGISTER_GS, + QX86_REGISTER_SR6, QX86_REGISTER_SR7, + + QX86_REGISTER_ES, QX86_REGISTER_CS, + QX86_REGISTER_SS, QX86_REGISTER_DS, + QX86_REGISTER_FS, QX86_REGISTER_GS, + QX86_REGISTER_SR6, QX86_REGISTER_SR7 +}; + +/* Reference: AMD Architecture Programmer's Manual 3: Table A-12, A-14. */ +static int qx86_modrm_rindex_mmx[32] + = +{ + QX86_REGISTER_MMX0, QX86_REGISTER_MMX1, + QX86_REGISTER_MMX2, QX86_REGISTER_MMX3, + QX86_REGISTER_MMX4, QX86_REGISTER_MMX5, + QX86_REGISTER_MMX6, QX86_REGISTER_MMX7, + + QX86_REGISTER_INVALID, QX86_REGISTER_INVALID, + QX86_REGISTER_INVALID, QX86_REGISTER_INVALID, + QX86_REGISTER_INVALID, QX86_REGISTER_INVALID, + QX86_REGISTER_INVALID, QX86_REGISTER_INVALID, + + QX86_REGISTER_MMX0, QX86_REGISTER_MMX1, + QX86_REGISTER_MMX2, QX86_REGISTER_MMX3, + QX86_REGISTER_MMX4, QX86_REGISTER_MMX5, + QX86_REGISTER_MMX6, QX86_REGISTER_MMX7, + + QX86_REGISTER_MMX0, QX86_REGISTER_MMX1, + QX86_REGISTER_MMX2, QX86_REGISTER_MMX3, + QX86_REGISTER_MMX4, QX86_REGISTER_MMX5, + QX86_REGISTER_MMX6, QX86_REGISTER_MMX7 +}; + +/* Reference: AMD Architecture Programmer's Manual 3: Table A-12, A-14. */ +static int qx86_modrm_rindex_xmm[32] + = +{ + QX86_REGISTER_XMM0, QX86_REGISTER_XMM1, + QX86_REGISTER_XMM2, QX86_REGISTER_XMM3, + QX86_REGISTER_XMM4, QX86_REGISTER_XMM5, + QX86_REGISTER_XMM6, QX86_REGISTER_XMM7, + + QX86_REGISTER_INVALID, QX86_REGISTER_INVALID, + QX86_REGISTER_INVALID, QX86_REGISTER_INVALID, + QX86_REGISTER_INVALID, QX86_REGISTER_INVALID, + QX86_REGISTER_INVALID, QX86_REGISTER_INVALID, + + QX86_REGISTER_XMM0, QX86_REGISTER_XMM1, + QX86_REGISTER_XMM2, QX86_REGISTER_XMM3, + QX86_REGISTER_XMM4, QX86_REGISTER_XMM5, + QX86_REGISTER_XMM6, QX86_REGISTER_XMM7, + + QX86_REGISTER_XMM8, QX86_REGISTER_XMM9, + QX86_REGISTER_XMM10, QX86_REGISTER_XMM11, + QX86_REGISTER_XMM12, QX86_REGISTER_XMM13, + QX86_REGISTER_XMM14, QX86_REGISTER_XMM15 +}; + +/* Reference: Intel AVX Programming Reference, Section 2.4. */ +static int qx86_modrm_rindex_ymm[32] + = +{ + QX86_REGISTER_YMM0, QX86_REGISTER_YMM1, + QX86_REGISTER_YMM2, QX86_REGISTER_YMM3, + QX86_REGISTER_YMM4, QX86_REGISTER_YMM5, + QX86_REGISTER_YMM6, QX86_REGISTER_YMM7, + + QX86_REGISTER_INVALID, QX86_REGISTER_INVALID, + QX86_REGISTER_INVALID, QX86_REGISTER_INVALID, + QX86_REGISTER_INVALID, QX86_REGISTER_INVALID, + QX86_REGISTER_INVALID, QX86_REGISTER_INVALID, + + QX86_REGISTER_YMM0, QX86_REGISTER_YMM1, + QX86_REGISTER_YMM2, QX86_REGISTER_YMM3, + QX86_REGISTER_YMM4, QX86_REGISTER_YMM5, + QX86_REGISTER_YMM6, QX86_REGISTER_YMM7, + + QX86_REGISTER_YMM8, QX86_REGISTER_YMM9, + QX86_REGISTER_YMM10, QX86_REGISTER_YMM11, + QX86_REGISTER_YMM12, QX86_REGISTER_YMM13, + QX86_REGISTER_YMM14, QX86_REGISTER_YMM15 +}; + +/* Reference: AMD Architecture Programmer's Manual 3: Table A-12, A-14. */ +static int * qx86_modrm_rindex[QX86_RCLASS_COUNT] + = +{ + 0, 0, + 0, 0, + + qx86_modrm_rindex_reg8, qx86_modrm_rindex_reg16, + qx86_modrm_rindex_reg32, qx86_modrm_rindex_reg64, + + qx86_modrm_rindex_creg, qx86_modrm_rindex_dreg, + qx86_modrm_rindex_sreg, 0, + + 0, qx86_modrm_rindex_mmx, + qx86_modrm_rindex_xmm, qx86_modrm_rindex_ymm +}; + +/* Reference: AMD Architecture Programmer's Manual 3: Table A-13. */ +static int qx86_modrm_base_16[64] + = +{ + QX86_REGISTER_BX, QX86_REGISTER_BX, + QX86_REGISTER_BP, QX86_REGISTER_BP, + QX86_REGISTER_NONE, QX86_REGISTER_NONE, + QX86_REGISTER_NONE, QX86_REGISTER_BX, + + QX86_REGISTER_INVALID, QX86_REGISTER_INVALID, + QX86_REGISTER_INVALID, QX86_REGISTER_INVALID, + QX86_REGISTER_INVALID, QX86_REGISTER_INVALID, + QX86_REGISTER_INVALID, QX86_REGISTER_INVALID, + + QX86_REGISTER_BX, QX86_REGISTER_BX, + QX86_REGISTER_BP, QX86_REGISTER_BP, + QX86_REGISTER_NONE, QX86_REGISTER_NONE, + QX86_REGISTER_BP, QX86_REGISTER_BX, + + QX86_REGISTER_INVALID, QX86_REGISTER_INVALID, + QX86_REGISTER_INVALID, QX86_REGISTER_INVALID, + QX86_REGISTER_INVALID, QX86_REGISTER_INVALID, + QX86_REGISTER_INVALID, QX86_REGISTER_INVALID, + + QX86_REGISTER_BX, QX86_REGISTER_BX, + QX86_REGISTER_BP, QX86_REGISTER_BP, + QX86_REGISTER_NONE, QX86_REGISTER_NONE, + QX86_REGISTER_BP, QX86_REGISTER_BX, + + QX86_REGISTER_INVALID, QX86_REGISTER_INVALID, + QX86_REGISTER_INVALID, QX86_REGISTER_INVALID, + QX86_REGISTER_INVALID, QX86_REGISTER_INVALID, + QX86_REGISTER_INVALID, QX86_REGISTER_INVALID, + + QX86_REGISTER_INVALID, QX86_REGISTER_INVALID, + QX86_REGISTER_INVALID, QX86_REGISTER_INVALID, + QX86_REGISTER_INVALID, QX86_REGISTER_INVALID, + QX86_REGISTER_INVALID, QX86_REGISTER_INVALID, + + QX86_REGISTER_INVALID, QX86_REGISTER_INVALID, + QX86_REGISTER_INVALID, QX86_REGISTER_INVALID, + QX86_REGISTER_INVALID, QX86_REGISTER_INVALID, + QX86_REGISTER_INVALID, QX86_REGISTER_INVALID +}; + +/* Reference: AMD Architecture Programmer's Manual 3: Table A-13. */ +static int qx86_modrm_index_16[64] + = +{ + QX86_REGISTER_SI, QX86_REGISTER_DI, + QX86_REGISTER_SI, QX86_REGISTER_DI, + QX86_REGISTER_SI, QX86_REGISTER_DI, + QX86_REGISTER_NONE, QX86_REGISTER_NONE, + + QX86_REGISTER_INVALID, QX86_REGISTER_INVALID, + QX86_REGISTER_INVALID, QX86_REGISTER_INVALID, + QX86_REGISTER_INVALID, QX86_REGISTER_INVALID, + QX86_REGISTER_INVALID, QX86_REGISTER_INVALID, + + QX86_REGISTER_SI, QX86_REGISTER_DI, + QX86_REGISTER_SI, QX86_REGISTER_DI, + QX86_REGISTER_SI, QX86_REGISTER_DI, + QX86_REGISTER_NONE, QX86_REGISTER_NONE, + + QX86_REGISTER_INVALID, QX86_REGISTER_INVALID, + QX86_REGISTER_INVALID, QX86_REGISTER_INVALID, + QX86_REGISTER_INVALID, QX86_REGISTER_INVALID, + QX86_REGISTER_INVALID, QX86_REGISTER_INVALID, + + QX86_REGISTER_SI, QX86_REGISTER_DI, + QX86_REGISTER_SI, QX86_REGISTER_DI, + QX86_REGISTER_SI, QX86_REGISTER_DI, + QX86_REGISTER_NONE, QX86_REGISTER_NONE, + + QX86_REGISTER_INVALID, QX86_REGISTER_INVALID, + QX86_REGISTER_INVALID, QX86_REGISTER_INVALID, + QX86_REGISTER_INVALID, QX86_REGISTER_INVALID, + QX86_REGISTER_INVALID, QX86_REGISTER_INVALID, + + QX86_REGISTER_INVALID, QX86_REGISTER_INVALID, + QX86_REGISTER_INVALID, QX86_REGISTER_INVALID, + QX86_REGISTER_INVALID, QX86_REGISTER_INVALID, + QX86_REGISTER_INVALID, QX86_REGISTER_INVALID, + + QX86_REGISTER_INVALID, QX86_REGISTER_INVALID, + QX86_REGISTER_INVALID, QX86_REGISTER_INVALID, + QX86_REGISTER_INVALID, QX86_REGISTER_INVALID, + QX86_REGISTER_INVALID, QX86_REGISTER_INVALID +}; + +/* Reference: AMD Architecture Progammer's Manual 3: Table A-13. */ +static int qx86_modrm_scale_16[64] + = +{ + QX86_SCALE_NONE, QX86_SCALE_NONE, + QX86_SCALE_NONE, QX86_SCALE_NONE, + QX86_SCALE_NONE, QX86_SCALE_NONE, + QX86_SCALE_INVALID, QX86_SCALE_INVALID, + + QX86_SCALE_INVALID, QX86_SCALE_INVALID, + QX86_SCALE_INVALID, QX86_SCALE_INVALID, + QX86_SCALE_INVALID, QX86_SCALE_INVALID, + QX86_SCALE_INVALID, QX86_SCALE_INVALID, + + QX86_SCALE_NONE, QX86_SCALE_NONE, + QX86_SCALE_NONE, QX86_SCALE_NONE, + QX86_SCALE_NONE, QX86_SCALE_NONE, + QX86_SCALE_INVALID, QX86_SCALE_INVALID, + + QX86_SCALE_INVALID, QX86_SCALE_INVALID, + QX86_SCALE_INVALID, QX86_SCALE_INVALID, + QX86_SCALE_INVALID, QX86_SCALE_INVALID, + QX86_SCALE_INVALID, QX86_SCALE_INVALID, + + QX86_SCALE_NONE, QX86_SCALE_NONE, + QX86_SCALE_NONE, QX86_SCALE_NONE, + QX86_SCALE_NONE, QX86_SCALE_NONE, + QX86_SCALE_INVALID, QX86_SCALE_INVALID, + + QX86_SCALE_INVALID, QX86_SCALE_INVALID, + QX86_SCALE_INVALID, QX86_SCALE_INVALID, + QX86_SCALE_INVALID, QX86_SCALE_INVALID, + QX86_SCALE_INVALID, QX86_SCALE_INVALID, + + QX86_SCALE_INVALID, QX86_SCALE_INVALID, + QX86_SCALE_INVALID, QX86_SCALE_INVALID, + QX86_SCALE_INVALID, QX86_SCALE_INVALID, + QX86_SCALE_INVALID, QX86_SCALE_INVALID, + + QX86_SCALE_INVALID, QX86_SCALE_INVALID, + QX86_SCALE_INVALID, QX86_SCALE_INVALID, + QX86_SCALE_INVALID, QX86_SCALE_INVALID, + QX86_SCALE_INVALID, QX86_SCALE_INVALID +}; + +/* Reference: AMD Architecture Programmer's Manual 3: Table A-13. */ +static int qx86_modrm_disp_16[64] + = +{ + QX86_DISP_NONE, QX86_DISP_NONE, + QX86_DISP_NONE, QX86_DISP_NONE, + QX86_DISP_NONE, QX86_DISP_NONE, + QX86_DISP_16, QX86_DISP_NONE, + + QX86_DISP_INVALID, QX86_DISP_INVALID, + QX86_DISP_INVALID, QX86_DISP_INVALID, + QX86_DISP_INVALID, QX86_DISP_INVALID, + QX86_DISP_INVALID, QX86_DISP_INVALID, + + QX86_DISP_8, QX86_DISP_8, + QX86_DISP_8, QX86_DISP_8, + QX86_DISP_8, QX86_DISP_8, + QX86_DISP_8, QX86_DISP_8, + + QX86_DISP_INVALID, QX86_DISP_INVALID, + QX86_DISP_INVALID, QX86_DISP_INVALID, + QX86_DISP_INVALID, QX86_DISP_INVALID, + QX86_DISP_INVALID, QX86_DISP_INVALID, + + QX86_DISP_16, QX86_DISP_16, + QX86_DISP_16, QX86_DISP_16, + QX86_DISP_16, QX86_DISP_16, + QX86_DISP_16, QX86_DISP_16, + + QX86_DISP_INVALID, QX86_DISP_INVALID, + QX86_DISP_INVALID, QX86_DISP_INVALID, + QX86_DISP_INVALID, QX86_DISP_INVALID, + QX86_DISP_INVALID, QX86_DISP_INVALID, + + QX86_DISP_INVALID, QX86_DISP_INVALID, + QX86_DISP_INVALID, QX86_DISP_INVALID, + QX86_DISP_INVALID, QX86_DISP_INVALID, + QX86_DISP_INVALID, QX86_DISP_INVALID, + + QX86_DISP_INVALID, QX86_DISP_INVALID, + QX86_DISP_INVALID, QX86_DISP_INVALID, + QX86_DISP_INVALID, QX86_DISP_INVALID, + QX86_DISP_INVALID, QX86_DISP_INVALID +}; + +/* Reference: AMD Architecture Programmer's Manual 3: Table A-15. */ +static int qx86_modrm_base_32[64] + = +{ + QX86_REGISTER_EAX, QX86_REGISTER_ECX, + QX86_REGISTER_EDX, QX86_REGISTER_EBX, + QX86_REGISTER_SPECIAL, QX86_REGISTER_EIP, + QX86_REGISTER_ESI, QX86_REGISTER_EDI, + + QX86_REGISTER_R8D, QX86_REGISTER_R9D, + QX86_REGISTER_R10D, QX86_REGISTER_R11D, + QX86_REGISTER_SPECIAL, QX86_REGISTER_EIP, + QX86_REGISTER_R14D, QX86_REGISTER_R15D, + + QX86_REGISTER_EAX, QX86_REGISTER_ECX, + QX86_REGISTER_EDX, QX86_REGISTER_EBX, + QX86_REGISTER_SPECIAL, QX86_REGISTER_EBP, + QX86_REGISTER_ESI, QX86_REGISTER_EDI, + + QX86_REGISTER_R8D, QX86_REGISTER_R9D, + QX86_REGISTER_R10D, QX86_REGISTER_R11D, + QX86_REGISTER_SPECIAL, QX86_REGISTER_R13D, + QX86_REGISTER_R14D, QX86_REGISTER_R15D, + + QX86_REGISTER_EAX, QX86_REGISTER_ECX, + QX86_REGISTER_EDX, QX86_REGISTER_EBX, + QX86_REGISTER_SPECIAL, QX86_REGISTER_EBP, + QX86_REGISTER_ESI, QX86_REGISTER_EDI, + + QX86_REGISTER_R8D, QX86_REGISTER_R9D, + QX86_REGISTER_R10D, QX86_REGISTER_R11D, + QX86_REGISTER_SPECIAL, QX86_REGISTER_R13D, + QX86_REGISTER_R14D, QX86_REGISTER_R15D, + + QX86_REGISTER_INVALID, QX86_REGISTER_INVALID, + QX86_REGISTER_INVALID, QX86_REGISTER_INVALID, + QX86_REGISTER_INVALID, QX86_REGISTER_INVALID, + QX86_REGISTER_INVALID, QX86_REGISTER_INVALID, + + QX86_REGISTER_INVALID, QX86_REGISTER_INVALID, + QX86_REGISTER_INVALID, QX86_REGISTER_INVALID, + QX86_REGISTER_INVALID, QX86_REGISTER_INVALID, + QX86_REGISTER_INVALID, QX86_REGISTER_INVALID +}; + +/* Reference: AMD Architecture Programmer's Manual 3: Table A-15. */ +static int qx86_modrm_index_32[64] + = +{ + QX86_REGISTER_NONE, QX86_REGISTER_NONE, + QX86_REGISTER_NONE, QX86_REGISTER_NONE, + QX86_REGISTER_INVALID, QX86_REGISTER_NONE, + QX86_REGISTER_NONE, QX86_REGISTER_NONE, + + QX86_REGISTER_NONE, QX86_REGISTER_NONE, + QX86_REGISTER_NONE, QX86_REGISTER_NONE, + QX86_REGISTER_INVALID, QX86_REGISTER_NONE, + QX86_REGISTER_NONE, QX86_REGISTER_NONE, + + QX86_REGISTER_NONE, QX86_REGISTER_NONE, + QX86_REGISTER_NONE, QX86_REGISTER_NONE, + QX86_REGISTER_INVALID, QX86_REGISTER_NONE, + QX86_REGISTER_NONE, QX86_REGISTER_NONE, + + QX86_REGISTER_NONE, QX86_REGISTER_NONE, + QX86_REGISTER_NONE, QX86_REGISTER_NONE, + QX86_REGISTER_INVALID, QX86_REGISTER_NONE, + QX86_REGISTER_NONE, QX86_REGISTER_NONE, + + QX86_REGISTER_NONE, QX86_REGISTER_NONE, + QX86_REGISTER_NONE, QX86_REGISTER_NONE, + QX86_REGISTER_INVALID, QX86_REGISTER_NONE, + QX86_REGISTER_NONE, QX86_REGISTER_NONE, + + QX86_REGISTER_NONE, QX86_REGISTER_NONE, + QX86_REGISTER_NONE, QX86_REGISTER_NONE, + QX86_REGISTER_INVALID, QX86_REGISTER_NONE, + QX86_REGISTER_NONE, QX86_REGISTER_NONE, + + QX86_REGISTER_INVALID, QX86_REGISTER_INVALID, + QX86_REGISTER_INVALID, QX86_REGISTER_INVALID, + QX86_REGISTER_INVALID, QX86_REGISTER_INVALID, + QX86_REGISTER_INVALID, QX86_REGISTER_INVALID, + + QX86_REGISTER_INVALID, QX86_REGISTER_INVALID, + QX86_REGISTER_INVALID, QX86_REGISTER_INVALID, + QX86_REGISTER_INVALID, QX86_REGISTER_INVALID, + QX86_REGISTER_INVALID, QX86_REGISTER_INVALID +}; + +/* Reference: AMD Architecture Programmer's Manual 3: Table A-15. */ +static int qx86_modrm_scale_32[64] + = +{ + QX86_SCALE_INVALID, QX86_SCALE_INVALID, + QX86_SCALE_INVALID, QX86_SCALE_INVALID, + QX86_SCALE_INVALID, QX86_SCALE_INVALID, + QX86_SCALE_INVALID, QX86_SCALE_INVALID, + + QX86_SCALE_INVALID, QX86_SCALE_INVALID, + QX86_SCALE_INVALID, QX86_SCALE_INVALID, + QX86_SCALE_INVALID, QX86_SCALE_INVALID, + QX86_SCALE_INVALID, QX86_SCALE_INVALID, + + QX86_SCALE_INVALID, QX86_SCALE_INVALID, + QX86_SCALE_INVALID, QX86_SCALE_INVALID, + QX86_SCALE_INVALID, QX86_SCALE_INVALID, + QX86_SCALE_INVALID, QX86_SCALE_INVALID, + + QX86_SCALE_INVALID, QX86_SCALE_INVALID, + QX86_SCALE_INVALID, QX86_SCALE_INVALID, + QX86_SCALE_INVALID, QX86_SCALE_INVALID, + QX86_SCALE_INVALID, QX86_SCALE_INVALID, + + QX86_SCALE_INVALID, QX86_SCALE_INVALID, + QX86_SCALE_INVALID, QX86_SCALE_INVALID, + QX86_SCALE_INVALID, QX86_SCALE_INVALID, + QX86_SCALE_INVALID, QX86_SCALE_INVALID, + + QX86_SCALE_INVALID, QX86_SCALE_INVALID, + QX86_SCALE_INVALID, QX86_SCALE_INVALID, + QX86_SCALE_INVALID, QX86_SCALE_INVALID, + QX86_SCALE_INVALID, QX86_SCALE_INVALID, + + QX86_SCALE_INVALID, QX86_SCALE_INVALID, + QX86_SCALE_INVALID, QX86_SCALE_INVALID, + QX86_SCALE_INVALID, QX86_SCALE_INVALID, + QX86_SCALE_INVALID, QX86_SCALE_INVALID, + + QX86_SCALE_INVALID, QX86_SCALE_INVALID, + QX86_SCALE_INVALID, QX86_SCALE_INVALID, + QX86_SCALE_INVALID, QX86_SCALE_INVALID, + QX86_SCALE_INVALID, QX86_SCALE_INVALID +}; + +/* Reference: AMD Architecture Programmer's Manual 3: Table A-15. */ +static int qx86_modrm_disp_32[64] + = +{ + QX86_DISP_NONE, QX86_DISP_NONE, + QX86_DISP_NONE, QX86_DISP_NONE, + QX86_DISP_NONE, QX86_DISP_32, + QX86_DISP_NONE, QX86_DISP_NONE, + + QX86_DISP_NONE, QX86_DISP_NONE, + QX86_DISP_NONE, QX86_DISP_NONE, + QX86_DISP_NONE, QX86_DISP_32, + QX86_DISP_NONE, QX86_DISP_NONE, + + QX86_DISP_8, QX86_DISP_8, + QX86_DISP_8, QX86_DISP_8, + QX86_DISP_8, QX86_DISP_8, + QX86_DISP_8, QX86_DISP_8, + + QX86_DISP_8, QX86_DISP_8, + QX86_DISP_8, QX86_DISP_8, + QX86_DISP_8, QX86_DISP_8, + QX86_DISP_8, QX86_DISP_8, + + QX86_DISP_32, QX86_DISP_32, + QX86_DISP_32, QX86_DISP_32, + QX86_DISP_32, QX86_DISP_32, + QX86_DISP_32, QX86_DISP_32, + + QX86_DISP_32, QX86_DISP_32, + QX86_DISP_32, QX86_DISP_32, + QX86_DISP_32, QX86_DISP_32, + QX86_DISP_32, QX86_DISP_32, + + QX86_DISP_INVALID, QX86_DISP_INVALID, + QX86_DISP_INVALID, QX86_DISP_INVALID, + QX86_DISP_INVALID, QX86_DISP_INVALID, + QX86_DISP_INVALID, QX86_DISP_INVALID, + + QX86_DISP_INVALID, QX86_DISP_INVALID, + QX86_DISP_INVALID, QX86_DISP_INVALID, + QX86_DISP_INVALID, QX86_DISP_INVALID, + QX86_DISP_INVALID, QX86_DISP_INVALID +}; + +/* Reference: AMD Architecture Programmer's Manual 3: Table A-15. */ +static int qx86_modrm_base_64[64] + = +{ + QX86_REGISTER_RAX, QX86_REGISTER_RCX, + QX86_REGISTER_RDX, QX86_REGISTER_RBX, + QX86_REGISTER_SPECIAL, QX86_REGISTER_RIP, + QX86_REGISTER_RSI, QX86_REGISTER_RDI, + + QX86_REGISTER_R8, QX86_REGISTER_R9, + QX86_REGISTER_R10, QX86_REGISTER_R11, + QX86_REGISTER_SPECIAL, QX86_REGISTER_RIP, + QX86_REGISTER_R14, QX86_REGISTER_R15, + + QX86_REGISTER_RAX, QX86_REGISTER_RCX, + QX86_REGISTER_RDX, QX86_REGISTER_RBX, + QX86_REGISTER_SPECIAL, QX86_REGISTER_RBP, + QX86_REGISTER_RSI, QX86_REGISTER_RDI, + + QX86_REGISTER_R8, QX86_REGISTER_R9, + QX86_REGISTER_R10, QX86_REGISTER_R11, + QX86_REGISTER_SPECIAL, QX86_REGISTER_R13, + QX86_REGISTER_R14, QX86_REGISTER_R15, + + QX86_REGISTER_RAX, QX86_REGISTER_RCX, + QX86_REGISTER_RDX, QX86_REGISTER_RBX, + QX86_REGISTER_SPECIAL, QX86_REGISTER_RBP, + QX86_REGISTER_RSI, QX86_REGISTER_RDI, + + QX86_REGISTER_R8, QX86_REGISTER_R9, + QX86_REGISTER_R10, QX86_REGISTER_R11, + QX86_REGISTER_SPECIAL, QX86_REGISTER_R13, + QX86_REGISTER_R14, QX86_REGISTER_R15, + + QX86_REGISTER_INVALID, QX86_REGISTER_INVALID, + QX86_REGISTER_INVALID, QX86_REGISTER_INVALID, + QX86_REGISTER_INVALID, QX86_REGISTER_INVALID, + QX86_REGISTER_INVALID, QX86_REGISTER_INVALID, + + QX86_REGISTER_INVALID, QX86_REGISTER_INVALID, + QX86_REGISTER_INVALID, QX86_REGISTER_INVALID, + QX86_REGISTER_INVALID, QX86_REGISTER_INVALID, + QX86_REGISTER_INVALID, QX86_REGISTER_INVALID +}; + +/* Reference: AMD Architecture Programmer's Manual 3: Table A-15. */ +static int qx86_modrm_index_64[64] + = +{ + QX86_REGISTER_NONE, QX86_REGISTER_NONE, + QX86_REGISTER_NONE, QX86_REGISTER_NONE, + QX86_REGISTER_INVALID, QX86_REGISTER_NONE, + QX86_REGISTER_NONE, QX86_REGISTER_NONE, + + QX86_REGISTER_NONE, QX86_REGISTER_NONE, + QX86_REGISTER_NONE, QX86_REGISTER_NONE, + QX86_REGISTER_INVALID, QX86_REGISTER_NONE, + QX86_REGISTER_NONE, QX86_REGISTER_NONE, + + QX86_REGISTER_NONE, QX86_REGISTER_NONE, + QX86_REGISTER_NONE, QX86_REGISTER_NONE, + QX86_REGISTER_INVALID, QX86_REGISTER_NONE, + QX86_REGISTER_NONE, QX86_REGISTER_NONE, + + QX86_REGISTER_NONE, QX86_REGISTER_NONE, + QX86_REGISTER_NONE, QX86_REGISTER_NONE, + QX86_REGISTER_INVALID, QX86_REGISTER_NONE, + QX86_REGISTER_NONE, QX86_REGISTER_NONE, + + QX86_REGISTER_NONE, QX86_REGISTER_NONE, + QX86_REGISTER_NONE, QX86_REGISTER_NONE, + QX86_REGISTER_INVALID, QX86_REGISTER_NONE, + QX86_REGISTER_NONE, QX86_REGISTER_NONE, + + QX86_REGISTER_NONE, QX86_REGISTER_NONE, + QX86_REGISTER_NONE, QX86_REGISTER_NONE, + QX86_REGISTER_INVALID, QX86_REGISTER_NONE, + QX86_REGISTER_NONE, QX86_REGISTER_NONE, + + QX86_REGISTER_INVALID, QX86_REGISTER_INVALID, + QX86_REGISTER_INVALID, QX86_REGISTER_INVALID, + QX86_REGISTER_INVALID, QX86_REGISTER_INVALID, + QX86_REGISTER_INVALID, QX86_REGISTER_INVALID, + + QX86_REGISTER_INVALID, QX86_REGISTER_INVALID, + QX86_REGISTER_INVALID, QX86_REGISTER_INVALID, + QX86_REGISTER_INVALID, QX86_REGISTER_INVALID, + QX86_REGISTER_INVALID, QX86_REGISTER_INVALID +}; + +/* Reference: AMD Architecture Programmer's Manual 3: Table A-15. */ +static int qx86_modrm_scale_64[64] + = +{ + QX86_SCALE_INVALID, QX86_SCALE_INVALID, + QX86_SCALE_INVALID, QX86_SCALE_INVALID, + QX86_SCALE_INVALID, QX86_SCALE_INVALID, + QX86_SCALE_INVALID, QX86_SCALE_INVALID, + + QX86_SCALE_INVALID, QX86_SCALE_INVALID, + QX86_SCALE_INVALID, QX86_SCALE_INVALID, + QX86_SCALE_INVALID, QX86_SCALE_INVALID, + QX86_SCALE_INVALID, QX86_SCALE_INVALID, + + QX86_SCALE_INVALID, QX86_SCALE_INVALID, + QX86_SCALE_INVALID, QX86_SCALE_INVALID, + QX86_SCALE_INVALID, QX86_SCALE_INVALID, + QX86_SCALE_INVALID, QX86_SCALE_INVALID, + + QX86_SCALE_INVALID, QX86_SCALE_INVALID, + QX86_SCALE_INVALID, QX86_SCALE_INVALID, + QX86_SCALE_INVALID, QX86_SCALE_INVALID, + QX86_SCALE_INVALID, QX86_SCALE_INVALID, + + QX86_SCALE_INVALID, QX86_SCALE_INVALID, + QX86_SCALE_INVALID, QX86_SCALE_INVALID, + QX86_SCALE_INVALID, QX86_SCALE_INVALID, + QX86_SCALE_INVALID, QX86_SCALE_INVALID, + + QX86_SCALE_INVALID, QX86_SCALE_INVALID, + QX86_SCALE_INVALID, QX86_SCALE_INVALID, + QX86_SCALE_INVALID, QX86_SCALE_INVALID, + QX86_SCALE_INVALID, QX86_SCALE_INVALID, + + QX86_SCALE_INVALID, QX86_SCALE_INVALID, + QX86_SCALE_INVALID, QX86_SCALE_INVALID, + QX86_SCALE_INVALID, QX86_SCALE_INVALID, + QX86_SCALE_INVALID, QX86_SCALE_INVALID, + + QX86_SCALE_INVALID, QX86_SCALE_INVALID, + QX86_SCALE_INVALID, QX86_SCALE_INVALID, + QX86_SCALE_INVALID, QX86_SCALE_INVALID, + QX86_SCALE_INVALID, QX86_SCALE_INVALID +}; + +/* Reference: AMD Architecture Programmer's Manual 3: Table A-15. */ +static int qx86_modrm_disp_64[64] + = +{ + QX86_DISP_NONE, QX86_DISP_NONE, + QX86_DISP_NONE, QX86_DISP_NONE, + QX86_DISP_NONE, QX86_DISP_32, + QX86_DISP_NONE, QX86_DISP_NONE, + + QX86_DISP_NONE, QX86_DISP_NONE, + QX86_DISP_NONE, QX86_DISP_NONE, + QX86_DISP_NONE, QX86_DISP_32, + QX86_DISP_NONE, QX86_DISP_NONE, + + QX86_DISP_8, QX86_DISP_8, + QX86_DISP_8, QX86_DISP_8, + QX86_DISP_8, QX86_DISP_8, + QX86_DISP_8, QX86_DISP_8, + + QX86_DISP_8, QX86_DISP_8, + QX86_DISP_8, QX86_DISP_8, + QX86_DISP_8, QX86_DISP_8, + QX86_DISP_8, QX86_DISP_8, + + QX86_DISP_32, QX86_DISP_32, + QX86_DISP_32, QX86_DISP_32, + QX86_DISP_32, QX86_DISP_32, + QX86_DISP_32, QX86_DISP_32, + + QX86_DISP_32, QX86_DISP_32, + QX86_DISP_32, QX86_DISP_32, + QX86_DISP_32, QX86_DISP_32, + QX86_DISP_32, QX86_DISP_32, + + QX86_DISP_INVALID, QX86_DISP_INVALID, + QX86_DISP_INVALID, QX86_DISP_INVALID, + QX86_DISP_INVALID, QX86_DISP_INVALID, + QX86_DISP_INVALID, QX86_DISP_INVALID, + + QX86_DISP_INVALID, QX86_DISP_INVALID, + QX86_DISP_INVALID, QX86_DISP_INVALID, + QX86_DISP_INVALID, QX86_DISP_INVALID, + QX86_DISP_INVALID, QX86_DISP_INVALID +}; + +/* Reference: AMD Architecture Programmer's Manual 3: Table A-13, A-15. */ +static int * qx86_modrm_base[4] + = +{ + qx86_modrm_base_16, qx86_modrm_base_32, + qx86_modrm_base_64, 0 +}; + +/* Reference: AMD Architecture Programmer's Manual 3: Table A-13, A-15. */ +static int * qx86_modrm_index[4] + = +{ + qx86_modrm_index_16, qx86_modrm_index_32, + qx86_modrm_index_64, 0 +}; + +/* Reference: AMD Architecture Programmer's Manual 3: Table A-13, A-15. */ +static int * qx86_modrm_scale[4] + = +{ + qx86_modrm_scale_16, qx86_modrm_scale_32, + qx86_modrm_scale_64, 0 +}; + +/* Reference: AMD Architecture Programmer's Manual 3: Table A-13, A-15. */ +static int * qx86_modrm_disp[4] + = +{ + qx86_modrm_disp_16, qx86_modrm_disp_32, + qx86_modrm_disp_64, 0 +}; + +/* Reference: AMD and Intel manuals. */ +QX86_CONST qx86_mtab_item qx86_mtab[QX86_MNEMONIC_COUNT] + = +{ + { + 0, 0, + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "AAA", "AAA", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "AAD", "AAD", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "AAM", "AAM", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "AAS", "AAS", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "ADC", "ADC", + QX86_MATTRIBUTE_INTERLOCKABLE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "ADD", "ADD", + QX86_MATTRIBUTE_INTERLOCKABLE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "ADDPD", "ADDPD", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "ADDPS", "ADDPS", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "ADDSD", "ADDSD", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "ADDSS", "ADDSS", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "ADDSUBPD", "ADDSUBPD", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "ADDSUBPS", "ADDSUBPS", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "AESDEC", "AESDEC", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "AESDECLAST", "AESDECLAST", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "AESENC", "AESENC", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "AESENCLAST", "AESENCLAST", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "AESIMC", "AESIMC", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "AESKEYGENASSIST", "AESKEYGENASSIST", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "AND", "AND", + QX86_MATTRIBUTE_INTERLOCKABLE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "ANDNPD", "ANDNPD", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "ANDNPS", "ANDNPS", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "ANDPD", "ANDPD", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "ANDPS", "ANDPS", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "ARPL", "ARPL", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "BLENDPD", "BLENDPD", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "BLENDPS", "BLENDPS", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "BLENDVPD", "BLENDVPD", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "BLENDVPS", "BLENDVPS", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "BOUND", "BOUND", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "BSF", "BSF", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "BSR", "BSR", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "BSWAP", "BSWAP", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "BT", "BT", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "BTC", "BTC", + QX86_MATTRIBUTE_INTERLOCKABLE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "BTR", "BTR", + QX86_MATTRIBUTE_INTERLOCKABLE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "BTS", "BTS", + QX86_MATTRIBUTE_INTERLOCKABLE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "CALL", "CALL", + QX86_MATTRIBUTE_FIXED_SIZE_64, QX86_ICLASS_TRANSFER | QX86_ICLASS_TRANSFER_LINKED, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "CALLF", "CALLF", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_TRANSFER | QX86_ICLASS_TRANSFER_LINKED, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "CBW", "CBW", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_CWDE + }, + { + "CDQ", "CDQ", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_CWD, QX86_MNEMONIC_CQO + }, + { + "CDQE", "CDQE", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_CWDE, QX86_MNEMONIC_NONE + }, + { + "CLC", "CLC", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "CLD", "CLD", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "CLFLUSH", "CLFLUSH", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "CLGI", "CLGI", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "CLI", "CLI", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "CLTS", "CLTS", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "CMC", "CMC", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "CMOVA", "CMOVA", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_CONDITIONAL_EXECUTION, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "CMOVAE", "CMOVAE", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_CONDITIONAL_EXECUTION, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "CMOVB", "CMOVB", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_CONDITIONAL_EXECUTION, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "CMOVBE", "CMOVBE", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_CONDITIONAL_EXECUTION, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "CMOVG", "CMOVG", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_CONDITIONAL_EXECUTION, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "CMOVGE", "CMOVGE", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_CONDITIONAL_EXECUTION, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "CMOVL", "CMOVL", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_CONDITIONAL_EXECUTION, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "CMOVLE", "CMOVLE", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_CONDITIONAL_EXECUTION, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "CMOVNO", "CMOVNO", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_CONDITIONAL_EXECUTION, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "CMOVNP", "CMOVNP", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_CONDITIONAL_EXECUTION, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "CMOVNS", "CMOVNS", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_CONDITIONAL_EXECUTION, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "CMOVNZ", "CMOVNZ", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_CONDITIONAL_EXECUTION, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "CMOVO", "CMOVO", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_CONDITIONAL_EXECUTION, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "CMOVP", "CMOVP", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_CONDITIONAL_EXECUTION, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "CMOVS", "CMOVS", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_CONDITIONAL_EXECUTION, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "CMOVZ", "CMOVZ", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_CONDITIONAL_EXECUTION, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "CMP", "CMP", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "CMPPD", "CMPPD", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "CMPPS", "CMPPS", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "CMPSB", "CMPSB", + QX86_MATTRIBUTE_REP | QX86_MATTRIBUTE_REPZ, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "CMPSD", "CMPSD", + QX86_MATTRIBUTE_REP | QX86_MATTRIBUTE_REPZ, QX86_ICLASS_NONE, + QX86_MNEMONIC_CMPSW, QX86_MNEMONIC_CMPSQ + }, + { + "CMPSD_SSE", "CMPSD_SSE", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "CMPSQ", "CMPSQ", + QX86_MATTRIBUTE_REP | QX86_MATTRIBUTE_REPZ, QX86_ICLASS_NONE, + QX86_MNEMONIC_CMPSD, QX86_MNEMONIC_NONE + }, + { + "CMPSS", "CMPSS", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "CMPSW", "CMPSW", + QX86_MATTRIBUTE_REP | QX86_MATTRIBUTE_REPZ, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_CMPSD + }, + { + "CMPXCHG", "CMPXCHG", + QX86_MATTRIBUTE_INTERLOCKABLE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "CMPXCHG16B", "CMPXCHG16B", + QX86_MATTRIBUTE_INTERLOCKABLE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "CMPXCHG8B", "CMPXCHG8B", + QX86_MATTRIBUTE_INTERLOCKABLE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "COMISD", "COMISD", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "COMISS", "COMISS", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "CPUID", "CPUID", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "CQO", "CQO", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_CDQ, QX86_MNEMONIC_NONE + }, + { + "CRC32", "CRC32", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "CVTDQ2PD", "CVTDQ2PD", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "CVTDQ2PS", "CVTDQ2PS", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "CVTPD2DQ", "CVTPD2DQ", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "CVTPD2PI", "CVTPD2PI", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "CVTPD2PS", "CVTPD2PS", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "CVTPI2PD", "CVTPI2PD", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "CVTPI2PS", "CVTPI2PS", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "CVTPS2DQ", "CVTPS2DQ", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "CVTPS2PD", "CVTPS2PD", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "CVTPS2PI", "CVTPS2PI", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "CVTSD2SI", "CVTSD2SI", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "CVTSD2SS", "CVTSD2SS", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "CVTSI2SD", "CVTSI2SD", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "CVTSI2SS", "CVTSI2SS", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "CVTSS2SD", "CVTSS2SD", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "CVTSS2SI", "CVTSS2SI", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "CVTTPD2DQ", "CVTTPD2DQ", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "CVTTPD2PI", "CVTTPD2PI", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "CVTTPS2DQ", "CVTTPS2DQ", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "CVTTPS2PI", "CVTTPS2PI", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "CVTTSD2SI", "CVTTSD2SI", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "CVTTSS2SI", "CVTTSS2SI", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "CWD", "CWD", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_CDQ + }, + { + "CWDE", "CWDE", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_CBW, QX86_MNEMONIC_CDQE + }, + { + "DAA", "DAA", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "DAS", "DAS", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "DEC", "DEC", + QX86_MATTRIBUTE_INTERLOCKABLE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "DIV", "DIV", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "DIVPD", "DIVPD", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "DIVPS", "DIVPS", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "DIVSD", "DIVSD", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "DIVSS", "DIVSS", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "DPPD", "DPPD", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "DPPS", "DPPS", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "EMMS", "EMMS", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "ENTER", "ENTER", + QX86_MATTRIBUTE_DEFAULT_SIZE_64, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "EXTRACTPS", "EXTRACTPS", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "EXTRQ", "EXTRQ", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "F2XM1", "F2XM1", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "FABS", "FABS", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "FADD", "FADD", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "FADDP", "FADDP", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "FBLD", "FBLD", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "FBSTP", "FBSTP", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "FCHS", "FCHS", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "FCMOVB", "FCMOVB", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "FCMOVBE", "FCMOVBE", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "FCMOVE", "FCMOVE", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "FCMOVNB", "FCMOVNB", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "FCMOVNBE", "FCMOVNBE", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "FCMOVNE", "FCMOVNE", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "FCMOVNU", "FCMOVNU", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "FCMOVU", "FCMOVU", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "FCOM", "FCOM", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "FCOMI", "FCOMI", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "FCOMIP", "FCOMIP", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "FCOMP", "FCOMP", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "FCOMPP", "FCOMPP", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "FCOS", "FCOS", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "FDECSTP", "FDECSTP", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "FDIV", "FDIV", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "FDIVP", "FDIVP", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "FDIVR", "FDIVR", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "FDIVRP", "FDIVRP", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "FEMMS", "FEMMS", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "FFREE", "FFREE", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "FIADD", "FIADD", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "FICOM", "FICOM", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "FICOMP", "FICOMP", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "FIDIV", "FIDIV", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "FIDIVR", "FIDIVR", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "FILD", "FILD", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "FIMUL", "FIMUL", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "FINCSTP", "FINCSTP", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "FIST", "FIST", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "FISTP", "FISTP", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "FISTTP", "FISTTP", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "FISUB", "FISUB", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "FISUBR", "FISUBR", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "FLD", "FLD", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "FLD1", "FLD1", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "FLDCW", "FLDCW", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "FLDENV", "FLDENV", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "FLDL2E", "FLDL2E", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "FLDL2T", "FLDL2T", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "FLDLG2", "FLDLG2", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "FLDLN2", "FLDLN2", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "FLDPI", "FLDPI", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "FLDZ", "FLDZ", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "FMUL", "FMUL", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "FMULP", "FMULP", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "FNCLEX", "FNCLEX", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "FNINIT", "FNINIT", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "FNOP", "FNOP", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "FNSAVE", "FNSAVE", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "FNSTCW", "FNSTCW", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "FNSTENV", "FNSTENV", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "FNSTSW", "FNSTSW", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "FPATAN", "FPATAN", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "FPREM", "FPREM", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "FPREM1", "FPREM1", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "FPTAN", "FPTAN", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "FRNDINT", "FRNDINT", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "FRSTOR", "FRSTOR", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "FSCALE", "FSCALE", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "FSIN", "FSIN", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "FSINCOS", "FSINCOS", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "FSQRT", "FSQRT", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "FST", "FST", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "FSTP", "FSTP", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "FSUB", "FSUB", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "FSUBP", "FSUBP", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "FSUBR", "FSUBR", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "FSUBRP", "FSUBRP", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "FTST", "FTST", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "FUCOM", "FUCOM", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "FUCOMI", "FUCOMI", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "FUCOMIP", "FUCOMIP", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "FUCOMP", "FUCOMP", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "FUCOMPP", "FUCOMPP", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "FWAIT", "FWAIT", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "FXAM", "FXAM", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "FXCH", "FXCH", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "FXRSTOR", "FXRSTOR", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "FXSAVE", "FXSAVE", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "FXTRACT", "FXTRACT", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "FYL2X", "FYL2X", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "FYL2XP1", "FYL2XP1", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "GETSEC", "GETSEC", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "HADDPD", "HADDPD", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "HADDPS", "HADDPS", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "HLT", "HLT", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "HSUBPD", "HSUBPD", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "HSUBPS", "HSUBPS", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "IDIV", "IDIV", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "IMUL", "IMUL", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "IN", "IN", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "INC", "INC", + QX86_MATTRIBUTE_INTERLOCKABLE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "INSB", "INSB", + QX86_MATTRIBUTE_REP, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "INSD", "INSD", + QX86_MATTRIBUTE_REP, QX86_ICLASS_NONE, + QX86_MNEMONIC_INSW, QX86_MNEMONIC_NONE + }, + { + "INSERTPS", "INSERTPS", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "INSERTQ", "INSERTQ", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "INSW", "INSW", + QX86_MATTRIBUTE_REP, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_INSD + }, + { + "INT", "INT", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_TRANSFER | QX86_ICLASS_TRANSFER_LINKED | QX86_ICLASS_TRANSFER_SERVICE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "INT1", "INT1", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_TRANSFER | QX86_ICLASS_TRANSFER_LINKED | QX86_ICLASS_TRANSFER_SERVICE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "INT3", "INT3", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_TRANSFER | QX86_ICLASS_TRANSFER_LINKED | QX86_ICLASS_TRANSFER_SERVICE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "INTO", "INTO", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_CONDITIONAL_EXECUTION | QX86_ICLASS_TRANSFER | QX86_ICLASS_TRANSFER_LINKED | QX86_ICLASS_TRANSFER_SERVICE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "INVD", "INVD", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "INVEPT", "INVEPT", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "INVLPG", "INVLPG", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "INVLPGA", "INVLPGA", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "INVVPID", "INVVPID", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "IRET", "IRET", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_TRANSFER | QX86_ICLASS_TRANSFER_LINKED_BACK | QX86_ICLASS_TRANSFER_SERVICE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_IRETD + }, + { + "IRETD", "IRETD", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_TRANSFER | QX86_ICLASS_TRANSFER_LINKED_BACK | QX86_ICLASS_TRANSFER_SERVICE, + QX86_MNEMONIC_IRET, QX86_MNEMONIC_IRETQ + }, + { + "IRETQ", "IRETQ", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_TRANSFER | QX86_ICLASS_TRANSFER_LINKED_BACK | QX86_ICLASS_TRANSFER_SERVICE, + QX86_MNEMONIC_IRETD, QX86_MNEMONIC_NONE + }, + { + "JA", "JA", + QX86_MATTRIBUTE_FIXED_SIZE_64, QX86_ICLASS_CONDITIONAL_EXECUTION | QX86_ICLASS_TRANSFER, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "JAE", "JAE", + QX86_MATTRIBUTE_FIXED_SIZE_64, QX86_ICLASS_CONDITIONAL_EXECUTION | QX86_ICLASS_TRANSFER, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "JB", "JB", + QX86_MATTRIBUTE_FIXED_SIZE_64, QX86_ICLASS_CONDITIONAL_EXECUTION | QX86_ICLASS_TRANSFER, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "JBE", "JBE", + QX86_MATTRIBUTE_FIXED_SIZE_64, QX86_ICLASS_CONDITIONAL_EXECUTION | QX86_ICLASS_TRANSFER, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "JCXZ", "JCXZ", + QX86_MATTRIBUTE_FIXED_SIZE_64, QX86_ICLASS_CONDITIONAL_EXECUTION | QX86_ICLASS_TRANSFER, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "JECXZ", "JECXZ", + QX86_MATTRIBUTE_FIXED_SIZE_64, QX86_ICLASS_CONDITIONAL_EXECUTION | QX86_ICLASS_TRANSFER, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "JG", "JG", + QX86_MATTRIBUTE_FIXED_SIZE_64, QX86_ICLASS_CONDITIONAL_EXECUTION | QX86_ICLASS_TRANSFER, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "JGE", "JGE", + QX86_MATTRIBUTE_FIXED_SIZE_64, QX86_ICLASS_CONDITIONAL_EXECUTION | QX86_ICLASS_TRANSFER, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "JL", "JL", + QX86_MATTRIBUTE_FIXED_SIZE_64, QX86_ICLASS_CONDITIONAL_EXECUTION | QX86_ICLASS_TRANSFER, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "JLE", "JLE", + QX86_MATTRIBUTE_FIXED_SIZE_64, QX86_ICLASS_CONDITIONAL_EXECUTION | QX86_ICLASS_TRANSFER, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "JMP", "JMP", + QX86_MATTRIBUTE_FIXED_SIZE_64, QX86_ICLASS_TRANSFER, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "JMPF", "JMPF", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_TRANSFER, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "JNO", "JNO", + QX86_MATTRIBUTE_FIXED_SIZE_64, QX86_ICLASS_CONDITIONAL_EXECUTION | QX86_ICLASS_TRANSFER, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "JNP", "JNP", + QX86_MATTRIBUTE_FIXED_SIZE_64, QX86_ICLASS_CONDITIONAL_EXECUTION | QX86_ICLASS_TRANSFER, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "JNS", "JNS", + QX86_MATTRIBUTE_FIXED_SIZE_64, QX86_ICLASS_CONDITIONAL_EXECUTION | QX86_ICLASS_TRANSFER, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "JNZ", "JNZ", + QX86_MATTRIBUTE_FIXED_SIZE_64, QX86_ICLASS_CONDITIONAL_EXECUTION | QX86_ICLASS_TRANSFER, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "JO", "JO", + QX86_MATTRIBUTE_FIXED_SIZE_64, QX86_ICLASS_CONDITIONAL_EXECUTION | QX86_ICLASS_TRANSFER, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "JP", "JP", + QX86_MATTRIBUTE_FIXED_SIZE_64, QX86_ICLASS_CONDITIONAL_EXECUTION | QX86_ICLASS_TRANSFER, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "JRCXZ", "JRCXZ", + QX86_MATTRIBUTE_FIXED_SIZE_64, QX86_ICLASS_CONDITIONAL_EXECUTION | QX86_ICLASS_TRANSFER, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "JS", "JS", + QX86_MATTRIBUTE_FIXED_SIZE_64, QX86_ICLASS_CONDITIONAL_EXECUTION | QX86_ICLASS_TRANSFER, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "JZ", "JZ", + QX86_MATTRIBUTE_FIXED_SIZE_64, QX86_ICLASS_CONDITIONAL_EXECUTION | QX86_ICLASS_TRANSFER, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "LAHF", "LAHF", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "LAR", "LAR", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "LCS", "LCS", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "LDDQU", "LDDQU", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "LDMXCSR", "LDMXCSR", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "LDS", "LDS", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "LEA", "LEA", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "LEAVE", "LEAVE", + QX86_MATTRIBUTE_DEFAULT_SIZE_64, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "LES", "LES", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "LFENCE", "LFENCE", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "LFS", "LFS", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "LGDT", "LGDT", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "LGS", "LGS", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "LIDT", "LIDT", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "LLDT", "LLDT", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "LMSW", "LMSW", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "LODSB", "LODSB", + QX86_MATTRIBUTE_REP, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "LODSD", "LODSD", + QX86_MATTRIBUTE_REP, QX86_ICLASS_NONE, + QX86_MNEMONIC_LODSW, QX86_MNEMONIC_LODSQ + }, + { + "LODSQ", "LODSQ", + QX86_MATTRIBUTE_REP, QX86_ICLASS_NONE, + QX86_MNEMONIC_LODSD, QX86_MNEMONIC_NONE + }, + { + "LODSW", "LODSW", + QX86_MATTRIBUTE_REP, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_LODSD + }, + { + "LOOP", "LOOP", + QX86_MATTRIBUTE_FIXED_SIZE_64, QX86_ICLASS_CONDITIONAL_EXECUTION | QX86_ICLASS_TRANSFER, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "LOOPNZ", "LOOPNZ", + QX86_MATTRIBUTE_FIXED_SIZE_64, QX86_ICLASS_CONDITIONAL_EXECUTION | QX86_ICLASS_TRANSFER, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "LOOPZ", "LOOPZ", + QX86_MATTRIBUTE_FIXED_SIZE_64, QX86_ICLASS_CONDITIONAL_EXECUTION | QX86_ICLASS_TRANSFER, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "LSL", "LSL", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "LSS", "LSS", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "LTR", "LTR", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "LZCNT", "LZCNT", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "MASKMOVDQU", "MASKMOVDQU", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "MASKMOVQ", "MASKMOVQ", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "MAXPD", "MAXPD", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "MAXPS", "MAXPS", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "MAXSD", "MAXSD", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "MAXSS", "MAXSS", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "MFENCE", "MFENCE", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "MINPD", "MINPD", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "MINPS", "MINPS", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "MINSD", "MINSD", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "MINSS", "MINSS", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "MONITOR", "MONITOR", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "MOV", "MOV", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "MOVAPD", "MOVAPD", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "MOVAPS", "MOVAPS", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "MOVBE", "MOVBE", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "MOVD", "MOVD", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "MOVDDUP", "MOVDDUP", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "MOVDQ2Q", "MOVDQ2Q", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "MOVDQA", "MOVDQA", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "MOVDQU", "MOVDQU", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "MOVHLPS", "MOVHLPS", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "MOVHPD", "MOVHPD", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "MOVHPS", "MOVHPS", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "MOVLHPS", "MOVLHPS", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "MOVLPD", "MOVLPD", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "MOVLPS", "MOVLPS", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "MOVMSKPD", "MOVMSKPD", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "MOVMSKPS", "MOVMSKPS", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "MOVNTDQ", "MOVNTDQ", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "MOVNTDQA", "MOVNTDQA", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "MOVNTI", "MOVNTI", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "MOVNTPD", "MOVNTPD", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "MOVNTPS", "MOVNTPS", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "MOVNTQ", "MOVNTQ", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "MOVNTSD", "MOVNTSD", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "MOVNTSS", "MOVNTSS", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "MOVQ", "MOVQ", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "MOVQ2DQ", "MOVQ2DQ", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "MOVSB", "MOVSB", + QX86_MATTRIBUTE_REP, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "MOVSD", "MOVSD", + QX86_MATTRIBUTE_REP, QX86_ICLASS_NONE, + QX86_MNEMONIC_MOVSW, QX86_MNEMONIC_MOVSQ + }, + { + "MOVSD_SSE", "MOVSD_SSE", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "MOVSHDUP", "MOVSHDUP", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "MOVSLDUP", "MOVSLDUP", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "MOVSQ", "MOVSQ", + QX86_MATTRIBUTE_REP, QX86_ICLASS_NONE, + QX86_MNEMONIC_MOVSD, QX86_MNEMONIC_NONE + }, + { + "MOVSS", "MOVSS", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "MOVSW", "MOVSW", + QX86_MATTRIBUTE_REP, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_MOVSD + }, + { + "MOVSX", "MOVSX", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "MOVSXD", "MOVSXD", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "MOVUPD", "MOVUPD", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "MOVUPS", "MOVUPS", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "MOVZX", "MOVZX", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "MPSADBW", "MPSADBW", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "MUL", "MUL", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "MULPD", "MULPD", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "MULPS", "MULPS", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "MULSD", "MULSD", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "MULSS", "MULSS", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "MWAIT", "MWAIT", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "NEG", "NEG", + QX86_MATTRIBUTE_INTERLOCKABLE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "NOP", "NOP", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "NOT", "NOT", + QX86_MATTRIBUTE_INTERLOCKABLE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "OR", "OR", + QX86_MATTRIBUTE_INTERLOCKABLE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "ORPD", "ORPD", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "ORPS", "ORPS", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "OUT", "OUT", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "OUTSB", "OUTSB", + QX86_MATTRIBUTE_REP, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "OUTSD", "OUTSD", + QX86_MATTRIBUTE_REP, QX86_ICLASS_NONE, + QX86_MNEMONIC_OUTSW, QX86_MNEMONIC_NONE + }, + { + "OUTSW", "OUTSW", + QX86_MATTRIBUTE_REP, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_OUTSD + }, + { + "PABSB", "PABSB", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "PABSD", "PABSD", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "PABSW", "PABSW", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "PACKSSDW", "PACKSSDW", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "PACKSSWB", "PACKSSWB", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "PACKUSDW", "PACKUSDW", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "PACKUSWB", "PACKUSWB", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "PADDB", "PADDB", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "PADDD", "PADDD", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "PADDQ", "PADDQ", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "PADDSB", "PADDSB", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "PADDSW", "PADDSW", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "PADDUSB", "PADDUSB", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "PADDUSW", "PADDUSW", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "PADDW", "PADDW", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "PALIGNR", "PALIGNR", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "PAND", "PAND", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "PANDN", "PANDN", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "PAUSE", "PAUSE", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "PAVGB", "PAVGB", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "PAVGUSB", "PAVGUSB", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "PAVGW", "PAVGW", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "PBLENDVB", "PBLENDVB", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "PBLENDW", "PBLENDW", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "PCLMULQDQ", "PCLMULQDQ", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "PCMPEQB", "PCMPEQB", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "PCMPEQD", "PCMPEQD", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "PCMPEQQ", "PCMPEQQ", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "PCMPEQW", "PCMPEQW", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "PCMPESTRI", "PCMPESTRI", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "PCMPESTRM", "PCMPESTRM", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "PCMPGTB", "PCMPGTB", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "PCMPGTD", "PCMPGTD", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "PCMPGTQ", "PCMPGTQ", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "PCMPGTW", "PCMPGTW", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "PCMPISTRI", "PCMPISTRI", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "PCMPISTRM", "PCMPISTRM", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "PEXTRB", "PEXTRB", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "PEXTRD", "PEXTRD", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "PEXTRQ", "PEXTRQ", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "PEXTRW", "PEXTRW", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "PF2ID", "PF2ID", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "PF2IW", "PF2IW", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "PFACC", "PFACC", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "PFADD", "PFADD", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "PFCMPEQ", "PFCMPEQ", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "PFCMPGE", "PFCMPGE", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "PFCMPGT", "PFCMPGT", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "PFMAX", "PFMAX", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "PFMIN", "PFMIN", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "PFMUL", "PFMUL", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "PFNACC", "PFNACC", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "PFPNACC", "PFPNACC", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "PFRCP", "PFRCP", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "PFRCPIT1", "PFRCPIT1", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "PFRCPIT2", "PFRCPIT2", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "PFRSQIT1", "PFRSQIT1", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "PFRSQRT", "PFRSQRT", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "PFSUB", "PFSUB", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "PFSUBR", "PFSUBR", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "PHADDD", "PHADDD", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "PHADDSW", "PHADDSW", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "PHADDW", "PHADDW", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "PHMINPOSUW", "PHMINPOSUW", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "PHSUBD", "PHSUBD", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "PHSUBSW", "PHSUBSW", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "PHSUBW", "PHSUBW", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "PI2FD", "PI2FD", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "PI2FW", "PI2FW", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "PINSRB", "PINSRB", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "PINSRD", "PINSRD", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "PINSRQ", "PINSRQ", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "PINSRW", "PINSRW", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "PMADDUBSW", "PMADDUBSW", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "PMADDWD", "PMADDWD", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "PMAXSB", "PMAXSB", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "PMAXSD", "PMAXSD", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "PMAXSW", "PMAXSW", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "PMAXUB", "PMAXUB", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "PMAXUD", "PMAXUD", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "PMAXUW", "PMAXUW", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "PMINSB", "PMINSB", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "PMINSD", "PMINSD", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "PMINSW", "PMINSW", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "PMINUB", "PMINUB", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "PMINUD", "PMINUD", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "PMINUW", "PMINUW", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "PMOVMSKB", "PMOVMSKB", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "PMOVSXBD", "PMOVSXBD", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "PMOVSXBQ", "PMOVSXBQ", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "PMOVSXBW", "PMOVSXBW", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "PMOVSXDQ", "PMOVSXDQ", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "PMOVSXWD", "PMOVSXWD", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "PMOVSXWQ", "PMOVSXWQ", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "PMOVZXBD", "PMOVZXBD", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "PMOVZXBQ", "PMOVZXBQ", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "PMOVZXBW", "PMOVZXBW", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "PMOVZXDQ", "PMOVZXDQ", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "PMOVZXWD", "PMOVZXWD", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "PMOVZXWQ", "PMOVZXWQ", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "PMULDQ", "PMULDQ", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "PMULHRSW", "PMULHRSW", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "PMULHRW", "PMULHRW", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "PMULHUW", "PMULHUW", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "PMULHW", "PMULHW", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "PMULLD", "PMULLD", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "PMULLW", "PMULLW", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "PMULUDQ", "PMULUDQ", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "POP", "POP", + QX86_MATTRIBUTE_DEFAULT_SIZE_64, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "POPA", "POPA", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_POPAD + }, + { + "POPAD", "POPAD", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_POPA, QX86_MNEMONIC_NONE + }, + { + "POPCNT", "POPCNT", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "POPF", "POPF", + QX86_MATTRIBUTE_DEFAULT_SIZE_64, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_POPFD + }, + { + "POPFD", "POPFD", + QX86_MATTRIBUTE_DEFAULT_SIZE_64, QX86_ICLASS_NONE, + QX86_MNEMONIC_POPF, QX86_MNEMONIC_POPFQ + }, + { + "POPFQ", "POPFQ", + QX86_MATTRIBUTE_DEFAULT_SIZE_64, QX86_ICLASS_NONE, + QX86_MNEMONIC_POPFD, QX86_MNEMONIC_NONE + }, + { + "POR", "POR", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "PREFETCH", "PREFETCH", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "PREFETCHNTA", "PREFETCHNTA", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "PREFETCHT0", "PREFETCHT0", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "PREFETCHT1", "PREFETCHT1", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "PREFETCHT2", "PREFETCHT2", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "PREFETCHW", "PREFETCHW", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "PSADBW", "PSADBW", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "PSHUFB", "PSHUFB", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "PSHUFD", "PSHUFD", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "PSHUFHW", "PSHUFHW", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "PSHUFLW", "PSHUFLW", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "PSHUFW", "PSHUFW", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "PSIGNB", "PSIGNB", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "PSIGND", "PSIGND", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "PSIGNW", "PSIGNW", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "PSLLD", "PSLLD", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "PSLLDQ", "PSLLDQ", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "PSLLQ", "PSLLQ", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "PSLLW", "PSLLW", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "PSRAD", "PSRAD", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "PSRAW", "PSRAW", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "PSRLD", "PSRLD", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "PSRLDQ", "PSRLDQ", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "PSRLQ", "PSRLQ", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "PSRLW", "PSRLW", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "PSUBB", "PSUBB", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "PSUBD", "PSUBD", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "PSUBQ", "PSUBQ", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "PSUBSB", "PSUBSB", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "PSUBSW", "PSUBSW", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "PSUBUSB", "PSUBUSB", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "PSUBUSW", "PSUBUSW", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "PSUBW", "PSUBW", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "PSWAPD", "PSWAPD", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "PTEST", "PTEST", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "PUNPCKHBW", "PUNPCKHBW", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "PUNPCKHDQ", "PUNPCKHDQ", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "PUNPCKHQDQ", "PUNPCKHQDQ", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "PUNPCKHWD", "PUNPCKHWD", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "PUNPCKLBW", "PUNPCKLBW", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "PUNPCKLDQ", "PUNPCKLDQ", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "PUNPCKLQDQ", "PUNPCKLQDQ", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "PUNPCKLWD", "PUNPCKLWD", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "PUSH", "PUSH", + QX86_MATTRIBUTE_DEFAULT_SIZE_64, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "PUSHA", "PUSHA", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_PUSHAD + }, + { + "PUSHAD", "PUSHAD", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_PUSHA, QX86_MNEMONIC_NONE + }, + { + "PUSHF", "PUSHF", + QX86_MATTRIBUTE_DEFAULT_SIZE_64, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_PUSHFD + }, + { + "PUSHFD", "PUSHFD", + QX86_MATTRIBUTE_DEFAULT_SIZE_64, QX86_ICLASS_NONE, + QX86_MNEMONIC_PUSHF, QX86_MNEMONIC_PUSHFQ + }, + { + "PUSHFQ", "PUSHFQ", + QX86_MATTRIBUTE_DEFAULT_SIZE_64, QX86_ICLASS_NONE, + QX86_MNEMONIC_PUSHFD, QX86_MNEMONIC_NONE + }, + { + "PXOR", "PXOR", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "RCL", "RCL", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "RCPPS", "RCPPS", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "RCPSS", "RCPSS", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "RCR", "RCR", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "RDMSR", "RDMSR", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "RDPMC", "RDPMC", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "RDTSC", "RDTSC", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "RDTSCP", "RDTSCP", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "RET", "RET", + QX86_MATTRIBUTE_FIXED_SIZE_64, QX86_ICLASS_TRANSFER | QX86_ICLASS_TRANSFER_LINKED_BACK, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "RETF", "RETF", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_TRANSFER | QX86_ICLASS_TRANSFER_LINKED_BACK, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "ROL", "ROL", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "ROR", "ROR", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "ROUNDPD", "ROUNDPD", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "ROUNDPS", "ROUNDPS", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "ROUNDSD", "ROUNDSD", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "ROUNDSS", "ROUNDSS", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "RSM", "RSM", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_TRANSFER | QX86_ICLASS_TRANSFER_LINKED_BACK | QX86_ICLASS_TRANSFER_SERVICE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "RSQRTPS", "RSQRTPS", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "RSQRTSS", "RSQRTSS", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "SAHF", "SAHF", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "SALC", "SALC", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "SAR", "SAR", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "SBB", "SBB", + QX86_MATTRIBUTE_INTERLOCKABLE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "SCASB", "SCASB", + QX86_MATTRIBUTE_REP | QX86_MATTRIBUTE_REPZ, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "SCASD", "SCASD", + QX86_MATTRIBUTE_REP | QX86_MATTRIBUTE_REPZ, QX86_ICLASS_NONE, + QX86_MNEMONIC_SCASW, QX86_MNEMONIC_SCASQ + }, + { + "SCASQ", "SCASQ", + QX86_MATTRIBUTE_REP | QX86_MATTRIBUTE_REPZ, QX86_ICLASS_NONE, + QX86_MNEMONIC_SCASD, QX86_MNEMONIC_NONE + }, + { + "SCASW", "SCASW", + QX86_MATTRIBUTE_REP | QX86_MATTRIBUTE_REPZ, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_SCASD + }, + { + "SETA", "SETA", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "SETAE", "SETAE", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "SETB", "SETB", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "SETBE", "SETBE", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "SETG", "SETG", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "SETGE", "SETGE", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "SETL", "SETL", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "SETLE", "SETLE", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "SETNO", "SETNO", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "SETNP", "SETNP", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "SETNS", "SETNS", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "SETNZ", "SETNZ", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "SETO", "SETO", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "SETP", "SETP", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "SETS", "SETS", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "SETZ", "SETZ", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "SFENCE", "SFENCE", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "SGDT", "SGDT", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "SHL", "SHL", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "SHLD", "SHLD", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "SHR", "SHR", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "SHRD", "SHRD", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "SHUFPD", "SHUFPD", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "SHUFPS", "SHUFPS", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "SIDT", "SIDT", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "SKINIT", "SKINIT", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "SLDT", "SLDT", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "SMSW", "SMSW", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "SQRTPD", "SQRTPD", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "SQRTPS", "SQRTPS", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "SQRTSD", "SQRTSD", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "SQRTSS", "SQRTSS", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "STC", "STC", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "STD", "STD", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "STGI", "STGI", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "STI", "STI", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "STMXCSR", "STMXCSR", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "STOSB", "STOSB", + QX86_MATTRIBUTE_REP, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "STOSD", "STOSD", + QX86_MATTRIBUTE_REP, QX86_ICLASS_NONE, + QX86_MNEMONIC_STOSW, QX86_MNEMONIC_STOSQ + }, + { + "STOSQ", "STOSQ", + QX86_MATTRIBUTE_REP, QX86_ICLASS_NONE, + QX86_MNEMONIC_STOSD, QX86_MNEMONIC_NONE + }, + { + "STOSW", "STOSW", + QX86_MATTRIBUTE_REP, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_STOSD + }, + { + "STR", "STR", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "SUB", "SUB", + QX86_MATTRIBUTE_INTERLOCKABLE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "SUBPD", "SUBPD", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "SUBPS", "SUBPS", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "SUBSD", "SUBSD", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "SUBSS", "SUBSS", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "SWAPGS", "SWAPGS", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "SYSCALL", "SYSCALL", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_TRANSFER | QX86_ICLASS_TRANSFER_LINKED | QX86_ICLASS_TRANSFER_SERVICE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "SYSENTER", "SYSENTER", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_TRANSFER | QX86_ICLASS_TRANSFER_LINKED | QX86_ICLASS_TRANSFER_SERVICE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "SYSEXIT", "SYSEXIT", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_TRANSFER | QX86_ICLASS_TRANSFER_LINKED_BACK | QX86_ICLASS_TRANSFER_SERVICE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "SYSRET", "SYSRET", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_TRANSFER | QX86_ICLASS_TRANSFER_LINKED_BACK | QX86_ICLASS_TRANSFER_SERVICE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "TEST", "TEST", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "UCOMISD", "UCOMISD", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "UCOMISS", "UCOMISS", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "UD2", "UD2", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "UNPCKHPD", "UNPCKHPD", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "UNPCKHPS", "UNPCKHPS", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "UNPCKLPD", "UNPCKLPD", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "UNPCKLPS", "UNPCKLPS", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "VERR", "VERR", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "VERW", "VERW", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "VMCALL", "VMCALL", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "VMCLEAR", "VMCLEAR", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "VMLAUNCH", "VMLAUNCH", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "VMLOAD", "VMLOAD", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "VMMCALL", "VMMCALL", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "VMPTRLD", "VMPTRLD", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "VMPTRST", "VMPTRST", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "VMREAD", "VMREAD", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "VMRESUME", "VMRESUME", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "VMRUN", "VMRUN", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "VMSAVE", "VMSAVE", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "VMWRITE", "VMWRITE", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "VMXOFF", "VMXOFF", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "VMXON", "VMXON", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "WBINVD", "WBINVD", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "WRMSR", "WRMSR", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "XADD", "XADD", + QX86_MATTRIBUTE_INTERLOCKABLE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "XCHG", "XCHG", + QX86_MATTRIBUTE_INTERLOCKABLE | QX86_MATTRIBUTE_IMPLICIT_LOCK, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "XGETBV", "XGETBV", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "XLAT", "XLAT", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "XOR", "XOR", + QX86_MATTRIBUTE_INTERLOCKABLE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "XORPD", "XORPD", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "XORPS", "XORPS", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "XRSTOR", "XRSTOR", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "XSAVE", "XSAVE", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + }, + { + "XSETBV", "XSETBV", + QX86_MATTRIBUTE_NONE, QX86_ICLASS_NONE, + QX86_MNEMONIC_NONE, QX86_MNEMONIC_NONE + } +}; + + +/* Generated from file qx86-d-opcode-map/qx86-opcode-map-M9.map */ +// +------------------------------------------------------------------------+ +// | quix86 | +// +------------------------------------------------------------------------+ +// | This file is part of quix86, an x86-64 instruction decoder. | +// | | +// | Copyright (C) 2011 Institute for System Programming of Russian Academy | +// | of Sciences. | +// | | +// | Contact e-mail: . | +// | | +// | quix86 is free software: you can redistribute it and/or modify it | +// | under the terms of the GNU General Public License as published by the | +// | Free Software Foundation, either version 3 of the License, or (at your | +// | option) any later version. | +// | | +// | quix86 is distributed in the hope that it will be useful, but WITHOUT | +// | ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or | +// | FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License | +// | for more details. | +// | | +// | You should have received a copy of the GNU General Public License | +// | along with quix86. If not, see . | +// +------------------------------------------------------------------------+ + +// Reference: AMD Architecture Programmer's Manual 3: Table A-6. +// Reference: Intel Architecture Software Developer’s Manual 2B: Table A-6. + +static qx86_opcode_map_item qx86_opcode_map_M9_01_os_items[] + = +{ + { + /* code */ QX86_MNEMONIC_CMPXCHG8B, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_amode_M, &qx86_stuple_q }} + } + } + }, + { + /* code */ QX86_MNEMONIC_CMPXCHG8B, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_amode_M, &qx86_stuple_q }} + } + } + }, + { + /* code */ QX86_MNEMONIC_CMPXCHG16B, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_amode_M, &qx86_stuple_dq }} + } + } + } +}; + +static qx86_opcode_map qx86_opcode_map_M9_01_os + = +{ + QX86_OPCODE_MAP_INDEX_OS, 2, qx86_opcode_map_M9_01_os_items +}; + +static qx86_opcode_map_item qx86_opcode_map_M9_06_sp_00_cs_items[] + = +{ + /* 00 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + { + /* code */ QX86_MNEMONIC_VMPTRLD, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_M, &qx86_stuple_q }} + } + } + }, + { + /* code */ QX86_MNEMONIC_VMPTRLD, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_M, &qx86_stuple_q }} + } + } + } +}; + +static qx86_opcode_map qx86_opcode_map_M9_06_sp_00_cs + = +{ + QX86_OPCODE_MAP_INDEX_CS, 2, qx86_opcode_map_M9_06_sp_00_cs_items +}; + +static qx86_opcode_map_item qx86_opcode_map_M9_06_sp_66_cs_items[] + = +{ + /* 00 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + { + /* code */ QX86_MNEMONIC_VMCLEAR, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_M, &qx86_stuple_q }} + } + } + }, + { + /* code */ QX86_MNEMONIC_VMCLEAR, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_M, &qx86_stuple_q }} + } + } + } +}; + +static qx86_opcode_map qx86_opcode_map_M9_06_sp_66_cs + = +{ + QX86_OPCODE_MAP_INDEX_CS, 2, qx86_opcode_map_M9_06_sp_66_cs_items +}; + +static qx86_opcode_map_item qx86_opcode_map_M9_06_sp_f3_cs_items[] + = +{ + /* 00 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + { + /* code */ QX86_MNEMONIC_VMXON, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_M, &qx86_stuple_q }} + } + } + }, + { + /* code */ QX86_MNEMONIC_VMXON, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_M, &qx86_stuple_q }} + } + } + } +}; + +static qx86_opcode_map qx86_opcode_map_M9_06_sp_f3_cs + = +{ + QX86_OPCODE_MAP_INDEX_CS, 2, qx86_opcode_map_M9_06_sp_f3_cs_items +}; + +static qx86_opcode_map_item qx86_opcode_map_M9_06_sp_items[] + = +{ + /* 00 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_M9_06_sp_00_cs, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 66 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_M9_06_sp_66_cs, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* F2 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* F3 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_M9_06_sp_f3_cs, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_M9_06_sp + = +{ + QX86_OPCODE_MAP_INDEX_SP, 3, qx86_opcode_map_M9_06_sp_items +}; + +static qx86_opcode_map_item qx86_opcode_map_M9_07_sp_00_cs_items[] + = +{ + /* 00 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + { + /* code */ QX86_MNEMONIC_VMPTRST, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_M, &qx86_stuple_q }} + } + } + }, + { + /* code */ QX86_MNEMONIC_VMPTRST, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_M, &qx86_stuple_q }} + } + } + } +}; + +static qx86_opcode_map qx86_opcode_map_M9_07_sp_00_cs + = +{ + QX86_OPCODE_MAP_INDEX_CS, 2, qx86_opcode_map_M9_07_sp_00_cs_items +}; + +static qx86_opcode_map_item qx86_opcode_map_M9_07_sp_f3_cs_items[] + = +{ + /* 00 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + { + /* code */ QX86_MNEMONIC_VMPTRST, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_M, &qx86_stuple_q }} + } + } + }, + { + /* code */ QX86_MNEMONIC_VMPTRST, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_M, &qx86_stuple_q }} + } + } + } +}; + +static qx86_opcode_map qx86_opcode_map_M9_07_sp_f3_cs + = +{ + QX86_OPCODE_MAP_INDEX_CS, 2, qx86_opcode_map_M9_07_sp_f3_cs_items +}; + +static qx86_opcode_map_item qx86_opcode_map_M9_07_sp_items[] + = +{ + /* 00 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_M9_07_sp_00_cs, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 66 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* F2 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* F3 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_M9_07_sp_f3_cs, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_M9_07_sp + = +{ + QX86_OPCODE_MAP_INDEX_SP, 3, qx86_opcode_map_M9_07_sp_items +}; + +static qx86_opcode_map_item qx86_opcode_map_M9_items[] + = +{ + /* 00 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 01 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_M9_01_os, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 02 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 03 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 04 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 05 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 06 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_M9_06_sp, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 07 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_M9_07_sp, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_M9 + = +{ + QX86_OPCODE_MAP_INDEX_REG, 7, qx86_opcode_map_M9_items +}; +/* End of file qx86-d-opcode-map/qx86-opcode-map-M9.map */ +/* Generated from file qx86-d-opcode-map/qx86-opcode-map-M8.map */ +// +------------------------------------------------------------------------+ +// | quix86 | +// +------------------------------------------------------------------------+ +// | This file is part of quix86, an x86-64 instruction decoder. | +// | | +// | Copyright (C) 2011 Institute for System Programming of Russian Academy | +// | of Sciences. | +// | | +// | Contact e-mail: . | +// | | +// | quix86 is free software: you can redistribute it and/or modify it | +// | under the terms of the GNU General Public License as published by the | +// | Free Software Foundation, either version 3 of the License, or (at your | +// | option) any later version. | +// | | +// | quix86 is distributed in the hope that it will be useful, but WITHOUT | +// | ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or | +// | FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License | +// | for more details. | +// | | +// | You should have received a copy of the GNU General Public License | +// | along with quix86. If not, see . | +// +------------------------------------------------------------------------+ + +// Reference: AMD Architecture Programmer's Manual 3: Table A-6. + +static qx86_opcode_map_item qx86_opcode_map_M8_items[] + = +{ + /* 00 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 01 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 02 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 03 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + { + /* code */ QX86_MNEMONIC_BT, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_E, &qx86_stuple_v }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_I, &qx86_stuple_b }} + } + } + }, + { + /* code */ QX86_MNEMONIC_BTS, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_amode_E, &qx86_stuple_v }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_I, &qx86_stuple_b }} + } + } + }, + { + /* code */ QX86_MNEMONIC_BTR, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_amode_E, &qx86_stuple_v }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_I, &qx86_stuple_b }} + } + } + }, + { + /* code */ QX86_MNEMONIC_BTC, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_amode_E, &qx86_stuple_v }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_I, &qx86_stuple_b }} + } + } + } +}; + +static qx86_opcode_map qx86_opcode_map_M8 + = +{ + QX86_OPCODE_MAP_INDEX_REG, 7, qx86_opcode_map_M8_items +}; +/* End of file qx86-d-opcode-map/qx86-opcode-map-M8.map */ +/* Generated from file qx86-d-opcode-map/qx86-opcode-map-M10.map */ +// +------------------------------------------------------------------------+ +// | quix86 | +// +------------------------------------------------------------------------+ +// | This file is part of quix86, an x86-64 instruction decoder. | +// | | +// | Copyright (C) 2011 Institute for System Programming of Russian Academy | +// | of Sciences. | +// | | +// | Contact e-mail: . | +// | | +// | quix86 is free software: you can redistribute it and/or modify it | +// | under the terms of the GNU General Public License as published by the | +// | Free Software Foundation, either version 3 of the License, or (at your | +// | option) any later version. | +// | | +// | quix86 is distributed in the hope that it will be useful, but WITHOUT | +// | ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or | +// | FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License | +// | for more details. | +// | | +// | You should have received a copy of the GNU General Public License | +// | along with quix86. If not, see . | +// +------------------------------------------------------------------------+ + +// Reference: AMD Architecture Programmer's Manual 3: Table A-6. + +static qx86_opcode_map_item qx86_opcode_map_M10_items[] + = +{ + /* 00 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 01 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 02 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 03 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 04 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 05 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 06 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 07 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_M10 + = +{ + QX86_OPCODE_MAP_INDEX_REG, 7, qx86_opcode_map_M10_items +}; +/* End of file qx86-d-opcode-map/qx86-opcode-map-M10.map */ +/* Generated from file qx86-d-opcode-map/qx86-opcode-map-M15.map */ +// +------------------------------------------------------------------------+ +// | quix86 | +// +------------------------------------------------------------------------+ +// | This file is part of quix86, an x86-64 instruction decoder. | +// | | +// | Copyright (C) 2011 Institute for System Programming of Russian Academy | +// | of Sciences. | +// | | +// | Contact e-mail: . | +// | | +// | quix86 is free software: you can redistribute it and/or modify it | +// | under the terms of the GNU General Public License as published by the | +// | Free Software Foundation, either version 3 of the License, or (at your | +// | option) any later version. | +// | | +// | quix86 is distributed in the hope that it will be useful, but WITHOUT | +// | ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or | +// | FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License | +// | for more details. | +// | | +// | You should have received a copy of the GNU General Public License | +// | along with quix86. If not, see . | +// +------------------------------------------------------------------------+ + +// Reference: AMD Architecture Programmer's Manual 3: Tables A-6, A-7. +// Reference: Intel Architecture Software Developer’s Manual 2B: Table A-6. + +static qx86_opcode_map_item qx86_opcode_map_M15_00_sp_items[] + = +{ + { + /* code */ QX86_MNEMONIC_FXSAVE, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_M, &qx86_stuple_fx }} + } + } + }, + /* 66 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* F2 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* F3 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_M15_00_sp + = +{ + QX86_OPCODE_MAP_INDEX_SP, 3, qx86_opcode_map_M15_00_sp_items +}; + +static qx86_opcode_map_item qx86_opcode_map_M15_01_sp_items[] + = +{ + { + /* code */ QX86_MNEMONIC_FXRSTOR, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_M, &qx86_stuple_fx }} + } + } + }, + /* 66 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* F2 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* F3 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_M15_01_sp + = +{ + QX86_OPCODE_MAP_INDEX_SP, 3, qx86_opcode_map_M15_01_sp_items +}; + +static qx86_opcode_map_item qx86_opcode_map_M15_02_sp_items[] + = +{ + { + /* code */ QX86_MNEMONIC_LDMXCSR, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_M, &qx86_stuple_d }} + } + } + }, + /* 66 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* F2 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* F3 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_M15_02_sp + = +{ + QX86_OPCODE_MAP_INDEX_SP, 3, qx86_opcode_map_M15_02_sp_items +}; + +static qx86_opcode_map_item qx86_opcode_map_M15_03_sp_items[] + = +{ + { + /* code */ QX86_MNEMONIC_STMXCSR, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_M, &qx86_stuple_d }} + } + } + }, + /* 66 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* F2 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* F3 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_M15_03_sp + = +{ + QX86_OPCODE_MAP_INDEX_SP, 3, qx86_opcode_map_M15_03_sp_items +}; + +static qx86_opcode_map_item qx86_opcode_map_M15_04_mod_items[] + = +{ + { + /* code */ QX86_MNEMONIC_XSAVE, + /* map */ 0, + + /* operandCount */ 0, + /* placeHolder */ {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + { + /* code */ QX86_MNEMONIC_XSAVE, + /* map */ 0, + + /* operandCount */ 0, + /* placeHolder */ {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + { + /* code */ QX86_MNEMONIC_XSAVE, + /* map */ 0, + + /* operandCount */ 0, + /* placeHolder */ {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 03 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_M15_04_mod + = +{ + QX86_OPCODE_MAP_INDEX_MOD, 3, qx86_opcode_map_M15_04_mod_items +}; + +static qx86_opcode_map_item qx86_opcode_map_M15_05_mod_items[] + = +{ + { + /* code */ QX86_MNEMONIC_XRSTOR, + /* map */ 0, + + /* operandCount */ 0, + /* placeHolder */ {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + { + /* code */ QX86_MNEMONIC_XRSTOR, + /* map */ 0, + + /* operandCount */ 0, + /* placeHolder */ {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + { + /* code */ QX86_MNEMONIC_XRSTOR, + /* map */ 0, + + /* operandCount */ 0, + /* placeHolder */ {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + { + /* code */ QX86_MNEMONIC_LFENCE, + /* map */ 0, + + /* operandCount */ 0, + /* placeHolder */ {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_M15_05_mod + = +{ + QX86_OPCODE_MAP_INDEX_MOD, 3, qx86_opcode_map_M15_05_mod_items +}; + +static qx86_opcode_map_item qx86_opcode_map_M15_06_mod_items[] + = +{ + /* 00 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 01 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 02 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + { + /* code */ QX86_MNEMONIC_MFENCE, + /* map */ 0, + + /* operandCount */ 0, + /* placeHolder */ {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_M15_06_mod + = +{ + QX86_OPCODE_MAP_INDEX_MOD, 3, qx86_opcode_map_M15_06_mod_items +}; + +static qx86_opcode_map_item qx86_opcode_map_M15_07_mod_items[] + = +{ + { + /* code */ QX86_MNEMONIC_CLFLUSH, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_M, &qx86_stuple_b }} + } + } + }, + { + /* code */ QX86_MNEMONIC_CLFLUSH, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_M, &qx86_stuple_b }} + } + } + }, + { + /* code */ QX86_MNEMONIC_CLFLUSH, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_M, &qx86_stuple_b }} + } + } + }, + { + /* code */ QX86_MNEMONIC_SFENCE, + /* map */ 0, + + /* operandCount */ 0, + /* placeHolder */ {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_M15_07_mod + = +{ + QX86_OPCODE_MAP_INDEX_MOD, 3, qx86_opcode_map_M15_07_mod_items +}; + +static qx86_opcode_map_item qx86_opcode_map_M15_items[] + = +{ + /* 00 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_M15_00_sp, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 01 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_M15_01_sp, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 02 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_M15_02_sp, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 03 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_M15_03_sp, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 04 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_M15_04_mod, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 05 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_M15_05_mod, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 06 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_M15_06_mod, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 07 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_M15_07_mod, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_M15 + = +{ + QX86_OPCODE_MAP_INDEX_REG, 7, qx86_opcode_map_M15_items +}; +/* End of file qx86-d-opcode-map/qx86-opcode-map-M15.map */ +/* Generated from file qx86-d-opcode-map/qx86-opcode-map-M17.map */ +// +------------------------------------------------------------------------+ +// | quix86 | +// +------------------------------------------------------------------------+ +// | This file is part of quix86, an x86-64 instruction decoder. | +// | | +// | Copyright (C) 2011 Institute for System Programming of Russian Academy | +// | of Sciences. | +// | | +// | Contact e-mail: . | +// | | +// | quix86 is free software: you can redistribute it and/or modify it | +// | under the terms of the GNU General Public License as published by the | +// | Free Software Foundation, either version 3 of the License, or (at your | +// | option) any later version. | +// | | +// | quix86 is distributed in the hope that it will be useful, but WITHOUT | +// | ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or | +// | FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License | +// | for more details. | +// | | +// | You should have received a copy of the GNU General Public License | +// | along with quix86. If not, see . | +// +------------------------------------------------------------------------+ + +// TODO: this separate map is present only on AMD. + +// Reference: AMD Architecture Programmer's Manual 3: Tables A-6, A-7. +// Reference: Intel Architecture Software Developer’s Manual 2B: Table A-6. + +static qx86_opcode_map_item qx86_opcode_map_M17_00_sp_items[] + = +{ + /* 00 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + { + /* code */ QX86_MNEMONIC_EXTRQ, + /* map */ 0, + + /* operandCount */ 3, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_amode_V, &qx86_stuple_dq }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_I, &qx86_stuple_b }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_I, &qx86_stuple_b }} + } + } + }, + /* F2 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* F3 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_M17_00_sp + = +{ + QX86_OPCODE_MAP_INDEX_SP, 3, qx86_opcode_map_M17_00_sp_items +}; + +static qx86_opcode_map_item qx86_opcode_map_M17_items[] + = +{ + /* 00 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_M17_00_sp, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 01 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 02 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 03 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 04 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 05 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 06 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 07 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_M17 + = +{ + QX86_OPCODE_MAP_INDEX_REG, 7, qx86_opcode_map_M17_items +}; +/* End of file qx86-d-opcode-map/qx86-opcode-map-M17.map */ +/* Generated from file qx86-d-opcode-map/qx86-opcode-map-M14.map */ +// +------------------------------------------------------------------------+ +// | quix86 | +// +------------------------------------------------------------------------+ +// | This file is part of quix86, an x86-64 instruction decoder. | +// | | +// | Copyright (C) 2011 Institute for System Programming of Russian Academy | +// | of Sciences. | +// | | +// | Contact e-mail: . | +// | | +// | quix86 is free software: you can redistribute it and/or modify it | +// | under the terms of the GNU General Public License as published by the | +// | Free Software Foundation, either version 3 of the License, or (at your | +// | option) any later version. | +// | | +// | quix86 is distributed in the hope that it will be useful, but WITHOUT | +// | ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or | +// | FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License | +// | for more details. | +// | | +// | You should have received a copy of the GNU General Public License | +// | along with quix86. If not, see . | +// +------------------------------------------------------------------------+ + +// Reference: AMD Architecture Programmer's Manual 3: Table A-6. +// Reference: Intel Architecture Software Developer’s Manual 2B: Table A-6. + +static qx86_opcode_map_item qx86_opcode_map_M14_02_sp_items[] + = +{ + { + /* code */ QX86_MNEMONIC_PSRLQ, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_amode_N, &qx86_stuple_q }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_I, &qx86_stuple_b }} + } + } + }, + { + /* code */ QX86_MNEMONIC_PSRLQ, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_amode_U, &qx86_stuple_dq }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_I, &qx86_stuple_b }} + } + } + }, + /* F2 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* F3 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_M14_02_sp + = +{ + QX86_OPCODE_MAP_INDEX_SP, 3, qx86_opcode_map_M14_02_sp_items +}; + +static qx86_opcode_map_item qx86_opcode_map_M14_03_sp_items[] + = +{ + /* 00 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + { + /* code */ QX86_MNEMONIC_PSRLDQ, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_amode_U, &qx86_stuple_dq }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_I, &qx86_stuple_b }} + } + } + }, + /* F2 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* F3 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_M14_03_sp + = +{ + QX86_OPCODE_MAP_INDEX_SP, 3, qx86_opcode_map_M14_03_sp_items +}; + +static qx86_opcode_map_item qx86_opcode_map_M14_06_sp_items[] + = +{ + { + /* code */ QX86_MNEMONIC_PSLLQ, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_amode_N, &qx86_stuple_q }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_I, &qx86_stuple_b }} + } + } + }, + { + /* code */ QX86_MNEMONIC_PSLLQ, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_amode_U, &qx86_stuple_dq }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_I, &qx86_stuple_b }} + } + } + }, + /* F2 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* F3 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_M14_06_sp + = +{ + QX86_OPCODE_MAP_INDEX_SP, 3, qx86_opcode_map_M14_06_sp_items +}; + +static qx86_opcode_map_item qx86_opcode_map_M14_07_sp_items[] + = +{ + /* 00 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + { + /* code */ QX86_MNEMONIC_PSLLDQ, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_amode_U, &qx86_stuple_dq }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_I, &qx86_stuple_b }} + } + } + }, + /* F2 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* F3 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_M14_07_sp + = +{ + QX86_OPCODE_MAP_INDEX_SP, 3, qx86_opcode_map_M14_07_sp_items +}; + +static qx86_opcode_map_item qx86_opcode_map_M14_items[] + = +{ + /* 00 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 01 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 02 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_M14_02_sp, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 03 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_M14_03_sp, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 04 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 05 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 06 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_M14_06_sp, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 07 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_M14_07_sp, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_M14 + = +{ + QX86_OPCODE_MAP_INDEX_REG, 7, qx86_opcode_map_M14_items +}; +/* End of file qx86-d-opcode-map/qx86-opcode-map-M14.map */ +/* Generated from file qx86-d-opcode-map/qx86-opcode-map-M13.map */ +// +------------------------------------------------------------------------+ +// | quix86 | +// +------------------------------------------------------------------------+ +// | This file is part of quix86, an x86-64 instruction decoder. | +// | | +// | Copyright (C) 2011 Institute for System Programming of Russian Academy | +// | of Sciences. | +// | | +// | Contact e-mail: . | +// | | +// | quix86 is free software: you can redistribute it and/or modify it | +// | under the terms of the GNU General Public License as published by the | +// | Free Software Foundation, either version 3 of the License, or (at your | +// | option) any later version. | +// | | +// | quix86 is distributed in the hope that it will be useful, but WITHOUT | +// | ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or | +// | FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License | +// | for more details. | +// | | +// | You should have received a copy of the GNU General Public License | +// | along with quix86. If not, see . | +// +------------------------------------------------------------------------+ + +// Reference: AMD Architecture Programmer's Manual 3: Table A-6. +// Reference: Intel Architecture Software Developer’s Manual 2B: Table A-6. + +static qx86_opcode_map_item qx86_opcode_map_M13_02_sp_items[] + = +{ + { + /* code */ QX86_MNEMONIC_PSRLD, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_amode_N, &qx86_stuple_q }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_I, &qx86_stuple_b }} + } + } + }, + { + /* code */ QX86_MNEMONIC_PSRLD, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_amode_U, &qx86_stuple_dq }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_I, &qx86_stuple_b }} + } + } + }, + /* F2 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* F3 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_M13_02_sp + = +{ + QX86_OPCODE_MAP_INDEX_SP, 3, qx86_opcode_map_M13_02_sp_items +}; + +static qx86_opcode_map_item qx86_opcode_map_M13_04_sp_items[] + = +{ + { + /* code */ QX86_MNEMONIC_PSRAD, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_amode_N, &qx86_stuple_q }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_I, &qx86_stuple_b }} + } + } + }, + { + /* code */ QX86_MNEMONIC_PSRAD, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_amode_U, &qx86_stuple_dq }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_I, &qx86_stuple_b }} + } + } + }, + /* F2 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* F3 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_M13_04_sp + = +{ + QX86_OPCODE_MAP_INDEX_SP, 3, qx86_opcode_map_M13_04_sp_items +}; + +static qx86_opcode_map_item qx86_opcode_map_M13_06_sp_items[] + = +{ + { + /* code */ QX86_MNEMONIC_PSLLD, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_amode_N, &qx86_stuple_q }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_I, &qx86_stuple_b }} + } + } + }, + { + /* code */ QX86_MNEMONIC_PSLLD, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_amode_U, &qx86_stuple_dq }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_I, &qx86_stuple_b }} + } + } + }, + /* F2 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* F3 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_M13_06_sp + = +{ + QX86_OPCODE_MAP_INDEX_SP, 3, qx86_opcode_map_M13_06_sp_items +}; + +static qx86_opcode_map_item qx86_opcode_map_M13_items[] + = +{ + /* 00 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 01 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 02 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_M13_02_sp, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 03 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 04 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_M13_04_sp, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 05 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 06 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_M13_06_sp, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 07 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_M13 + = +{ + QX86_OPCODE_MAP_INDEX_REG, 7, qx86_opcode_map_M13_items +}; +/* End of file qx86-d-opcode-map/qx86-opcode-map-M13.map */ +/* Generated from file qx86-d-opcode-map/qx86-opcode-map-M12.map */ +// +------------------------------------------------------------------------+ +// | quix86 | +// +------------------------------------------------------------------------+ +// | This file is part of quix86, an x86-64 instruction decoder. | +// | | +// | Copyright (C) 2011 Institute for System Programming of Russian Academy | +// | of Sciences. | +// | | +// | Contact e-mail: . | +// | | +// | quix86 is free software: you can redistribute it and/or modify it | +// | under the terms of the GNU General Public License as published by the | +// | Free Software Foundation, either version 3 of the License, or (at your | +// | option) any later version. | +// | | +// | quix86 is distributed in the hope that it will be useful, but WITHOUT | +// | ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or | +// | FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License | +// | for more details. | +// | | +// | You should have received a copy of the GNU General Public License | +// | along with quix86. If not, see . | +// +------------------------------------------------------------------------+ + +// Reference: AMD Architecture Programmer's Manual 3: Table A-6. +// Reference: Intel Architecture Software Developer’s Manual 2B: Table A-6. + +static qx86_opcode_map_item qx86_opcode_map_M12_02_sp_items[] + = +{ + { + /* code */ QX86_MNEMONIC_PSRLW, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_amode_N, &qx86_stuple_q }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_I, &qx86_stuple_b }} + } + } + }, + { + /* code */ QX86_MNEMONIC_PSRLW, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_amode_U, &qx86_stuple_dq }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_I, &qx86_stuple_b }} + } + } + }, + /* F2 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* F3 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_M12_02_sp + = +{ + QX86_OPCODE_MAP_INDEX_SP, 3, qx86_opcode_map_M12_02_sp_items +}; + +static qx86_opcode_map_item qx86_opcode_map_M12_04_sp_items[] + = +{ + { + /* code */ QX86_MNEMONIC_PSRAW, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_amode_N, &qx86_stuple_q }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_I, &qx86_stuple_b }} + } + } + }, + { + /* code */ QX86_MNEMONIC_PSRAW, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_amode_U, &qx86_stuple_dq }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_I, &qx86_stuple_b }} + } + } + }, + /* F2 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* F3 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_M12_04_sp + = +{ + QX86_OPCODE_MAP_INDEX_SP, 3, qx86_opcode_map_M12_04_sp_items +}; + +static qx86_opcode_map_item qx86_opcode_map_M12_06_sp_items[] + = +{ + { + /* code */ QX86_MNEMONIC_PSLLW, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_amode_N, &qx86_stuple_q }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_I, &qx86_stuple_b }} + } + } + }, + { + /* code */ QX86_MNEMONIC_PSLLW, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_amode_U, &qx86_stuple_dq }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_I, &qx86_stuple_b }} + } + } + }, + /* F2 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* F3 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_M12_06_sp + = +{ + QX86_OPCODE_MAP_INDEX_SP, 3, qx86_opcode_map_M12_06_sp_items +}; + +static qx86_opcode_map_item qx86_opcode_map_M12_items[] + = +{ + /* 00 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 01 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 02 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_M12_02_sp, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 03 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 04 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_M12_04_sp, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 05 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 06 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_M12_06_sp, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 07 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_M12 + = +{ + QX86_OPCODE_MAP_INDEX_REG, 7, qx86_opcode_map_M12_items +}; +/* End of file qx86-d-opcode-map/qx86-opcode-map-M12.map */ +/* Generated from file qx86-d-opcode-map/qx86-opcode-map-3B.map */ +// +------------------------------------------------------------------------+ +// | quix86 | +// +------------------------------------------------------------------------+ +// | This file is part of quix86, an x86-64 instruction decoder. | +// | | +// | Copyright (C) 2011 Institute for System Programming of Russian Academy | +// | of Sciences. | +// | | +// | Contact e-mail: . | +// | | +// | quix86 is free software: you can redistribute it and/or modify it | +// | under the terms of the GNU General Public License as published by the | +// | Free Software Foundation, either version 3 of the License, or (at your | +// | option) any later version. | +// | | +// | quix86 is distributed in the hope that it will be useful, but WITHOUT | +// | ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or | +// | FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License | +// | for more details. | +// | | +// | You should have received a copy of the GNU General Public License | +// | along with quix86. If not, see . | +// +------------------------------------------------------------------------+ + +// Reference: Intel Architecture Software Developer’s Manual 2B: Table A-5. + // TODO: AVX 04, 05, 06 + +static qx86_opcode_map_item qx86_opcode_map_3B_08_sp_items[] + = +{ + /* 00 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + { + /* code */ QX86_MNEMONIC_ROUNDPS, + /* map */ 0, + + /* operandCount */ 3, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_V, &qx86_stuple_dq }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_W, &qx86_stuple_dq }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_I, &qx86_stuple_b }} + } + } + }, + /* F2 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* F3 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_3B_08_sp + = +{ + QX86_OPCODE_MAP_INDEX_SP, 3, qx86_opcode_map_3B_08_sp_items +}; + +static qx86_opcode_map_item qx86_opcode_map_3B_09_sp_items[] + = +{ + /* 00 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + { + /* code */ QX86_MNEMONIC_ROUNDPD, + /* map */ 0, + + /* operandCount */ 3, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_V, &qx86_stuple_dq }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_W, &qx86_stuple_dq }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_I, &qx86_stuple_b }} + } + } + }, + /* F2 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* F3 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_3B_09_sp + = +{ + QX86_OPCODE_MAP_INDEX_SP, 3, qx86_opcode_map_3B_09_sp_items +}; + +static qx86_opcode_map_item qx86_opcode_map_3B_0a_sp_items[] + = +{ + /* 00 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + { + /* code */ QX86_MNEMONIC_ROUNDSS, + /* map */ 0, + + /* operandCount */ 3, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_V, &qx86_stuple_ss }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_W, &qx86_stuple_ss }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_I, &qx86_stuple_b }} + } + } + }, + /* F2 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* F3 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_3B_0a_sp + = +{ + QX86_OPCODE_MAP_INDEX_SP, 3, qx86_opcode_map_3B_0a_sp_items +}; + +static qx86_opcode_map_item qx86_opcode_map_3B_0b_sp_items[] + = +{ + /* 00 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + { + /* code */ QX86_MNEMONIC_ROUNDSD, + /* map */ 0, + + /* operandCount */ 3, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_V, &qx86_stuple_ss }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_W, &qx86_stuple_ss }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_I, &qx86_stuple_b }} + } + } + }, + /* F2 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* F3 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_3B_0b_sp + = +{ + QX86_OPCODE_MAP_INDEX_SP, 3, qx86_opcode_map_3B_0b_sp_items +}; + +static qx86_opcode_map_item qx86_opcode_map_3B_0c_sp_items[] + = +{ + /* 00 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + { + /* code */ QX86_MNEMONIC_BLENDPS, + /* map */ 0, + + /* operandCount */ 3, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_amode_V, &qx86_stuple_dq }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_W, &qx86_stuple_dq }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_I, &qx86_stuple_b }} + } + } + }, + /* F2 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* F3 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_3B_0c_sp + = +{ + QX86_OPCODE_MAP_INDEX_SP, 3, qx86_opcode_map_3B_0c_sp_items +}; + +static qx86_opcode_map_item qx86_opcode_map_3B_0d_sp_items[] + = +{ + /* 00 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + { + /* code */ QX86_MNEMONIC_BLENDPD, + /* map */ 0, + + /* operandCount */ 3, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_amode_V, &qx86_stuple_dq }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_W, &qx86_stuple_dq }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_I, &qx86_stuple_b }} + } + } + }, + /* F2 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* F3 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_3B_0d_sp + = +{ + QX86_OPCODE_MAP_INDEX_SP, 3, qx86_opcode_map_3B_0d_sp_items +}; + +static qx86_opcode_map_item qx86_opcode_map_3B_0e_sp_items[] + = +{ + /* 00 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + { + /* code */ QX86_MNEMONIC_PBLENDW, + /* map */ 0, + + /* operandCount */ 3, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_amode_V, &qx86_stuple_dq }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_W, &qx86_stuple_dq }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_I, &qx86_stuple_b }} + } + } + }, + /* F2 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* F3 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_3B_0e_sp + = +{ + QX86_OPCODE_MAP_INDEX_SP, 3, qx86_opcode_map_3B_0e_sp_items +}; + + +static qx86_opcode_map_item qx86_opcode_map_3B_0f_sp_items[] + = +{ + { + /* code */ QX86_MNEMONIC_PALIGNR, + /* map */ 0, + + /* operandCount */ 3, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_amode_P, &qx86_stuple_q }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_Q, &qx86_stuple_q }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_I, &qx86_stuple_b }} + } + } + }, + { + /* code */ QX86_MNEMONIC_PALIGNR, + /* map */ 0, + + /* operandCount */ 3, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_amode_V, &qx86_stuple_dq }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_W, &qx86_stuple_dq }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_I, &qx86_stuple_b }} + } + } + }, + /* F2 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* F3 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_3B_0f_sp + = +{ + QX86_OPCODE_MAP_INDEX_SP, 3, qx86_opcode_map_3B_0f_sp_items +}; + +static qx86_opcode_map_item qx86_opcode_map_3B_14_sp_66_mod_items[] + = +{ + { + /* code */ QX86_MNEMONIC_PEXTRB, + /* map */ 0, + + /* operandCount */ 3, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_M, &qx86_stuple_b }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_V, &qx86_stuple_dq }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_I, &qx86_stuple_b }} + } + } + }, + { + /* code */ QX86_MNEMONIC_PEXTRB, + /* map */ 0, + + /* operandCount */ 3, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_M, &qx86_stuple_b }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_V, &qx86_stuple_dq }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_I, &qx86_stuple_b }} + } + } + }, + { + /* code */ QX86_MNEMONIC_PEXTRB, + /* map */ 0, + + /* operandCount */ 3, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_M, &qx86_stuple_b }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_V, &qx86_stuple_dq }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_I, &qx86_stuple_b }} + } + } + }, + { + /* code */ QX86_MNEMONIC_PEXTRB, + /* map */ 0, + + /* operandCount */ 3, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_R, &qx86_stuple_d }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_V, &qx86_stuple_dq }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_I, &qx86_stuple_b }} + } + } + } +}; + +static qx86_opcode_map qx86_opcode_map_3B_14_sp_66_mod + = +{ + QX86_OPCODE_MAP_INDEX_MOD, 3, qx86_opcode_map_3B_14_sp_66_mod_items +}; + +static qx86_opcode_map_item qx86_opcode_map_3B_14_sp_items[] + = +{ + /* 00 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 66 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_3B_14_sp_66_mod, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* F2 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* F3 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_3B_14_sp + = +{ + QX86_OPCODE_MAP_INDEX_SP, 3, qx86_opcode_map_3B_14_sp_items +}; + +static qx86_opcode_map_item qx86_opcode_map_3B_15_sp_66_mod_items[] + = +{ + { + /* code */ QX86_MNEMONIC_PEXTRW, + /* map */ 0, + + /* operandCount */ 3, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_M, &qx86_stuple_w }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_V, &qx86_stuple_dq }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_I, &qx86_stuple_b }} + } + } + }, + { + /* code */ QX86_MNEMONIC_PEXTRW, + /* map */ 0, + + /* operandCount */ 3, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_M, &qx86_stuple_w }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_V, &qx86_stuple_dq }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_I, &qx86_stuple_b }} + } + } + }, + { + /* code */ QX86_MNEMONIC_PEXTRW, + /* map */ 0, + + /* operandCount */ 3, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_M, &qx86_stuple_w }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_V, &qx86_stuple_dq }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_I, &qx86_stuple_b }} + } + } + }, + { + /* code */ QX86_MNEMONIC_PEXTRW, + /* map */ 0, + + /* operandCount */ 3, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_R, &qx86_stuple_d }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_V, &qx86_stuple_dq }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_I, &qx86_stuple_b }} + } + } + } +}; + +static qx86_opcode_map qx86_opcode_map_3B_15_sp_66_mod + = +{ + QX86_OPCODE_MAP_INDEX_MOD, 3, qx86_opcode_map_3B_15_sp_66_mod_items +}; + +static qx86_opcode_map_item qx86_opcode_map_3B_15_sp_items[] + = +{ + /* 00 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 66 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_3B_15_sp_66_mod, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* F2 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* F3 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_3B_15_sp + = +{ + QX86_OPCODE_MAP_INDEX_SP, 3, qx86_opcode_map_3B_15_sp_items +}; + +static qx86_opcode_map_item qx86_opcode_map_3B_16_sp_66_os_items[] + = +{ + { + /* code */ QX86_MNEMONIC_PEXTRD, + /* map */ 0, + + /* operandCount */ 3, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_E, &qx86_stuple_d }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_V, &qx86_stuple_dq }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_I, &qx86_stuple_b }} + } + } + }, + { + /* code */ QX86_MNEMONIC_PEXTRD, + /* map */ 0, + + /* operandCount */ 3, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_E, &qx86_stuple_d }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_V, &qx86_stuple_dq }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_I, &qx86_stuple_b }} + } + } + }, + { + /* code */ QX86_MNEMONIC_PEXTRQ, + /* map */ 0, + + /* operandCount */ 3, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_E, &qx86_stuple_q }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_V, &qx86_stuple_dq }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_I, &qx86_stuple_b }} + } + } + } +}; + +static qx86_opcode_map qx86_opcode_map_3B_16_sp_66_os + = +{ + QX86_OPCODE_MAP_INDEX_OS, 2, qx86_opcode_map_3B_16_sp_66_os_items +}; + +static qx86_opcode_map_item qx86_opcode_map_3B_16_sp_items[] + = +{ + /* 00 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 66 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_3B_16_sp_66_os, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* F2 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* F3 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_3B_16_sp + = +{ + QX86_OPCODE_MAP_INDEX_SP, 3, qx86_opcode_map_3B_16_sp_items +}; + // TODO: AVX 18, 19 + + +static qx86_opcode_map_item qx86_opcode_map_3B_17_sp_items[] + = +{ + /* 00 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + { + /* code */ QX86_MNEMONIC_EXTRACTPS, + /* map */ 0, + + /* operandCount */ 3, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_E, &qx86_stuple_d }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_V, &qx86_stuple_dq }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_I, &qx86_stuple_b }} + } + } + }, + /* F2 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* F3 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_3B_17_sp + = +{ + QX86_OPCODE_MAP_INDEX_SP, 3, qx86_opcode_map_3B_17_sp_items +}; + +static qx86_opcode_map_item qx86_opcode_map_3B_20_sp_66_mod_03_os_items[] + = +{ + { + /* code */ QX86_MNEMONIC_PINSRB, + /* map */ 0, + + /* operandCount */ 3, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_amode_V, &qx86_stuple_dq }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_R, &qx86_stuple_d }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_I, &qx86_stuple_b }} + } + } + }, + { + /* code */ QX86_MNEMONIC_PINSRB, + /* map */ 0, + + /* operandCount */ 3, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_amode_V, &qx86_stuple_dq }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_R, &qx86_stuple_d }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_I, &qx86_stuple_b }} + } + } + }, + { + /* code */ QX86_MNEMONIC_PINSRB, + /* map */ 0, + + /* operandCount */ 3, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_amode_V, &qx86_stuple_dq }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_R, &qx86_stuple_q }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_I, &qx86_stuple_b }} + } + } + } +}; + +static qx86_opcode_map qx86_opcode_map_3B_20_sp_66_mod_03_os + = +{ + QX86_OPCODE_MAP_INDEX_OS, 2, qx86_opcode_map_3B_20_sp_66_mod_03_os_items +}; + +static qx86_opcode_map_item qx86_opcode_map_3B_20_sp_66_mod_items[] + = +{ + { + /* code */ QX86_MNEMONIC_PINSRB, + /* map */ 0, + + /* operandCount */ 3, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_amode_V, &qx86_stuple_dq }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_M, &qx86_stuple_b }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_I, &qx86_stuple_b }} + } + } + }, + { + /* code */ QX86_MNEMONIC_PINSRB, + /* map */ 0, + + /* operandCount */ 3, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_amode_V, &qx86_stuple_dq }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_M, &qx86_stuple_b }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_I, &qx86_stuple_b }} + } + } + }, + { + /* code */ QX86_MNEMONIC_PINSRB, + /* map */ 0, + + /* operandCount */ 3, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_amode_V, &qx86_stuple_dq }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_M, &qx86_stuple_b }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_I, &qx86_stuple_b }} + } + } + }, + /* 03 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_3B_20_sp_66_mod_03_os, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_3B_20_sp_66_mod + = +{ + QX86_OPCODE_MAP_INDEX_MOD, 3, qx86_opcode_map_3B_20_sp_66_mod_items +}; + +static qx86_opcode_map_item qx86_opcode_map_3B_20_sp_items[] + = +{ + /* 00 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 66 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_3B_20_sp_66_mod, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* F2 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* F3 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_3B_20_sp + = +{ + QX86_OPCODE_MAP_INDEX_SP, 3, qx86_opcode_map_3B_20_sp_items +}; + +static qx86_opcode_map_item qx86_opcode_map_3B_21_sp_66_mod_items[] + = +{ + { + /* code */ QX86_MNEMONIC_INSERTPS, + /* map */ 0, + + /* operandCount */ 3, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_amode_V, &qx86_stuple_dq }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_M, &qx86_stuple_d }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_I, &qx86_stuple_b }} + } + } + }, + { + /* code */ QX86_MNEMONIC_INSERTPS, + /* map */ 0, + + /* operandCount */ 3, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_amode_V, &qx86_stuple_dq }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_M, &qx86_stuple_d }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_I, &qx86_stuple_b }} + } + } + }, + { + /* code */ QX86_MNEMONIC_INSERTPS, + /* map */ 0, + + /* operandCount */ 3, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_amode_V, &qx86_stuple_dq }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_M, &qx86_stuple_d }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_I, &qx86_stuple_b }} + } + } + }, + { + /* code */ QX86_MNEMONIC_INSERTPS, + /* map */ 0, + + /* operandCount */ 3, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_amode_V, &qx86_stuple_dq }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_U, &qx86_stuple_dq }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_I, &qx86_stuple_b }} + } + } + } +}; + +static qx86_opcode_map qx86_opcode_map_3B_21_sp_66_mod + = +{ + QX86_OPCODE_MAP_INDEX_MOD, 3, qx86_opcode_map_3B_21_sp_66_mod_items +}; + +static qx86_opcode_map_item qx86_opcode_map_3B_21_sp_items[] + = +{ + /* 00 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 66 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_3B_21_sp_66_mod, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* F2 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* F3 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_3B_21_sp + = +{ + QX86_OPCODE_MAP_INDEX_SP, 3, qx86_opcode_map_3B_21_sp_items +}; + + +static qx86_opcode_map_item qx86_opcode_map_3B_22_sp_66_os_items[] + = +{ + { + /* code */ QX86_MNEMONIC_PINSRD, + /* map */ 0, + + /* operandCount */ 3, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_amode_V, &qx86_stuple_dq }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_E, &qx86_stuple_d }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_I, &qx86_stuple_b }} + } + } + }, + { + /* code */ QX86_MNEMONIC_PINSRD, + /* map */ 0, + + /* operandCount */ 3, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_amode_V, &qx86_stuple_dq }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_E, &qx86_stuple_d }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_I, &qx86_stuple_b }} + } + } + }, + { + /* code */ QX86_MNEMONIC_PINSRQ, + /* map */ 0, + + /* operandCount */ 3, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_amode_V, &qx86_stuple_dq }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_E, &qx86_stuple_q }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_I, &qx86_stuple_b }} + } + } + } +}; + +static qx86_opcode_map qx86_opcode_map_3B_22_sp_66_os + = +{ + QX86_OPCODE_MAP_INDEX_OS, 2, qx86_opcode_map_3B_22_sp_66_os_items +}; + +static qx86_opcode_map_item qx86_opcode_map_3B_22_sp_items[] + = +{ + /* 00 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 66 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_3B_22_sp_66_os, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* F2 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* F3 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_3B_22_sp + = +{ + QX86_OPCODE_MAP_INDEX_SP, 3, qx86_opcode_map_3B_22_sp_items +}; + +static qx86_opcode_map_item qx86_opcode_map_3B_40_sp_items[] + = +{ + /* 00 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + { + /* code */ QX86_MNEMONIC_DPPS, + /* map */ 0, + + /* operandCount */ 3, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_amode_V, &qx86_stuple_dq }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_W, &qx86_stuple_dq }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_I, &qx86_stuple_b }} + } + } + }, + /* F2 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* F3 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_3B_40_sp + = +{ + QX86_OPCODE_MAP_INDEX_SP, 3, qx86_opcode_map_3B_40_sp_items +}; + +static qx86_opcode_map_item qx86_opcode_map_3B_41_sp_items[] + = +{ + /* 00 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + { + /* code */ QX86_MNEMONIC_DPPD, + /* map */ 0, + + /* operandCount */ 3, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_amode_V, &qx86_stuple_dq }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_W, &qx86_stuple_dq }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_I, &qx86_stuple_b }} + } + } + }, + /* F2 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* F3 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_3B_41_sp + = +{ + QX86_OPCODE_MAP_INDEX_SP, 3, qx86_opcode_map_3B_41_sp_items +}; + +static qx86_opcode_map_item qx86_opcode_map_3B_42_sp_items[] + = +{ + /* 00 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + { + /* code */ QX86_MNEMONIC_MPSADBW, + /* map */ 0, + + /* operandCount */ 3, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_amode_V, &qx86_stuple_dq }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_W, &qx86_stuple_dq }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_I, &qx86_stuple_b }} + } + } + }, + /* F2 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* F3 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_3B_42_sp + = +{ + QX86_OPCODE_MAP_INDEX_SP, 3, qx86_opcode_map_3B_42_sp_items +}; + // TODO: AVX 4A, 4B, 4C + + +static qx86_opcode_map_item qx86_opcode_map_3B_44_sp_items[] + = +{ + /* 00 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + { + /* code */ QX86_MNEMONIC_PCLMULQDQ, + /* map */ 0, + + /* operandCount */ 3, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_amode_V, &qx86_stuple_dq }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_W, &qx86_stuple_dq }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_I, &qx86_stuple_b }} + } + } + }, + /* F2 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* F3 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_3B_44_sp + = +{ + QX86_OPCODE_MAP_INDEX_SP, 3, qx86_opcode_map_3B_44_sp_items +}; + +static qx86_opcode_map_item qx86_opcode_map_3B_60_sp_items[] + = +{ + /* 00 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + { + /* code */ QX86_MNEMONIC_PCMPESTRM, + /* map */ 0, + + /* operandCount */ 3, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_V, &qx86_stuple_dq }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_W, &qx86_stuple_dq }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_I, &qx86_stuple_b }} + } + } + }, + /* F2 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* F3 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_3B_60_sp + = +{ + QX86_OPCODE_MAP_INDEX_SP, 3, qx86_opcode_map_3B_60_sp_items +}; + +static qx86_opcode_map_item qx86_opcode_map_3B_61_sp_items[] + = +{ + /* 00 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + { + /* code */ QX86_MNEMONIC_PCMPESTRI, + /* map */ 0, + + /* operandCount */ 3, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_V, &qx86_stuple_dq }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_W, &qx86_stuple_dq }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_I, &qx86_stuple_b }} + } + } + }, + /* F2 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* F3 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_3B_61_sp + = +{ + QX86_OPCODE_MAP_INDEX_SP, 3, qx86_opcode_map_3B_61_sp_items +}; + +static qx86_opcode_map_item qx86_opcode_map_3B_62_sp_items[] + = +{ + /* 00 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + { + /* code */ QX86_MNEMONIC_PCMPISTRM, + /* map */ 0, + + /* operandCount */ 3, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_V, &qx86_stuple_dq }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_W, &qx86_stuple_dq }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_I, &qx86_stuple_b }} + } + } + }, + /* F2 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* F3 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_3B_62_sp + = +{ + QX86_OPCODE_MAP_INDEX_SP, 3, qx86_opcode_map_3B_62_sp_items +}; + + +static qx86_opcode_map_item qx86_opcode_map_3B_63_sp_items[] + = +{ + /* 00 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + { + /* code */ QX86_MNEMONIC_PCMPISTRI, + /* map */ 0, + + /* operandCount */ 3, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_V, &qx86_stuple_dq }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_W, &qx86_stuple_dq }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_I, &qx86_stuple_b }} + } + } + }, + /* F2 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* F3 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_3B_63_sp + = +{ + QX86_OPCODE_MAP_INDEX_SP, 3, qx86_opcode_map_3B_63_sp_items +}; + + +static qx86_opcode_map_item qx86_opcode_map_3B_df_sp_items[] + = +{ + /* 00 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + { + /* code */ QX86_MNEMONIC_AESKEYGENASSIST, + /* map */ 0, + + /* operandCount */ 3, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_V, &qx86_stuple_dq }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_W, &qx86_stuple_dq }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_I, &qx86_stuple_b }} + } + } + }, + /* F2 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* F3 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_3B_df_sp + = +{ + QX86_OPCODE_MAP_INDEX_SP, 3, qx86_opcode_map_3B_df_sp_items +}; + +static qx86_opcode_map_item qx86_opcode_map_3B_items[] + = +{ + /* 00 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 01 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 02 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 03 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 04 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 05 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 06 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 07 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 08 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_3B_08_sp, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 09 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_3B_09_sp, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 0A */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_3B_0a_sp, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 0B */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_3B_0b_sp, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 0C */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_3B_0c_sp, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 0D */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_3B_0d_sp, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 0E */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_3B_0e_sp, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 0F */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_3B_0f_sp, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 10 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 11 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 12 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 13 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 14 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_3B_14_sp, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 15 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_3B_15_sp, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 16 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_3B_16_sp, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 17 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_3B_17_sp, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 18 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 19 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 1A */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 1B */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 1C */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 1D */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 1E */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 1F */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 20 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_3B_20_sp, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 21 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_3B_21_sp, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 22 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_3B_22_sp, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 23 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 24 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 25 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 26 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 27 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 28 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 29 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 2A */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 2B */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 2C */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 2D */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 2E */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 2F */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 30 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 31 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 32 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 33 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 34 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 35 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 36 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 37 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 38 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 39 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 3A */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 3B */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 3C */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 3D */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 3E */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 3F */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 40 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_3B_40_sp, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 41 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_3B_41_sp, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 42 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_3B_42_sp, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 43 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 44 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_3B_44_sp, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 45 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 46 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 47 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 48 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 49 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 4A */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 4B */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 4C */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 4D */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 4E */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 4F */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 50 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 51 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 52 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 53 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 54 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 55 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 56 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 57 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 58 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 59 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 5A */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 5B */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 5C */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 5D */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 5E */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 5F */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 60 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_3B_60_sp, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 61 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_3B_61_sp, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 62 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_3B_62_sp, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 63 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_3B_63_sp, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 64 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 65 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 66 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 67 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 68 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 69 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 6A */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 6B */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 6C */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 6D */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 6E */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 6F */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 70 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 71 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 72 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 73 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 74 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 75 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 76 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 77 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 78 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 79 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 7A */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 7B */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 7C */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 7D */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 7E */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 7F */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 80 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 81 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 82 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 83 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 84 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 85 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 86 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 87 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 88 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 89 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 8A */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 8B */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 8C */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 8D */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 8E */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 8F */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 90 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 91 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 92 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 93 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 94 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 95 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 96 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 97 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 98 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 99 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 9A */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 9B */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 9C */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 9D */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 9E */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 9F */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* A0 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* A1 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* A2 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* A3 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* A4 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* A5 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* A6 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* A7 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* A8 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* A9 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* AA */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* AB */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* AC */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* AD */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* AE */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* AF */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* B0 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* B1 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* B2 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* B3 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* B4 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* B5 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* B6 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* B7 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* B8 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* B9 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* BA */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* BB */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* BC */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* BD */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* BE */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* BF */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* C0 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* C1 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* C2 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* C3 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* C4 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* C5 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* C6 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* C7 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* C8 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* C9 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* CA */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* CB */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* CC */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* CD */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* CE */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* CF */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* D0 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* D1 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* D2 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* D3 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* D4 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* D5 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* D6 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* D7 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* D8 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* D9 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* DA */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* DB */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* DC */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* DD */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* DE */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* DF */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_3B_df_sp, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* E0 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* E1 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* E2 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* E3 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* E4 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* E5 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* E6 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* E7 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* E8 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* E9 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* EA */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* EB */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* EC */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* ED */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* EE */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* EF */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* F0 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* F1 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* F2 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* F3 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* F4 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* F5 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* F6 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* F7 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* F8 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* F9 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* FA */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* FB */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* FC */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* FD */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* FE */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* FF */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_3B + = +{ + QX86_OPCODE_MAP_INDEX_NB, 255, qx86_opcode_map_3B_items +}; +/* End of file qx86-d-opcode-map/qx86-opcode-map-3B.map */ +/* Generated from file qx86-d-opcode-map/qx86-opcode-map-3A.map */ +// +------------------------------------------------------------------------+ +// | quix86 | +// +------------------------------------------------------------------------+ +// | This file is part of quix86, an x86-64 instruction decoder. | +// | | +// | Copyright (C) 2011 Institute for System Programming of Russian Academy | +// | of Sciences. | +// | | +// | Contact e-mail: . | +// | | +// | quix86 is free software: you can redistribute it and/or modify it | +// | under the terms of the GNU General Public License as published by the | +// | Free Software Foundation, either version 3 of the License, or (at your | +// | option) any later version. | +// | | +// | quix86 is distributed in the hope that it will be useful, but WITHOUT | +// | ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or | +// | FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License | +// | for more details. | +// | | +// | You should have received a copy of the GNU General Public License | +// | along with quix86. If not, see . | +// +------------------------------------------------------------------------+ + +// Reference: Intel Architecture Software Developer’s Manual 2B: Table A-4. + +static qx86_opcode_map_item qx86_opcode_map_3A_00_sp_items[] + = +{ + { + /* code */ QX86_MNEMONIC_PSHUFB, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_amode_P, &qx86_stuple_q }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_Q, &qx86_stuple_q }} + } + } + }, + { + /* code */ QX86_MNEMONIC_PSHUFB, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_amode_V, &qx86_stuple_dq }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_W, &qx86_stuple_dq }} + } + } + }, + /* F2 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* F3 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_3A_00_sp + = +{ + QX86_OPCODE_MAP_INDEX_SP, 3, qx86_opcode_map_3A_00_sp_items +}; + +static qx86_opcode_map_item qx86_opcode_map_3A_01_sp_items[] + = +{ + { + /* code */ QX86_MNEMONIC_PHADDW, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_amode_P, &qx86_stuple_q }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_Q, &qx86_stuple_q }} + } + } + }, + { + /* code */ QX86_MNEMONIC_PHADDW, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_amode_V, &qx86_stuple_dq }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_W, &qx86_stuple_dq }} + } + } + }, + /* F2 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* F3 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_3A_01_sp + = +{ + QX86_OPCODE_MAP_INDEX_SP, 3, qx86_opcode_map_3A_01_sp_items +}; + +static qx86_opcode_map_item qx86_opcode_map_3A_02_sp_items[] + = +{ + { + /* code */ QX86_MNEMONIC_PHADDD, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_amode_P, &qx86_stuple_q }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_Q, &qx86_stuple_q }} + } + } + }, + { + /* code */ QX86_MNEMONIC_PHADDD, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_amode_V, &qx86_stuple_dq }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_W, &qx86_stuple_dq }} + } + } + }, + /* F2 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* F3 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_3A_02_sp + = +{ + QX86_OPCODE_MAP_INDEX_SP, 3, qx86_opcode_map_3A_02_sp_items +}; + +static qx86_opcode_map_item qx86_opcode_map_3A_03_sp_items[] + = +{ + { + /* code */ QX86_MNEMONIC_PHADDSW, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_amode_P, &qx86_stuple_q }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_Q, &qx86_stuple_q }} + } + } + }, + { + /* code */ QX86_MNEMONIC_PHADDSW, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_amode_V, &qx86_stuple_dq }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_W, &qx86_stuple_dq }} + } + } + }, + /* F2 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* F3 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_3A_03_sp + = +{ + QX86_OPCODE_MAP_INDEX_SP, 3, qx86_opcode_map_3A_03_sp_items +}; + +static qx86_opcode_map_item qx86_opcode_map_3A_04_sp_items[] + = +{ + { + /* code */ QX86_MNEMONIC_PMADDUBSW, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_amode_P, &qx86_stuple_q }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_Q, &qx86_stuple_q }} + } + } + }, + { + /* code */ QX86_MNEMONIC_PMADDUBSW, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_amode_V, &qx86_stuple_dq }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_W, &qx86_stuple_dq }} + } + } + }, + /* F2 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* F3 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_3A_04_sp + = +{ + QX86_OPCODE_MAP_INDEX_SP, 3, qx86_opcode_map_3A_04_sp_items +}; + +static qx86_opcode_map_item qx86_opcode_map_3A_05_sp_items[] + = +{ + { + /* code */ QX86_MNEMONIC_PHSUBW, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_amode_P, &qx86_stuple_q }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_Q, &qx86_stuple_q }} + } + } + }, + { + /* code */ QX86_MNEMONIC_PHSUBW, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_amode_V, &qx86_stuple_dq }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_W, &qx86_stuple_dq }} + } + } + }, + /* F2 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* F3 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_3A_05_sp + = +{ + QX86_OPCODE_MAP_INDEX_SP, 3, qx86_opcode_map_3A_05_sp_items +}; + +static qx86_opcode_map_item qx86_opcode_map_3A_06_sp_items[] + = +{ + { + /* code */ QX86_MNEMONIC_PHSUBD, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_amode_P, &qx86_stuple_q }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_Q, &qx86_stuple_q }} + } + } + }, + { + /* code */ QX86_MNEMONIC_PHSUBD, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_amode_V, &qx86_stuple_dq }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_W, &qx86_stuple_dq }} + } + } + }, + /* F2 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* F3 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_3A_06_sp + = +{ + QX86_OPCODE_MAP_INDEX_SP, 3, qx86_opcode_map_3A_06_sp_items +}; + + +static qx86_opcode_map_item qx86_opcode_map_3A_07_sp_items[] + = +{ + { + /* code */ QX86_MNEMONIC_PHSUBSW, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_amode_P, &qx86_stuple_q }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_Q, &qx86_stuple_q }} + } + } + }, + { + /* code */ QX86_MNEMONIC_PHSUBSW, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_amode_V, &qx86_stuple_dq }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_W, &qx86_stuple_dq }} + } + } + }, + /* F2 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* F3 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_3A_07_sp + = +{ + QX86_OPCODE_MAP_INDEX_SP, 3, qx86_opcode_map_3A_07_sp_items +}; + +static qx86_opcode_map_item qx86_opcode_map_3A_08_sp_items[] + = +{ + { + /* code */ QX86_MNEMONIC_PSIGNB, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_amode_P, &qx86_stuple_q }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_Q, &qx86_stuple_q }} + } + } + }, + { + /* code */ QX86_MNEMONIC_PSIGNB, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_amode_V, &qx86_stuple_dq }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_W, &qx86_stuple_dq }} + } + } + }, + /* F2 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* F3 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_3A_08_sp + = +{ + QX86_OPCODE_MAP_INDEX_SP, 3, qx86_opcode_map_3A_08_sp_items +}; + +static qx86_opcode_map_item qx86_opcode_map_3A_09_sp_items[] + = +{ + { + /* code */ QX86_MNEMONIC_PSIGNW, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_amode_P, &qx86_stuple_q }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_Q, &qx86_stuple_q }} + } + } + }, + { + /* code */ QX86_MNEMONIC_PSIGNW, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_amode_V, &qx86_stuple_dq }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_W, &qx86_stuple_dq }} + } + } + }, + /* F2 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* F3 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_3A_09_sp + = +{ + QX86_OPCODE_MAP_INDEX_SP, 3, qx86_opcode_map_3A_09_sp_items +}; + +static qx86_opcode_map_item qx86_opcode_map_3A_0a_sp_items[] + = +{ + { + /* code */ QX86_MNEMONIC_PSIGND, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_amode_P, &qx86_stuple_q }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_Q, &qx86_stuple_q }} + } + } + }, + { + /* code */ QX86_MNEMONIC_PSIGND, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_amode_V, &qx86_stuple_dq }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_W, &qx86_stuple_dq }} + } + } + }, + /* F2 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* F3 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_3A_0a_sp + = +{ + QX86_OPCODE_MAP_INDEX_SP, 3, qx86_opcode_map_3A_0a_sp_items +}; + + // 0C: VPERMILPS Vx Hx Wx [ sp = 66 ] # TODO: AVX + // 0D: VPERMILPD Vx Hx Wx [ sp = 66 ] # TODO: AVX + // 0E: VTESTPS Vx Wx [ sp = 66 ] # TODO: AVX + // 0F: VTESTPD Vx Wx [ sp = 66 ] # TODO: AVX + + +static qx86_opcode_map_item qx86_opcode_map_3A_0b_sp_items[] + = +{ + { + /* code */ QX86_MNEMONIC_PMULHRSW, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_amode_P, &qx86_stuple_q }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_Q, &qx86_stuple_q }} + } + } + }, + { + /* code */ QX86_MNEMONIC_PMULHRSW, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_amode_V, &qx86_stuple_dq }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_W, &qx86_stuple_dq }} + } + } + }, + /* F2 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* F3 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_3A_0b_sp + = +{ + QX86_OPCODE_MAP_INDEX_SP, 3, qx86_opcode_map_3A_0b_sp_items +}; + +static qx86_opcode_map_item qx86_opcode_map_3A_10_sp_items[] + = +{ + /* 00 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + { + /* code */ QX86_MNEMONIC_PBLENDVB, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_amode_V, &qx86_stuple_dq }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_W, &qx86_stuple_dq }} + } + } + }, + /* F2 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* F3 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_3A_10_sp + = +{ + QX86_OPCODE_MAP_INDEX_SP, 3, qx86_opcode_map_3A_10_sp_items +}; + +static qx86_opcode_map_item qx86_opcode_map_3A_14_sp_items[] + = +{ + /* 00 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + { + /* code */ QX86_MNEMONIC_BLENDVPS, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_amode_V, &qx86_stuple_dq }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_W, &qx86_stuple_dq }} + } + } + }, + /* F2 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* F3 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_3A_14_sp + = +{ + QX86_OPCODE_MAP_INDEX_SP, 3, qx86_opcode_map_3A_14_sp_items +}; + +static qx86_opcode_map_item qx86_opcode_map_3A_15_sp_items[] + = +{ + /* 00 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + { + /* code */ QX86_MNEMONIC_BLENDVPD, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_amode_V, &qx86_stuple_dq }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_W, &qx86_stuple_dq }} + } + } + }, + /* F2 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* F3 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_3A_15_sp + = +{ + QX86_OPCODE_MAP_INDEX_SP, 3, qx86_opcode_map_3A_15_sp_items +}; + + // 18: VBROADCASTSS Vx Md [ sp = 66 ] # TODO: AVX + // 19: VBROADCASTSD Vqq Mq [ sp = 66 ] # TODO: AVX + // 1A: VBROADCASTF128 Vqq Mdq [ sp = 66 ] # TODO: AVX + + +static qx86_opcode_map_item qx86_opcode_map_3A_17_sp_items[] + = +{ + /* 00 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + { + /* code */ QX86_MNEMONIC_PTEST, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_V, &qx86_stuple_dq }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_W, &qx86_stuple_dq }} + } + } + }, + /* F2 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* F3 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_3A_17_sp + = +{ + QX86_OPCODE_MAP_INDEX_SP, 3, qx86_opcode_map_3A_17_sp_items +}; + +static qx86_opcode_map_item qx86_opcode_map_3A_1c_sp_items[] + = +{ + { + /* code */ QX86_MNEMONIC_PABSB, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_P, &qx86_stuple_q }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_Q, &qx86_stuple_q }} + } + } + }, + { + /* code */ QX86_MNEMONIC_PABSB, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_V, &qx86_stuple_dq }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_W, &qx86_stuple_dq }} + } + } + }, + /* F2 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* F3 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_3A_1c_sp + = +{ + QX86_OPCODE_MAP_INDEX_SP, 3, qx86_opcode_map_3A_1c_sp_items +}; + +static qx86_opcode_map_item qx86_opcode_map_3A_1d_sp_items[] + = +{ + { + /* code */ QX86_MNEMONIC_PABSW, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_P, &qx86_stuple_q }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_Q, &qx86_stuple_q }} + } + } + }, + { + /* code */ QX86_MNEMONIC_PABSW, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_V, &qx86_stuple_dq }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_W, &qx86_stuple_dq }} + } + } + }, + /* F2 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* F3 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_3A_1d_sp + = +{ + QX86_OPCODE_MAP_INDEX_SP, 3, qx86_opcode_map_3A_1d_sp_items +}; + + +static qx86_opcode_map_item qx86_opcode_map_3A_1e_sp_items[] + = +{ + { + /* code */ QX86_MNEMONIC_PABSD, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_P, &qx86_stuple_q }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_Q, &qx86_stuple_q }} + } + } + }, + { + /* code */ QX86_MNEMONIC_PABSD, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_V, &qx86_stuple_dq }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_W, &qx86_stuple_dq }} + } + } + }, + /* F2 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* F3 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_3A_1e_sp + = +{ + QX86_OPCODE_MAP_INDEX_SP, 3, qx86_opcode_map_3A_1e_sp_items +}; + +static qx86_opcode_map_item qx86_opcode_map_3A_20_sp_66_mod_items[] + = +{ + { + /* code */ QX86_MNEMONIC_PMOVSXBW, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_V, &qx86_stuple_dq }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_M, &qx86_stuple_q }} + } + } + }, + { + /* code */ QX86_MNEMONIC_PMOVSXBW, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_V, &qx86_stuple_dq }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_M, &qx86_stuple_q }} + } + } + }, + { + /* code */ QX86_MNEMONIC_PMOVSXBW, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_V, &qx86_stuple_dq }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_M, &qx86_stuple_q }} + } + } + }, + { + /* code */ QX86_MNEMONIC_PMOVSXBW, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_V, &qx86_stuple_dq }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_U, &qx86_stuple_dq }} + } + } + } +}; + +static qx86_opcode_map qx86_opcode_map_3A_20_sp_66_mod + = +{ + QX86_OPCODE_MAP_INDEX_MOD, 3, qx86_opcode_map_3A_20_sp_66_mod_items +}; + +static qx86_opcode_map_item qx86_opcode_map_3A_20_sp_items[] + = +{ + /* 00 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 66 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_3A_20_sp_66_mod, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* F2 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* F3 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_3A_20_sp + = +{ + QX86_OPCODE_MAP_INDEX_SP, 3, qx86_opcode_map_3A_20_sp_items +}; + +static qx86_opcode_map_item qx86_opcode_map_3A_21_sp_66_mod_items[] + = +{ + { + /* code */ QX86_MNEMONIC_PMOVSXBD, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_V, &qx86_stuple_dq }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_M, &qx86_stuple_d }} + } + } + }, + { + /* code */ QX86_MNEMONIC_PMOVSXBD, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_V, &qx86_stuple_dq }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_M, &qx86_stuple_d }} + } + } + }, + { + /* code */ QX86_MNEMONIC_PMOVSXBD, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_V, &qx86_stuple_dq }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_M, &qx86_stuple_d }} + } + } + }, + { + /* code */ QX86_MNEMONIC_PMOVSXBD, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_V, &qx86_stuple_dq }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_U, &qx86_stuple_dq }} + } + } + } +}; + +static qx86_opcode_map qx86_opcode_map_3A_21_sp_66_mod + = +{ + QX86_OPCODE_MAP_INDEX_MOD, 3, qx86_opcode_map_3A_21_sp_66_mod_items +}; + +static qx86_opcode_map_item qx86_opcode_map_3A_21_sp_items[] + = +{ + /* 00 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 66 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_3A_21_sp_66_mod, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* F2 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* F3 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_3A_21_sp + = +{ + QX86_OPCODE_MAP_INDEX_SP, 3, qx86_opcode_map_3A_21_sp_items +}; + +static qx86_opcode_map_item qx86_opcode_map_3A_22_sp_66_mod_items[] + = +{ + { + /* code */ QX86_MNEMONIC_PMOVSXBQ, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_V, &qx86_stuple_dq }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_M, &qx86_stuple_w }} + } + } + }, + { + /* code */ QX86_MNEMONIC_PMOVSXBQ, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_V, &qx86_stuple_dq }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_M, &qx86_stuple_w }} + } + } + }, + { + /* code */ QX86_MNEMONIC_PMOVSXBQ, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_V, &qx86_stuple_dq }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_M, &qx86_stuple_w }} + } + } + }, + { + /* code */ QX86_MNEMONIC_PMOVSXBQ, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_V, &qx86_stuple_dq }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_U, &qx86_stuple_dq }} + } + } + } +}; + +static qx86_opcode_map qx86_opcode_map_3A_22_sp_66_mod + = +{ + QX86_OPCODE_MAP_INDEX_MOD, 3, qx86_opcode_map_3A_22_sp_66_mod_items +}; + +static qx86_opcode_map_item qx86_opcode_map_3A_22_sp_items[] + = +{ + /* 00 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 66 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_3A_22_sp_66_mod, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* F2 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* F3 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_3A_22_sp + = +{ + QX86_OPCODE_MAP_INDEX_SP, 3, qx86_opcode_map_3A_22_sp_items +}; + +static qx86_opcode_map_item qx86_opcode_map_3A_23_sp_66_mod_items[] + = +{ + { + /* code */ QX86_MNEMONIC_PMOVSXWD, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_V, &qx86_stuple_dq }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_M, &qx86_stuple_q }} + } + } + }, + { + /* code */ QX86_MNEMONIC_PMOVSXWD, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_V, &qx86_stuple_dq }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_M, &qx86_stuple_q }} + } + } + }, + { + /* code */ QX86_MNEMONIC_PMOVSXWD, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_V, &qx86_stuple_dq }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_M, &qx86_stuple_q }} + } + } + }, + { + /* code */ QX86_MNEMONIC_PMOVSXWD, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_V, &qx86_stuple_dq }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_U, &qx86_stuple_dq }} + } + } + } +}; + +static qx86_opcode_map qx86_opcode_map_3A_23_sp_66_mod + = +{ + QX86_OPCODE_MAP_INDEX_MOD, 3, qx86_opcode_map_3A_23_sp_66_mod_items +}; + +static qx86_opcode_map_item qx86_opcode_map_3A_23_sp_items[] + = +{ + /* 00 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 66 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_3A_23_sp_66_mod, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* F2 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* F3 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_3A_23_sp + = +{ + QX86_OPCODE_MAP_INDEX_SP, 3, qx86_opcode_map_3A_23_sp_items +}; + +static qx86_opcode_map_item qx86_opcode_map_3A_24_sp_66_mod_items[] + = +{ + { + /* code */ QX86_MNEMONIC_PMOVSXWQ, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_V, &qx86_stuple_dq }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_M, &qx86_stuple_d }} + } + } + }, + { + /* code */ QX86_MNEMONIC_PMOVSXWQ, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_V, &qx86_stuple_dq }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_M, &qx86_stuple_d }} + } + } + }, + { + /* code */ QX86_MNEMONIC_PMOVSXWQ, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_V, &qx86_stuple_dq }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_M, &qx86_stuple_d }} + } + } + }, + { + /* code */ QX86_MNEMONIC_PMOVSXWQ, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_V, &qx86_stuple_dq }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_U, &qx86_stuple_dq }} + } + } + } +}; + +static qx86_opcode_map qx86_opcode_map_3A_24_sp_66_mod + = +{ + QX86_OPCODE_MAP_INDEX_MOD, 3, qx86_opcode_map_3A_24_sp_66_mod_items +}; + +static qx86_opcode_map_item qx86_opcode_map_3A_24_sp_items[] + = +{ + /* 00 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 66 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_3A_24_sp_66_mod, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* F2 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* F3 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_3A_24_sp + = +{ + QX86_OPCODE_MAP_INDEX_SP, 3, qx86_opcode_map_3A_24_sp_items +}; + +static qx86_opcode_map_item qx86_opcode_map_3A_25_sp_66_mod_items[] + = +{ + { + /* code */ QX86_MNEMONIC_PMOVSXDQ, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_V, &qx86_stuple_dq }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_M, &qx86_stuple_q }} + } + } + }, + { + /* code */ QX86_MNEMONIC_PMOVSXDQ, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_V, &qx86_stuple_dq }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_M, &qx86_stuple_q }} + } + } + }, + { + /* code */ QX86_MNEMONIC_PMOVSXDQ, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_V, &qx86_stuple_dq }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_M, &qx86_stuple_q }} + } + } + }, + { + /* code */ QX86_MNEMONIC_PMOVSXDQ, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_V, &qx86_stuple_dq }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_U, &qx86_stuple_dq }} + } + } + } +}; + +static qx86_opcode_map qx86_opcode_map_3A_25_sp_66_mod + = +{ + QX86_OPCODE_MAP_INDEX_MOD, 3, qx86_opcode_map_3A_25_sp_66_mod_items +}; + +static qx86_opcode_map_item qx86_opcode_map_3A_25_sp_items[] + = +{ + /* 00 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 66 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_3A_25_sp_66_mod, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* F2 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* F3 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_3A_25_sp + = +{ + QX86_OPCODE_MAP_INDEX_SP, 3, qx86_opcode_map_3A_25_sp_items +}; + +static qx86_opcode_map_item qx86_opcode_map_3A_28_sp_items[] + = +{ + /* 00 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + { + /* code */ QX86_MNEMONIC_PMULDQ, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_amode_V, &qx86_stuple_dq }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_W, &qx86_stuple_dq }} + } + } + }, + /* F2 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* F3 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_3A_28_sp + = +{ + QX86_OPCODE_MAP_INDEX_SP, 3, qx86_opcode_map_3A_28_sp_items +}; + +static qx86_opcode_map_item qx86_opcode_map_3A_29_sp_items[] + = +{ + /* 00 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + { + /* code */ QX86_MNEMONIC_PCMPEQQ, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_amode_V, &qx86_stuple_dq }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_W, &qx86_stuple_dq }} + } + } + }, + /* F2 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* F3 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_3A_29_sp + = +{ + QX86_OPCODE_MAP_INDEX_SP, 3, qx86_opcode_map_3A_29_sp_items +}; + +static qx86_opcode_map_item qx86_opcode_map_3A_2a_sp_items[] + = +{ + /* 00 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + { + /* code */ QX86_MNEMONIC_MOVNTDQA, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_V, &qx86_stuple_dq }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_W, &qx86_stuple_dq }} + } + } + }, + /* F2 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* F3 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_3A_2a_sp + = +{ + QX86_OPCODE_MAP_INDEX_SP, 3, qx86_opcode_map_3A_2a_sp_items +}; + // TODO: AVX 2C, 2D, 2E, 2F + + +static qx86_opcode_map_item qx86_opcode_map_3A_2b_sp_items[] + = +{ + /* 00 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + { + /* code */ QX86_MNEMONIC_PACKUSDW, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_amode_V, &qx86_stuple_dq }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_W, &qx86_stuple_dq }} + } + } + }, + /* F2 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* F3 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_3A_2b_sp + = +{ + QX86_OPCODE_MAP_INDEX_SP, 3, qx86_opcode_map_3A_2b_sp_items +}; + +static qx86_opcode_map_item qx86_opcode_map_3A_30_sp_66_mod_items[] + = +{ + { + /* code */ QX86_MNEMONIC_PMOVZXBW, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_V, &qx86_stuple_dq }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_M, &qx86_stuple_q }} + } + } + }, + { + /* code */ QX86_MNEMONIC_PMOVZXBW, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_V, &qx86_stuple_dq }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_M, &qx86_stuple_q }} + } + } + }, + { + /* code */ QX86_MNEMONIC_PMOVZXBW, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_V, &qx86_stuple_dq }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_M, &qx86_stuple_q }} + } + } + }, + { + /* code */ QX86_MNEMONIC_PMOVZXBW, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_V, &qx86_stuple_dq }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_U, &qx86_stuple_dq }} + } + } + } +}; + +static qx86_opcode_map qx86_opcode_map_3A_30_sp_66_mod + = +{ + QX86_OPCODE_MAP_INDEX_MOD, 3, qx86_opcode_map_3A_30_sp_66_mod_items +}; + +static qx86_opcode_map_item qx86_opcode_map_3A_30_sp_items[] + = +{ + /* 00 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 66 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_3A_30_sp_66_mod, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* F2 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* F3 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_3A_30_sp + = +{ + QX86_OPCODE_MAP_INDEX_SP, 3, qx86_opcode_map_3A_30_sp_items +}; + +static qx86_opcode_map_item qx86_opcode_map_3A_31_sp_66_mod_items[] + = +{ + { + /* code */ QX86_MNEMONIC_PMOVZXBD, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_V, &qx86_stuple_dq }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_M, &qx86_stuple_d }} + } + } + }, + { + /* code */ QX86_MNEMONIC_PMOVZXBD, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_V, &qx86_stuple_dq }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_M, &qx86_stuple_d }} + } + } + }, + { + /* code */ QX86_MNEMONIC_PMOVZXBD, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_V, &qx86_stuple_dq }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_M, &qx86_stuple_d }} + } + } + }, + { + /* code */ QX86_MNEMONIC_PMOVZXBD, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_V, &qx86_stuple_dq }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_U, &qx86_stuple_dq }} + } + } + } +}; + +static qx86_opcode_map qx86_opcode_map_3A_31_sp_66_mod + = +{ + QX86_OPCODE_MAP_INDEX_MOD, 3, qx86_opcode_map_3A_31_sp_66_mod_items +}; + +static qx86_opcode_map_item qx86_opcode_map_3A_31_sp_items[] + = +{ + /* 00 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 66 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_3A_31_sp_66_mod, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* F2 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* F3 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_3A_31_sp + = +{ + QX86_OPCODE_MAP_INDEX_SP, 3, qx86_opcode_map_3A_31_sp_items +}; + +static qx86_opcode_map_item qx86_opcode_map_3A_32_sp_66_mod_items[] + = +{ + { + /* code */ QX86_MNEMONIC_PMOVZXBQ, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_V, &qx86_stuple_dq }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_M, &qx86_stuple_w }} + } + } + }, + { + /* code */ QX86_MNEMONIC_PMOVZXBQ, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_V, &qx86_stuple_dq }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_M, &qx86_stuple_w }} + } + } + }, + { + /* code */ QX86_MNEMONIC_PMOVZXBQ, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_V, &qx86_stuple_dq }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_M, &qx86_stuple_w }} + } + } + }, + { + /* code */ QX86_MNEMONIC_PMOVZXBQ, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_V, &qx86_stuple_dq }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_U, &qx86_stuple_dq }} + } + } + } +}; + +static qx86_opcode_map qx86_opcode_map_3A_32_sp_66_mod + = +{ + QX86_OPCODE_MAP_INDEX_MOD, 3, qx86_opcode_map_3A_32_sp_66_mod_items +}; + +static qx86_opcode_map_item qx86_opcode_map_3A_32_sp_items[] + = +{ + /* 00 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 66 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_3A_32_sp_66_mod, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* F2 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* F3 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_3A_32_sp + = +{ + QX86_OPCODE_MAP_INDEX_SP, 3, qx86_opcode_map_3A_32_sp_items +}; + +static qx86_opcode_map_item qx86_opcode_map_3A_33_sp_66_mod_items[] + = +{ + { + /* code */ QX86_MNEMONIC_PMOVZXWD, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_V, &qx86_stuple_dq }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_M, &qx86_stuple_q }} + } + } + }, + { + /* code */ QX86_MNEMONIC_PMOVZXWD, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_V, &qx86_stuple_dq }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_M, &qx86_stuple_q }} + } + } + }, + { + /* code */ QX86_MNEMONIC_PMOVZXWD, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_V, &qx86_stuple_dq }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_M, &qx86_stuple_q }} + } + } + }, + { + /* code */ QX86_MNEMONIC_PMOVZXWD, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_V, &qx86_stuple_dq }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_U, &qx86_stuple_dq }} + } + } + } +}; + +static qx86_opcode_map qx86_opcode_map_3A_33_sp_66_mod + = +{ + QX86_OPCODE_MAP_INDEX_MOD, 3, qx86_opcode_map_3A_33_sp_66_mod_items +}; + +static qx86_opcode_map_item qx86_opcode_map_3A_33_sp_items[] + = +{ + /* 00 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 66 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_3A_33_sp_66_mod, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* F2 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* F3 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_3A_33_sp + = +{ + QX86_OPCODE_MAP_INDEX_SP, 3, qx86_opcode_map_3A_33_sp_items +}; + +static qx86_opcode_map_item qx86_opcode_map_3A_34_sp_66_mod_items[] + = +{ + { + /* code */ QX86_MNEMONIC_PMOVZXWQ, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_V, &qx86_stuple_dq }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_M, &qx86_stuple_d }} + } + } + }, + { + /* code */ QX86_MNEMONIC_PMOVZXWQ, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_V, &qx86_stuple_dq }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_M, &qx86_stuple_d }} + } + } + }, + { + /* code */ QX86_MNEMONIC_PMOVZXWQ, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_V, &qx86_stuple_dq }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_M, &qx86_stuple_d }} + } + } + }, + { + /* code */ QX86_MNEMONIC_PMOVZXWQ, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_V, &qx86_stuple_dq }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_U, &qx86_stuple_dq }} + } + } + } +}; + +static qx86_opcode_map qx86_opcode_map_3A_34_sp_66_mod + = +{ + QX86_OPCODE_MAP_INDEX_MOD, 3, qx86_opcode_map_3A_34_sp_66_mod_items +}; + +static qx86_opcode_map_item qx86_opcode_map_3A_34_sp_items[] + = +{ + /* 00 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 66 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_3A_34_sp_66_mod, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* F2 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* F3 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_3A_34_sp + = +{ + QX86_OPCODE_MAP_INDEX_SP, 3, qx86_opcode_map_3A_34_sp_items +}; + +static qx86_opcode_map_item qx86_opcode_map_3A_35_sp_66_mod_items[] + = +{ + { + /* code */ QX86_MNEMONIC_PMOVZXDQ, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_V, &qx86_stuple_dq }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_M, &qx86_stuple_q }} + } + } + }, + { + /* code */ QX86_MNEMONIC_PMOVZXDQ, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_V, &qx86_stuple_dq }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_M, &qx86_stuple_q }} + } + } + }, + { + /* code */ QX86_MNEMONIC_PMOVZXDQ, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_V, &qx86_stuple_dq }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_M, &qx86_stuple_q }} + } + } + }, + { + /* code */ QX86_MNEMONIC_PMOVZXDQ, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_V, &qx86_stuple_dq }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_U, &qx86_stuple_dq }} + } + } + } +}; + +static qx86_opcode_map qx86_opcode_map_3A_35_sp_66_mod + = +{ + QX86_OPCODE_MAP_INDEX_MOD, 3, qx86_opcode_map_3A_35_sp_66_mod_items +}; + +static qx86_opcode_map_item qx86_opcode_map_3A_35_sp_items[] + = +{ + /* 00 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 66 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_3A_35_sp_66_mod, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* F2 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* F3 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_3A_35_sp + = +{ + QX86_OPCODE_MAP_INDEX_SP, 3, qx86_opcode_map_3A_35_sp_items +}; + +static qx86_opcode_map_item qx86_opcode_map_3A_37_sp_items[] + = +{ + /* 00 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + { + /* code */ QX86_MNEMONIC_PCMPGTQ, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_amode_V, &qx86_stuple_dq }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_W, &qx86_stuple_dq }} + } + } + }, + /* F2 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* F3 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_3A_37_sp + = +{ + QX86_OPCODE_MAP_INDEX_SP, 3, qx86_opcode_map_3A_37_sp_items +}; + +static qx86_opcode_map_item qx86_opcode_map_3A_38_sp_items[] + = +{ + /* 00 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + { + /* code */ QX86_MNEMONIC_PMINSB, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_amode_V, &qx86_stuple_dq }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_W, &qx86_stuple_dq }} + } + } + }, + /* F2 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* F3 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_3A_38_sp + = +{ + QX86_OPCODE_MAP_INDEX_SP, 3, qx86_opcode_map_3A_38_sp_items +}; + +static qx86_opcode_map_item qx86_opcode_map_3A_39_sp_items[] + = +{ + /* 00 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + { + /* code */ QX86_MNEMONIC_PMINSD, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_amode_V, &qx86_stuple_dq }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_W, &qx86_stuple_dq }} + } + } + }, + /* F2 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* F3 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_3A_39_sp + = +{ + QX86_OPCODE_MAP_INDEX_SP, 3, qx86_opcode_map_3A_39_sp_items +}; + +static qx86_opcode_map_item qx86_opcode_map_3A_3a_sp_items[] + = +{ + /* 00 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + { + /* code */ QX86_MNEMONIC_PMINUW, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_amode_V, &qx86_stuple_dq }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_W, &qx86_stuple_dq }} + } + } + }, + /* F2 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* F3 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_3A_3a_sp + = +{ + QX86_OPCODE_MAP_INDEX_SP, 3, qx86_opcode_map_3A_3a_sp_items +}; + +static qx86_opcode_map_item qx86_opcode_map_3A_3b_sp_items[] + = +{ + /* 00 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + { + /* code */ QX86_MNEMONIC_PMINUD, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_amode_V, &qx86_stuple_dq }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_W, &qx86_stuple_dq }} + } + } + }, + /* F2 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* F3 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_3A_3b_sp + = +{ + QX86_OPCODE_MAP_INDEX_SP, 3, qx86_opcode_map_3A_3b_sp_items +}; + +static qx86_opcode_map_item qx86_opcode_map_3A_3c_sp_items[] + = +{ + /* 00 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + { + /* code */ QX86_MNEMONIC_PMAXSB, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_amode_V, &qx86_stuple_dq }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_W, &qx86_stuple_dq }} + } + } + }, + /* F2 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* F3 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_3A_3c_sp + = +{ + QX86_OPCODE_MAP_INDEX_SP, 3, qx86_opcode_map_3A_3c_sp_items +}; + +static qx86_opcode_map_item qx86_opcode_map_3A_3d_sp_items[] + = +{ + /* 00 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + { + /* code */ QX86_MNEMONIC_PMAXSD, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_amode_V, &qx86_stuple_dq }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_W, &qx86_stuple_dq }} + } + } + }, + /* F2 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* F3 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_3A_3d_sp + = +{ + QX86_OPCODE_MAP_INDEX_SP, 3, qx86_opcode_map_3A_3d_sp_items +}; + +static qx86_opcode_map_item qx86_opcode_map_3A_3e_sp_items[] + = +{ + /* 00 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + { + /* code */ QX86_MNEMONIC_PMAXUW, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_amode_V, &qx86_stuple_dq }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_W, &qx86_stuple_dq }} + } + } + }, + /* F2 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* F3 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_3A_3e_sp + = +{ + QX86_OPCODE_MAP_INDEX_SP, 3, qx86_opcode_map_3A_3e_sp_items +}; + + +static qx86_opcode_map_item qx86_opcode_map_3A_3f_sp_items[] + = +{ + /* 00 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + { + /* code */ QX86_MNEMONIC_PMAXUD, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_amode_V, &qx86_stuple_dq }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_W, &qx86_stuple_dq }} + } + } + }, + /* F2 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* F3 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_3A_3f_sp + = +{ + QX86_OPCODE_MAP_INDEX_SP, 3, qx86_opcode_map_3A_3f_sp_items +}; + +static qx86_opcode_map_item qx86_opcode_map_3A_40_sp_items[] + = +{ + /* 00 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + { + /* code */ QX86_MNEMONIC_PMULLD, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_amode_V, &qx86_stuple_dq }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_W, &qx86_stuple_dq }} + } + } + }, + /* F2 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* F3 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_3A_40_sp + = +{ + QX86_OPCODE_MAP_INDEX_SP, 3, qx86_opcode_map_3A_40_sp_items +}; + + +static qx86_opcode_map_item qx86_opcode_map_3A_41_sp_items[] + = +{ + /* 00 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + { + /* code */ QX86_MNEMONIC_PHMINPOSUW, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_V, &qx86_stuple_dq }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_W, &qx86_stuple_dq }} + } + } + }, + /* F2 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* F3 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_3A_41_sp + = +{ + QX86_OPCODE_MAP_INDEX_SP, 3, qx86_opcode_map_3A_41_sp_items +}; + +static qx86_opcode_map_item qx86_opcode_map_3A_80_sp_66_cs_items[] + = +{ + /* 00 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + { + /* code */ QX86_MNEMONIC_INVEPT, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_G, &qx86_stuple_d }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_M, &qx86_stuple_dq }} + } + } + }, + { + /* code */ QX86_MNEMONIC_INVEPT, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_G, &qx86_stuple_q }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_M, &qx86_stuple_dq }} + } + } + } +}; + +static qx86_opcode_map qx86_opcode_map_3A_80_sp_66_cs + = +{ + QX86_OPCODE_MAP_INDEX_CS, 2, qx86_opcode_map_3A_80_sp_66_cs_items +}; + +static qx86_opcode_map_item qx86_opcode_map_3A_80_sp_items[] + = +{ + /* 00 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 66 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_3A_80_sp_66_cs, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* F2 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* F3 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_3A_80_sp + = +{ + QX86_OPCODE_MAP_INDEX_SP, 3, qx86_opcode_map_3A_80_sp_items +}; + + +static qx86_opcode_map_item qx86_opcode_map_3A_81_sp_66_cs_items[] + = +{ + /* 00 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + { + /* code */ QX86_MNEMONIC_INVVPID, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_G, &qx86_stuple_d }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_M, &qx86_stuple_dq }} + } + } + }, + { + /* code */ QX86_MNEMONIC_INVVPID, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_G, &qx86_stuple_q }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_M, &qx86_stuple_dq }} + } + } + } +}; + +static qx86_opcode_map qx86_opcode_map_3A_81_sp_66_cs + = +{ + QX86_OPCODE_MAP_INDEX_CS, 2, qx86_opcode_map_3A_81_sp_66_cs_items +}; + +static qx86_opcode_map_item qx86_opcode_map_3A_81_sp_items[] + = +{ + /* 00 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 66 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_3A_81_sp_66_cs, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* F2 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* F3 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_3A_81_sp + = +{ + QX86_OPCODE_MAP_INDEX_SP, 3, qx86_opcode_map_3A_81_sp_items +}; + +static qx86_opcode_map_item qx86_opcode_map_3A_db_sp_items[] + = +{ + /* 00 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + { + /* code */ QX86_MNEMONIC_AESIMC, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_V, &qx86_stuple_dq }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_W, &qx86_stuple_dq }} + } + } + }, + /* F2 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* F3 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_3A_db_sp + = +{ + QX86_OPCODE_MAP_INDEX_SP, 3, qx86_opcode_map_3A_db_sp_items +}; + +static qx86_opcode_map_item qx86_opcode_map_3A_dc_sp_items[] + = +{ + /* 00 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + { + /* code */ QX86_MNEMONIC_AESENC, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_amode_V, &qx86_stuple_dq }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_W, &qx86_stuple_dq }} + } + } + }, + /* F2 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* F3 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_3A_dc_sp + = +{ + QX86_OPCODE_MAP_INDEX_SP, 3, qx86_opcode_map_3A_dc_sp_items +}; + +static qx86_opcode_map_item qx86_opcode_map_3A_dd_sp_items[] + = +{ + /* 00 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + { + /* code */ QX86_MNEMONIC_AESENCLAST, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_amode_V, &qx86_stuple_dq }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_W, &qx86_stuple_dq }} + } + } + }, + /* F2 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* F3 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_3A_dd_sp + = +{ + QX86_OPCODE_MAP_INDEX_SP, 3, qx86_opcode_map_3A_dd_sp_items +}; + +static qx86_opcode_map_item qx86_opcode_map_3A_de_sp_items[] + = +{ + /* 00 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + { + /* code */ QX86_MNEMONIC_AESDEC, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_amode_V, &qx86_stuple_dq }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_W, &qx86_stuple_dq }} + } + } + }, + /* F2 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* F3 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_3A_de_sp + = +{ + QX86_OPCODE_MAP_INDEX_SP, 3, qx86_opcode_map_3A_de_sp_items +}; + + +static qx86_opcode_map_item qx86_opcode_map_3A_df_sp_items[] + = +{ + /* 00 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + { + /* code */ QX86_MNEMONIC_AESDECLAST, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_amode_V, &qx86_stuple_dq }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_W, &qx86_stuple_dq }} + } + } + }, + /* F2 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* F3 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_3A_df_sp + = +{ + QX86_OPCODE_MAP_INDEX_SP, 3, qx86_opcode_map_3A_df_sp_items +}; + +static qx86_opcode_map_item qx86_opcode_map_3A_f0_sp_00_os_items[] + = +{ + /* 00 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + { + /* code */ QX86_MNEMONIC_MOVBE, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_G, &qx86_stuple_d }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_M, &qx86_stuple_d }} + } + } + }, + { + /* code */ QX86_MNEMONIC_MOVBE, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_G, &qx86_stuple_q }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_M, &qx86_stuple_q }} + } + } + } +}; + +static qx86_opcode_map qx86_opcode_map_3A_f0_sp_00_os + = +{ + QX86_OPCODE_MAP_INDEX_OS, 2, qx86_opcode_map_3A_f0_sp_00_os_items +}; + +static qx86_opcode_map_item qx86_opcode_map_3A_f0_sp_items[] + = +{ + /* 00 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_3A_f0_sp_00_os, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + { + /* code */ QX86_MNEMONIC_MOVBE, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_G, &qx86_stuple_w }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_M, &qx86_stuple_w }} + } + } + }, + { + /* code */ QX86_MNEMONIC_CRC32, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_amode_G, &qx86_stuple_d }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_E, &qx86_stuple_b }} + } + } + }, + /* F3 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_3A_f0_sp + = +{ + QX86_OPCODE_MAP_INDEX_SP, 3, qx86_opcode_map_3A_f0_sp_items +}; + +static qx86_opcode_map_item qx86_opcode_map_3A_f1_sp_00_os_items[] + = +{ + /* 00 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + { + /* code */ QX86_MNEMONIC_MOVBE, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_M, &qx86_stuple_d }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_G, &qx86_stuple_d }} + } + } + }, + { + /* code */ QX86_MNEMONIC_MOVBE, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_M, &qx86_stuple_q }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_G, &qx86_stuple_q }} + } + } + } +}; + +static qx86_opcode_map qx86_opcode_map_3A_f1_sp_00_os + = +{ + QX86_OPCODE_MAP_INDEX_OS, 2, qx86_opcode_map_3A_f1_sp_00_os_items +}; + +static qx86_opcode_map_item qx86_opcode_map_3A_f1_sp_items[] + = +{ + /* 00 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_3A_f1_sp_00_os, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + { + /* code */ QX86_MNEMONIC_MOVBE, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_M, &qx86_stuple_w }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_G, &qx86_stuple_w }} + } + } + }, + { + /* code */ QX86_MNEMONIC_CRC32, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_amode_G, &qx86_stuple_d }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_E, &qx86_stuple_v }} + } + } + }, + /* F3 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_3A_f1_sp + = +{ + QX86_OPCODE_MAP_INDEX_SP, 3, qx86_opcode_map_3A_f1_sp_items +}; + +static qx86_opcode_map_item qx86_opcode_map_3A_items[] + = +{ + /* 00 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_3A_00_sp, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 01 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_3A_01_sp, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 02 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_3A_02_sp, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 03 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_3A_03_sp, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 04 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_3A_04_sp, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 05 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_3A_05_sp, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 06 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_3A_06_sp, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 07 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_3A_07_sp, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 08 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_3A_08_sp, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 09 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_3A_09_sp, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 0A */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_3A_0a_sp, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 0B */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_3A_0b_sp, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 0C */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 0D */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 0E */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 0F */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 10 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_3A_10_sp, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 11 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 12 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 13 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 14 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_3A_14_sp, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 15 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_3A_15_sp, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 16 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 17 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_3A_17_sp, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 18 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 19 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 1A */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 1B */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 1C */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_3A_1c_sp, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 1D */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_3A_1d_sp, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 1E */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_3A_1e_sp, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 1F */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 20 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_3A_20_sp, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 21 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_3A_21_sp, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 22 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_3A_22_sp, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 23 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_3A_23_sp, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 24 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_3A_24_sp, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 25 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_3A_25_sp, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 26 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 27 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 28 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_3A_28_sp, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 29 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_3A_29_sp, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 2A */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_3A_2a_sp, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 2B */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_3A_2b_sp, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 2C */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 2D */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 2E */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 2F */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 30 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_3A_30_sp, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 31 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_3A_31_sp, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 32 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_3A_32_sp, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 33 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_3A_33_sp, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 34 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_3A_34_sp, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 35 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_3A_35_sp, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 36 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 37 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_3A_37_sp, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 38 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_3A_38_sp, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 39 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_3A_39_sp, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 3A */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_3A_3a_sp, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 3B */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_3A_3b_sp, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 3C */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_3A_3c_sp, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 3D */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_3A_3d_sp, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 3E */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_3A_3e_sp, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 3F */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_3A_3f_sp, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 40 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_3A_40_sp, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 41 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_3A_41_sp, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 42 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 43 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 44 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 45 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 46 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 47 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 48 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 49 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 4A */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 4B */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 4C */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 4D */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 4E */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 4F */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 50 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 51 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 52 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 53 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 54 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 55 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 56 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 57 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 58 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 59 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 5A */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 5B */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 5C */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 5D */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 5E */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 5F */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 60 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 61 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 62 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 63 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 64 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 65 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 66 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 67 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 68 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 69 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 6A */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 6B */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 6C */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 6D */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 6E */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 6F */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 70 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 71 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 72 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 73 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 74 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 75 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 76 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 77 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 78 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 79 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 7A */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 7B */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 7C */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 7D */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 7E */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 7F */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 80 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_3A_80_sp, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 81 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_3A_81_sp, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 82 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 83 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 84 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 85 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 86 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 87 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 88 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 89 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 8A */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 8B */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 8C */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 8D */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 8E */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 8F */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 90 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 91 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 92 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 93 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 94 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 95 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 96 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 97 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 98 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 99 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 9A */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 9B */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 9C */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 9D */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 9E */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 9F */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* A0 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* A1 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* A2 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* A3 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* A4 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* A5 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* A6 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* A7 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* A8 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* A9 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* AA */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* AB */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* AC */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* AD */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* AE */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* AF */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* B0 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* B1 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* B2 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* B3 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* B4 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* B5 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* B6 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* B7 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* B8 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* B9 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* BA */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* BB */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* BC */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* BD */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* BE */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* BF */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* C0 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* C1 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* C2 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* C3 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* C4 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* C5 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* C6 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* C7 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* C8 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* C9 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* CA */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* CB */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* CC */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* CD */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* CE */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* CF */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* D0 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* D1 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* D2 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* D3 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* D4 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* D5 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* D6 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* D7 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* D8 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* D9 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* DA */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* DB */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_3A_db_sp, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* DC */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_3A_dc_sp, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* DD */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_3A_dd_sp, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* DE */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_3A_de_sp, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* DF */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_3A_df_sp, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* E0 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* E1 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* E2 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* E3 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* E4 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* E5 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* E6 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* E7 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* E8 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* E9 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* EA */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* EB */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* EC */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* ED */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* EE */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* EF */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* F0 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_3A_f0_sp, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* F1 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_3A_f1_sp, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* F2 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* F3 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* F4 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* F5 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* F6 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* F7 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* F8 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* F9 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* FA */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* FB */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* FC */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* FD */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* FE */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* FF */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_3A + = +{ + QX86_OPCODE_MAP_INDEX_NB, 255, qx86_opcode_map_3A_items +}; +/* End of file qx86-d-opcode-map/qx86-opcode-map-3A.map */ +/* Generated from file qx86-d-opcode-map/qx86-opcode-map-M16.map */ +// +------------------------------------------------------------------------+ +// | quix86 | +// +------------------------------------------------------------------------+ +// | This file is part of quix86, an x86-64 instruction decoder. | +// | | +// | Copyright (C) 2011 Institute for System Programming of Russian Academy | +// | of Sciences. | +// | | +// | Contact e-mail: . | +// | | +// | quix86 is free software: you can redistribute it and/or modify it | +// | under the terms of the GNU General Public License as published by the | +// | Free Software Foundation, either version 3 of the License, or (at your | +// | option) any later version. | +// | | +// | quix86 is distributed in the hope that it will be useful, but WITHOUT | +// | ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or | +// | FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License | +// | for more details. | +// | | +// | You should have received a copy of the GNU General Public License | +// | along with quix86. If not, see . | +// +------------------------------------------------------------------------+ + +// Reference: AMD Architecture Programmer's Manual 3: Tables A-6, A-7. +// Reference: Intel Architecture Software Developer’s Manual 2B: Table A-6. + // TODO: AMD says NOP, Intel - undefined.. Using AMD version. + +static qx86_opcode_map_item qx86_opcode_map_M16_items[] + = +{ + { + /* code */ QX86_MNEMONIC_PREFETCHNTA, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_M, &qx86_stuple_b }} + } + } + }, + { + /* code */ QX86_MNEMONIC_PREFETCHT0, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_M, &qx86_stuple_b }} + } + } + }, + { + /* code */ QX86_MNEMONIC_PREFETCHT1, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_M, &qx86_stuple_b }} + } + } + }, + { + /* code */ QX86_MNEMONIC_PREFETCHT2, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_M, &qx86_stuple_b }} + } + } + }, + { + /* code */ QX86_MNEMONIC_NOP, + /* map */ 0, + + /* operandCount */ 0, + /* placeHolder */ {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + { + /* code */ QX86_MNEMONIC_NOP, + /* map */ 0, + + /* operandCount */ 0, + /* placeHolder */ {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + { + /* code */ QX86_MNEMONIC_NOP, + /* map */ 0, + + /* operandCount */ 0, + /* placeHolder */ {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + { + /* code */ QX86_MNEMONIC_NOP, + /* map */ 0, + + /* operandCount */ 0, + /* placeHolder */ {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_M16 + = +{ + QX86_OPCODE_MAP_INDEX_REG, 7, qx86_opcode_map_M16_items +}; +/* End of file qx86-d-opcode-map/qx86-opcode-map-M16.map */ +/* Generated from file qx86-d-opcode-map/qx86-opcode-map-MP.map */ +// +------------------------------------------------------------------------+ +// | quix86 | +// +------------------------------------------------------------------------+ +// | This file is part of quix86, an x86-64 instruction decoder. | +// | | +// | Copyright (C) 2011 Institute for System Programming of Russian Academy | +// | of Sciences. | +// | | +// | Contact e-mail: . | +// | | +// | quix86 is free software: you can redistribute it and/or modify it | +// | under the terms of the GNU General Public License as published by the | +// | Free Software Foundation, either version 3 of the License, or (at your | +// | option) any later version. | +// | | +// | quix86 is distributed in the hope that it will be useful, but WITHOUT | +// | ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or | +// | FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License | +// | for more details. | +// | | +// | You should have received a copy of the GNU General Public License | +// | along with quix86. If not, see . | +// +------------------------------------------------------------------------+ + +// TODO: this separate map is present only on AMD. + +// Reference: AMD Architecture Programmer's Manual 3: Tables A-6, A-7. +// Reference: Intel Architecture Software Developer’s Manual 2B: Table A-6. + // TODO: Intel has 0F 0D as NOP Ev, AMD - PREFETCH. + // Using AMD variant. + +static qx86_opcode_map_item qx86_opcode_map_MP_items[] + = +{ + { + /* code */ QX86_MNEMONIC_PREFETCH, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_M, &qx86_stuple_b }} + } + } + }, + { + /* code */ QX86_MNEMONIC_PREFETCHW, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_M, &qx86_stuple_b }} + } + } + }, + { + /* code */ QX86_MNEMONIC_PREFETCH, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_M, &qx86_stuple_b }} + } + } + }, + { + /* code */ QX86_MNEMONIC_PREFETCHW, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_M, &qx86_stuple_b }} + } + } + }, + { + /* code */ QX86_MNEMONIC_PREFETCH, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_M, &qx86_stuple_b }} + } + } + }, + { + /* code */ QX86_MNEMONIC_PREFETCH, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_M, &qx86_stuple_b }} + } + } + }, + { + /* code */ QX86_MNEMONIC_PREFETCH, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_M, &qx86_stuple_b }} + } + } + }, + { + /* code */ QX86_MNEMONIC_PREFETCH, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_M, &qx86_stuple_b }} + } + } + } +}; + +static qx86_opcode_map qx86_opcode_map_MP + = +{ + QX86_OPCODE_MAP_INDEX_REG, 7, qx86_opcode_map_MP_items +}; +/* End of file qx86-d-opcode-map/qx86-opcode-map-MP.map */ +/* Generated from file qx86-d-opcode-map/qx86-opcode-map-M7.map */ +// +------------------------------------------------------------------------+ +// | quix86 | +// +------------------------------------------------------------------------+ +// | This file is part of quix86, an x86-64 instruction decoder. | +// | | +// | Copyright (C) 2011 Institute for System Programming of Russian Academy | +// | of Sciences. | +// | | +// | Contact e-mail: . | +// | | +// | quix86 is free software: you can redistribute it and/or modify it | +// | under the terms of the GNU General Public License as published by the | +// | Free Software Foundation, either version 3 of the License, or (at your | +// | option) any later version. | +// | | +// | quix86 is distributed in the hope that it will be useful, but WITHOUT | +// | ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or | +// | FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License | +// | for more details. | +// | | +// | You should have received a copy of the GNU General Public License | +// | along with quix86. If not, see . | +// +------------------------------------------------------------------------+ + +// TODO: check everything! + +// Reference: AMD Architecture Programmer's Manual 3: Tables A-6, A-7. +// Reference: Intel Architecture Software Developer’s Manual 2B: Table A-6. + + +static qx86_opcode_map_item qx86_opcode_map_M7_00_mod_03_rm_01_cs_items[] + = +{ + /* 00 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + { + /* code */ QX86_MNEMONIC_VMCALL, + /* map */ 0, + + /* operandCount */ 0, + /* placeHolder */ {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + { + /* code */ QX86_MNEMONIC_VMCALL, + /* map */ 0, + + /* operandCount */ 0, + /* placeHolder */ {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_M7_00_mod_03_rm_01_cs + = +{ + QX86_OPCODE_MAP_INDEX_CS, 2, qx86_opcode_map_M7_00_mod_03_rm_01_cs_items +}; + +static qx86_opcode_map_item qx86_opcode_map_M7_00_mod_03_rm_02_cs_items[] + = +{ + /* 00 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + { + /* code */ QX86_MNEMONIC_VMLAUNCH, + /* map */ 0, + + /* operandCount */ 0, + /* placeHolder */ {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + { + /* code */ QX86_MNEMONIC_VMLAUNCH, + /* map */ 0, + + /* operandCount */ 0, + /* placeHolder */ {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_M7_00_mod_03_rm_02_cs + = +{ + QX86_OPCODE_MAP_INDEX_CS, 2, qx86_opcode_map_M7_00_mod_03_rm_02_cs_items +}; + +static qx86_opcode_map_item qx86_opcode_map_M7_00_mod_03_rm_03_cs_items[] + = +{ + /* 00 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + { + /* code */ QX86_MNEMONIC_VMRESUME, + /* map */ 0, + + /* operandCount */ 0, + /* placeHolder */ {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + { + /* code */ QX86_MNEMONIC_VMRESUME, + /* map */ 0, + + /* operandCount */ 0, + /* placeHolder */ {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_M7_00_mod_03_rm_03_cs + = +{ + QX86_OPCODE_MAP_INDEX_CS, 2, qx86_opcode_map_M7_00_mod_03_rm_03_cs_items +}; + +static qx86_opcode_map_item qx86_opcode_map_M7_00_mod_03_rm_04_cs_items[] + = +{ + /* 00 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + { + /* code */ QX86_MNEMONIC_VMXOFF, + /* map */ 0, + + /* operandCount */ 0, + /* placeHolder */ {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + { + /* code */ QX86_MNEMONIC_VMXOFF, + /* map */ 0, + + /* operandCount */ 0, + /* placeHolder */ {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_M7_00_mod_03_rm_04_cs + = +{ + QX86_OPCODE_MAP_INDEX_CS, 2, qx86_opcode_map_M7_00_mod_03_rm_04_cs_items +}; + +static qx86_opcode_map_item qx86_opcode_map_M7_00_mod_03_rm_items[] + = +{ + /* 00 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 01 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_M7_00_mod_03_rm_01_cs, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 02 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_M7_00_mod_03_rm_02_cs, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 03 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_M7_00_mod_03_rm_03_cs, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 04 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_M7_00_mod_03_rm_04_cs, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 05 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 06 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 07 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_M7_00_mod_03_rm + = +{ + QX86_OPCODE_MAP_INDEX_RM, 7, qx86_opcode_map_M7_00_mod_03_rm_items +}; + +static qx86_opcode_map_item qx86_opcode_map_M7_00_mod_items[] + = +{ + { + /* code */ QX86_MNEMONIC_SGDT, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_M, &qx86_stuple_s }} + } + } + }, + { + /* code */ QX86_MNEMONIC_SGDT, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_M, &qx86_stuple_s }} + } + } + }, + { + /* code */ QX86_MNEMONIC_SGDT, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_M, &qx86_stuple_s }} + } + } + }, + /* 03 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_M7_00_mod_03_rm, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_M7_00_mod + = +{ + QX86_OPCODE_MAP_INDEX_MOD, 3, qx86_opcode_map_M7_00_mod_items +}; + +static qx86_opcode_map_item qx86_opcode_map_M7_01_mod_03_rm_items[] + = +{ + { + /* code */ QX86_MNEMONIC_MONITOR, + /* map */ 0, + + /* operandCount */ 0, + /* placeHolder */ {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + { + /* code */ QX86_MNEMONIC_MWAIT, + /* map */ 0, + + /* operandCount */ 0, + /* placeHolder */ {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 02 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 03 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 04 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 05 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 06 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 07 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_M7_01_mod_03_rm + = +{ + QX86_OPCODE_MAP_INDEX_RM, 7, qx86_opcode_map_M7_01_mod_03_rm_items +}; + +static qx86_opcode_map_item qx86_opcode_map_M7_01_mod_items[] + = +{ + { + /* code */ QX86_MNEMONIC_SIDT, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_M, &qx86_stuple_s }} + } + } + }, + { + /* code */ QX86_MNEMONIC_SIDT, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_M, &qx86_stuple_s }} + } + } + }, + { + /* code */ QX86_MNEMONIC_SIDT, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_M, &qx86_stuple_s }} + } + } + }, + /* 03 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_M7_01_mod_03_rm, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_M7_01_mod + = +{ + QX86_OPCODE_MAP_INDEX_MOD, 3, qx86_opcode_map_M7_01_mod_items +}; + +static qx86_opcode_map_item qx86_opcode_map_M7_02_mod_03_rm_items[] + = +{ + { + /* code */ QX86_MNEMONIC_XGETBV, + /* map */ 0, + + /* operandCount */ 0, + /* placeHolder */ {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + { + /* code */ QX86_MNEMONIC_XSETBV, + /* map */ 0, + + /* operandCount */ 0, + /* placeHolder */ {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 02 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 03 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 04 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 05 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 06 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 07 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_M7_02_mod_03_rm + = +{ + QX86_OPCODE_MAP_INDEX_RM, 7, qx86_opcode_map_M7_02_mod_03_rm_items +}; + +static qx86_opcode_map_item qx86_opcode_map_M7_02_mod_items[] + = +{ + { + /* code */ QX86_MNEMONIC_LGDT, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_M, &qx86_stuple_s }} + } + } + }, + { + /* code */ QX86_MNEMONIC_LGDT, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_M, &qx86_stuple_s }} + } + } + }, + { + /* code */ QX86_MNEMONIC_LGDT, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_M, &qx86_stuple_s }} + } + } + }, + /* 03 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_M7_02_mod_03_rm, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_M7_02_mod + = +{ + QX86_OPCODE_MAP_INDEX_MOD, 3, qx86_opcode_map_M7_02_mod_items +}; + +static qx86_opcode_map_item qx86_opcode_map_M7_03_mod_03_rm_00_cs_items[] + = +{ + /* 00 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + { + /* code */ QX86_MNEMONIC_VMRUN, + /* map */ 0, + + /* operandCount */ 0, + /* placeHolder */ {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + { + /* code */ QX86_MNEMONIC_VMRUN, + /* map */ 0, + + /* operandCount */ 0, + /* placeHolder */ {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_M7_03_mod_03_rm_00_cs + = +{ + QX86_OPCODE_MAP_INDEX_CS, 2, qx86_opcode_map_M7_03_mod_03_rm_00_cs_items +}; + +static qx86_opcode_map_item qx86_opcode_map_M7_03_mod_03_rm_02_cs_items[] + = +{ + /* 00 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + { + /* code */ QX86_MNEMONIC_VMLOAD, + /* map */ 0, + + /* operandCount */ 0, + /* placeHolder */ {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + { + /* code */ QX86_MNEMONIC_VMLOAD, + /* map */ 0, + + /* operandCount */ 0, + /* placeHolder */ {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_M7_03_mod_03_rm_02_cs + = +{ + QX86_OPCODE_MAP_INDEX_CS, 2, qx86_opcode_map_M7_03_mod_03_rm_02_cs_items +}; + +static qx86_opcode_map_item qx86_opcode_map_M7_03_mod_03_rm_03_cs_items[] + = +{ + /* 00 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + { + /* code */ QX86_MNEMONIC_VMSAVE, + /* map */ 0, + + /* operandCount */ 0, + /* placeHolder */ {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + { + /* code */ QX86_MNEMONIC_VMSAVE, + /* map */ 0, + + /* operandCount */ 0, + /* placeHolder */ {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_M7_03_mod_03_rm_03_cs + = +{ + QX86_OPCODE_MAP_INDEX_CS, 2, qx86_opcode_map_M7_03_mod_03_rm_03_cs_items +}; + +static qx86_opcode_map_item qx86_opcode_map_M7_03_mod_03_rm_04_cs_items[] + = +{ + /* 00 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + { + /* code */ QX86_MNEMONIC_STGI, + /* map */ 0, + + /* operandCount */ 0, + /* placeHolder */ {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + { + /* code */ QX86_MNEMONIC_STGI, + /* map */ 0, + + /* operandCount */ 0, + /* placeHolder */ {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_M7_03_mod_03_rm_04_cs + = +{ + QX86_OPCODE_MAP_INDEX_CS, 2, qx86_opcode_map_M7_03_mod_03_rm_04_cs_items +}; + +static qx86_opcode_map_item qx86_opcode_map_M7_03_mod_03_rm_05_cs_items[] + = +{ + /* 00 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + { + /* code */ QX86_MNEMONIC_CLGI, + /* map */ 0, + + /* operandCount */ 0, + /* placeHolder */ {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + { + /* code */ QX86_MNEMONIC_CLGI, + /* map */ 0, + + /* operandCount */ 0, + /* placeHolder */ {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_M7_03_mod_03_rm_05_cs + = +{ + QX86_OPCODE_MAP_INDEX_CS, 2, qx86_opcode_map_M7_03_mod_03_rm_05_cs_items +}; + +static qx86_opcode_map_item qx86_opcode_map_M7_03_mod_03_rm_06_cs_items[] + = +{ + /* 00 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + { + /* code */ QX86_MNEMONIC_SKINIT, + /* map */ 0, + + /* operandCount */ 0, + /* placeHolder */ {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + { + /* code */ QX86_MNEMONIC_SKINIT, + /* map */ 0, + + /* operandCount */ 0, + /* placeHolder */ {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_M7_03_mod_03_rm_06_cs + = +{ + QX86_OPCODE_MAP_INDEX_CS, 2, qx86_opcode_map_M7_03_mod_03_rm_06_cs_items +}; + +static qx86_opcode_map_item qx86_opcode_map_M7_03_mod_03_rm_07_cs_items[] + = +{ + /* 00 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + { + /* code */ QX86_MNEMONIC_INVLPGA, + /* map */ 0, + + /* operandCount */ 0, + /* placeHolder */ {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + { + /* code */ QX86_MNEMONIC_INVLPGA, + /* map */ 0, + + /* operandCount */ 0, + /* placeHolder */ {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_M7_03_mod_03_rm_07_cs + = +{ + QX86_OPCODE_MAP_INDEX_CS, 2, qx86_opcode_map_M7_03_mod_03_rm_07_cs_items +}; + +static qx86_opcode_map_item qx86_opcode_map_M7_03_mod_03_rm_items[] + = +{ + /* 00 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_M7_03_mod_03_rm_00_cs, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + { + /* code */ QX86_MNEMONIC_VMMCALL, + /* map */ 0, + + /* operandCount */ 0, + /* placeHolder */ {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 02 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_M7_03_mod_03_rm_02_cs, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 03 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_M7_03_mod_03_rm_03_cs, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 04 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_M7_03_mod_03_rm_04_cs, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 05 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_M7_03_mod_03_rm_05_cs, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 06 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_M7_03_mod_03_rm_06_cs, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 07 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_M7_03_mod_03_rm_07_cs, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_M7_03_mod_03_rm + = +{ + QX86_OPCODE_MAP_INDEX_RM, 7, qx86_opcode_map_M7_03_mod_03_rm_items +}; + +static qx86_opcode_map_item qx86_opcode_map_M7_03_mod_items[] + = +{ + { + /* code */ QX86_MNEMONIC_LIDT, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_M, &qx86_stuple_s }} + } + } + }, + { + /* code */ QX86_MNEMONIC_LIDT, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_M, &qx86_stuple_s }} + } + } + }, + { + /* code */ QX86_MNEMONIC_LIDT, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_M, &qx86_stuple_s }} + } + } + }, + /* 03 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_M7_03_mod_03_rm, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_M7_03_mod + = +{ + QX86_OPCODE_MAP_INDEX_MOD, 3, qx86_opcode_map_M7_03_mod_items +}; + +static qx86_opcode_map_item qx86_opcode_map_M7_04_mod_items[] + = +{ + { + /* code */ QX86_MNEMONIC_SMSW, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_M, &qx86_stuple_w }} + } + } + }, + { + /* code */ QX86_MNEMONIC_SMSW, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_M, &qx86_stuple_w }} + } + } + }, + { + /* code */ QX86_MNEMONIC_SMSW, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_M, &qx86_stuple_w }} + } + } + }, + { + /* code */ QX86_MNEMONIC_SMSW, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_R, &qx86_stuple_v }} + } + } + } +}; + +static qx86_opcode_map qx86_opcode_map_M7_04_mod + = +{ + QX86_OPCODE_MAP_INDEX_MOD, 3, qx86_opcode_map_M7_04_mod_items +}; + +static qx86_opcode_map_item qx86_opcode_map_M7_07_mod_03_rm_00_cs_items[] + = +{ + /* 00 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 01 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + { + /* code */ QX86_MNEMONIC_SWAPGS, + /* map */ 0, + + /* operandCount */ 0, + /* placeHolder */ {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_M7_07_mod_03_rm_00_cs + = +{ + QX86_OPCODE_MAP_INDEX_CS, 2, qx86_opcode_map_M7_07_mod_03_rm_00_cs_items +}; + +static qx86_opcode_map_item qx86_opcode_map_M7_07_mod_03_rm_items[] + = +{ + /* 00 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_M7_07_mod_03_rm_00_cs, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + { + /* code */ QX86_MNEMONIC_RDTSCP, + /* map */ 0, + + /* operandCount */ 0, + /* placeHolder */ {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 02 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 03 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 04 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 05 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 06 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 07 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_M7_07_mod_03_rm + = +{ + QX86_OPCODE_MAP_INDEX_RM, 7, qx86_opcode_map_M7_07_mod_03_rm_items +}; + +static qx86_opcode_map_item qx86_opcode_map_M7_07_mod_items[] + = +{ + { + /* code */ QX86_MNEMONIC_INVLPG, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_M, &qx86_stuple_b }} + } + } + }, + { + /* code */ QX86_MNEMONIC_INVLPG, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_M, &qx86_stuple_b }} + } + } + }, + { + /* code */ QX86_MNEMONIC_INVLPG, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_M, &qx86_stuple_b }} + } + } + }, + /* 03 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_M7_07_mod_03_rm, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_M7_07_mod + = +{ + QX86_OPCODE_MAP_INDEX_MOD, 3, qx86_opcode_map_M7_07_mod_items +}; + +static qx86_opcode_map_item qx86_opcode_map_M7_items[] + = +{ + /* 00 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_M7_00_mod, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 01 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_M7_01_mod, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 02 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_M7_02_mod, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 03 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_M7_03_mod, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 04 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_M7_04_mod, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 05 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + { + /* code */ QX86_MNEMONIC_LMSW, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_E, &qx86_stuple_w }} + } + } + }, + /* 07 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_M7_07_mod, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_M7 + = +{ + QX86_OPCODE_MAP_INDEX_REG, 7, qx86_opcode_map_M7_items +}; +/* End of file qx86-d-opcode-map/qx86-opcode-map-M7.map */ +/* Generated from file qx86-d-opcode-map/qx86-opcode-map-M6.map */ +// +------------------------------------------------------------------------+ +// | quix86 | +// +------------------------------------------------------------------------+ +// | This file is part of quix86, an x86-64 instruction decoder. | +// | | +// | Copyright (C) 2011 Institute for System Programming of Russian Academy | +// | of Sciences. | +// | | +// | Contact e-mail: . | +// | | +// | quix86 is free software: you can redistribute it and/or modify it | +// | under the terms of the GNU General Public License as published by the | +// | Free Software Foundation, either version 3 of the License, or (at your | +// | option) any later version. | +// | | +// | quix86 is distributed in the hope that it will be useful, but WITHOUT | +// | ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or | +// | FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License | +// | for more details. | +// | | +// | You should have received a copy of the GNU General Public License | +// | along with quix86. If not, see . | +// +------------------------------------------------------------------------+ + +// Reference: AMD Architecture Programmer's Manual 3: Table A-6. + +static qx86_opcode_map_item qx86_opcode_map_M6_00_mod_items[] + = +{ + { + /* code */ QX86_MNEMONIC_SLDT, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_M, &qx86_stuple_w }} + } + } + }, + { + /* code */ QX86_MNEMONIC_SLDT, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_M, &qx86_stuple_w }} + } + } + }, + { + /* code */ QX86_MNEMONIC_SLDT, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_M, &qx86_stuple_w }} + } + } + }, + { + /* code */ QX86_MNEMONIC_SLDT, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_R, &qx86_stuple_v }} + } + } + } +}; + +static qx86_opcode_map qx86_opcode_map_M6_00_mod + = +{ + QX86_OPCODE_MAP_INDEX_MOD, 3, qx86_opcode_map_M6_00_mod_items +}; + +static qx86_opcode_map_item qx86_opcode_map_M6_01_mod_items[] + = +{ + { + /* code */ QX86_MNEMONIC_STR, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_M, &qx86_stuple_w }} + } + } + }, + { + /* code */ QX86_MNEMONIC_STR, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_M, &qx86_stuple_w }} + } + } + }, + { + /* code */ QX86_MNEMONIC_STR, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_M, &qx86_stuple_w }} + } + } + }, + { + /* code */ QX86_MNEMONIC_STR, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_R, &qx86_stuple_v }} + } + } + } +}; + +static qx86_opcode_map qx86_opcode_map_M6_01_mod + = +{ + QX86_OPCODE_MAP_INDEX_MOD, 3, qx86_opcode_map_M6_01_mod_items +}; + +static qx86_opcode_map_item qx86_opcode_map_M6_items[] + = +{ + /* 00 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_M6_00_mod, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 01 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_M6_01_mod, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + { + /* code */ QX86_MNEMONIC_LLDT, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_E, &qx86_stuple_w }} + } + } + }, + { + /* code */ QX86_MNEMONIC_LTR, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_E, &qx86_stuple_w }} + } + } + }, + { + /* code */ QX86_MNEMONIC_VERR, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_E, &qx86_stuple_w }} + } + } + }, + { + /* code */ QX86_MNEMONIC_VERW, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_E, &qx86_stuple_w }} + } + } + }, + /* 06 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 07 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_M6 + = +{ + QX86_OPCODE_MAP_INDEX_REG, 7, qx86_opcode_map_M6_items +}; +/* End of file qx86-d-opcode-map/qx86-opcode-map-M6.map */ +/* Generated from file qx86-d-opcode-map/qx86-opcode-map-M5.map */ +// +------------------------------------------------------------------------+ +// | quix86 | +// +------------------------------------------------------------------------+ +// | This file is part of quix86, an x86-64 instruction decoder. | +// | | +// | Copyright (C) 2011 Institute for System Programming of Russian Academy | +// | of Sciences. | +// | | +// | Contact e-mail: . | +// | | +// | quix86 is free software: you can redistribute it and/or modify it | +// | under the terms of the GNU General Public License as published by the | +// | Free Software Foundation, either version 3 of the License, or (at your | +// | option) any later version. | +// | | +// | quix86 is distributed in the hope that it will be useful, but WITHOUT | +// | ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or | +// | FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License | +// | for more details. | +// | | +// | You should have received a copy of the GNU General Public License | +// | along with quix86. If not, see . | +// +------------------------------------------------------------------------+ + +// Reference: AMD Architecture Programmer's Manual 3: Table A-6. + +static qx86_opcode_map_item qx86_opcode_map_M5_items[] + = +{ + { + /* code */ QX86_MNEMONIC_INC, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_amode_E, &qx86_stuple_v }} + } + } + }, + { + /* code */ QX86_MNEMONIC_DEC, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_amode_E, &qx86_stuple_v }} + } + } + }, + { + /* code */ QX86_MNEMONIC_CALL, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_E, &qx86_stuple_v }} + } + } + }, + { + /* code */ QX86_MNEMONIC_CALLF, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_M, &qx86_stuple_p }} + } + } + }, + { + /* code */ QX86_MNEMONIC_JMP, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_E, &qx86_stuple_v }} + } + } + }, + { + /* code */ QX86_MNEMONIC_JMPF, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_M, &qx86_stuple_p }} + } + } + }, + { + /* code */ QX86_MNEMONIC_PUSH, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_E, &qx86_stuple_v }} + } + } + }, + /* 07 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_M5 + = +{ + QX86_OPCODE_MAP_INDEX_REG, 7, qx86_opcode_map_M5_items +}; +/* End of file qx86-d-opcode-map/qx86-opcode-map-M5.map */ +/* Generated from file qx86-d-opcode-map/qx86-opcode-map-M4.map */ +// +------------------------------------------------------------------------+ +// | quix86 | +// +------------------------------------------------------------------------+ +// | This file is part of quix86, an x86-64 instruction decoder. | +// | | +// | Copyright (C) 2011 Institute for System Programming of Russian Academy | +// | of Sciences. | +// | | +// | Contact e-mail: . | +// | | +// | quix86 is free software: you can redistribute it and/or modify it | +// | under the terms of the GNU General Public License as published by the | +// | Free Software Foundation, either version 3 of the License, or (at your | +// | option) any later version. | +// | | +// | quix86 is distributed in the hope that it will be useful, but WITHOUT | +// | ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or | +// | FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License | +// | for more details. | +// | | +// | You should have received a copy of the GNU General Public License | +// | along with quix86. If not, see . | +// +------------------------------------------------------------------------+ + +// Reference: AMD Architecture Programmer's Manual 3: Table A-6. + +static qx86_opcode_map_item qx86_opcode_map_M4_items[] + = +{ + { + /* code */ QX86_MNEMONIC_INC, + /* map */ 0, + + /* operandCount */ -1, + /* placeHolder */ {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + { + /* code */ QX86_MNEMONIC_DEC, + /* map */ 0, + + /* operandCount */ -1, + /* placeHolder */ {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 02 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 03 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 04 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 05 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 06 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 07 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_M4 + = +{ + QX86_OPCODE_MAP_INDEX_REG, 7, qx86_opcode_map_M4_items +}; +/* End of file qx86-d-opcode-map/qx86-opcode-map-M4.map */ +/* Generated from file qx86-d-opcode-map/qx86-opcode-map-M3.map */ +// +------------------------------------------------------------------------+ +// | quix86 | +// +------------------------------------------------------------------------+ +// | This file is part of quix86, an x86-64 instruction decoder. | +// | | +// | Copyright (C) 2011 Institute for System Programming of Russian Academy | +// | of Sciences. | +// | | +// | Contact e-mail: . | +// | | +// | quix86 is free software: you can redistribute it and/or modify it | +// | under the terms of the GNU General Public License as published by the | +// | Free Software Foundation, either version 3 of the License, or (at your | +// | option) any later version. | +// | | +// | quix86 is distributed in the hope that it will be useful, but WITHOUT | +// | ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or | +// | FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License | +// | for more details. | +// | | +// | You should have received a copy of the GNU General Public License | +// | along with quix86. If not, see . | +// +------------------------------------------------------------------------+ + +// Reference: AMD Architecture Programmer's Manual 3: Table A-6. + +static qx86_opcode_map_item qx86_opcode_map_M3_00_pb_items[] + = +{ + /* 00 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 01 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 02 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 03 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 04 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 05 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 06 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 07 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 08 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 09 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 0A */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 0B */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 0C */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 0D */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 0E */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 0F */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 10 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 11 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 12 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 13 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 14 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 15 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 16 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 17 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 18 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 19 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 1A */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 1B */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 1C */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 1D */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 1E */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 1F */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 20 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 21 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 22 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 23 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 24 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 25 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 26 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 27 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 28 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 29 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 2A */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 2B */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 2C */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 2D */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 2E */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 2F */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 30 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 31 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 32 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 33 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 34 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 35 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 36 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 37 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 38 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 39 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 3A */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 3B */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 3C */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 3D */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 3E */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 3F */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 40 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 41 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 42 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 43 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 44 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 45 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 46 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 47 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 48 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 49 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 4A */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 4B */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 4C */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 4D */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 4E */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 4F */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 50 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 51 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 52 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 53 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 54 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 55 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 56 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 57 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 58 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 59 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 5A */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 5B */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 5C */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 5D */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 5E */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 5F */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 60 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 61 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 62 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 63 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 64 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 65 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 66 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 67 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 68 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 69 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 6A */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 6B */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 6C */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 6D */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 6E */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 6F */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 70 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 71 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 72 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 73 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 74 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 75 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 76 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 77 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 78 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 79 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 7A */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 7B */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 7C */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 7D */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 7E */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 7F */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 80 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 81 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 82 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 83 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 84 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 85 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 86 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 87 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 88 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 89 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 8A */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 8B */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 8C */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 8D */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 8E */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 8F */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 90 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 91 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 92 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 93 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 94 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 95 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 96 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 97 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 98 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 99 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 9A */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 9B */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 9C */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 9D */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 9E */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 9F */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* A0 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* A1 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* A2 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* A3 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* A4 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* A5 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* A6 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* A7 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* A8 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* A9 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* AA */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* AB */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* AC */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* AD */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* AE */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* AF */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* B0 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* B1 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* B2 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* B3 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* B4 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* B5 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* B6 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* B7 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* B8 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* B9 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* BA */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* BB */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* BC */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* BD */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* BE */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* BF */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* C0 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* C1 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* C2 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* C3 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* C4 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* C5 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* C6 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* C7 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* C8 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* C9 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* CA */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* CB */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* CC */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* CD */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* CE */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* CF */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* D0 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* D1 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* D2 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* D3 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* D4 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* D5 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* D6 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* D7 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* D8 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* D9 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* DA */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* DB */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* DC */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* DD */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* DE */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* DF */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* E0 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* E1 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* E2 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* E3 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* E4 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* E5 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* E6 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* E7 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* E8 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* E9 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* EA */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* EB */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* EC */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* ED */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* EE */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* EF */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* F0 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* F1 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* F2 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* F3 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* F4 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* F5 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + { + /* code */ QX86_MNEMONIC_TEST, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_E, &qx86_stuple_b }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_I, &qx86_stuple_b }} + } + } + }, + { + /* code */ QX86_MNEMONIC_TEST, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_E, &qx86_stuple_v }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_I, &qx86_stuple_z }} + } + } + }, + /* F8 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* F9 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* FA */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* FB */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* FC */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* FD */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* FE */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* FF */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_M3_00_pb + = +{ + QX86_OPCODE_MAP_INDEX_PB, 255, qx86_opcode_map_M3_00_pb_items +}; + +static qx86_opcode_map_item qx86_opcode_map_M3_01_pb_items[] + = +{ + /* 00 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 01 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 02 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 03 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 04 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 05 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 06 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 07 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 08 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 09 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 0A */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 0B */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 0C */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 0D */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 0E */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 0F */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 10 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 11 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 12 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 13 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 14 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 15 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 16 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 17 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 18 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 19 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 1A */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 1B */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 1C */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 1D */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 1E */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 1F */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 20 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 21 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 22 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 23 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 24 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 25 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 26 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 27 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 28 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 29 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 2A */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 2B */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 2C */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 2D */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 2E */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 2F */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 30 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 31 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 32 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 33 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 34 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 35 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 36 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 37 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 38 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 39 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 3A */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 3B */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 3C */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 3D */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 3E */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 3F */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 40 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 41 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 42 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 43 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 44 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 45 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 46 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 47 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 48 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 49 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 4A */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 4B */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 4C */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 4D */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 4E */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 4F */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 50 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 51 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 52 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 53 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 54 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 55 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 56 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 57 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 58 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 59 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 5A */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 5B */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 5C */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 5D */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 5E */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 5F */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 60 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 61 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 62 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 63 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 64 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 65 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 66 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 67 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 68 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 69 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 6A */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 6B */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 6C */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 6D */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 6E */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 6F */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 70 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 71 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 72 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 73 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 74 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 75 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 76 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 77 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 78 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 79 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 7A */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 7B */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 7C */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 7D */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 7E */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 7F */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 80 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 81 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 82 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 83 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 84 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 85 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 86 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 87 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 88 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 89 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 8A */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 8B */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 8C */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 8D */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 8E */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 8F */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 90 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 91 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 92 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 93 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 94 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 95 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 96 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 97 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 98 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 99 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 9A */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 9B */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 9C */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 9D */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 9E */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 9F */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* A0 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* A1 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* A2 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* A3 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* A4 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* A5 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* A6 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* A7 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* A8 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* A9 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* AA */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* AB */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* AC */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* AD */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* AE */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* AF */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* B0 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* B1 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* B2 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* B3 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* B4 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* B5 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* B6 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* B7 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* B8 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* B9 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* BA */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* BB */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* BC */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* BD */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* BE */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* BF */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* C0 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* C1 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* C2 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* C3 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* C4 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* C5 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* C6 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* C7 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* C8 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* C9 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* CA */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* CB */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* CC */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* CD */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* CE */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* CF */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* D0 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* D1 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* D2 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* D3 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* D4 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* D5 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* D6 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* D7 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* D8 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* D9 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* DA */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* DB */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* DC */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* DD */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* DE */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* DF */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* E0 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* E1 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* E2 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* E3 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* E4 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* E5 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* E6 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* E7 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* E8 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* E9 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* EA */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* EB */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* EC */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* ED */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* EE */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* EF */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* F0 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* F1 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* F2 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* F3 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* F4 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* F5 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + { + /* code */ QX86_MNEMONIC_TEST, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_E, &qx86_stuple_b }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_I, &qx86_stuple_b }} + } + } + }, + { + /* code */ QX86_MNEMONIC_TEST, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_E, &qx86_stuple_v }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_I, &qx86_stuple_z }} + } + } + }, + /* F8 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* F9 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* FA */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* FB */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* FC */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* FD */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* FE */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* FF */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_M3_01_pb + = +{ + QX86_OPCODE_MAP_INDEX_PB, 255, qx86_opcode_map_M3_01_pb_items +}; + +static qx86_opcode_map_item qx86_opcode_map_M3_02_pb_items[] + = +{ + /* 00 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 01 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 02 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 03 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 04 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 05 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 06 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 07 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 08 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 09 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 0A */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 0B */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 0C */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 0D */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 0E */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 0F */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 10 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 11 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 12 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 13 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 14 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 15 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 16 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 17 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 18 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 19 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 1A */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 1B */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 1C */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 1D */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 1E */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 1F */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 20 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 21 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 22 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 23 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 24 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 25 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 26 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 27 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 28 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 29 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 2A */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 2B */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 2C */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 2D */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 2E */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 2F */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 30 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 31 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 32 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 33 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 34 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 35 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 36 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 37 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 38 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 39 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 3A */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 3B */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 3C */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 3D */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 3E */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 3F */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 40 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 41 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 42 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 43 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 44 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 45 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 46 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 47 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 48 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 49 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 4A */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 4B */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 4C */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 4D */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 4E */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 4F */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 50 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 51 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 52 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 53 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 54 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 55 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 56 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 57 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 58 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 59 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 5A */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 5B */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 5C */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 5D */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 5E */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 5F */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 60 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 61 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 62 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 63 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 64 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 65 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 66 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 67 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 68 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 69 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 6A */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 6B */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 6C */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 6D */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 6E */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 6F */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 70 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 71 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 72 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 73 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 74 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 75 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 76 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 77 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 78 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 79 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 7A */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 7B */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 7C */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 7D */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 7E */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 7F */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 80 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 81 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 82 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 83 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 84 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 85 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 86 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 87 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 88 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 89 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 8A */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 8B */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 8C */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 8D */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 8E */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 8F */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 90 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 91 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 92 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 93 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 94 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 95 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 96 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 97 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 98 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 99 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 9A */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 9B */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 9C */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 9D */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 9E */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 9F */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* A0 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* A1 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* A2 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* A3 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* A4 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* A5 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* A6 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* A7 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* A8 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* A9 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* AA */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* AB */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* AC */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* AD */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* AE */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* AF */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* B0 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* B1 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* B2 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* B3 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* B4 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* B5 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* B6 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* B7 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* B8 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* B9 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* BA */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* BB */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* BC */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* BD */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* BE */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* BF */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* C0 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* C1 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* C2 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* C3 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* C4 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* C5 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* C6 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* C7 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* C8 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* C9 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* CA */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* CB */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* CC */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* CD */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* CE */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* CF */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* D0 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* D1 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* D2 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* D3 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* D4 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* D5 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* D6 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* D7 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* D8 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* D9 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* DA */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* DB */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* DC */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* DD */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* DE */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* DF */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* E0 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* E1 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* E2 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* E3 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* E4 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* E5 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* E6 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* E7 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* E8 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* E9 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* EA */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* EB */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* EC */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* ED */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* EE */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* EF */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* F0 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* F1 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* F2 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* F3 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* F4 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* F5 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + { + /* code */ QX86_MNEMONIC_NOT, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_amode_E, &qx86_stuple_b }} + } + } + }, + { + /* code */ QX86_MNEMONIC_NOT, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_amode_E, &qx86_stuple_v }} + } + } + }, + /* F8 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* F9 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* FA */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* FB */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* FC */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* FD */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* FE */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* FF */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_M3_02_pb + = +{ + QX86_OPCODE_MAP_INDEX_PB, 255, qx86_opcode_map_M3_02_pb_items +}; + +static qx86_opcode_map_item qx86_opcode_map_M3_03_pb_items[] + = +{ + /* 00 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 01 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 02 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 03 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 04 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 05 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 06 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 07 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 08 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 09 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 0A */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 0B */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 0C */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 0D */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 0E */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 0F */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 10 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 11 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 12 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 13 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 14 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 15 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 16 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 17 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 18 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 19 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 1A */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 1B */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 1C */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 1D */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 1E */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 1F */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 20 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 21 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 22 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 23 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 24 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 25 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 26 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 27 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 28 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 29 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 2A */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 2B */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 2C */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 2D */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 2E */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 2F */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 30 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 31 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 32 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 33 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 34 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 35 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 36 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 37 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 38 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 39 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 3A */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 3B */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 3C */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 3D */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 3E */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 3F */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 40 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 41 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 42 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 43 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 44 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 45 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 46 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 47 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 48 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 49 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 4A */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 4B */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 4C */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 4D */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 4E */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 4F */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 50 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 51 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 52 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 53 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 54 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 55 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 56 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 57 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 58 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 59 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 5A */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 5B */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 5C */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 5D */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 5E */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 5F */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 60 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 61 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 62 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 63 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 64 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 65 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 66 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 67 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 68 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 69 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 6A */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 6B */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 6C */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 6D */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 6E */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 6F */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 70 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 71 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 72 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 73 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 74 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 75 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 76 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 77 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 78 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 79 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 7A */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 7B */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 7C */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 7D */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 7E */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 7F */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 80 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 81 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 82 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 83 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 84 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 85 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 86 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 87 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 88 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 89 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 8A */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 8B */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 8C */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 8D */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 8E */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 8F */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 90 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 91 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 92 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 93 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 94 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 95 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 96 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 97 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 98 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 99 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 9A */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 9B */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 9C */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 9D */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 9E */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 9F */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* A0 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* A1 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* A2 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* A3 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* A4 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* A5 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* A6 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* A7 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* A8 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* A9 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* AA */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* AB */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* AC */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* AD */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* AE */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* AF */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* B0 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* B1 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* B2 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* B3 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* B4 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* B5 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* B6 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* B7 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* B8 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* B9 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* BA */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* BB */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* BC */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* BD */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* BE */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* BF */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* C0 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* C1 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* C2 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* C3 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* C4 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* C5 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* C6 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* C7 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* C8 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* C9 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* CA */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* CB */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* CC */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* CD */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* CE */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* CF */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* D0 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* D1 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* D2 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* D3 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* D4 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* D5 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* D6 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* D7 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* D8 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* D9 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* DA */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* DB */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* DC */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* DD */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* DE */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* DF */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* E0 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* E1 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* E2 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* E3 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* E4 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* E5 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* E6 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* E7 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* E8 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* E9 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* EA */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* EB */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* EC */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* ED */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* EE */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* EF */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* F0 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* F1 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* F2 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* F3 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* F4 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* F5 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + { + /* code */ QX86_MNEMONIC_NEG, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_amode_E, &qx86_stuple_b }} + } + } + }, + { + /* code */ QX86_MNEMONIC_NEG, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_amode_E, &qx86_stuple_v }} + } + } + }, + /* F8 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* F9 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* FA */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* FB */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* FC */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* FD */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* FE */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* FF */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_M3_03_pb + = +{ + QX86_OPCODE_MAP_INDEX_PB, 255, qx86_opcode_map_M3_03_pb_items +}; + +static qx86_opcode_map_item qx86_opcode_map_M3_04_pb_items[] + = +{ + /* 00 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 01 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 02 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 03 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 04 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 05 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 06 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 07 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 08 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 09 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 0A */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 0B */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 0C */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 0D */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 0E */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 0F */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 10 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 11 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 12 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 13 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 14 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 15 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 16 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 17 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 18 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 19 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 1A */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 1B */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 1C */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 1D */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 1E */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 1F */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 20 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 21 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 22 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 23 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 24 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 25 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 26 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 27 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 28 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 29 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 2A */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 2B */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 2C */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 2D */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 2E */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 2F */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 30 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 31 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 32 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 33 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 34 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 35 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 36 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 37 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 38 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 39 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 3A */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 3B */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 3C */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 3D */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 3E */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 3F */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 40 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 41 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 42 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 43 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 44 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 45 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 46 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 47 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 48 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 49 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 4A */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 4B */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 4C */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 4D */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 4E */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 4F */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 50 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 51 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 52 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 53 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 54 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 55 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 56 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 57 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 58 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 59 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 5A */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 5B */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 5C */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 5D */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 5E */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 5F */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 60 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 61 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 62 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 63 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 64 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 65 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 66 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 67 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 68 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 69 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 6A */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 6B */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 6C */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 6D */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 6E */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 6F */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 70 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 71 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 72 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 73 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 74 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 75 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 76 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 77 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 78 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 79 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 7A */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 7B */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 7C */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 7D */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 7E */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 7F */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 80 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 81 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 82 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 83 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 84 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 85 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 86 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 87 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 88 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 89 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 8A */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 8B */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 8C */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 8D */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 8E */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 8F */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 90 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 91 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 92 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 93 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 94 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 95 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 96 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 97 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 98 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 99 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 9A */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 9B */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 9C */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 9D */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 9E */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 9F */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* A0 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* A1 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* A2 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* A3 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* A4 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* A5 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* A6 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* A7 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* A8 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* A9 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* AA */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* AB */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* AC */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* AD */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* AE */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* AF */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* B0 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* B1 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* B2 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* B3 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* B4 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* B5 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* B6 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* B7 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* B8 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* B9 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* BA */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* BB */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* BC */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* BD */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* BE */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* BF */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* C0 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* C1 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* C2 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* C3 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* C4 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* C5 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* C6 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* C7 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* C8 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* C9 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* CA */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* CB */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* CC */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* CD */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* CE */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* CF */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* D0 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* D1 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* D2 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* D3 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* D4 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* D5 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* D6 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* D7 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* D8 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* D9 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* DA */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* DB */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* DC */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* DD */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* DE */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* DF */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* E0 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* E1 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* E2 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* E3 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* E4 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* E5 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* E6 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* E7 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* E8 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* E9 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* EA */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* EB */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* EC */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* ED */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* EE */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* EF */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* F0 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* F1 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* F2 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* F3 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* F4 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* F5 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + { + /* code */ QX86_MNEMONIC_MUL, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_E, &qx86_stuple_b }} + } + } + }, + { + /* code */ QX86_MNEMONIC_MUL, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_E, &qx86_stuple_v }} + } + } + }, + /* F8 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* F9 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* FA */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* FB */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* FC */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* FD */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* FE */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* FF */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_M3_04_pb + = +{ + QX86_OPCODE_MAP_INDEX_PB, 255, qx86_opcode_map_M3_04_pb_items +}; + +static qx86_opcode_map_item qx86_opcode_map_M3_05_pb_items[] + = +{ + /* 00 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 01 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 02 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 03 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 04 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 05 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 06 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 07 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 08 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 09 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 0A */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 0B */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 0C */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 0D */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 0E */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 0F */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 10 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 11 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 12 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 13 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 14 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 15 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 16 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 17 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 18 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 19 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 1A */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 1B */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 1C */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 1D */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 1E */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 1F */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 20 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 21 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 22 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 23 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 24 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 25 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 26 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 27 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 28 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 29 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 2A */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 2B */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 2C */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 2D */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 2E */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 2F */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 30 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 31 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 32 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 33 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 34 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 35 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 36 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 37 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 38 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 39 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 3A */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 3B */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 3C */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 3D */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 3E */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 3F */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 40 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 41 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 42 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 43 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 44 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 45 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 46 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 47 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 48 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 49 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 4A */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 4B */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 4C */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 4D */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 4E */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 4F */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 50 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 51 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 52 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 53 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 54 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 55 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 56 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 57 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 58 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 59 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 5A */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 5B */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 5C */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 5D */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 5E */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 5F */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 60 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 61 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 62 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 63 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 64 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 65 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 66 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 67 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 68 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 69 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 6A */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 6B */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 6C */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 6D */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 6E */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 6F */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 70 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 71 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 72 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 73 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 74 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 75 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 76 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 77 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 78 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 79 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 7A */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 7B */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 7C */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 7D */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 7E */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 7F */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 80 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 81 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 82 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 83 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 84 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 85 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 86 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 87 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 88 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 89 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 8A */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 8B */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 8C */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 8D */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 8E */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 8F */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 90 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 91 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 92 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 93 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 94 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 95 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 96 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 97 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 98 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 99 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 9A */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 9B */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 9C */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 9D */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 9E */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 9F */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* A0 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* A1 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* A2 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* A3 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* A4 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* A5 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* A6 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* A7 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* A8 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* A9 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* AA */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* AB */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* AC */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* AD */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* AE */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* AF */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* B0 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* B1 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* B2 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* B3 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* B4 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* B5 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* B6 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* B7 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* B8 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* B9 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* BA */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* BB */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* BC */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* BD */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* BE */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* BF */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* C0 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* C1 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* C2 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* C3 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* C4 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* C5 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* C6 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* C7 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* C8 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* C9 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* CA */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* CB */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* CC */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* CD */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* CE */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* CF */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* D0 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* D1 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* D2 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* D3 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* D4 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* D5 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* D6 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* D7 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* D8 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* D9 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* DA */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* DB */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* DC */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* DD */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* DE */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* DF */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* E0 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* E1 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* E2 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* E3 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* E4 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* E5 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* E6 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* E7 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* E8 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* E9 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* EA */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* EB */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* EC */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* ED */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* EE */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* EF */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* F0 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* F1 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* F2 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* F3 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* F4 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* F5 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + { + /* code */ QX86_MNEMONIC_IMUL, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_E, &qx86_stuple_b }} + } + } + }, + { + /* code */ QX86_MNEMONIC_IMUL, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_E, &qx86_stuple_v }} + } + } + }, + /* F8 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* F9 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* FA */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* FB */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* FC */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* FD */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* FE */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* FF */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_M3_05_pb + = +{ + QX86_OPCODE_MAP_INDEX_PB, 255, qx86_opcode_map_M3_05_pb_items +}; + +static qx86_opcode_map_item qx86_opcode_map_M3_06_pb_items[] + = +{ + /* 00 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 01 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 02 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 03 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 04 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 05 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 06 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 07 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 08 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 09 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 0A */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 0B */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 0C */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 0D */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 0E */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 0F */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 10 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 11 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 12 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 13 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 14 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 15 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 16 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 17 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 18 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 19 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 1A */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 1B */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 1C */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 1D */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 1E */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 1F */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 20 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 21 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 22 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 23 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 24 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 25 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 26 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 27 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 28 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 29 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 2A */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 2B */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 2C */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 2D */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 2E */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 2F */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 30 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 31 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 32 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 33 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 34 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 35 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 36 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 37 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 38 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 39 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 3A */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 3B */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 3C */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 3D */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 3E */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 3F */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 40 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 41 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 42 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 43 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 44 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 45 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 46 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 47 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 48 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 49 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 4A */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 4B */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 4C */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 4D */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 4E */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 4F */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 50 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 51 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 52 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 53 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 54 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 55 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 56 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 57 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 58 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 59 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 5A */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 5B */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 5C */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 5D */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 5E */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 5F */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 60 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 61 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 62 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 63 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 64 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 65 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 66 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 67 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 68 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 69 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 6A */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 6B */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 6C */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 6D */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 6E */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 6F */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 70 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 71 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 72 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 73 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 74 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 75 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 76 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 77 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 78 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 79 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 7A */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 7B */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 7C */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 7D */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 7E */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 7F */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 80 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 81 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 82 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 83 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 84 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 85 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 86 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 87 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 88 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 89 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 8A */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 8B */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 8C */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 8D */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 8E */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 8F */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 90 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 91 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 92 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 93 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 94 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 95 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 96 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 97 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 98 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 99 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 9A */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 9B */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 9C */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 9D */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 9E */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 9F */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* A0 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* A1 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* A2 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* A3 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* A4 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* A5 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* A6 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* A7 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* A8 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* A9 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* AA */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* AB */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* AC */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* AD */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* AE */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* AF */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* B0 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* B1 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* B2 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* B3 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* B4 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* B5 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* B6 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* B7 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* B8 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* B9 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* BA */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* BB */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* BC */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* BD */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* BE */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* BF */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* C0 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* C1 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* C2 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* C3 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* C4 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* C5 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* C6 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* C7 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* C8 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* C9 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* CA */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* CB */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* CC */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* CD */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* CE */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* CF */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* D0 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* D1 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* D2 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* D3 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* D4 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* D5 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* D6 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* D7 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* D8 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* D9 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* DA */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* DB */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* DC */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* DD */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* DE */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* DF */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* E0 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* E1 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* E2 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* E3 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* E4 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* E5 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* E6 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* E7 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* E8 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* E9 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* EA */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* EB */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* EC */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* ED */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* EE */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* EF */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* F0 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* F1 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* F2 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* F3 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* F4 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* F5 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + { + /* code */ QX86_MNEMONIC_DIV, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_E, &qx86_stuple_b }} + } + } + }, + { + /* code */ QX86_MNEMONIC_DIV, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_E, &qx86_stuple_v }} + } + } + }, + /* F8 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* F9 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* FA */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* FB */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* FC */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* FD */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* FE */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* FF */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_M3_06_pb + = +{ + QX86_OPCODE_MAP_INDEX_PB, 255, qx86_opcode_map_M3_06_pb_items +}; + +static qx86_opcode_map_item qx86_opcode_map_M3_07_pb_items[] + = +{ + /* 00 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 01 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 02 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 03 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 04 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 05 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 06 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 07 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 08 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 09 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 0A */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 0B */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 0C */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 0D */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 0E */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 0F */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 10 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 11 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 12 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 13 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 14 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 15 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 16 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 17 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 18 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 19 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 1A */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 1B */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 1C */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 1D */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 1E */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 1F */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 20 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 21 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 22 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 23 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 24 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 25 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 26 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 27 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 28 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 29 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 2A */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 2B */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 2C */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 2D */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 2E */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 2F */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 30 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 31 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 32 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 33 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 34 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 35 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 36 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 37 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 38 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 39 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 3A */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 3B */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 3C */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 3D */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 3E */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 3F */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 40 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 41 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 42 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 43 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 44 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 45 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 46 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 47 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 48 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 49 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 4A */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 4B */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 4C */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 4D */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 4E */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 4F */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 50 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 51 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 52 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 53 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 54 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 55 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 56 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 57 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 58 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 59 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 5A */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 5B */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 5C */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 5D */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 5E */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 5F */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 60 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 61 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 62 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 63 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 64 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 65 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 66 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 67 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 68 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 69 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 6A */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 6B */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 6C */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 6D */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 6E */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 6F */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 70 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 71 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 72 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 73 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 74 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 75 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 76 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 77 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 78 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 79 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 7A */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 7B */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 7C */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 7D */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 7E */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 7F */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 80 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 81 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 82 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 83 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 84 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 85 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 86 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 87 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 88 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 89 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 8A */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 8B */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 8C */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 8D */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 8E */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 8F */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 90 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 91 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 92 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 93 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 94 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 95 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 96 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 97 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 98 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 99 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 9A */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 9B */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 9C */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 9D */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 9E */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 9F */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* A0 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* A1 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* A2 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* A3 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* A4 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* A5 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* A6 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* A7 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* A8 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* A9 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* AA */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* AB */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* AC */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* AD */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* AE */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* AF */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* B0 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* B1 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* B2 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* B3 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* B4 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* B5 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* B6 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* B7 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* B8 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* B9 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* BA */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* BB */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* BC */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* BD */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* BE */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* BF */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* C0 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* C1 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* C2 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* C3 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* C4 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* C5 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* C6 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* C7 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* C8 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* C9 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* CA */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* CB */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* CC */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* CD */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* CE */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* CF */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* D0 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* D1 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* D2 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* D3 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* D4 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* D5 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* D6 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* D7 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* D8 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* D9 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* DA */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* DB */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* DC */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* DD */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* DE */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* DF */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* E0 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* E1 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* E2 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* E3 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* E4 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* E5 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* E6 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* E7 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* E8 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* E9 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* EA */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* EB */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* EC */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* ED */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* EE */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* EF */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* F0 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* F1 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* F2 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* F3 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* F4 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* F5 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + { + /* code */ QX86_MNEMONIC_IDIV, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_E, &qx86_stuple_b }} + } + } + }, + { + /* code */ QX86_MNEMONIC_IDIV, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_E, &qx86_stuple_v }} + } + } + }, + /* F8 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* F9 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* FA */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* FB */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* FC */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* FD */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* FE */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* FF */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_M3_07_pb + = +{ + QX86_OPCODE_MAP_INDEX_PB, 255, qx86_opcode_map_M3_07_pb_items +}; + +static qx86_opcode_map_item qx86_opcode_map_M3_items[] + = +{ + /* 00 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_M3_00_pb, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 01 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_M3_01_pb, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 02 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_M3_02_pb, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 03 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_M3_03_pb, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 04 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_M3_04_pb, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 05 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_M3_05_pb, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 06 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_M3_06_pb, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 07 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_M3_07_pb, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_M3 + = +{ + QX86_OPCODE_MAP_INDEX_REG, 7, qx86_opcode_map_M3_items +}; +/* End of file qx86-d-opcode-map/qx86-opcode-map-M3.map */ +/* Generated from file qx86-d-opcode-map/qx86-opcode-map-DF.map */ +// +------------------------------------------------------------------------+ +// | quix86 | +// +------------------------------------------------------------------------+ +// | This file is part of quix86, an x86-64 instruction decoder. | +// | | +// | Copyright (C) 2011 Institute for System Programming of Russian Academy | +// | of Sciences. | +// | | +// | Contact e-mail: . | +// | | +// | quix86 is free software: you can redistribute it and/or modify it | +// | under the terms of the GNU General Public License as published by the | +// | Free Software Foundation, either version 3 of the License, or (at your | +// | option) any later version. | +// | | +// | quix86 is distributed in the hope that it will be useful, but WITHOUT | +// | ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or | +// | FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License | +// | for more details. | +// | | +// | You should have received a copy of the GNU General Public License | +// | along with quix86. If not, see . | +// +------------------------------------------------------------------------+ + +// Reference: AMD Architecture Programmer's Manual 3: Table A-10. + +// mem32real -> Mss (scalar single) +// mem80real -> Mse (scalar double extended) +// mem80dec -> Msb (scalar bcd) +// mem14/28env -> todo +// mem16 -> Mw +// mem16int -> Mw +// mem32int -> Md +// mem64int -> Mq +// mem64real -> Msd (scalar double) +// mem98/108env -> todo + + +static qx86_opcode_map_item qx86_opcode_map_DF_00_mod_items[] + = +{ + { + /* code */ QX86_MNEMONIC_FILD, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_M, &qx86_stuple_w }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FILD, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_M, &qx86_stuple_w }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FILD, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_M, &qx86_stuple_w }} + } + } + }, + /* 03 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_DF_00_mod + = +{ + QX86_OPCODE_MAP_INDEX_MOD, 3, qx86_opcode_map_DF_00_mod_items +}; + +static qx86_opcode_map_item qx86_opcode_map_DF_01_mod_items[] + = +{ + { + /* code */ QX86_MNEMONIC_FISTTP, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_M, &qx86_stuple_w }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FISTTP, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_M, &qx86_stuple_w }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FISTTP, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_M, &qx86_stuple_w }} + } + } + }, + /* 03 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_DF_01_mod + = +{ + QX86_OPCODE_MAP_INDEX_MOD, 3, qx86_opcode_map_DF_01_mod_items +}; + +static qx86_opcode_map_item qx86_opcode_map_DF_02_mod_items[] + = +{ + { + /* code */ QX86_MNEMONIC_FIST, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_M, &qx86_stuple_w }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FIST, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_M, &qx86_stuple_w }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FIST, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_M, &qx86_stuple_w }} + } + } + }, + /* 03 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_DF_02_mod + = +{ + QX86_OPCODE_MAP_INDEX_MOD, 3, qx86_opcode_map_DF_02_mod_items +}; + +static qx86_opcode_map_item qx86_opcode_map_DF_03_mod_items[] + = +{ + { + /* code */ QX86_MNEMONIC_FISTP, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_M, &qx86_stuple_w }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FISTP, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_M, &qx86_stuple_w }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FISTP, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_M, &qx86_stuple_w }} + } + } + }, + /* 03 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_DF_03_mod + = +{ + QX86_OPCODE_MAP_INDEX_MOD, 3, qx86_opcode_map_DF_03_mod_items +}; + +static qx86_opcode_map_item qx86_opcode_map_DF_04_mod_03_rm_items[] + = +{ + { + /* code */ QX86_MNEMONIC_FNSTSW, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_rtuple_AX, 0 }} + } + } + }, + /* 01 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 02 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 03 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 04 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 05 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 06 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 07 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_DF_04_mod_03_rm + = +{ + QX86_OPCODE_MAP_INDEX_RM, 7, qx86_opcode_map_DF_04_mod_03_rm_items +}; + +static qx86_opcode_map_item qx86_opcode_map_DF_04_mod_items[] + = +{ + { + /* code */ QX86_MNEMONIC_FBLD, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_M, &qx86_stuple_sb }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FBLD, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_M, &qx86_stuple_sb }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FBLD, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_M, &qx86_stuple_sb }} + } + } + }, + /* 03 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_DF_04_mod_03_rm, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_DF_04_mod + = +{ + QX86_OPCODE_MAP_INDEX_MOD, 3, qx86_opcode_map_DF_04_mod_items +}; + +static qx86_opcode_map_item qx86_opcode_map_DF_05_mod_03_rm_items[] + = +{ + { + /* code */ QX86_MNEMONIC_FUCOMIP, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST0, 0 }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST0, 0 }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FUCOMIP, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST0, 0 }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST1, 0 }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FUCOMIP, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST0, 0 }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST2, 0 }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FUCOMIP, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST0, 0 }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST3, 0 }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FUCOMIP, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST0, 0 }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST4, 0 }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FUCOMIP, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST0, 0 }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST5, 0 }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FUCOMIP, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST0, 0 }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST6, 0 }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FUCOMIP, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST0, 0 }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST7, 0 }} + } + } + } +}; + +static qx86_opcode_map qx86_opcode_map_DF_05_mod_03_rm + = +{ + QX86_OPCODE_MAP_INDEX_RM, 7, qx86_opcode_map_DF_05_mod_03_rm_items +}; + +static qx86_opcode_map_item qx86_opcode_map_DF_05_mod_items[] + = +{ + { + /* code */ QX86_MNEMONIC_FILD, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_M, &qx86_stuple_q }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FILD, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_M, &qx86_stuple_q }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FILD, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_M, &qx86_stuple_q }} + } + } + }, + /* 03 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_DF_05_mod_03_rm, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_DF_05_mod + = +{ + QX86_OPCODE_MAP_INDEX_MOD, 3, qx86_opcode_map_DF_05_mod_items +}; + +static qx86_opcode_map_item qx86_opcode_map_DF_06_mod_03_rm_items[] + = +{ + { + /* code */ QX86_MNEMONIC_FCOMIP, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST0, 0 }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST0, 0 }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FCOMIP, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST0, 0 }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST1, 0 }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FCOMIP, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST0, 0 }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST2, 0 }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FCOMIP, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST0, 0 }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST3, 0 }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FCOMIP, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST0, 0 }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST4, 0 }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FCOMIP, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST0, 0 }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST5, 0 }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FCOMIP, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST0, 0 }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST6, 0 }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FCOMIP, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST0, 0 }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST7, 0 }} + } + } + } +}; + +static qx86_opcode_map qx86_opcode_map_DF_06_mod_03_rm + = +{ + QX86_OPCODE_MAP_INDEX_RM, 7, qx86_opcode_map_DF_06_mod_03_rm_items +}; + +static qx86_opcode_map_item qx86_opcode_map_DF_06_mod_items[] + = +{ + { + /* code */ QX86_MNEMONIC_FBSTP, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_M, &qx86_stuple_sb }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FBSTP, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_M, &qx86_stuple_sb }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FBSTP, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_M, &qx86_stuple_sb }} + } + } + }, + /* 03 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_DF_06_mod_03_rm, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_DF_06_mod + = +{ + QX86_OPCODE_MAP_INDEX_MOD, 3, qx86_opcode_map_DF_06_mod_items +}; + +static qx86_opcode_map_item qx86_opcode_map_DF_07_mod_items[] + = +{ + { + /* code */ QX86_MNEMONIC_FISTP, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_M, &qx86_stuple_q }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FISTP, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_M, &qx86_stuple_q }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FISTP, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_M, &qx86_stuple_q }} + } + } + }, + /* 03 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_DF_07_mod + = +{ + QX86_OPCODE_MAP_INDEX_MOD, 3, qx86_opcode_map_DF_07_mod_items +}; + +static qx86_opcode_map_item qx86_opcode_map_DF_items[] + = +{ + /* 00 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_DF_00_mod, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 01 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_DF_01_mod, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 02 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_DF_02_mod, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 03 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_DF_03_mod, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 04 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_DF_04_mod, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 05 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_DF_05_mod, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 06 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_DF_06_mod, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 07 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_DF_07_mod, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_DF + = +{ + QX86_OPCODE_MAP_INDEX_REG, 7, qx86_opcode_map_DF_items +}; +/* End of file qx86-d-opcode-map/qx86-opcode-map-DF.map */ +/* Generated from file qx86-d-opcode-map/qx86-opcode-map-DE.map */ +// +------------------------------------------------------------------------+ +// | quix86 | +// +------------------------------------------------------------------------+ +// | This file is part of quix86, an x86-64 instruction decoder. | +// | | +// | Copyright (C) 2011 Institute for System Programming of Russian Academy | +// | of Sciences. | +// | | +// | Contact e-mail: . | +// | | +// | quix86 is free software: you can redistribute it and/or modify it | +// | under the terms of the GNU General Public License as published by the | +// | Free Software Foundation, either version 3 of the License, or (at your | +// | option) any later version. | +// | | +// | quix86 is distributed in the hope that it will be useful, but WITHOUT | +// | ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or | +// | FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License | +// | for more details. | +// | | +// | You should have received a copy of the GNU General Public License | +// | along with quix86. If not, see . | +// +------------------------------------------------------------------------+ + +// Reference: AMD Architecture Programmer's Manual 3: Table A-10. + +// mem32real -> Mss (scalar single) +// mem80real -> Mse (scalar double extended) +// mem80dec -> Msb (scalar bcd) +// mem14/28env -> todo +// mem16 -> Mw +// mem16int -> Mw +// mem32int -> Md +// mem64int -> Mq +// mem64real -> Msd (scalar double) +// mem98/108env -> todo + + +static qx86_opcode_map_item qx86_opcode_map_DE_00_mod_03_rm_items[] + = +{ + { + /* code */ QX86_MNEMONIC_FADDP, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_rtuple_ST0, 0 }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST0, 0 }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FADDP, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_rtuple_ST1, 0 }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST0, 0 }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FADDP, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_rtuple_ST2, 0 }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST0, 0 }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FADDP, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_rtuple_ST3, 0 }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST0, 0 }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FADDP, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_rtuple_ST4, 0 }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST0, 0 }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FADDP, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_rtuple_ST5, 0 }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST0, 0 }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FADDP, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_rtuple_ST6, 0 }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST0, 0 }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FADDP, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_rtuple_ST7, 0 }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST0, 0 }} + } + } + } +}; + +static qx86_opcode_map qx86_opcode_map_DE_00_mod_03_rm + = +{ + QX86_OPCODE_MAP_INDEX_RM, 7, qx86_opcode_map_DE_00_mod_03_rm_items +}; + +static qx86_opcode_map_item qx86_opcode_map_DE_00_mod_items[] + = +{ + { + /* code */ QX86_MNEMONIC_FIADD, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_M, &qx86_stuple_w }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FIADD, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_M, &qx86_stuple_w }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FIADD, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_M, &qx86_stuple_w }} + } + } + }, + /* 03 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_DE_00_mod_03_rm, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_DE_00_mod + = +{ + QX86_OPCODE_MAP_INDEX_MOD, 3, qx86_opcode_map_DE_00_mod_items +}; + +static qx86_opcode_map_item qx86_opcode_map_DE_01_mod_03_rm_items[] + = +{ + { + /* code */ QX86_MNEMONIC_FMULP, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_rtuple_ST0, 0 }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST0, 0 }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FMULP, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_rtuple_ST1, 0 }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST0, 0 }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FMULP, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_rtuple_ST2, 0 }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST0, 0 }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FMULP, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_rtuple_ST3, 0 }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST0, 0 }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FMULP, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_rtuple_ST4, 0 }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST0, 0 }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FMULP, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_rtuple_ST5, 0 }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST0, 0 }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FMULP, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_rtuple_ST6, 0 }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST0, 0 }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FMULP, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_rtuple_ST7, 0 }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST0, 0 }} + } + } + } +}; + +static qx86_opcode_map qx86_opcode_map_DE_01_mod_03_rm + = +{ + QX86_OPCODE_MAP_INDEX_RM, 7, qx86_opcode_map_DE_01_mod_03_rm_items +}; + +static qx86_opcode_map_item qx86_opcode_map_DE_01_mod_items[] + = +{ + { + /* code */ QX86_MNEMONIC_FIMUL, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_M, &qx86_stuple_w }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FIMUL, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_M, &qx86_stuple_w }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FIMUL, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_M, &qx86_stuple_w }} + } + } + }, + /* 03 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_DE_01_mod_03_rm, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_DE_01_mod + = +{ + QX86_OPCODE_MAP_INDEX_MOD, 3, qx86_opcode_map_DE_01_mod_items +}; + +static qx86_opcode_map_item qx86_opcode_map_DE_02_mod_items[] + = +{ + { + /* code */ QX86_MNEMONIC_FICOM, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_M, &qx86_stuple_w }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FICOM, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_M, &qx86_stuple_w }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FICOM, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_M, &qx86_stuple_w }} + } + } + }, + /* 03 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_DE_02_mod + = +{ + QX86_OPCODE_MAP_INDEX_MOD, 3, qx86_opcode_map_DE_02_mod_items +}; + +static qx86_opcode_map_item qx86_opcode_map_DE_03_mod_03_rm_items[] + = +{ + /* 00 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + { + /* code */ QX86_MNEMONIC_FCOMPP, + /* map */ 0, + + /* operandCount */ 0, + /* placeHolder */ {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 02 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 03 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 04 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 05 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 06 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 07 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_DE_03_mod_03_rm + = +{ + QX86_OPCODE_MAP_INDEX_RM, 7, qx86_opcode_map_DE_03_mod_03_rm_items +}; + +static qx86_opcode_map_item qx86_opcode_map_DE_03_mod_items[] + = +{ + { + /* code */ QX86_MNEMONIC_FICOMP, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_M, &qx86_stuple_w }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FICOMP, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_M, &qx86_stuple_w }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FICOMP, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_M, &qx86_stuple_w }} + } + } + }, + /* 03 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_DE_03_mod_03_rm, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_DE_03_mod + = +{ + QX86_OPCODE_MAP_INDEX_MOD, 3, qx86_opcode_map_DE_03_mod_items +}; + +static qx86_opcode_map_item qx86_opcode_map_DE_04_mod_03_rm_items[] + = +{ + { + /* code */ QX86_MNEMONIC_FSUBRP, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_rtuple_ST0, 0 }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST0, 0 }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FSUBRP, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_rtuple_ST1, 0 }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST0, 0 }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FSUBRP, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_rtuple_ST2, 0 }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST0, 0 }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FSUBRP, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_rtuple_ST3, 0 }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST0, 0 }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FSUBRP, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_rtuple_ST4, 0 }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST0, 0 }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FSUBRP, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_rtuple_ST5, 0 }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST0, 0 }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FSUBRP, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_rtuple_ST6, 0 }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST0, 0 }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FSUBRP, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_rtuple_ST7, 0 }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST0, 0 }} + } + } + } +}; + +static qx86_opcode_map qx86_opcode_map_DE_04_mod_03_rm + = +{ + QX86_OPCODE_MAP_INDEX_RM, 7, qx86_opcode_map_DE_04_mod_03_rm_items +}; + +static qx86_opcode_map_item qx86_opcode_map_DE_04_mod_items[] + = +{ + { + /* code */ QX86_MNEMONIC_FISUB, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_M, &qx86_stuple_w }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FISUB, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_M, &qx86_stuple_w }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FISUB, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_M, &qx86_stuple_w }} + } + } + }, + /* 03 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_DE_04_mod_03_rm, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_DE_04_mod + = +{ + QX86_OPCODE_MAP_INDEX_MOD, 3, qx86_opcode_map_DE_04_mod_items +}; + +static qx86_opcode_map_item qx86_opcode_map_DE_05_mod_03_rm_items[] + = +{ + { + /* code */ QX86_MNEMONIC_FSUBP, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_rtuple_ST0, 0 }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST0, 0 }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FSUBP, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_rtuple_ST1, 0 }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST0, 0 }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FSUBP, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_rtuple_ST2, 0 }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST0, 0 }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FSUBP, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_rtuple_ST3, 0 }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST0, 0 }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FSUBP, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_rtuple_ST4, 0 }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST0, 0 }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FSUBP, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_rtuple_ST5, 0 }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST0, 0 }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FSUBP, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_rtuple_ST6, 0 }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST0, 0 }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FSUBP, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_rtuple_ST7, 0 }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST0, 0 }} + } + } + } +}; + +static qx86_opcode_map qx86_opcode_map_DE_05_mod_03_rm + = +{ + QX86_OPCODE_MAP_INDEX_RM, 7, qx86_opcode_map_DE_05_mod_03_rm_items +}; + +static qx86_opcode_map_item qx86_opcode_map_DE_05_mod_items[] + = +{ + { + /* code */ QX86_MNEMONIC_FISUBR, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_M, &qx86_stuple_w }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FISUBR, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_M, &qx86_stuple_w }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FISUBR, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_M, &qx86_stuple_w }} + } + } + }, + /* 03 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_DE_05_mod_03_rm, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_DE_05_mod + = +{ + QX86_OPCODE_MAP_INDEX_MOD, 3, qx86_opcode_map_DE_05_mod_items +}; + +static qx86_opcode_map_item qx86_opcode_map_DE_06_mod_03_rm_items[] + = +{ + { + /* code */ QX86_MNEMONIC_FDIVRP, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_rtuple_ST0, 0 }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST0, 0 }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FDIVRP, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_rtuple_ST1, 0 }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST0, 0 }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FDIVRP, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_rtuple_ST2, 0 }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST0, 0 }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FDIVRP, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_rtuple_ST3, 0 }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST0, 0 }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FDIVRP, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_rtuple_ST4, 0 }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST0, 0 }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FDIVRP, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_rtuple_ST5, 0 }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST0, 0 }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FDIVRP, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_rtuple_ST6, 0 }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST0, 0 }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FDIVRP, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_rtuple_ST7, 0 }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST0, 0 }} + } + } + } +}; + +static qx86_opcode_map qx86_opcode_map_DE_06_mod_03_rm + = +{ + QX86_OPCODE_MAP_INDEX_RM, 7, qx86_opcode_map_DE_06_mod_03_rm_items +}; + +static qx86_opcode_map_item qx86_opcode_map_DE_06_mod_items[] + = +{ + { + /* code */ QX86_MNEMONIC_FIDIV, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_M, &qx86_stuple_w }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FIDIV, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_M, &qx86_stuple_w }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FIDIV, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_M, &qx86_stuple_w }} + } + } + }, + /* 03 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_DE_06_mod_03_rm, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_DE_06_mod + = +{ + QX86_OPCODE_MAP_INDEX_MOD, 3, qx86_opcode_map_DE_06_mod_items +}; + +static qx86_opcode_map_item qx86_opcode_map_DE_07_mod_03_rm_items[] + = +{ + { + /* code */ QX86_MNEMONIC_FDIVP, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_rtuple_ST0, 0 }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST0, 0 }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FDIVP, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_rtuple_ST1, 0 }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST0, 0 }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FDIVP, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_rtuple_ST2, 0 }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST0, 0 }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FDIVP, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_rtuple_ST3, 0 }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST0, 0 }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FDIVP, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_rtuple_ST4, 0 }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST0, 0 }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FDIVP, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_rtuple_ST5, 0 }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST0, 0 }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FDIVP, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_rtuple_ST6, 0 }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST0, 0 }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FDIVP, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_rtuple_ST7, 0 }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST0, 0 }} + } + } + } +}; + +static qx86_opcode_map qx86_opcode_map_DE_07_mod_03_rm + = +{ + QX86_OPCODE_MAP_INDEX_RM, 7, qx86_opcode_map_DE_07_mod_03_rm_items +}; + +static qx86_opcode_map_item qx86_opcode_map_DE_07_mod_items[] + = +{ + { + /* code */ QX86_MNEMONIC_FIDIVR, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_M, &qx86_stuple_w }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FIDIVR, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_M, &qx86_stuple_w }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FIDIVR, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_M, &qx86_stuple_w }} + } + } + }, + /* 03 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_DE_07_mod_03_rm, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_DE_07_mod + = +{ + QX86_OPCODE_MAP_INDEX_MOD, 3, qx86_opcode_map_DE_07_mod_items +}; + +static qx86_opcode_map_item qx86_opcode_map_DE_items[] + = +{ + /* 00 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_DE_00_mod, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 01 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_DE_01_mod, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 02 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_DE_02_mod, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 03 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_DE_03_mod, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 04 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_DE_04_mod, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 05 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_DE_05_mod, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 06 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_DE_06_mod, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 07 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_DE_07_mod, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_DE + = +{ + QX86_OPCODE_MAP_INDEX_REG, 7, qx86_opcode_map_DE_items +}; +/* End of file qx86-d-opcode-map/qx86-opcode-map-DE.map */ +/* Generated from file qx86-d-opcode-map/qx86-opcode-map-DD.map */ +// +------------------------------------------------------------------------+ +// | quix86 | +// +------------------------------------------------------------------------+ +// | This file is part of quix86, an x86-64 instruction decoder. | +// | | +// | Copyright (C) 2011 Institute for System Programming of Russian Academy | +// | of Sciences. | +// | | +// | Contact e-mail: . | +// | | +// | quix86 is free software: you can redistribute it and/or modify it | +// | under the terms of the GNU General Public License as published by the | +// | Free Software Foundation, either version 3 of the License, or (at your | +// | option) any later version. | +// | | +// | quix86 is distributed in the hope that it will be useful, but WITHOUT | +// | ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or | +// | FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License | +// | for more details. | +// | | +// | You should have received a copy of the GNU General Public License | +// | along with quix86. If not, see . | +// +------------------------------------------------------------------------+ + +// Reference: AMD Architecture Programmer's Manual 3: Table A-10. + +// mem32real -> Mss (scalar single) +// mem80real -> Mse (scalar double extended) +// mem80dec -> Msb (scalar bcd) +// mem14/28env -> todo +// mem16 -> Mw +// mem16int -> Mw +// mem32int -> Md +// mem64int -> Mq +// mem64real -> Msd (scalar double) +// mem98/108env -> todo + + +static qx86_opcode_map_item qx86_opcode_map_DD_00_mod_03_rm_items[] + = +{ + { + /* code */ QX86_MNEMONIC_FFREE, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST0, 0 }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FFREE, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST1, 0 }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FFREE, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST2, 0 }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FFREE, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST3, 0 }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FFREE, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST4, 0 }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FFREE, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST5, 0 }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FFREE, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST6, 0 }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FFREE, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST7, 0 }} + } + } + } +}; + +static qx86_opcode_map qx86_opcode_map_DD_00_mod_03_rm + = +{ + QX86_OPCODE_MAP_INDEX_RM, 7, qx86_opcode_map_DD_00_mod_03_rm_items +}; + +static qx86_opcode_map_item qx86_opcode_map_DD_00_mod_items[] + = +{ + { + /* code */ QX86_MNEMONIC_FLD, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_M, &qx86_stuple_sd }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FLD, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_M, &qx86_stuple_sd }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FLD, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_M, &qx86_stuple_sd }} + } + } + }, + /* 03 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_DD_00_mod_03_rm, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_DD_00_mod + = +{ + QX86_OPCODE_MAP_INDEX_MOD, 3, qx86_opcode_map_DD_00_mod_items +}; + +static qx86_opcode_map_item qx86_opcode_map_DD_01_mod_items[] + = +{ + { + /* code */ QX86_MNEMONIC_FISTTP, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_M, &qx86_stuple_q }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FISTTP, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_M, &qx86_stuple_q }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FISTTP, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_M, &qx86_stuple_q }} + } + } + }, + /* 03 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_DD_01_mod + = +{ + QX86_OPCODE_MAP_INDEX_MOD, 3, qx86_opcode_map_DD_01_mod_items +}; + +static qx86_opcode_map_item qx86_opcode_map_DD_02_mod_03_rm_items[] + = +{ + { + /* code */ QX86_MNEMONIC_FST, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_rtuple_ST0, 0 }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FST, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_rtuple_ST1, 0 }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FST, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_rtuple_ST2, 0 }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FST, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_rtuple_ST3, 0 }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FST, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_rtuple_ST4, 0 }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FST, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_rtuple_ST5, 0 }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FST, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_rtuple_ST6, 0 }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FST, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_rtuple_ST7, 0 }} + } + } + } +}; + +static qx86_opcode_map qx86_opcode_map_DD_02_mod_03_rm + = +{ + QX86_OPCODE_MAP_INDEX_RM, 7, qx86_opcode_map_DD_02_mod_03_rm_items +}; + +static qx86_opcode_map_item qx86_opcode_map_DD_02_mod_items[] + = +{ + { + /* code */ QX86_MNEMONIC_FST, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_M, &qx86_stuple_sd }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FST, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_M, &qx86_stuple_sd }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FST, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_M, &qx86_stuple_sd }} + } + } + }, + /* 03 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_DD_02_mod_03_rm, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_DD_02_mod + = +{ + QX86_OPCODE_MAP_INDEX_MOD, 3, qx86_opcode_map_DD_02_mod_items +}; + +static qx86_opcode_map_item qx86_opcode_map_DD_03_mod_03_rm_items[] + = +{ + { + /* code */ QX86_MNEMONIC_FSTP, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_rtuple_ST0, 0 }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FSTP, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_rtuple_ST1, 0 }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FSTP, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_rtuple_ST2, 0 }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FSTP, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_rtuple_ST3, 0 }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FSTP, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_rtuple_ST4, 0 }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FSTP, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_rtuple_ST5, 0 }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FSTP, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_rtuple_ST6, 0 }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FSTP, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_rtuple_ST7, 0 }} + } + } + } +}; + +static qx86_opcode_map qx86_opcode_map_DD_03_mod_03_rm + = +{ + QX86_OPCODE_MAP_INDEX_RM, 7, qx86_opcode_map_DD_03_mod_03_rm_items +}; + +static qx86_opcode_map_item qx86_opcode_map_DD_03_mod_items[] + = +{ + { + /* code */ QX86_MNEMONIC_FSTP, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_M, &qx86_stuple_sd }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FSTP, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_M, &qx86_stuple_sd }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FSTP, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_M, &qx86_stuple_sd }} + } + } + }, + /* 03 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_DD_03_mod_03_rm, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_DD_03_mod + = +{ + QX86_OPCODE_MAP_INDEX_MOD, 3, qx86_opcode_map_DD_03_mod_items +}; + +static qx86_opcode_map_item qx86_opcode_map_DD_04_mod_03_rm_items[] + = +{ + { + /* code */ QX86_MNEMONIC_FUCOM, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST0, 0 }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST0, 0 }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FUCOM, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST1, 0 }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST0, 0 }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FUCOM, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST2, 0 }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST0, 0 }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FUCOM, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST3, 0 }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST0, 0 }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FUCOM, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST4, 0 }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST0, 0 }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FUCOM, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST5, 0 }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST0, 0 }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FUCOM, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST6, 0 }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST0, 0 }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FUCOM, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST7, 0 }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST0, 0 }} + } + } + } +}; + +static qx86_opcode_map qx86_opcode_map_DD_04_mod_03_rm + = +{ + QX86_OPCODE_MAP_INDEX_RM, 7, qx86_opcode_map_DD_04_mod_03_rm_items +}; + +static qx86_opcode_map_item qx86_opcode_map_DD_04_mod_items[] + = +{ + { + /* code */ QX86_MNEMONIC_FRSTOR, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_M, &qx86_stuple_f }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FRSTOR, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_M, &qx86_stuple_f }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FRSTOR, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_M, &qx86_stuple_f }} + } + } + }, + /* 03 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_DD_04_mod_03_rm, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_DD_04_mod + = +{ + QX86_OPCODE_MAP_INDEX_MOD, 3, qx86_opcode_map_DD_04_mod_items +}; + +static qx86_opcode_map_item qx86_opcode_map_DD_05_mod_03_rm_items[] + = +{ + { + /* code */ QX86_MNEMONIC_FUCOMP, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST0, 0 }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FUCOMP, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST1, 0 }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FUCOMP, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST2, 0 }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FUCOMP, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST3, 0 }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FUCOMP, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST4, 0 }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FUCOMP, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST5, 0 }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FUCOMP, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST6, 0 }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FUCOMP, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST7, 0 }} + } + } + } +}; + +static qx86_opcode_map qx86_opcode_map_DD_05_mod_03_rm + = +{ + QX86_OPCODE_MAP_INDEX_RM, 7, qx86_opcode_map_DD_05_mod_03_rm_items +}; + +static qx86_opcode_map_item qx86_opcode_map_DD_05_mod_items[] + = +{ + /* 00 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 01 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 02 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 03 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_DD_05_mod_03_rm, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_DD_05_mod + = +{ + QX86_OPCODE_MAP_INDEX_MOD, 3, qx86_opcode_map_DD_05_mod_items +}; + +static qx86_opcode_map_item qx86_opcode_map_DD_06_mod_items[] + = +{ + { + /* code */ QX86_MNEMONIC_FNSAVE, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_M, &qx86_stuple_f }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FNSAVE, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_M, &qx86_stuple_f }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FNSAVE, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_M, &qx86_stuple_f }} + } + } + }, + /* 03 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_DD_06_mod + = +{ + QX86_OPCODE_MAP_INDEX_MOD, 3, qx86_opcode_map_DD_06_mod_items +}; + +static qx86_opcode_map_item qx86_opcode_map_DD_07_mod_items[] + = +{ + { + /* code */ QX86_MNEMONIC_FNSTSW, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_M, &qx86_stuple_w }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FNSTSW, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_M, &qx86_stuple_w }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FNSTSW, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_M, &qx86_stuple_w }} + } + } + }, + /* 03 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_DD_07_mod + = +{ + QX86_OPCODE_MAP_INDEX_MOD, 3, qx86_opcode_map_DD_07_mod_items +}; + +static qx86_opcode_map_item qx86_opcode_map_DD_items[] + = +{ + /* 00 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_DD_00_mod, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 01 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_DD_01_mod, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 02 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_DD_02_mod, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 03 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_DD_03_mod, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 04 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_DD_04_mod, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 05 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_DD_05_mod, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 06 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_DD_06_mod, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 07 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_DD_07_mod, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_DD + = +{ + QX86_OPCODE_MAP_INDEX_REG, 7, qx86_opcode_map_DD_items +}; +/* End of file qx86-d-opcode-map/qx86-opcode-map-DD.map */ +/* Generated from file qx86-d-opcode-map/qx86-opcode-map-DC.map */ +// +------------------------------------------------------------------------+ +// | quix86 | +// +------------------------------------------------------------------------+ +// | This file is part of quix86, an x86-64 instruction decoder. | +// | | +// | Copyright (C) 2011 Institute for System Programming of Russian Academy | +// | of Sciences. | +// | | +// | Contact e-mail: . | +// | | +// | quix86 is free software: you can redistribute it and/or modify it | +// | under the terms of the GNU General Public License as published by the | +// | Free Software Foundation, either version 3 of the License, or (at your | +// | option) any later version. | +// | | +// | quix86 is distributed in the hope that it will be useful, but WITHOUT | +// | ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or | +// | FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License | +// | for more details. | +// | | +// | You should have received a copy of the GNU General Public License | +// | along with quix86. If not, see . | +// +------------------------------------------------------------------------+ + +// Reference: AMD Architecture Programmer's Manual 3: Table A-10. + +// mem32real -> Mss (scalar single) +// mem80real -> Mse (scalar double extended) +// mem80dec -> Msb (scalar bcd) +// mem14/28env -> todo +// mem16 -> Mw +// mem16int -> Mw +// mem32int -> Md +// mem64int -> Mq +// mem64real -> Msd (scalar double) +// mem98/108env -> todo + + +static qx86_opcode_map_item qx86_opcode_map_DC_00_mod_03_rm_items[] + = +{ + { + /* code */ QX86_MNEMONIC_FADD, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_rtuple_ST0, 0 }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST0, 0 }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FADD, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_rtuple_ST1, 0 }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST0, 0 }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FADD, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_rtuple_ST2, 0 }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST0, 0 }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FADD, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_rtuple_ST3, 0 }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST0, 0 }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FADD, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_rtuple_ST4, 0 }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST0, 0 }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FADD, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_rtuple_ST5, 0 }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST0, 0 }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FADD, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_rtuple_ST6, 0 }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST0, 0 }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FADD, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_rtuple_ST7, 0 }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST0, 0 }} + } + } + } +}; + +static qx86_opcode_map qx86_opcode_map_DC_00_mod_03_rm + = +{ + QX86_OPCODE_MAP_INDEX_RM, 7, qx86_opcode_map_DC_00_mod_03_rm_items +}; + +static qx86_opcode_map_item qx86_opcode_map_DC_00_mod_items[] + = +{ + { + /* code */ QX86_MNEMONIC_FADD, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_M, &qx86_stuple_sd }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FADD, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_M, &qx86_stuple_sd }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FADD, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_M, &qx86_stuple_sd }} + } + } + }, + /* 03 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_DC_00_mod_03_rm, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_DC_00_mod + = +{ + QX86_OPCODE_MAP_INDEX_MOD, 3, qx86_opcode_map_DC_00_mod_items +}; + +static qx86_opcode_map_item qx86_opcode_map_DC_01_mod_03_rm_items[] + = +{ + { + /* code */ QX86_MNEMONIC_FMUL, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_rtuple_ST0, 0 }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST0, 0 }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FMUL, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_rtuple_ST1, 0 }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST0, 0 }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FMUL, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_rtuple_ST2, 0 }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST0, 0 }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FMUL, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_rtuple_ST3, 0 }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST0, 0 }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FMUL, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_rtuple_ST4, 0 }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST0, 0 }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FMUL, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_rtuple_ST5, 0 }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST0, 0 }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FMUL, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_rtuple_ST6, 0 }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST0, 0 }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FMUL, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_rtuple_ST7, 0 }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST0, 0 }} + } + } + } +}; + +static qx86_opcode_map qx86_opcode_map_DC_01_mod_03_rm + = +{ + QX86_OPCODE_MAP_INDEX_RM, 7, qx86_opcode_map_DC_01_mod_03_rm_items +}; + +static qx86_opcode_map_item qx86_opcode_map_DC_01_mod_items[] + = +{ + { + /* code */ QX86_MNEMONIC_FMUL, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_M, &qx86_stuple_sd }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FMUL, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_M, &qx86_stuple_sd }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FMUL, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_M, &qx86_stuple_sd }} + } + } + }, + /* 03 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_DC_01_mod_03_rm, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_DC_01_mod + = +{ + QX86_OPCODE_MAP_INDEX_MOD, 3, qx86_opcode_map_DC_01_mod_items +}; + +static qx86_opcode_map_item qx86_opcode_map_DC_02_mod_items[] + = +{ + { + /* code */ QX86_MNEMONIC_FCOM, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_M, &qx86_stuple_sd }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FCOM, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_M, &qx86_stuple_sd }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FCOM, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_M, &qx86_stuple_sd }} + } + } + }, + /* 03 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_DC_02_mod + = +{ + QX86_OPCODE_MAP_INDEX_MOD, 3, qx86_opcode_map_DC_02_mod_items +}; + +static qx86_opcode_map_item qx86_opcode_map_DC_03_mod_items[] + = +{ + { + /* code */ QX86_MNEMONIC_FCOMP, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_M, &qx86_stuple_sd }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FCOMP, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_M, &qx86_stuple_sd }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FCOMP, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_M, &qx86_stuple_sd }} + } + } + }, + /* 03 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_DC_03_mod + = +{ + QX86_OPCODE_MAP_INDEX_MOD, 3, qx86_opcode_map_DC_03_mod_items +}; + +static qx86_opcode_map_item qx86_opcode_map_DC_04_mod_03_rm_items[] + = +{ + { + /* code */ QX86_MNEMONIC_FSUBR, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_rtuple_ST0, 0 }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST0, 0 }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FSUBR, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_rtuple_ST1, 0 }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST0, 0 }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FSUBR, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_rtuple_ST2, 0 }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST0, 0 }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FSUBR, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_rtuple_ST3, 0 }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST0, 0 }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FSUBR, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_rtuple_ST4, 0 }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST0, 0 }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FSUBR, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_rtuple_ST5, 0 }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST0, 0 }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FSUBR, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_rtuple_ST6, 0 }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST0, 0 }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FSUBR, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_rtuple_ST7, 0 }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST0, 0 }} + } + } + } +}; + +static qx86_opcode_map qx86_opcode_map_DC_04_mod_03_rm + = +{ + QX86_OPCODE_MAP_INDEX_RM, 7, qx86_opcode_map_DC_04_mod_03_rm_items +}; + +static qx86_opcode_map_item qx86_opcode_map_DC_04_mod_items[] + = +{ + { + /* code */ QX86_MNEMONIC_FSUB, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_M, &qx86_stuple_sd }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FSUB, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_M, &qx86_stuple_sd }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FSUB, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_M, &qx86_stuple_sd }} + } + } + }, + /* 03 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_DC_04_mod_03_rm, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_DC_04_mod + = +{ + QX86_OPCODE_MAP_INDEX_MOD, 3, qx86_opcode_map_DC_04_mod_items +}; + +static qx86_opcode_map_item qx86_opcode_map_DC_05_mod_03_rm_items[] + = +{ + { + /* code */ QX86_MNEMONIC_FSUB, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_rtuple_ST0, 0 }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST0, 0 }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FSUB, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_rtuple_ST1, 0 }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST0, 0 }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FSUB, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_rtuple_ST2, 0 }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST0, 0 }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FSUB, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_rtuple_ST3, 0 }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST0, 0 }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FSUB, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_rtuple_ST4, 0 }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST0, 0 }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FSUB, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_rtuple_ST5, 0 }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST0, 0 }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FSUB, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_rtuple_ST6, 0 }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST0, 0 }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FSUB, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_rtuple_ST7, 0 }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST0, 0 }} + } + } + } +}; + +static qx86_opcode_map qx86_opcode_map_DC_05_mod_03_rm + = +{ + QX86_OPCODE_MAP_INDEX_RM, 7, qx86_opcode_map_DC_05_mod_03_rm_items +}; + +static qx86_opcode_map_item qx86_opcode_map_DC_05_mod_items[] + = +{ + { + /* code */ QX86_MNEMONIC_FSUBR, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_M, &qx86_stuple_sd }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FSUBR, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_M, &qx86_stuple_sd }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FSUBR, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_M, &qx86_stuple_sd }} + } + } + }, + /* 03 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_DC_05_mod_03_rm, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_DC_05_mod + = +{ + QX86_OPCODE_MAP_INDEX_MOD, 3, qx86_opcode_map_DC_05_mod_items +}; + +static qx86_opcode_map_item qx86_opcode_map_DC_06_mod_03_rm_items[] + = +{ + { + /* code */ QX86_MNEMONIC_FDIVR, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_rtuple_ST0, 0 }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST0, 0 }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FDIVR, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_rtuple_ST1, 0 }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST0, 0 }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FDIVR, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_rtuple_ST2, 0 }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST0, 0 }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FDIVR, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_rtuple_ST3, 0 }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST0, 0 }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FDIVR, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_rtuple_ST4, 0 }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST0, 0 }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FDIVR, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_rtuple_ST5, 0 }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST0, 0 }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FDIVR, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_rtuple_ST6, 0 }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST0, 0 }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FDIVR, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_rtuple_ST7, 0 }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST0, 0 }} + } + } + } +}; + +static qx86_opcode_map qx86_opcode_map_DC_06_mod_03_rm + = +{ + QX86_OPCODE_MAP_INDEX_RM, 7, qx86_opcode_map_DC_06_mod_03_rm_items +}; + +static qx86_opcode_map_item qx86_opcode_map_DC_06_mod_items[] + = +{ + { + /* code */ QX86_MNEMONIC_FDIV, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_M, &qx86_stuple_sd }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FDIV, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_M, &qx86_stuple_sd }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FDIV, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_M, &qx86_stuple_sd }} + } + } + }, + /* 03 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_DC_06_mod_03_rm, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_DC_06_mod + = +{ + QX86_OPCODE_MAP_INDEX_MOD, 3, qx86_opcode_map_DC_06_mod_items +}; + +static qx86_opcode_map_item qx86_opcode_map_DC_07_mod_03_rm_items[] + = +{ + { + /* code */ QX86_MNEMONIC_FDIV, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_rtuple_ST0, 0 }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST0, 0 }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FDIV, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_rtuple_ST1, 0 }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST0, 0 }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FDIV, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_rtuple_ST2, 0 }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST0, 0 }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FDIV, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_rtuple_ST3, 0 }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST0, 0 }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FDIV, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_rtuple_ST4, 0 }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST0, 0 }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FDIV, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_rtuple_ST5, 0 }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST0, 0 }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FDIV, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_rtuple_ST6, 0 }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST0, 0 }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FDIV, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_rtuple_ST7, 0 }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST0, 0 }} + } + } + } +}; + +static qx86_opcode_map qx86_opcode_map_DC_07_mod_03_rm + = +{ + QX86_OPCODE_MAP_INDEX_RM, 7, qx86_opcode_map_DC_07_mod_03_rm_items +}; + +static qx86_opcode_map_item qx86_opcode_map_DC_07_mod_items[] + = +{ + { + /* code */ QX86_MNEMONIC_FDIVR, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_M, &qx86_stuple_sd }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FDIVR, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_M, &qx86_stuple_sd }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FDIVR, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_M, &qx86_stuple_sd }} + } + } + }, + /* 03 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_DC_07_mod_03_rm, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_DC_07_mod + = +{ + QX86_OPCODE_MAP_INDEX_MOD, 3, qx86_opcode_map_DC_07_mod_items +}; + +static qx86_opcode_map_item qx86_opcode_map_DC_items[] + = +{ + /* 00 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_DC_00_mod, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 01 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_DC_01_mod, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 02 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_DC_02_mod, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 03 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_DC_03_mod, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 04 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_DC_04_mod, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 05 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_DC_05_mod, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 06 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_DC_06_mod, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 07 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_DC_07_mod, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_DC + = +{ + QX86_OPCODE_MAP_INDEX_REG, 7, qx86_opcode_map_DC_items +}; +/* End of file qx86-d-opcode-map/qx86-opcode-map-DC.map */ +/* Generated from file qx86-d-opcode-map/qx86-opcode-map-DB.map */ +// +------------------------------------------------------------------------+ +// | quix86 | +// +------------------------------------------------------------------------+ +// | This file is part of quix86, an x86-64 instruction decoder. | +// | | +// | Copyright (C) 2011 Institute for System Programming of Russian Academy | +// | of Sciences. | +// | | +// | Contact e-mail: . | +// | | +// | quix86 is free software: you can redistribute it and/or modify it | +// | under the terms of the GNU General Public License as published by the | +// | Free Software Foundation, either version 3 of the License, or (at your | +// | option) any later version. | +// | | +// | quix86 is distributed in the hope that it will be useful, but WITHOUT | +// | ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or | +// | FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License | +// | for more details. | +// | | +// | You should have received a copy of the GNU General Public License | +// | along with quix86. If not, see . | +// +------------------------------------------------------------------------+ + +// Reference: AMD Architecture Programmer's Manual 3: Table A-10. + +// mem32real -> Mss (scalar single) +// mem80real -> Mse (scalar double extended) +// mem80dec -> Msb (scalar bcd) +// mem14/28env -> todo +// mem16 -> Mw +// mem16int -> Mw +// mem32int -> Md +// mem64int -> Mq +// mem64real -> Msd (scalar double) +// mem98/108env -> todo + + +static qx86_opcode_map_item qx86_opcode_map_DB_00_mod_03_rm_items[] + = +{ + { + /* code */ QX86_MNEMONIC_FCMOVNB, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_rtuple_ST0, 0 }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST0, 0 }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FCMOVNB, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_rtuple_ST0, 0 }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST1, 0 }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FCMOVNB, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_rtuple_ST0, 0 }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST2, 0 }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FCMOVNB, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_rtuple_ST0, 0 }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST3, 0 }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FCMOVNB, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_rtuple_ST0, 0 }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST4, 0 }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FCMOVNB, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_rtuple_ST0, 0 }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST5, 0 }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FCMOVNB, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_rtuple_ST0, 0 }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST6, 0 }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FCMOVNB, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_rtuple_ST0, 0 }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST7, 0 }} + } + } + } +}; + +static qx86_opcode_map qx86_opcode_map_DB_00_mod_03_rm + = +{ + QX86_OPCODE_MAP_INDEX_RM, 7, qx86_opcode_map_DB_00_mod_03_rm_items +}; + +static qx86_opcode_map_item qx86_opcode_map_DB_00_mod_items[] + = +{ + { + /* code */ QX86_MNEMONIC_FILD, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_M, &qx86_stuple_d }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FILD, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_M, &qx86_stuple_d }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FILD, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_M, &qx86_stuple_d }} + } + } + }, + /* 03 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_DB_00_mod_03_rm, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_DB_00_mod + = +{ + QX86_OPCODE_MAP_INDEX_MOD, 3, qx86_opcode_map_DB_00_mod_items +}; + +static qx86_opcode_map_item qx86_opcode_map_DB_01_mod_03_rm_items[] + = +{ + { + /* code */ QX86_MNEMONIC_FCMOVNE, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_rtuple_ST0, 0 }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST0, 0 }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FCMOVNE, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_rtuple_ST0, 0 }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST1, 0 }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FCMOVNE, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_rtuple_ST0, 0 }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST2, 0 }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FCMOVNE, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_rtuple_ST0, 0 }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST3, 0 }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FCMOVNE, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_rtuple_ST0, 0 }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST4, 0 }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FCMOVNE, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_rtuple_ST0, 0 }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST5, 0 }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FCMOVNE, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_rtuple_ST0, 0 }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST6, 0 }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FCMOVNE, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_rtuple_ST0, 0 }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST7, 0 }} + } + } + } +}; + +static qx86_opcode_map qx86_opcode_map_DB_01_mod_03_rm + = +{ + QX86_OPCODE_MAP_INDEX_RM, 7, qx86_opcode_map_DB_01_mod_03_rm_items +}; + +static qx86_opcode_map_item qx86_opcode_map_DB_01_mod_items[] + = +{ + { + /* code */ QX86_MNEMONIC_FISTTP, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_M, &qx86_stuple_d }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FISTTP, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_M, &qx86_stuple_d }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FISTTP, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_M, &qx86_stuple_d }} + } + } + }, + /* 03 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_DB_01_mod_03_rm, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_DB_01_mod + = +{ + QX86_OPCODE_MAP_INDEX_MOD, 3, qx86_opcode_map_DB_01_mod_items +}; + +static qx86_opcode_map_item qx86_opcode_map_DB_02_mod_03_rm_items[] + = +{ + { + /* code */ QX86_MNEMONIC_FCMOVNBE, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_rtuple_ST0, 0 }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST0, 0 }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FCMOVNBE, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_rtuple_ST0, 0 }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST1, 0 }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FCMOVNBE, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_rtuple_ST0, 0 }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST2, 0 }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FCMOVNBE, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_rtuple_ST0, 0 }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST3, 0 }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FCMOVNBE, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_rtuple_ST0, 0 }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST4, 0 }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FCMOVNBE, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_rtuple_ST0, 0 }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST5, 0 }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FCMOVNBE, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_rtuple_ST0, 0 }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST6, 0 }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FCMOVNBE, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_rtuple_ST0, 0 }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST7, 0 }} + } + } + } +}; + +static qx86_opcode_map qx86_opcode_map_DB_02_mod_03_rm + = +{ + QX86_OPCODE_MAP_INDEX_RM, 7, qx86_opcode_map_DB_02_mod_03_rm_items +}; + +static qx86_opcode_map_item qx86_opcode_map_DB_02_mod_items[] + = +{ + { + /* code */ QX86_MNEMONIC_FIST, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_M, &qx86_stuple_d }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FIST, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_M, &qx86_stuple_d }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FIST, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_M, &qx86_stuple_d }} + } + } + }, + /* 03 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_DB_02_mod_03_rm, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_DB_02_mod + = +{ + QX86_OPCODE_MAP_INDEX_MOD, 3, qx86_opcode_map_DB_02_mod_items +}; + +static qx86_opcode_map_item qx86_opcode_map_DB_03_mod_03_rm_items[] + = +{ + { + /* code */ QX86_MNEMONIC_FCMOVNU, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_rtuple_ST0, 0 }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST0, 0 }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FCMOVNU, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_rtuple_ST0, 0 }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST1, 0 }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FCMOVNU, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_rtuple_ST0, 0 }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST2, 0 }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FCMOVNU, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_rtuple_ST0, 0 }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST3, 0 }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FCMOVNU, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_rtuple_ST0, 0 }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST4, 0 }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FCMOVNU, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_rtuple_ST0, 0 }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST5, 0 }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FCMOVNU, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_rtuple_ST0, 0 }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST6, 0 }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FCMOVNU, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_rtuple_ST0, 0 }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST7, 0 }} + } + } + } +}; + +static qx86_opcode_map qx86_opcode_map_DB_03_mod_03_rm + = +{ + QX86_OPCODE_MAP_INDEX_RM, 7, qx86_opcode_map_DB_03_mod_03_rm_items +}; + +static qx86_opcode_map_item qx86_opcode_map_DB_03_mod_items[] + = +{ + { + /* code */ QX86_MNEMONIC_FISTP, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_M, &qx86_stuple_d }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FISTP, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_M, &qx86_stuple_d }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FISTP, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_M, &qx86_stuple_d }} + } + } + }, + /* 03 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_DB_03_mod_03_rm, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_DB_03_mod + = +{ + QX86_OPCODE_MAP_INDEX_MOD, 3, qx86_opcode_map_DB_03_mod_items +}; + +static qx86_opcode_map_item qx86_opcode_map_DB_04_mod_03_rm_items[] + = +{ + /* 00 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 01 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + { + /* code */ QX86_MNEMONIC_FNCLEX, + /* map */ 0, + + /* operandCount */ 0, + /* placeHolder */ {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + { + /* code */ QX86_MNEMONIC_FNINIT, + /* map */ 0, + + /* operandCount */ 0, + /* placeHolder */ {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 04 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 05 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 06 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 07 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_DB_04_mod_03_rm + = +{ + QX86_OPCODE_MAP_INDEX_RM, 7, qx86_opcode_map_DB_04_mod_03_rm_items +}; + +static qx86_opcode_map_item qx86_opcode_map_DB_04_mod_items[] + = +{ + /* 00 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 01 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 02 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 03 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_DB_04_mod_03_rm, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_DB_04_mod + = +{ + QX86_OPCODE_MAP_INDEX_MOD, 3, qx86_opcode_map_DB_04_mod_items +}; + +static qx86_opcode_map_item qx86_opcode_map_DB_05_mod_03_rm_items[] + = +{ + { + /* code */ QX86_MNEMONIC_FUCOMI, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST0, 0 }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST0, 0 }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FUCOMI, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST0, 0 }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST1, 0 }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FUCOMI, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST0, 0 }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST2, 0 }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FUCOMI, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST0, 0 }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST3, 0 }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FUCOMI, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST0, 0 }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST4, 0 }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FUCOMI, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST0, 0 }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST5, 0 }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FUCOMI, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST0, 0 }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST6, 0 }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FUCOMI, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST0, 0 }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST7, 0 }} + } + } + } +}; + +static qx86_opcode_map qx86_opcode_map_DB_05_mod_03_rm + = +{ + QX86_OPCODE_MAP_INDEX_RM, 7, qx86_opcode_map_DB_05_mod_03_rm_items +}; + +static qx86_opcode_map_item qx86_opcode_map_DB_05_mod_items[] + = +{ + { + /* code */ QX86_MNEMONIC_FLD, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_M, &qx86_stuple_se }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FLD, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_M, &qx86_stuple_se }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FLD, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_M, &qx86_stuple_se }} + } + } + }, + /* 03 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_DB_05_mod_03_rm, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_DB_05_mod + = +{ + QX86_OPCODE_MAP_INDEX_MOD, 3, qx86_opcode_map_DB_05_mod_items +}; + +static qx86_opcode_map_item qx86_opcode_map_DB_06_mod_03_rm_items[] + = +{ + { + /* code */ QX86_MNEMONIC_FCOMI, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST0, 0 }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST0, 0 }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FCOMI, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST0, 0 }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST1, 0 }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FCOMI, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST0, 0 }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST2, 0 }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FCOMI, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST0, 0 }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST3, 0 }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FCOMI, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST0, 0 }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST4, 0 }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FCOMI, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST0, 0 }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST5, 0 }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FCOMI, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST0, 0 }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST6, 0 }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FCOMI, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST0, 0 }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST7, 0 }} + } + } + } +}; + +static qx86_opcode_map qx86_opcode_map_DB_06_mod_03_rm + = +{ + QX86_OPCODE_MAP_INDEX_RM, 7, qx86_opcode_map_DB_06_mod_03_rm_items +}; + +static qx86_opcode_map_item qx86_opcode_map_DB_06_mod_items[] + = +{ + /* 00 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 01 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 02 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 03 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_DB_06_mod_03_rm, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_DB_06_mod + = +{ + QX86_OPCODE_MAP_INDEX_MOD, 3, qx86_opcode_map_DB_06_mod_items +}; + +static qx86_opcode_map_item qx86_opcode_map_DB_07_mod_items[] + = +{ + { + /* code */ QX86_MNEMONIC_FSTP, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_M, &qx86_stuple_se }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FSTP, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_M, &qx86_stuple_se }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FSTP, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_M, &qx86_stuple_se }} + } + } + }, + /* 03 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_DB_07_mod + = +{ + QX86_OPCODE_MAP_INDEX_MOD, 3, qx86_opcode_map_DB_07_mod_items +}; + +static qx86_opcode_map_item qx86_opcode_map_DB_items[] + = +{ + /* 00 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_DB_00_mod, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 01 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_DB_01_mod, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 02 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_DB_02_mod, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 03 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_DB_03_mod, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 04 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_DB_04_mod, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 05 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_DB_05_mod, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 06 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_DB_06_mod, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 07 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_DB_07_mod, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_DB + = +{ + QX86_OPCODE_MAP_INDEX_REG, 7, qx86_opcode_map_DB_items +}; +/* End of file qx86-d-opcode-map/qx86-opcode-map-DB.map */ +/* Generated from file qx86-d-opcode-map/qx86-opcode-map-DA.map */ +// +------------------------------------------------------------------------+ +// | quix86 | +// +------------------------------------------------------------------------+ +// | This file is part of quix86, an x86-64 instruction decoder. | +// | | +// | Copyright (C) 2011 Institute for System Programming of Russian Academy | +// | of Sciences. | +// | | +// | Contact e-mail: . | +// | | +// | quix86 is free software: you can redistribute it and/or modify it | +// | under the terms of the GNU General Public License as published by the | +// | Free Software Foundation, either version 3 of the License, or (at your | +// | option) any later version. | +// | | +// | quix86 is distributed in the hope that it will be useful, but WITHOUT | +// | ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or | +// | FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License | +// | for more details. | +// | | +// | You should have received a copy of the GNU General Public License | +// | along with quix86. If not, see . | +// +------------------------------------------------------------------------+ + +// Reference: AMD Architecture Programmer's Manual 3: Table A-10. + +// mem32real -> Mss (scalar single) +// mem80real -> Mse (scalar double extended) +// mem80dec -> Msb (scalar bcd) +// mem14/28env -> todo +// mem16 -> Mw +// mem16int -> Mw +// mem32int -> Md +// mem64int -> Mq +// mem64real -> Msd (scalar double) +// mem98/108env -> todo + + +static qx86_opcode_map_item qx86_opcode_map_DA_00_mod_03_rm_items[] + = +{ + { + /* code */ QX86_MNEMONIC_FCMOVB, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_rtuple_ST0, 0 }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST0, 0 }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FCMOVB, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_rtuple_ST0, 0 }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST1, 0 }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FCMOVB, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_rtuple_ST0, 0 }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST2, 0 }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FCMOVB, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_rtuple_ST0, 0 }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST3, 0 }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FCMOVB, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_rtuple_ST0, 0 }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST4, 0 }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FCMOVB, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_rtuple_ST0, 0 }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST5, 0 }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FCMOVB, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_rtuple_ST0, 0 }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST6, 0 }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FCMOVB, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_rtuple_ST0, 0 }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST7, 0 }} + } + } + } +}; + +static qx86_opcode_map qx86_opcode_map_DA_00_mod_03_rm + = +{ + QX86_OPCODE_MAP_INDEX_RM, 7, qx86_opcode_map_DA_00_mod_03_rm_items +}; + +static qx86_opcode_map_item qx86_opcode_map_DA_00_mod_items[] + = +{ + { + /* code */ QX86_MNEMONIC_FIADD, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_M, &qx86_stuple_d }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FIADD, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_M, &qx86_stuple_d }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FIADD, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_M, &qx86_stuple_d }} + } + } + }, + /* 03 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_DA_00_mod_03_rm, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_DA_00_mod + = +{ + QX86_OPCODE_MAP_INDEX_MOD, 3, qx86_opcode_map_DA_00_mod_items +}; + +static qx86_opcode_map_item qx86_opcode_map_DA_01_mod_03_rm_items[] + = +{ + { + /* code */ QX86_MNEMONIC_FCMOVE, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_rtuple_ST0, 0 }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST0, 0 }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FCMOVE, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_rtuple_ST0, 0 }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST1, 0 }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FCMOVE, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_rtuple_ST0, 0 }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST2, 0 }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FCMOVE, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_rtuple_ST0, 0 }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST3, 0 }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FCMOVE, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_rtuple_ST0, 0 }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST4, 0 }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FCMOVE, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_rtuple_ST0, 0 }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST5, 0 }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FCMOVE, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_rtuple_ST0, 0 }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST6, 0 }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FCMOVE, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_rtuple_ST0, 0 }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST7, 0 }} + } + } + } +}; + +static qx86_opcode_map qx86_opcode_map_DA_01_mod_03_rm + = +{ + QX86_OPCODE_MAP_INDEX_RM, 7, qx86_opcode_map_DA_01_mod_03_rm_items +}; + +static qx86_opcode_map_item qx86_opcode_map_DA_01_mod_items[] + = +{ + { + /* code */ QX86_MNEMONIC_FIMUL, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_M, &qx86_stuple_d }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FIMUL, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_M, &qx86_stuple_d }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FIMUL, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_M, &qx86_stuple_d }} + } + } + }, + /* 03 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_DA_01_mod_03_rm, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_DA_01_mod + = +{ + QX86_OPCODE_MAP_INDEX_MOD, 3, qx86_opcode_map_DA_01_mod_items +}; + +static qx86_opcode_map_item qx86_opcode_map_DA_02_mod_03_rm_items[] + = +{ + { + /* code */ QX86_MNEMONIC_FCMOVBE, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_rtuple_ST0, 0 }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST0, 0 }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FCMOVBE, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_rtuple_ST0, 0 }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST1, 0 }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FCMOVBE, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_rtuple_ST0, 0 }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST2, 0 }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FCMOVBE, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_rtuple_ST0, 0 }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST3, 0 }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FCMOVBE, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_rtuple_ST0, 0 }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST4, 0 }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FCMOVBE, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_rtuple_ST0, 0 }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST5, 0 }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FCMOVBE, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_rtuple_ST0, 0 }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST6, 0 }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FCMOVBE, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_rtuple_ST0, 0 }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST7, 0 }} + } + } + } +}; + +static qx86_opcode_map qx86_opcode_map_DA_02_mod_03_rm + = +{ + QX86_OPCODE_MAP_INDEX_RM, 7, qx86_opcode_map_DA_02_mod_03_rm_items +}; + +static qx86_opcode_map_item qx86_opcode_map_DA_02_mod_items[] + = +{ + { + /* code */ QX86_MNEMONIC_FICOM, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_M, &qx86_stuple_d }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FICOM, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_M, &qx86_stuple_d }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FICOM, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_M, &qx86_stuple_d }} + } + } + }, + /* 03 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_DA_02_mod_03_rm, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_DA_02_mod + = +{ + QX86_OPCODE_MAP_INDEX_MOD, 3, qx86_opcode_map_DA_02_mod_items +}; + +static qx86_opcode_map_item qx86_opcode_map_DA_03_mod_03_rm_items[] + = +{ + { + /* code */ QX86_MNEMONIC_FCMOVU, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_rtuple_ST0, 0 }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST0, 0 }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FCMOVU, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_rtuple_ST0, 0 }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST1, 0 }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FCMOVU, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_rtuple_ST0, 0 }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST2, 0 }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FCMOVU, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_rtuple_ST0, 0 }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST3, 0 }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FCMOVU, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_rtuple_ST0, 0 }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST4, 0 }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FCMOVU, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_rtuple_ST0, 0 }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST5, 0 }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FCMOVU, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_rtuple_ST0, 0 }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST6, 0 }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FCMOVU, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_rtuple_ST0, 0 }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST7, 0 }} + } + } + } +}; + +static qx86_opcode_map qx86_opcode_map_DA_03_mod_03_rm + = +{ + QX86_OPCODE_MAP_INDEX_RM, 7, qx86_opcode_map_DA_03_mod_03_rm_items +}; + +static qx86_opcode_map_item qx86_opcode_map_DA_03_mod_items[] + = +{ + { + /* code */ QX86_MNEMONIC_FICOMP, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_M, &qx86_stuple_d }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FICOMP, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_M, &qx86_stuple_d }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FICOMP, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_M, &qx86_stuple_d }} + } + } + }, + /* 03 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_DA_03_mod_03_rm, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_DA_03_mod + = +{ + QX86_OPCODE_MAP_INDEX_MOD, 3, qx86_opcode_map_DA_03_mod_items +}; + +static qx86_opcode_map_item qx86_opcode_map_DA_04_mod_items[] + = +{ + { + /* code */ QX86_MNEMONIC_FISUB, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_M, &qx86_stuple_d }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FISUB, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_M, &qx86_stuple_d }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FISUB, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_M, &qx86_stuple_d }} + } + } + }, + /* 03 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_DA_04_mod + = +{ + QX86_OPCODE_MAP_INDEX_MOD, 3, qx86_opcode_map_DA_04_mod_items +}; + +static qx86_opcode_map_item qx86_opcode_map_DA_05_mod_03_rm_items[] + = +{ + /* 00 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + { + /* code */ QX86_MNEMONIC_FUCOMPP, + /* map */ 0, + + /* operandCount */ 0, + /* placeHolder */ {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 02 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 03 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 04 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 05 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 06 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 07 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_DA_05_mod_03_rm + = +{ + QX86_OPCODE_MAP_INDEX_RM, 7, qx86_opcode_map_DA_05_mod_03_rm_items +}; + +static qx86_opcode_map_item qx86_opcode_map_DA_05_mod_items[] + = +{ + { + /* code */ QX86_MNEMONIC_FISUBR, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_M, &qx86_stuple_d }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FISUBR, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_M, &qx86_stuple_d }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FISUBR, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_M, &qx86_stuple_d }} + } + } + }, + /* 03 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_DA_05_mod_03_rm, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_DA_05_mod + = +{ + QX86_OPCODE_MAP_INDEX_MOD, 3, qx86_opcode_map_DA_05_mod_items +}; + +static qx86_opcode_map_item qx86_opcode_map_DA_06_mod_items[] + = +{ + { + /* code */ QX86_MNEMONIC_FIDIV, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_M, &qx86_stuple_d }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FIDIV, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_M, &qx86_stuple_d }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FIDIV, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_M, &qx86_stuple_d }} + } + } + }, + /* 03 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_DA_06_mod + = +{ + QX86_OPCODE_MAP_INDEX_MOD, 3, qx86_opcode_map_DA_06_mod_items +}; + +static qx86_opcode_map_item qx86_opcode_map_DA_07_mod_items[] + = +{ + { + /* code */ QX86_MNEMONIC_FIDIVR, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_M, &qx86_stuple_d }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FIDIVR, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_M, &qx86_stuple_d }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FIDIVR, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_M, &qx86_stuple_d }} + } + } + }, + /* 03 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_DA_07_mod + = +{ + QX86_OPCODE_MAP_INDEX_MOD, 3, qx86_opcode_map_DA_07_mod_items +}; + +static qx86_opcode_map_item qx86_opcode_map_DA_items[] + = +{ + /* 00 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_DA_00_mod, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 01 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_DA_01_mod, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 02 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_DA_02_mod, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 03 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_DA_03_mod, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 04 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_DA_04_mod, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 05 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_DA_05_mod, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 06 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_DA_06_mod, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 07 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_DA_07_mod, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_DA + = +{ + QX86_OPCODE_MAP_INDEX_REG, 7, qx86_opcode_map_DA_items +}; +/* End of file qx86-d-opcode-map/qx86-opcode-map-DA.map */ +/* Generated from file qx86-d-opcode-map/qx86-opcode-map-D9.map */ +// +------------------------------------------------------------------------+ +// | quix86 | +// +------------------------------------------------------------------------+ +// | This file is part of quix86, an x86-64 instruction decoder. | +// | | +// | Copyright (C) 2011 Institute for System Programming of Russian Academy | +// | of Sciences. | +// | | +// | Contact e-mail: . | +// | | +// | quix86 is free software: you can redistribute it and/or modify it | +// | under the terms of the GNU General Public License as published by the | +// | Free Software Foundation, either version 3 of the License, or (at your | +// | option) any later version. | +// | | +// | quix86 is distributed in the hope that it will be useful, but WITHOUT | +// | ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or | +// | FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License | +// | for more details. | +// | | +// | You should have received a copy of the GNU General Public License | +// | along with quix86. If not, see . | +// +------------------------------------------------------------------------+ + +// Reference: AMD Architecture Programmer's Manual 3: Table A-10. + +// mem32real -> Mss (scalar single) +// mem80real -> Mse (scalar double extended) +// mem80dec -> Msb (scalar bcd) +// mem14/28env -> todo +// mem16 -> Mw +// mem16int -> Mw +// mem32int -> Md +// mem64int -> Mq +// mem64real -> Msd (scalar double) +// mem98/108env -> todo + + +static qx86_opcode_map_item qx86_opcode_map_D9_00_mod_03_rm_items[] + = +{ + { + /* code */ QX86_MNEMONIC_FLD, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_rtuple_ST0, 0 }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST0, 0 }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FLD, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_rtuple_ST0, 0 }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST1, 0 }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FLD, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_rtuple_ST0, 0 }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST2, 0 }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FLD, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_rtuple_ST0, 0 }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST3, 0 }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FLD, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_rtuple_ST0, 0 }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST4, 0 }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FLD, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_rtuple_ST0, 0 }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST5, 0 }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FLD, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_rtuple_ST0, 0 }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST6, 0 }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FLD, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_rtuple_ST0, 0 }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST7, 0 }} + } + } + } +}; + +static qx86_opcode_map qx86_opcode_map_D9_00_mod_03_rm + = +{ + QX86_OPCODE_MAP_INDEX_RM, 7, qx86_opcode_map_D9_00_mod_03_rm_items +}; + +static qx86_opcode_map_item qx86_opcode_map_D9_00_mod_items[] + = +{ + { + /* code */ QX86_MNEMONIC_FLD, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_M, &qx86_stuple_ss }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FLD, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_M, &qx86_stuple_ss }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FLD, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_M, &qx86_stuple_ss }} + } + } + }, + /* 03 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_D9_00_mod_03_rm, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_D9_00_mod + = +{ + QX86_OPCODE_MAP_INDEX_MOD, 3, qx86_opcode_map_D9_00_mod_items +}; + + +static qx86_opcode_map_item qx86_opcode_map_D9_01_mod_03_rm_items[] + = +{ + { + /* code */ QX86_MNEMONIC_FXCH, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_rtuple_ST0, 0 }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_rtuple_ST0, 0 }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FXCH, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_rtuple_ST0, 0 }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_rtuple_ST1, 0 }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FXCH, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_rtuple_ST0, 0 }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_rtuple_ST2, 0 }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FXCH, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_rtuple_ST0, 0 }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_rtuple_ST3, 0 }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FXCH, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_rtuple_ST0, 0 }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_rtuple_ST4, 0 }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FXCH, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_rtuple_ST0, 0 }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_rtuple_ST5, 0 }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FXCH, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_rtuple_ST0, 0 }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_rtuple_ST6, 0 }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FXCH, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_rtuple_ST0, 0 }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_rtuple_ST7, 0 }} + } + } + } +}; + +static qx86_opcode_map qx86_opcode_map_D9_01_mod_03_rm + = +{ + QX86_OPCODE_MAP_INDEX_RM, 7, qx86_opcode_map_D9_01_mod_03_rm_items +}; + +static qx86_opcode_map_item qx86_opcode_map_D9_01_mod_items[] + = +{ + /* 00 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 01 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 02 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 03 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_D9_01_mod_03_rm, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_D9_01_mod + = +{ + QX86_OPCODE_MAP_INDEX_MOD, 3, qx86_opcode_map_D9_01_mod_items +}; + +static qx86_opcode_map_item qx86_opcode_map_D9_02_mod_03_rm_items[] + = +{ + { + /* code */ QX86_MNEMONIC_FNOP, + /* map */ 0, + + /* operandCount */ 0, + /* placeHolder */ {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 01 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 02 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 03 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 04 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 05 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 06 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 07 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_D9_02_mod_03_rm + = +{ + QX86_OPCODE_MAP_INDEX_RM, 7, qx86_opcode_map_D9_02_mod_03_rm_items +}; + +static qx86_opcode_map_item qx86_opcode_map_D9_02_mod_items[] + = +{ + { + /* code */ QX86_MNEMONIC_FST, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_M, &qx86_stuple_ss }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FST, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_M, &qx86_stuple_ss }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FST, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_M, &qx86_stuple_ss }} + } + } + }, + /* 03 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_D9_02_mod_03_rm, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_D9_02_mod + = +{ + QX86_OPCODE_MAP_INDEX_MOD, 3, qx86_opcode_map_D9_02_mod_items +}; + +static qx86_opcode_map_item qx86_opcode_map_D9_03_mod_items[] + = +{ + { + /* code */ QX86_MNEMONIC_FSTP, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_M, &qx86_stuple_ss }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FSTP, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_M, &qx86_stuple_ss }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FSTP, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_M, &qx86_stuple_ss }} + } + } + }, + /* 03 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_D9_03_mod + = +{ + QX86_OPCODE_MAP_INDEX_MOD, 3, qx86_opcode_map_D9_03_mod_items +}; + +static qx86_opcode_map_item qx86_opcode_map_D9_04_mod_03_rm_items[] + = +{ + { + /* code */ QX86_MNEMONIC_FCHS, + /* map */ 0, + + /* operandCount */ 0, + /* placeHolder */ {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + { + /* code */ QX86_MNEMONIC_FABS, + /* map */ 0, + + /* operandCount */ 0, + /* placeHolder */ {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 02 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 03 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + { + /* code */ QX86_MNEMONIC_FTST, + /* map */ 0, + + /* operandCount */ 0, + /* placeHolder */ {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + { + /* code */ QX86_MNEMONIC_FXAM, + /* map */ 0, + + /* operandCount */ 0, + /* placeHolder */ {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 06 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 07 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_D9_04_mod_03_rm + = +{ + QX86_OPCODE_MAP_INDEX_RM, 7, qx86_opcode_map_D9_04_mod_03_rm_items +}; + +static qx86_opcode_map_item qx86_opcode_map_D9_04_mod_items[] + = +{ + { + /* code */ QX86_MNEMONIC_FLDENV, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_M, &qx86_stuple_fe }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FLDENV, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_M, &qx86_stuple_fe }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FLDENV, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_M, &qx86_stuple_fe }} + } + } + }, + /* 03 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_D9_04_mod_03_rm, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_D9_04_mod + = +{ + QX86_OPCODE_MAP_INDEX_MOD, 3, qx86_opcode_map_D9_04_mod_items +}; + +static qx86_opcode_map_item qx86_opcode_map_D9_05_mod_03_rm_items[] + = +{ + { + /* code */ QX86_MNEMONIC_FLD1, + /* map */ 0, + + /* operandCount */ 0, + /* placeHolder */ {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + { + /* code */ QX86_MNEMONIC_FLDL2T, + /* map */ 0, + + /* operandCount */ 0, + /* placeHolder */ {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + { + /* code */ QX86_MNEMONIC_FLDL2E, + /* map */ 0, + + /* operandCount */ 0, + /* placeHolder */ {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + { + /* code */ QX86_MNEMONIC_FLDPI, + /* map */ 0, + + /* operandCount */ 0, + /* placeHolder */ {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + { + /* code */ QX86_MNEMONIC_FLDLG2, + /* map */ 0, + + /* operandCount */ 0, + /* placeHolder */ {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + { + /* code */ QX86_MNEMONIC_FLDLN2, + /* map */ 0, + + /* operandCount */ 0, + /* placeHolder */ {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + { + /* code */ QX86_MNEMONIC_FLDZ, + /* map */ 0, + + /* operandCount */ 0, + /* placeHolder */ {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 07 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_D9_05_mod_03_rm + = +{ + QX86_OPCODE_MAP_INDEX_RM, 7, qx86_opcode_map_D9_05_mod_03_rm_items +}; + +static qx86_opcode_map_item qx86_opcode_map_D9_05_mod_items[] + = +{ + { + /* code */ QX86_MNEMONIC_FLDCW, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_M, &qx86_stuple_w }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FLDCW, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_M, &qx86_stuple_w }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FLDCW, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_M, &qx86_stuple_w }} + } + } + }, + /* 03 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_D9_05_mod_03_rm, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_D9_05_mod + = +{ + QX86_OPCODE_MAP_INDEX_MOD, 3, qx86_opcode_map_D9_05_mod_items +}; + +static qx86_opcode_map_item qx86_opcode_map_D9_06_mod_03_rm_items[] + = +{ + { + /* code */ QX86_MNEMONIC_F2XM1, + /* map */ 0, + + /* operandCount */ 0, + /* placeHolder */ {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + { + /* code */ QX86_MNEMONIC_FYL2X, + /* map */ 0, + + /* operandCount */ 0, + /* placeHolder */ {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + { + /* code */ QX86_MNEMONIC_FPTAN, + /* map */ 0, + + /* operandCount */ 0, + /* placeHolder */ {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + { + /* code */ QX86_MNEMONIC_FPATAN, + /* map */ 0, + + /* operandCount */ 0, + /* placeHolder */ {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + { + /* code */ QX86_MNEMONIC_FXTRACT, + /* map */ 0, + + /* operandCount */ 0, + /* placeHolder */ {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + { + /* code */ QX86_MNEMONIC_FPREM1, + /* map */ 0, + + /* operandCount */ 0, + /* placeHolder */ {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + { + /* code */ QX86_MNEMONIC_FDECSTP, + /* map */ 0, + + /* operandCount */ 0, + /* placeHolder */ {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + { + /* code */ QX86_MNEMONIC_FINCSTP, + /* map */ 0, + + /* operandCount */ 0, + /* placeHolder */ {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_D9_06_mod_03_rm + = +{ + QX86_OPCODE_MAP_INDEX_RM, 7, qx86_opcode_map_D9_06_mod_03_rm_items +}; + +static qx86_opcode_map_item qx86_opcode_map_D9_06_mod_items[] + = +{ + { + /* code */ QX86_MNEMONIC_FNSTENV, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_M, &qx86_stuple_fe }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FNSTENV, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_M, &qx86_stuple_fe }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FNSTENV, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_M, &qx86_stuple_fe }} + } + } + }, + /* 03 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_D9_06_mod_03_rm, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_D9_06_mod + = +{ + QX86_OPCODE_MAP_INDEX_MOD, 3, qx86_opcode_map_D9_06_mod_items +}; + +static qx86_opcode_map_item qx86_opcode_map_D9_07_mod_03_rm_items[] + = +{ + { + /* code */ QX86_MNEMONIC_FPREM, + /* map */ 0, + + /* operandCount */ 0, + /* placeHolder */ {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + { + /* code */ QX86_MNEMONIC_FYL2XP1, + /* map */ 0, + + /* operandCount */ 0, + /* placeHolder */ {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + { + /* code */ QX86_MNEMONIC_FSQRT, + /* map */ 0, + + /* operandCount */ 0, + /* placeHolder */ {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + { + /* code */ QX86_MNEMONIC_FSINCOS, + /* map */ 0, + + /* operandCount */ 0, + /* placeHolder */ {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + { + /* code */ QX86_MNEMONIC_FRNDINT, + /* map */ 0, + + /* operandCount */ 0, + /* placeHolder */ {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + { + /* code */ QX86_MNEMONIC_FSCALE, + /* map */ 0, + + /* operandCount */ 0, + /* placeHolder */ {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + { + /* code */ QX86_MNEMONIC_FSIN, + /* map */ 0, + + /* operandCount */ 0, + /* placeHolder */ {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + { + /* code */ QX86_MNEMONIC_FCOS, + /* map */ 0, + + /* operandCount */ 0, + /* placeHolder */ {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_D9_07_mod_03_rm + = +{ + QX86_OPCODE_MAP_INDEX_RM, 7, qx86_opcode_map_D9_07_mod_03_rm_items +}; + +static qx86_opcode_map_item qx86_opcode_map_D9_07_mod_items[] + = +{ + { + /* code */ QX86_MNEMONIC_FNSTCW, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_M, &qx86_stuple_w }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FNSTCW, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_M, &qx86_stuple_w }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FNSTCW, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_M, &qx86_stuple_w }} + } + } + }, + /* 03 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_D9_07_mod_03_rm, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_D9_07_mod + = +{ + QX86_OPCODE_MAP_INDEX_MOD, 3, qx86_opcode_map_D9_07_mod_items +}; + +static qx86_opcode_map_item qx86_opcode_map_D9_items[] + = +{ + /* 00 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_D9_00_mod, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 01 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_D9_01_mod, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 02 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_D9_02_mod, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 03 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_D9_03_mod, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 04 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_D9_04_mod, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 05 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_D9_05_mod, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 06 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_D9_06_mod, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 07 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_D9_07_mod, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_D9 + = +{ + QX86_OPCODE_MAP_INDEX_REG, 7, qx86_opcode_map_D9_items +}; +/* End of file qx86-d-opcode-map/qx86-opcode-map-D9.map */ +/* Generated from file qx86-d-opcode-map/qx86-opcode-map-D8.map */ +// +------------------------------------------------------------------------+ +// | quix86 | +// +------------------------------------------------------------------------+ +// | This file is part of quix86, an x86-64 instruction decoder. | +// | | +// | Copyright (C) 2011 Institute for System Programming of Russian Academy | +// | of Sciences. | +// | | +// | Contact e-mail: . | +// | | +// | quix86 is free software: you can redistribute it and/or modify it | +// | under the terms of the GNU General Public License as published by the | +// | Free Software Foundation, either version 3 of the License, or (at your | +// | option) any later version. | +// | | +// | quix86 is distributed in the hope that it will be useful, but WITHOUT | +// | ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or | +// | FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License | +// | for more details. | +// | | +// | You should have received a copy of the GNU General Public License | +// | along with quix86. If not, see . | +// +------------------------------------------------------------------------+ + +// Reference: AMD Architecture Programmer's Manual 3: Table A-10. + +// mem32real -> Mss (scalar single) +// mem80real -> Mse (scalar double extended) +// mem80dec -> Msb (scalar bcd) +// mem14/28env -> todo +// mem16 -> Mw +// mem16int -> Mw +// mem32int -> Md +// mem64int -> Mq +// mem64real -> Msd (scalar double) +// mem98/108env -> todo + + +static qx86_opcode_map_item qx86_opcode_map_D8_00_mod_03_rm_items[] + = +{ + { + /* code */ QX86_MNEMONIC_FADD, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_rtuple_ST0, 0 }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST0, 0 }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FADD, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_rtuple_ST0, 0 }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST1, 0 }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FADD, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_rtuple_ST0, 0 }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST2, 0 }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FADD, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_rtuple_ST0, 0 }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST3, 0 }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FADD, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_rtuple_ST0, 0 }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST4, 0 }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FADD, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_rtuple_ST0, 0 }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST5, 0 }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FADD, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_rtuple_ST0, 0 }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST6, 0 }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FADD, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_rtuple_ST0, 0 }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST7, 0 }} + } + } + } +}; + +static qx86_opcode_map qx86_opcode_map_D8_00_mod_03_rm + = +{ + QX86_OPCODE_MAP_INDEX_RM, 7, qx86_opcode_map_D8_00_mod_03_rm_items +}; + +static qx86_opcode_map_item qx86_opcode_map_D8_00_mod_items[] + = +{ + { + /* code */ QX86_MNEMONIC_FADD, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_M, &qx86_stuple_ss }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FADD, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_M, &qx86_stuple_ss }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FADD, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_M, &qx86_stuple_ss }} + } + } + }, + /* 03 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_D8_00_mod_03_rm, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_D8_00_mod + = +{ + QX86_OPCODE_MAP_INDEX_MOD, 3, qx86_opcode_map_D8_00_mod_items +}; + +static qx86_opcode_map_item qx86_opcode_map_D8_01_mod_03_rm_items[] + = +{ + { + /* code */ QX86_MNEMONIC_FMUL, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_rtuple_ST0, 0 }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST0, 0 }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FMUL, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_rtuple_ST0, 0 }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST1, 0 }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FMUL, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_rtuple_ST0, 0 }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST2, 0 }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FMUL, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_rtuple_ST0, 0 }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST3, 0 }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FMUL, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_rtuple_ST0, 0 }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST4, 0 }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FMUL, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_rtuple_ST0, 0 }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST5, 0 }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FMUL, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_rtuple_ST0, 0 }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST6, 0 }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FMUL, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_rtuple_ST0, 0 }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST7, 0 }} + } + } + } +}; + +static qx86_opcode_map qx86_opcode_map_D8_01_mod_03_rm + = +{ + QX86_OPCODE_MAP_INDEX_RM, 7, qx86_opcode_map_D8_01_mod_03_rm_items +}; + +static qx86_opcode_map_item qx86_opcode_map_D8_01_mod_items[] + = +{ + { + /* code */ QX86_MNEMONIC_FMUL, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_M, &qx86_stuple_ss }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FMUL, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_M, &qx86_stuple_ss }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FMUL, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_M, &qx86_stuple_ss }} + } + } + }, + /* 03 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_D8_01_mod_03_rm, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_D8_01_mod + = +{ + QX86_OPCODE_MAP_INDEX_MOD, 3, qx86_opcode_map_D8_01_mod_items +}; + +static qx86_opcode_map_item qx86_opcode_map_D8_02_mod_03_rm_items[] + = +{ + { + /* code */ QX86_MNEMONIC_FCOM, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST0, 0 }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST0, 0 }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FCOM, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST0, 0 }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST1, 0 }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FCOM, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST0, 0 }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST2, 0 }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FCOM, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST0, 0 }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST3, 0 }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FCOM, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST0, 0 }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST4, 0 }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FCOM, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST0, 0 }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST5, 0 }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FCOM, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST0, 0 }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST6, 0 }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FCOM, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST0, 0 }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST7, 0 }} + } + } + } +}; + +static qx86_opcode_map qx86_opcode_map_D8_02_mod_03_rm + = +{ + QX86_OPCODE_MAP_INDEX_RM, 7, qx86_opcode_map_D8_02_mod_03_rm_items +}; + +static qx86_opcode_map_item qx86_opcode_map_D8_02_mod_items[] + = +{ + { + /* code */ QX86_MNEMONIC_FCOM, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_M, &qx86_stuple_ss }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FCOM, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_M, &qx86_stuple_ss }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FCOM, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_M, &qx86_stuple_ss }} + } + } + }, + /* 03 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_D8_02_mod_03_rm, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_D8_02_mod + = +{ + QX86_OPCODE_MAP_INDEX_MOD, 3, qx86_opcode_map_D8_02_mod_items +}; + +static qx86_opcode_map_item qx86_opcode_map_D8_03_mod_03_rm_items[] + = +{ + { + /* code */ QX86_MNEMONIC_FCOMP, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST0, 0 }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST0, 0 }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FCOMP, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST0, 0 }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST1, 0 }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FCOMP, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST0, 0 }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST2, 0 }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FCOMP, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST0, 0 }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST3, 0 }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FCOMP, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST0, 0 }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST4, 0 }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FCOMP, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST0, 0 }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST5, 0 }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FCOMP, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST0, 0 }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST6, 0 }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FCOMP, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST0, 0 }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST7, 0 }} + } + } + } +}; + +static qx86_opcode_map qx86_opcode_map_D8_03_mod_03_rm + = +{ + QX86_OPCODE_MAP_INDEX_RM, 7, qx86_opcode_map_D8_03_mod_03_rm_items +}; + +static qx86_opcode_map_item qx86_opcode_map_D8_03_mod_items[] + = +{ + { + /* code */ QX86_MNEMONIC_FCOMP, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_M, &qx86_stuple_ss }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FCOMP, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_M, &qx86_stuple_ss }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FCOMP, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_M, &qx86_stuple_ss }} + } + } + }, + /* 03 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_D8_03_mod_03_rm, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_D8_03_mod + = +{ + QX86_OPCODE_MAP_INDEX_MOD, 3, qx86_opcode_map_D8_03_mod_items +}; + +static qx86_opcode_map_item qx86_opcode_map_D8_04_mod_03_rm_items[] + = +{ + { + /* code */ QX86_MNEMONIC_FSUB, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_rtuple_ST0, 0 }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST0, 0 }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FSUB, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_rtuple_ST0, 0 }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST1, 0 }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FSUB, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_rtuple_ST0, 0 }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST2, 0 }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FSUB, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_rtuple_ST0, 0 }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST3, 0 }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FSUB, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_rtuple_ST0, 0 }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST4, 0 }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FSUB, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_rtuple_ST0, 0 }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST5, 0 }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FSUB, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_rtuple_ST0, 0 }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST6, 0 }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FSUB, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_rtuple_ST0, 0 }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST7, 0 }} + } + } + } +}; + +static qx86_opcode_map qx86_opcode_map_D8_04_mod_03_rm + = +{ + QX86_OPCODE_MAP_INDEX_RM, 7, qx86_opcode_map_D8_04_mod_03_rm_items +}; + +static qx86_opcode_map_item qx86_opcode_map_D8_04_mod_items[] + = +{ + { + /* code */ QX86_MNEMONIC_FSUB, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_M, &qx86_stuple_ss }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FSUB, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_M, &qx86_stuple_ss }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FSUB, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_M, &qx86_stuple_ss }} + } + } + }, + /* 03 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_D8_04_mod_03_rm, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_D8_04_mod + = +{ + QX86_OPCODE_MAP_INDEX_MOD, 3, qx86_opcode_map_D8_04_mod_items +}; + +static qx86_opcode_map_item qx86_opcode_map_D8_05_mod_03_rm_items[] + = +{ + { + /* code */ QX86_MNEMONIC_FSUBR, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_rtuple_ST0, 0 }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST0, 0 }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FSUBR, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_rtuple_ST0, 0 }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST1, 0 }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FSUBR, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_rtuple_ST0, 0 }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST2, 0 }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FSUBR, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_rtuple_ST0, 0 }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST3, 0 }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FSUBR, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_rtuple_ST0, 0 }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST4, 0 }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FSUBR, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_rtuple_ST0, 0 }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST5, 0 }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FSUBR, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_rtuple_ST0, 0 }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST6, 0 }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FSUBR, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_rtuple_ST0, 0 }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST7, 0 }} + } + } + } +}; + +static qx86_opcode_map qx86_opcode_map_D8_05_mod_03_rm + = +{ + QX86_OPCODE_MAP_INDEX_RM, 7, qx86_opcode_map_D8_05_mod_03_rm_items +}; + +static qx86_opcode_map_item qx86_opcode_map_D8_05_mod_items[] + = +{ + { + /* code */ QX86_MNEMONIC_FSUBR, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_M, &qx86_stuple_ss }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FSUBR, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_M, &qx86_stuple_ss }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FSUBR, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_M, &qx86_stuple_ss }} + } + } + }, + /* 03 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_D8_05_mod_03_rm, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_D8_05_mod + = +{ + QX86_OPCODE_MAP_INDEX_MOD, 3, qx86_opcode_map_D8_05_mod_items +}; + +static qx86_opcode_map_item qx86_opcode_map_D8_06_mod_03_rm_items[] + = +{ + { + /* code */ QX86_MNEMONIC_FDIV, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_rtuple_ST0, 0 }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST0, 0 }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FDIV, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_rtuple_ST0, 0 }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST1, 0 }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FDIV, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_rtuple_ST0, 0 }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST2, 0 }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FDIV, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_rtuple_ST0, 0 }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST3, 0 }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FDIV, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_rtuple_ST0, 0 }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST4, 0 }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FDIV, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_rtuple_ST0, 0 }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST5, 0 }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FDIV, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_rtuple_ST0, 0 }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST6, 0 }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FDIV, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_rtuple_ST0, 0 }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST7, 0 }} + } + } + } +}; + +static qx86_opcode_map qx86_opcode_map_D8_06_mod_03_rm + = +{ + QX86_OPCODE_MAP_INDEX_RM, 7, qx86_opcode_map_D8_06_mod_03_rm_items +}; + +static qx86_opcode_map_item qx86_opcode_map_D8_06_mod_items[] + = +{ + { + /* code */ QX86_MNEMONIC_FDIV, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_M, &qx86_stuple_ss }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FDIV, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_M, &qx86_stuple_ss }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FDIV, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_M, &qx86_stuple_ss }} + } + } + }, + /* 03 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_D8_06_mod_03_rm, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_D8_06_mod + = +{ + QX86_OPCODE_MAP_INDEX_MOD, 3, qx86_opcode_map_D8_06_mod_items +}; + +static qx86_opcode_map_item qx86_opcode_map_D8_07_mod_03_rm_items[] + = +{ + { + /* code */ QX86_MNEMONIC_FDIVR, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_rtuple_ST0, 0 }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST0, 0 }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FDIVR, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_rtuple_ST0, 0 }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST1, 0 }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FDIVR, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_rtuple_ST0, 0 }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST2, 0 }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FDIVR, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_rtuple_ST0, 0 }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST3, 0 }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FDIVR, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_rtuple_ST0, 0 }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST4, 0 }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FDIVR, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_rtuple_ST0, 0 }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST5, 0 }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FDIVR, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_rtuple_ST0, 0 }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST6, 0 }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FDIVR, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_rtuple_ST0, 0 }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ST7, 0 }} + } + } + } +}; + +static qx86_opcode_map qx86_opcode_map_D8_07_mod_03_rm + = +{ + QX86_OPCODE_MAP_INDEX_RM, 7, qx86_opcode_map_D8_07_mod_03_rm_items +}; + +static qx86_opcode_map_item qx86_opcode_map_D8_07_mod_items[] + = +{ + { + /* code */ QX86_MNEMONIC_FDIVR, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_M, &qx86_stuple_ss }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FDIVR, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_M, &qx86_stuple_ss }} + } + } + }, + { + /* code */ QX86_MNEMONIC_FDIVR, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_M, &qx86_stuple_ss }} + } + } + }, + /* 03 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_D8_07_mod_03_rm, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_D8_07_mod + = +{ + QX86_OPCODE_MAP_INDEX_MOD, 3, qx86_opcode_map_D8_07_mod_items +}; + +static qx86_opcode_map_item qx86_opcode_map_D8_items[] + = +{ + /* 00 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_D8_00_mod, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 01 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_D8_01_mod, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 02 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_D8_02_mod, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 03 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_D8_03_mod, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 04 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_D8_04_mod, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 05 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_D8_05_mod, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 06 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_D8_06_mod, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 07 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_D8_07_mod, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_D8 + = +{ + QX86_OPCODE_MAP_INDEX_REG, 7, qx86_opcode_map_D8_items +}; +/* End of file qx86-d-opcode-map/qx86-opcode-map-D8.map */ +/* Generated from file qx86-d-opcode-map/qx86-opcode-map-M11.map */ +// +------------------------------------------------------------------------+ +// | quix86 | +// +------------------------------------------------------------------------+ +// | This file is part of quix86, an x86-64 instruction decoder. | +// | | +// | Copyright (C) 2011 Institute for System Programming of Russian Academy | +// | of Sciences. | +// | | +// | Contact e-mail: . | +// | | +// | quix86 is free software: you can redistribute it and/or modify it | +// | under the terms of the GNU General Public License as published by the | +// | Free Software Foundation, either version 3 of the License, or (at your | +// | option) any later version. | +// | | +// | quix86 is distributed in the hope that it will be useful, but WITHOUT | +// | ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or | +// | FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License | +// | for more details. | +// | | +// | You should have received a copy of the GNU General Public License | +// | along with quix86. If not, see . | +// +------------------------------------------------------------------------+ + +// Reference: AMD Architecture Programmer's Manual 3: Table A-6. + +static qx86_opcode_map_item qx86_opcode_map_M11_items[] + = +{ + { + /* code */ QX86_MNEMONIC_MOV, + /* map */ 0, + + /* operandCount */ -1, + /* placeHolder */ {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 01 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 02 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 03 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 04 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 05 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 06 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 07 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_M11 + = +{ + QX86_OPCODE_MAP_INDEX_REG, 7, qx86_opcode_map_M11_items +}; +/* End of file qx86-d-opcode-map/qx86-opcode-map-M11.map */ +/* Generated from file qx86-d-opcode-map/qx86-opcode-map-M2.map */ +// +------------------------------------------------------------------------+ +// | quix86 | +// +------------------------------------------------------------------------+ +// | This file is part of quix86, an x86-64 instruction decoder. | +// | | +// | Copyright (C) 2011 Institute for System Programming of Russian Academy | +// | of Sciences. | +// | | +// | Contact e-mail: . | +// | | +// | quix86 is free software: you can redistribute it and/or modify it | +// | under the terms of the GNU General Public License as published by the | +// | Free Software Foundation, either version 3 of the License, or (at your | +// | option) any later version. | +// | | +// | quix86 is distributed in the hope that it will be useful, but WITHOUT | +// | ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or | +// | FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License | +// | for more details. | +// | | +// | You should have received a copy of the GNU General Public License | +// | along with quix86. If not, see . | +// +------------------------------------------------------------------------+ + +// Reference: AMD Architecture Programmer's Manual 3: Table A-6. + +static qx86_opcode_map_item qx86_opcode_map_M2_items[] + = +{ + { + /* code */ QX86_MNEMONIC_ROL, + /* map */ 0, + + /* operandCount */ -1, + /* placeHolder */ {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + { + /* code */ QX86_MNEMONIC_ROR, + /* map */ 0, + + /* operandCount */ -1, + /* placeHolder */ {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + { + /* code */ QX86_MNEMONIC_RCL, + /* map */ 0, + + /* operandCount */ -1, + /* placeHolder */ {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + { + /* code */ QX86_MNEMONIC_RCR, + /* map */ 0, + + /* operandCount */ -1, + /* placeHolder */ {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + { + /* code */ QX86_MNEMONIC_SHL, + /* map */ 0, + + /* operandCount */ -1, + /* placeHolder */ {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + { + /* code */ QX86_MNEMONIC_SHR, + /* map */ 0, + + /* operandCount */ -1, + /* placeHolder */ {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + { + /* code */ QX86_MNEMONIC_SHL, + /* map */ 0, + + /* operandCount */ -1, + /* placeHolder */ {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + { + /* code */ QX86_MNEMONIC_SAR, + /* map */ 0, + + /* operandCount */ -1, + /* placeHolder */ {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_M2 + = +{ + QX86_OPCODE_MAP_INDEX_REG, 7, qx86_opcode_map_M2_items +}; +/* End of file qx86-d-opcode-map/qx86-opcode-map-M2.map */ +/* Generated from file qx86-d-opcode-map/qx86-opcode-map-M1A.map */ +// +------------------------------------------------------------------------+ +// | quix86 | +// +------------------------------------------------------------------------+ +// | This file is part of quix86, an x86-64 instruction decoder. | +// | | +// | Copyright (C) 2011 Institute for System Programming of Russian Academy | +// | of Sciences. | +// | | +// | Contact e-mail: . | +// | | +// | quix86 is free software: you can redistribute it and/or modify it | +// | under the terms of the GNU General Public License as published by the | +// | Free Software Foundation, either version 3 of the License, or (at your | +// | option) any later version. | +// | | +// | quix86 is distributed in the hope that it will be useful, but WITHOUT | +// | ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or | +// | FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License | +// | for more details. | +// | | +// | You should have received a copy of the GNU General Public License | +// | along with quix86. If not, see . | +// +------------------------------------------------------------------------+ + +// Reference: AMD Architecture Programmer's Manual 3: Table A-6. + +static qx86_opcode_map_item qx86_opcode_map_M1A_items[] + = +{ + { + /* code */ QX86_MNEMONIC_POP, + /* map */ 0, + + /* operandCount */ -1, + /* placeHolder */ {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 01 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 02 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 03 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 04 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 05 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 06 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 07 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_M1A + = +{ + QX86_OPCODE_MAP_INDEX_REG, 7, qx86_opcode_map_M1A_items +}; +/* End of file qx86-d-opcode-map/qx86-opcode-map-M1A.map */ +/* Generated from file qx86-d-opcode-map/qx86-opcode-map-M1_Ev_Ib.map */ +// +------------------------------------------------------------------------+ +// | quix86 | +// +------------------------------------------------------------------------+ +// | This file is part of quix86, an x86-64 instruction decoder. | +// | | +// | Copyright (C) 2011 Institute for System Programming of Russian Academy | +// | of Sciences. | +// | | +// | Contact e-mail: . | +// | | +// | quix86 is free software: you can redistribute it and/or modify it | +// | under the terms of the GNU General Public License as published by the | +// | Free Software Foundation, either version 3 of the License, or (at your | +// | option) any later version. | +// | | +// | quix86 is distributed in the hope that it will be useful, but WITHOUT | +// | ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or | +// | FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License | +// | for more details. | +// | | +// | You should have received a copy of the GNU General Public License | +// | along with quix86. If not, see . | +// +------------------------------------------------------------------------+ + +// Reference: AMD Architecture Programmer's Manual 3: Table A-6. + +static qx86_opcode_map_item qx86_opcode_map_M1_Ev_Ib_items[] + = +{ + { + /* code */ QX86_MNEMONIC_ADD, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_amode_E, &qx86_stuple_v }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_I, &qx86_stuple_b }} + } + } + }, + { + /* code */ QX86_MNEMONIC_OR, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_amode_E, &qx86_stuple_v }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_I, &qx86_stuple_b }} + } + } + }, + { + /* code */ QX86_MNEMONIC_ADC, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_amode_E, &qx86_stuple_v }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_I, &qx86_stuple_b }} + } + } + }, + { + /* code */ QX86_MNEMONIC_SBB, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_amode_E, &qx86_stuple_v }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_I, &qx86_stuple_b }} + } + } + }, + { + /* code */ QX86_MNEMONIC_AND, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_amode_E, &qx86_stuple_v }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_I, &qx86_stuple_b }} + } + } + }, + { + /* code */ QX86_MNEMONIC_SUB, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_amode_E, &qx86_stuple_v }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_I, &qx86_stuple_b }} + } + } + }, + { + /* code */ QX86_MNEMONIC_XOR, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_amode_E, &qx86_stuple_v }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_I, &qx86_stuple_b }} + } + } + }, + { + /* code */ QX86_MNEMONIC_CMP, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_E, &qx86_stuple_v }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_I, &qx86_stuple_b }} + } + } + } +}; + +static qx86_opcode_map qx86_opcode_map_M1_Ev_Ib + = +{ + QX86_OPCODE_MAP_INDEX_REG, 7, qx86_opcode_map_M1_Ev_Ib_items +}; +/* End of file qx86-d-opcode-map/qx86-opcode-map-M1_Ev_Ib.map */ +/* Generated from file qx86-d-opcode-map/qx86-opcode-map-M1_Ev_Iz.map */ +// +------------------------------------------------------------------------+ +// | quix86 | +// +------------------------------------------------------------------------+ +// | This file is part of quix86, an x86-64 instruction decoder. | +// | | +// | Copyright (C) 2011 Institute for System Programming of Russian Academy | +// | of Sciences. | +// | | +// | Contact e-mail: . | +// | | +// | quix86 is free software: you can redistribute it and/or modify it | +// | under the terms of the GNU General Public License as published by the | +// | Free Software Foundation, either version 3 of the License, or (at your | +// | option) any later version. | +// | | +// | quix86 is distributed in the hope that it will be useful, but WITHOUT | +// | ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or | +// | FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License | +// | for more details. | +// | | +// | You should have received a copy of the GNU General Public License | +// | along with quix86. If not, see . | +// +------------------------------------------------------------------------+ + +// Reference: AMD Architecture Programmer's Manual 3: Table A-6. + +static qx86_opcode_map_item qx86_opcode_map_M1_Ev_Iz_items[] + = +{ + { + /* code */ QX86_MNEMONIC_ADD, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_amode_E, &qx86_stuple_v }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_I, &qx86_stuple_z }} + } + } + }, + { + /* code */ QX86_MNEMONIC_OR, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_amode_E, &qx86_stuple_v }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_I, &qx86_stuple_z }} + } + } + }, + { + /* code */ QX86_MNEMONIC_ADC, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_amode_E, &qx86_stuple_v }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_I, &qx86_stuple_z }} + } + } + }, + { + /* code */ QX86_MNEMONIC_SBB, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_amode_E, &qx86_stuple_v }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_I, &qx86_stuple_z }} + } + } + }, + { + /* code */ QX86_MNEMONIC_AND, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_amode_E, &qx86_stuple_v }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_I, &qx86_stuple_z }} + } + } + }, + { + /* code */ QX86_MNEMONIC_SUB, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_amode_E, &qx86_stuple_v }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_I, &qx86_stuple_z }} + } + } + }, + { + /* code */ QX86_MNEMONIC_XOR, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_amode_E, &qx86_stuple_v }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_I, &qx86_stuple_z }} + } + } + }, + { + /* code */ QX86_MNEMONIC_CMP, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_E, &qx86_stuple_v }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_I, &qx86_stuple_z }} + } + } + } +}; + +static qx86_opcode_map qx86_opcode_map_M1_Ev_Iz + = +{ + QX86_OPCODE_MAP_INDEX_REG, 7, qx86_opcode_map_M1_Ev_Iz_items +}; +/* End of file qx86-d-opcode-map/qx86-opcode-map-M1_Ev_Iz.map */ +/* Generated from file qx86-d-opcode-map/qx86-opcode-map-M1_Eb_Ib.map */ +// +------------------------------------------------------------------------+ +// | quix86 | +// +------------------------------------------------------------------------+ +// | This file is part of quix86, an x86-64 instruction decoder. | +// | | +// | Copyright (C) 2011 Institute for System Programming of Russian Academy | +// | of Sciences. | +// | | +// | Contact e-mail: . | +// | | +// | quix86 is free software: you can redistribute it and/or modify it | +// | under the terms of the GNU General Public License as published by the | +// | Free Software Foundation, either version 3 of the License, or (at your | +// | option) any later version. | +// | | +// | quix86 is distributed in the hope that it will be useful, but WITHOUT | +// | ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or | +// | FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License | +// | for more details. | +// | | +// | You should have received a copy of the GNU General Public License | +// | along with quix86. If not, see . | +// +------------------------------------------------------------------------+ + +// Reference: AMD Architecture Programmer's Manual 3: Table A-6. + +static qx86_opcode_map_item qx86_opcode_map_M1_Eb_Ib_items[] + = +{ + { + /* code */ QX86_MNEMONIC_ADD, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_amode_E, &qx86_stuple_b }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_I, &qx86_stuple_b }} + } + } + }, + { + /* code */ QX86_MNEMONIC_OR, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_amode_E, &qx86_stuple_b }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_I, &qx86_stuple_b }} + } + } + }, + { + /* code */ QX86_MNEMONIC_ADC, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_amode_E, &qx86_stuple_b }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_I, &qx86_stuple_b }} + } + } + }, + { + /* code */ QX86_MNEMONIC_SBB, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_amode_E, &qx86_stuple_b }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_I, &qx86_stuple_b }} + } + } + }, + { + /* code */ QX86_MNEMONIC_AND, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_amode_E, &qx86_stuple_b }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_I, &qx86_stuple_b }} + } + } + }, + { + /* code */ QX86_MNEMONIC_SUB, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_amode_E, &qx86_stuple_b }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_I, &qx86_stuple_b }} + } + } + }, + { + /* code */ QX86_MNEMONIC_XOR, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_amode_E, &qx86_stuple_b }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_I, &qx86_stuple_b }} + } + } + }, + { + /* code */ QX86_MNEMONIC_CMP, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_E, &qx86_stuple_b }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_I, &qx86_stuple_b }} + } + } + } +}; + +static qx86_opcode_map qx86_opcode_map_M1_Eb_Ib + = +{ + QX86_OPCODE_MAP_INDEX_REG, 7, qx86_opcode_map_M1_Eb_Ib_items +}; +/* End of file qx86-d-opcode-map/qx86-opcode-map-M1_Eb_Ib.map */ +/* Generated from file qx86-d-opcode-map/qx86-opcode-map-2.map */ +// +------------------------------------------------------------------------+ +// | quix86 | +// +------------------------------------------------------------------------+ +// | This file is part of quix86, an x86-64 instruction decoder. | +// | | +// | Copyright (C) 2011 Institute for System Programming of Russian Academy | +// | of Sciences. | +// | | +// | Contact e-mail: . | +// | | +// | quix86 is free software: you can redistribute it and/or modify it | +// | under the terms of the GNU General Public License as published by the | +// | Free Software Foundation, either version 3 of the License, or (at your | +// | option) any later version. | +// | | +// | quix86 is distributed in the hope that it will be useful, but WITHOUT | +// | ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or | +// | FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License | +// | for more details. | +// | | +// | You should have received a copy of the GNU General Public License | +// | along with quix86. If not, see . | +// +------------------------------------------------------------------------+ + +// Reference: AMD Architecture Programmer's Manual 3: Table A-3. +// Reference: Intel Architecture Software Developer’s Manual 2B: Table A-3. + +static qx86_opcode_map_item qx86_opcode_map_2_02_cs_items[] + = +{ + /* 00 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + { + /* code */ QX86_MNEMONIC_LAR, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_G, &qx86_stuple_v }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_E, &qx86_stuple_w }} + } + } + }, + { + /* code */ QX86_MNEMONIC_LAR, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_G, &qx86_stuple_v }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_E, &qx86_stuple_w }} + } + } + } +}; + +static qx86_opcode_map qx86_opcode_map_2_02_cs + = +{ + QX86_OPCODE_MAP_INDEX_CS, 2, qx86_opcode_map_2_02_cs_items +}; + +static qx86_opcode_map_item qx86_opcode_map_2_03_cs_items[] + = +{ + /* 00 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + { + /* code */ QX86_MNEMONIC_LSL, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_G, &qx86_stuple_v }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_E, &qx86_stuple_w }} + } + } + }, + { + /* code */ QX86_MNEMONIC_LSL, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_G, &qx86_stuple_v }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_E, &qx86_stuple_w }} + } + } + } +}; + +static qx86_opcode_map qx86_opcode_map_2_03_cs + = +{ + QX86_OPCODE_MAP_INDEX_CS, 2, qx86_opcode_map_2_03_cs_items +}; + +static qx86_opcode_map_item qx86_opcode_map_2_05_cs_items[] + = +{ + /* 00 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + { + /* code */ QX86_MNEMONIC_SYSCALL, + /* map */ 0, + + /* operandCount */ 0, + /* placeHolder */ {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + { + /* code */ QX86_MNEMONIC_SYSCALL, + /* map */ 0, + + /* operandCount */ 0, + /* placeHolder */ {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_2_05_cs + = +{ + QX86_OPCODE_MAP_INDEX_CS, 2, qx86_opcode_map_2_05_cs_items +}; + + +static qx86_opcode_map_item qx86_opcode_map_2_07_cs_items[] + = +{ + /* 00 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + { + /* code */ QX86_MNEMONIC_SYSRET, + /* map */ 0, + + /* operandCount */ 0, + /* placeHolder */ {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + { + /* code */ QX86_MNEMONIC_SYSRET, + /* map */ 0, + + /* operandCount */ 0, + /* placeHolder */ {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_2_07_cs + = +{ + QX86_OPCODE_MAP_INDEX_CS, 2, qx86_opcode_map_2_07_cs_items +}; + //0F: -> 3DNow # AMD 3DNow! opcodes. + + +static qx86_opcode_map_item qx86_opcode_map_2_10_sp_items[] + = +{ + { + /* code */ QX86_MNEMONIC_MOVUPS, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_V, &qx86_stuple_ps }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_W, &qx86_stuple_ps }} + } + } + }, + { + /* code */ QX86_MNEMONIC_MOVUPD, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_V, &qx86_stuple_pd }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_W, &qx86_stuple_pd }} + } + } + }, + { + /* code */ QX86_MNEMONIC_MOVSD_SSE, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_V, &qx86_stuple_sd }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_W, &qx86_stuple_sd }} + } + } + }, + { + /* code */ QX86_MNEMONIC_MOVSS, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_V, &qx86_stuple_ss }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_W, &qx86_stuple_ss }} + } + } + } +}; + +static qx86_opcode_map qx86_opcode_map_2_10_sp + = +{ + QX86_OPCODE_MAP_INDEX_SP, 3, qx86_opcode_map_2_10_sp_items +}; + +static qx86_opcode_map_item qx86_opcode_map_2_11_sp_items[] + = +{ + { + /* code */ QX86_MNEMONIC_MOVUPS, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_W, &qx86_stuple_ps }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_V, &qx86_stuple_ps }} + } + } + }, + { + /* code */ QX86_MNEMONIC_MOVUPD, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_W, &qx86_stuple_pd }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_V, &qx86_stuple_pd }} + } + } + }, + { + /* code */ QX86_MNEMONIC_MOVSD_SSE, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_W, &qx86_stuple_sd }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_V, &qx86_stuple_sd }} + } + } + }, + { + /* code */ QX86_MNEMONIC_MOVSS, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_W, &qx86_stuple_ss }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_V, &qx86_stuple_ss }} + } + } + } +}; + +static qx86_opcode_map qx86_opcode_map_2_11_sp + = +{ + QX86_OPCODE_MAP_INDEX_SP, 3, qx86_opcode_map_2_11_sp_items +}; + +static qx86_opcode_map_item qx86_opcode_map_2_12_sp_00_mod_items[] + = +{ + { + /* code */ QX86_MNEMONIC_MOVLPS, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_V, &qx86_stuple_ps }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_M, &qx86_stuple_q }} + } + } + }, + { + /* code */ QX86_MNEMONIC_MOVLPS, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_V, &qx86_stuple_ps }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_M, &qx86_stuple_q }} + } + } + }, + { + /* code */ QX86_MNEMONIC_MOVLPS, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_V, &qx86_stuple_ps }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_M, &qx86_stuple_q }} + } + } + }, + { + /* code */ QX86_MNEMONIC_MOVHLPS, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_V, &qx86_stuple_ps }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_U, &qx86_stuple_q }} + } + } + } +}; + +static qx86_opcode_map qx86_opcode_map_2_12_sp_00_mod + = +{ + QX86_OPCODE_MAP_INDEX_MOD, 3, qx86_opcode_map_2_12_sp_00_mod_items +}; + +static qx86_opcode_map_item qx86_opcode_map_2_12_sp_items[] + = +{ + /* 00 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_2_12_sp_00_mod, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + { + /* code */ QX86_MNEMONIC_MOVLPD, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_V, &qx86_stuple_sd }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_M, &qx86_stuple_q }} + } + } + }, + { + /* code */ QX86_MNEMONIC_MOVDDUP, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_V, &qx86_stuple_pd }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_W, &qx86_stuple_sd }} + } + } + }, + { + /* code */ QX86_MNEMONIC_MOVSLDUP, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_V, &qx86_stuple_ps }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_W, &qx86_stuple_ps }} + } + } + } +}; + +static qx86_opcode_map qx86_opcode_map_2_12_sp + = +{ + QX86_OPCODE_MAP_INDEX_SP, 3, qx86_opcode_map_2_12_sp_items +}; + +static qx86_opcode_map_item qx86_opcode_map_2_13_sp_items[] + = +{ + { + /* code */ QX86_MNEMONIC_MOVLPS, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_M, &qx86_stuple_q }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_V, &qx86_stuple_ps }} + } + } + }, + { + /* code */ QX86_MNEMONIC_MOVLPD, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_M, &qx86_stuple_q }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_V, &qx86_stuple_sd }} + } + } + }, + /* F2 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* F3 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_2_13_sp + = +{ + QX86_OPCODE_MAP_INDEX_SP, 3, qx86_opcode_map_2_13_sp_items +}; + +static qx86_opcode_map_item qx86_opcode_map_2_14_sp_items[] + = +{ + { + /* code */ QX86_MNEMONIC_UNPCKLPS, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_amode_V, &qx86_stuple_ps }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_W, &qx86_stuple_q }} + } + } + }, + { + /* code */ QX86_MNEMONIC_UNPCKLPD, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_amode_V, &qx86_stuple_pd }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_W, &qx86_stuple_q }} + } + } + }, + /* F2 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* F3 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_2_14_sp + = +{ + QX86_OPCODE_MAP_INDEX_SP, 3, qx86_opcode_map_2_14_sp_items +}; + +static qx86_opcode_map_item qx86_opcode_map_2_15_sp_items[] + = +{ + { + /* code */ QX86_MNEMONIC_UNPCKHPS, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_amode_V, &qx86_stuple_ps }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_W, &qx86_stuple_q }} + } + } + }, + { + /* code */ QX86_MNEMONIC_UNPCKHPD, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_amode_V, &qx86_stuple_pd }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_W, &qx86_stuple_q }} + } + } + }, + /* F2 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* F3 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_2_15_sp + = +{ + QX86_OPCODE_MAP_INDEX_SP, 3, qx86_opcode_map_2_15_sp_items +}; + +static qx86_opcode_map_item qx86_opcode_map_2_16_sp_00_mod_items[] + = +{ + { + /* code */ QX86_MNEMONIC_MOVHPS, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_V, &qx86_stuple_ps }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_M, &qx86_stuple_q }} + } + } + }, + { + /* code */ QX86_MNEMONIC_MOVHPS, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_V, &qx86_stuple_ps }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_M, &qx86_stuple_q }} + } + } + }, + { + /* code */ QX86_MNEMONIC_MOVHPS, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_V, &qx86_stuple_ps }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_M, &qx86_stuple_q }} + } + } + }, + { + /* code */ QX86_MNEMONIC_MOVLHPS, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_V, &qx86_stuple_ps }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_U, &qx86_stuple_q }} + } + } + } +}; + +static qx86_opcode_map qx86_opcode_map_2_16_sp_00_mod + = +{ + QX86_OPCODE_MAP_INDEX_MOD, 3, qx86_opcode_map_2_16_sp_00_mod_items +}; + +static qx86_opcode_map_item qx86_opcode_map_2_16_sp_items[] + = +{ + /* 00 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_2_16_sp_00_mod, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + { + /* code */ QX86_MNEMONIC_MOVHPD, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_V, &qx86_stuple_sd }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_M, &qx86_stuple_q }} + } + } + }, + /* F2 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + { + /* code */ QX86_MNEMONIC_MOVSHDUP, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_V, &qx86_stuple_ps }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_W, &qx86_stuple_ps }} + } + } + } +}; + +static qx86_opcode_map qx86_opcode_map_2_16_sp + = +{ + QX86_OPCODE_MAP_INDEX_SP, 3, qx86_opcode_map_2_16_sp_items +}; + + +static qx86_opcode_map_item qx86_opcode_map_2_17_sp_items[] + = +{ + { + /* code */ QX86_MNEMONIC_MOVHPS, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_M, &qx86_stuple_q }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_V, &qx86_stuple_ps }} + } + } + }, + { + /* code */ QX86_MNEMONIC_MOVHPD, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_M, &qx86_stuple_q }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_V, &qx86_stuple_sd }} + } + } + }, + /* F2 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* F3 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_2_17_sp + = +{ + QX86_OPCODE_MAP_INDEX_SP, 3, qx86_opcode_map_2_17_sp_items +}; + + +static qx86_opcode_map_item qx86_opcode_map_2_20_cs_items[] + = +{ + { + /* code */ QX86_MNEMONIC_MOV, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_R, &qx86_stuple_d }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_C, &qx86_stuple_d }} + } + } + }, + { + /* code */ QX86_MNEMONIC_MOV, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_R, &qx86_stuple_d }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_C, &qx86_stuple_d }} + } + } + }, + { + /* code */ QX86_MNEMONIC_MOV, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_R, &qx86_stuple_q }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_C, &qx86_stuple_q }} + } + } + } +}; + +static qx86_opcode_map qx86_opcode_map_2_20_cs + = +{ + QX86_OPCODE_MAP_INDEX_CS, 2, qx86_opcode_map_2_20_cs_items +}; + +static qx86_opcode_map_item qx86_opcode_map_2_21_cs_items[] + = +{ + { + /* code */ QX86_MNEMONIC_MOV, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_R, &qx86_stuple_d }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_D, &qx86_stuple_d }} + } + } + }, + { + /* code */ QX86_MNEMONIC_MOV, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_R, &qx86_stuple_d }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_D, &qx86_stuple_d }} + } + } + }, + { + /* code */ QX86_MNEMONIC_MOV, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_R, &qx86_stuple_q }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_D, &qx86_stuple_q }} + } + } + } +}; + +static qx86_opcode_map qx86_opcode_map_2_21_cs + = +{ + QX86_OPCODE_MAP_INDEX_CS, 2, qx86_opcode_map_2_21_cs_items +}; + +static qx86_opcode_map_item qx86_opcode_map_2_22_cs_items[] + = +{ + { + /* code */ QX86_MNEMONIC_MOV, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_C, &qx86_stuple_d }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_R, &qx86_stuple_d }} + } + } + }, + { + /* code */ QX86_MNEMONIC_MOV, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_C, &qx86_stuple_d }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_R, &qx86_stuple_d }} + } + } + }, + { + /* code */ QX86_MNEMONIC_MOV, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_C, &qx86_stuple_q }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_R, &qx86_stuple_q }} + } + } + } +}; + +static qx86_opcode_map qx86_opcode_map_2_22_cs + = +{ + QX86_OPCODE_MAP_INDEX_CS, 2, qx86_opcode_map_2_22_cs_items +}; + + +static qx86_opcode_map_item qx86_opcode_map_2_23_cs_items[] + = +{ + { + /* code */ QX86_MNEMONIC_MOV, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_D, &qx86_stuple_d }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_R, &qx86_stuple_d }} + } + } + }, + { + /* code */ QX86_MNEMONIC_MOV, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_D, &qx86_stuple_d }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_R, &qx86_stuple_d }} + } + } + }, + { + /* code */ QX86_MNEMONIC_MOV, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_D, &qx86_stuple_q }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_R, &qx86_stuple_q }} + } + } + } +}; + +static qx86_opcode_map qx86_opcode_map_2_23_cs + = +{ + QX86_OPCODE_MAP_INDEX_CS, 2, qx86_opcode_map_2_23_cs_items +}; + +static qx86_opcode_map_item qx86_opcode_map_2_28_sp_items[] + = +{ + { + /* code */ QX86_MNEMONIC_MOVAPS, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_V, &qx86_stuple_ps }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_W, &qx86_stuple_ps }} + } + } + }, + { + /* code */ QX86_MNEMONIC_MOVAPD, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_V, &qx86_stuple_pd }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_W, &qx86_stuple_pd }} + } + } + }, + /* F2 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* F3 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_2_28_sp + = +{ + QX86_OPCODE_MAP_INDEX_SP, 3, qx86_opcode_map_2_28_sp_items +}; + +static qx86_opcode_map_item qx86_opcode_map_2_29_sp_items[] + = +{ + { + /* code */ QX86_MNEMONIC_MOVAPS, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_W, &qx86_stuple_ps }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_V, &qx86_stuple_ps }} + } + } + }, + { + /* code */ QX86_MNEMONIC_MOVAPD, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_W, &qx86_stuple_pd }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_V, &qx86_stuple_pd }} + } + } + }, + /* F2 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* F3 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_2_29_sp + = +{ + QX86_OPCODE_MAP_INDEX_SP, 3, qx86_opcode_map_2_29_sp_items +}; + +static qx86_opcode_map_item qx86_opcode_map_2_2a_sp_f3_os_items[] + = +{ + { + /* code */ QX86_MNEMONIC_CVTSI2SS, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_V, &qx86_stuple_ss }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_E, &qx86_stuple_d }} + } + } + }, + { + /* code */ QX86_MNEMONIC_CVTSI2SS, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_V, &qx86_stuple_ss }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_E, &qx86_stuple_d }} + } + } + }, + { + /* code */ QX86_MNEMONIC_CVTSI2SS, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_V, &qx86_stuple_ss }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_E, &qx86_stuple_q }} + } + } + } +}; + +static qx86_opcode_map qx86_opcode_map_2_2a_sp_f3_os + = +{ + QX86_OPCODE_MAP_INDEX_OS, 2, qx86_opcode_map_2_2a_sp_f3_os_items +}; + +static qx86_opcode_map_item qx86_opcode_map_2_2a_sp_f2_os_items[] + = +{ + { + /* code */ QX86_MNEMONIC_CVTSI2SD, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_V, &qx86_stuple_sd }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_E, &qx86_stuple_d }} + } + } + }, + { + /* code */ QX86_MNEMONIC_CVTSI2SD, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_V, &qx86_stuple_sd }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_E, &qx86_stuple_d }} + } + } + }, + { + /* code */ QX86_MNEMONIC_CVTSI2SD, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_V, &qx86_stuple_sd }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_E, &qx86_stuple_q }} + } + } + } +}; + +static qx86_opcode_map qx86_opcode_map_2_2a_sp_f2_os + = +{ + QX86_OPCODE_MAP_INDEX_OS, 2, qx86_opcode_map_2_2a_sp_f2_os_items +}; + +static qx86_opcode_map_item qx86_opcode_map_2_2a_sp_items[] + = +{ + { + /* code */ QX86_MNEMONIC_CVTPI2PS, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_V, &qx86_stuple_ps }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_Q, &qx86_stuple_q }} + } + } + }, + { + /* code */ QX86_MNEMONIC_CVTPI2PD, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_V, &qx86_stuple_pd }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_Q, &qx86_stuple_q }} + } + } + }, + /* F2 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_2_2a_sp_f2_os, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* F3 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_2_2a_sp_f3_os, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_2_2a_sp + = +{ + QX86_OPCODE_MAP_INDEX_SP, 3, qx86_opcode_map_2_2a_sp_items +}; + +static qx86_opcode_map_item qx86_opcode_map_2_2b_sp_items[] + = +{ + { + /* code */ QX86_MNEMONIC_MOVNTPS, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_M, &qx86_stuple_dq }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_V, &qx86_stuple_ps }} + } + } + }, + { + /* code */ QX86_MNEMONIC_MOVNTPD, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_M, &qx86_stuple_dq }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_V, &qx86_stuple_pd }} + } + } + }, + { + /* code */ QX86_MNEMONIC_MOVNTSD, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_M, &qx86_stuple_q }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_V, &qx86_stuple_sd }} + } + } + }, + { + /* code */ QX86_MNEMONIC_MOVNTSS, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_M, &qx86_stuple_d }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_V, &qx86_stuple_ss }} + } + } + } +}; + +static qx86_opcode_map qx86_opcode_map_2_2b_sp + = +{ + QX86_OPCODE_MAP_INDEX_SP, 3, qx86_opcode_map_2_2b_sp_items +}; + +static qx86_opcode_map_item qx86_opcode_map_2_2c_sp_f3_os_items[] + = +{ + { + /* code */ QX86_MNEMONIC_CVTTSS2SI, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_G, &qx86_stuple_d }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_W, &qx86_stuple_ss }} + } + } + }, + { + /* code */ QX86_MNEMONIC_CVTTSS2SI, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_G, &qx86_stuple_d }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_W, &qx86_stuple_ss }} + } + } + }, + { + /* code */ QX86_MNEMONIC_CVTTSS2SI, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_G, &qx86_stuple_q }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_W, &qx86_stuple_ss }} + } + } + } +}; + +static qx86_opcode_map qx86_opcode_map_2_2c_sp_f3_os + = +{ + QX86_OPCODE_MAP_INDEX_OS, 2, qx86_opcode_map_2_2c_sp_f3_os_items +}; + +static qx86_opcode_map_item qx86_opcode_map_2_2c_sp_f2_os_items[] + = +{ + { + /* code */ QX86_MNEMONIC_CVTTSD2SI, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_G, &qx86_stuple_d }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_W, &qx86_stuple_sd }} + } + } + }, + { + /* code */ QX86_MNEMONIC_CVTTSD2SI, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_G, &qx86_stuple_d }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_W, &qx86_stuple_sd }} + } + } + }, + { + /* code */ QX86_MNEMONIC_CVTTSD2SI, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_G, &qx86_stuple_q }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_W, &qx86_stuple_sd }} + } + } + } +}; + +static qx86_opcode_map qx86_opcode_map_2_2c_sp_f2_os + = +{ + QX86_OPCODE_MAP_INDEX_OS, 2, qx86_opcode_map_2_2c_sp_f2_os_items +}; + +static qx86_opcode_map_item qx86_opcode_map_2_2c_sp_items[] + = +{ + { + /* code */ QX86_MNEMONIC_CVTTPS2PI, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_P, &qx86_stuple_q }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_W, &qx86_stuple_ps }} + } + } + }, + { + /* code */ QX86_MNEMONIC_CVTTPD2PI, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_P, &qx86_stuple_q }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_W, &qx86_stuple_pd }} + } + } + }, + /* F2 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_2_2c_sp_f2_os, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* F3 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_2_2c_sp_f3_os, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_2_2c_sp + = +{ + QX86_OPCODE_MAP_INDEX_SP, 3, qx86_opcode_map_2_2c_sp_items +}; + +static qx86_opcode_map_item qx86_opcode_map_2_2d_sp_f3_os_items[] + = +{ + { + /* code */ QX86_MNEMONIC_CVTSS2SI, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_G, &qx86_stuple_d }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_W, &qx86_stuple_ss }} + } + } + }, + { + /* code */ QX86_MNEMONIC_CVTSS2SI, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_G, &qx86_stuple_d }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_W, &qx86_stuple_ss }} + } + } + }, + { + /* code */ QX86_MNEMONIC_CVTSS2SI, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_G, &qx86_stuple_q }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_W, &qx86_stuple_ss }} + } + } + } +}; + +static qx86_opcode_map qx86_opcode_map_2_2d_sp_f3_os + = +{ + QX86_OPCODE_MAP_INDEX_OS, 2, qx86_opcode_map_2_2d_sp_f3_os_items +}; + +static qx86_opcode_map_item qx86_opcode_map_2_2d_sp_f2_os_items[] + = +{ + { + /* code */ QX86_MNEMONIC_CVTSD2SI, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_G, &qx86_stuple_d }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_W, &qx86_stuple_sd }} + } + } + }, + { + /* code */ QX86_MNEMONIC_CVTSD2SI, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_G, &qx86_stuple_d }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_W, &qx86_stuple_sd }} + } + } + }, + { + /* code */ QX86_MNEMONIC_CVTSD2SI, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_G, &qx86_stuple_q }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_W, &qx86_stuple_sd }} + } + } + } +}; + +static qx86_opcode_map qx86_opcode_map_2_2d_sp_f2_os + = +{ + QX86_OPCODE_MAP_INDEX_OS, 2, qx86_opcode_map_2_2d_sp_f2_os_items +}; + +static qx86_opcode_map_item qx86_opcode_map_2_2d_sp_items[] + = +{ + { + /* code */ QX86_MNEMONIC_CVTPS2PI, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_P, &qx86_stuple_q }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_W, &qx86_stuple_ps }} + } + } + }, + { + /* code */ QX86_MNEMONIC_CVTPD2PI, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_P, &qx86_stuple_q }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_W, &qx86_stuple_pd }} + } + } + }, + /* F2 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_2_2d_sp_f2_os, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* F3 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_2_2d_sp_f3_os, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_2_2d_sp + = +{ + QX86_OPCODE_MAP_INDEX_SP, 3, qx86_opcode_map_2_2d_sp_items +}; + +static qx86_opcode_map_item qx86_opcode_map_2_2e_sp_items[] + = +{ + { + /* code */ QX86_MNEMONIC_UCOMISS, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_V, &qx86_stuple_ss }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_W, &qx86_stuple_ss }} + } + } + }, + { + /* code */ QX86_MNEMONIC_UCOMISD, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_V, &qx86_stuple_sd }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_W, &qx86_stuple_sd }} + } + } + }, + /* F2 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* F3 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_2_2e_sp + = +{ + QX86_OPCODE_MAP_INDEX_SP, 3, qx86_opcode_map_2_2e_sp_items +}; + + +static qx86_opcode_map_item qx86_opcode_map_2_2f_sp_items[] + = +{ + { + /* code */ QX86_MNEMONIC_COMISS, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_V, &qx86_stuple_ps }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_W, &qx86_stuple_ps }} + } + } + }, + { + /* code */ QX86_MNEMONIC_COMISS, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_V, &qx86_stuple_pd }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_W, &qx86_stuple_sd }} + } + } + }, + /* F2 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* F3 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_2_2f_sp + = +{ + QX86_OPCODE_MAP_INDEX_SP, 3, qx86_opcode_map_2_2f_sp_items +}; + + + + + + +static qx86_opcode_map_item qx86_opcode_map_2_50_sp_items[] + = +{ + { + /* code */ QX86_MNEMONIC_MOVMSKPS, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_G, &qx86_stuple_d }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_U, &qx86_stuple_ps }} + } + } + }, + { + /* code */ QX86_MNEMONIC_MOVMSKPD, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_G, &qx86_stuple_d }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_U, &qx86_stuple_pd }} + } + } + }, + /* F2 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* F3 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_2_50_sp + = +{ + QX86_OPCODE_MAP_INDEX_SP, 3, qx86_opcode_map_2_50_sp_items +}; + +static qx86_opcode_map_item qx86_opcode_map_2_51_sp_items[] + = +{ + { + /* code */ QX86_MNEMONIC_SQRTPS, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_V, &qx86_stuple_ps }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_W, &qx86_stuple_ps }} + } + } + }, + { + /* code */ QX86_MNEMONIC_SQRTPD, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_V, &qx86_stuple_pd }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_W, &qx86_stuple_pd }} + } + } + }, + { + /* code */ QX86_MNEMONIC_SQRTSD, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_V, &qx86_stuple_sd }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_W, &qx86_stuple_sd }} + } + } + }, + { + /* code */ QX86_MNEMONIC_SQRTSS, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_V, &qx86_stuple_ss }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_W, &qx86_stuple_ss }} + } + } + } +}; + +static qx86_opcode_map qx86_opcode_map_2_51_sp + = +{ + QX86_OPCODE_MAP_INDEX_SP, 3, qx86_opcode_map_2_51_sp_items +}; + +static qx86_opcode_map_item qx86_opcode_map_2_52_sp_items[] + = +{ + { + /* code */ QX86_MNEMONIC_RSQRTPS, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_V, &qx86_stuple_ps }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_W, &qx86_stuple_ps }} + } + } + }, + /* 66 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* F2 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + { + /* code */ QX86_MNEMONIC_RSQRTSS, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_V, &qx86_stuple_ss }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_W, &qx86_stuple_ss }} + } + } + } +}; + +static qx86_opcode_map qx86_opcode_map_2_52_sp + = +{ + QX86_OPCODE_MAP_INDEX_SP, 3, qx86_opcode_map_2_52_sp_items +}; + +static qx86_opcode_map_item qx86_opcode_map_2_53_sp_items[] + = +{ + { + /* code */ QX86_MNEMONIC_RCPPS, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_V, &qx86_stuple_ps }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_W, &qx86_stuple_ps }} + } + } + }, + /* 66 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* F2 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + { + /* code */ QX86_MNEMONIC_RCPSS, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_V, &qx86_stuple_ss }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_W, &qx86_stuple_ss }} + } + } + } +}; + +static qx86_opcode_map qx86_opcode_map_2_53_sp + = +{ + QX86_OPCODE_MAP_INDEX_SP, 3, qx86_opcode_map_2_53_sp_items +}; + +static qx86_opcode_map_item qx86_opcode_map_2_54_sp_items[] + = +{ + { + /* code */ QX86_MNEMONIC_ANDPS, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_amode_V, &qx86_stuple_ps }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_W, &qx86_stuple_ps }} + } + } + }, + { + /* code */ QX86_MNEMONIC_ANDPD, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_amode_V, &qx86_stuple_pd }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_W, &qx86_stuple_pd }} + } + } + }, + /* F2 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* F3 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_2_54_sp + = +{ + QX86_OPCODE_MAP_INDEX_SP, 3, qx86_opcode_map_2_54_sp_items +}; + +static qx86_opcode_map_item qx86_opcode_map_2_55_sp_items[] + = +{ + { + /* code */ QX86_MNEMONIC_ANDNPS, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_amode_V, &qx86_stuple_ps }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_W, &qx86_stuple_ps }} + } + } + }, + { + /* code */ QX86_MNEMONIC_ANDNPD, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_amode_V, &qx86_stuple_pd }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_W, &qx86_stuple_pd }} + } + } + }, + /* F2 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* F3 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_2_55_sp + = +{ + QX86_OPCODE_MAP_INDEX_SP, 3, qx86_opcode_map_2_55_sp_items +}; + +static qx86_opcode_map_item qx86_opcode_map_2_56_sp_items[] + = +{ + { + /* code */ QX86_MNEMONIC_ORPS, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_amode_V, &qx86_stuple_ps }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_W, &qx86_stuple_ps }} + } + } + }, + { + /* code */ QX86_MNEMONIC_ORPD, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_amode_V, &qx86_stuple_pd }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_W, &qx86_stuple_pd }} + } + } + }, + /* F2 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* F3 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_2_56_sp + = +{ + QX86_OPCODE_MAP_INDEX_SP, 3, qx86_opcode_map_2_56_sp_items +}; + + +static qx86_opcode_map_item qx86_opcode_map_2_57_sp_items[] + = +{ + { + /* code */ QX86_MNEMONIC_XORPS, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_amode_V, &qx86_stuple_ps }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_W, &qx86_stuple_ps }} + } + } + }, + { + /* code */ QX86_MNEMONIC_XORPD, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_amode_V, &qx86_stuple_pd }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_W, &qx86_stuple_pd }} + } + } + }, + /* F2 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* F3 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_2_57_sp + = +{ + QX86_OPCODE_MAP_INDEX_SP, 3, qx86_opcode_map_2_57_sp_items +}; + +static qx86_opcode_map_item qx86_opcode_map_2_58_sp_items[] + = +{ + { + /* code */ QX86_MNEMONIC_ADDPS, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_amode_V, &qx86_stuple_ps }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_W, &qx86_stuple_ps }} + } + } + }, + { + /* code */ QX86_MNEMONIC_ADDPD, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_amode_V, &qx86_stuple_pd }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_W, &qx86_stuple_pd }} + } + } + }, + { + /* code */ QX86_MNEMONIC_ADDSD, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_amode_V, &qx86_stuple_sd }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_W, &qx86_stuple_sd }} + } + } + }, + { + /* code */ QX86_MNEMONIC_ADDSS, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_amode_V, &qx86_stuple_ss }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_W, &qx86_stuple_ss }} + } + } + } +}; + +static qx86_opcode_map qx86_opcode_map_2_58_sp + = +{ + QX86_OPCODE_MAP_INDEX_SP, 3, qx86_opcode_map_2_58_sp_items +}; + +static qx86_opcode_map_item qx86_opcode_map_2_59_sp_items[] + = +{ + { + /* code */ QX86_MNEMONIC_MULPS, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_amode_V, &qx86_stuple_ps }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_W, &qx86_stuple_ps }} + } + } + }, + { + /* code */ QX86_MNEMONIC_MULPD, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_amode_V, &qx86_stuple_pd }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_W, &qx86_stuple_pd }} + } + } + }, + { + /* code */ QX86_MNEMONIC_MULSD, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_amode_V, &qx86_stuple_sd }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_W, &qx86_stuple_sd }} + } + } + }, + { + /* code */ QX86_MNEMONIC_MULSS, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_amode_V, &qx86_stuple_ss }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_W, &qx86_stuple_ss }} + } + } + } +}; + +static qx86_opcode_map qx86_opcode_map_2_59_sp + = +{ + QX86_OPCODE_MAP_INDEX_SP, 3, qx86_opcode_map_2_59_sp_items +}; + +static qx86_opcode_map_item qx86_opcode_map_2_5a_sp_items[] + = +{ + { + /* code */ QX86_MNEMONIC_CVTPS2PD, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_V, &qx86_stuple_pd }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_W, &qx86_stuple_ps }} + } + } + }, + { + /* code */ QX86_MNEMONIC_CVTPD2PS, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_V, &qx86_stuple_ps }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_W, &qx86_stuple_pd }} + } + } + }, + { + /* code */ QX86_MNEMONIC_CVTSD2SS, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_V, &qx86_stuple_ss }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_W, &qx86_stuple_sd }} + } + } + }, + { + /* code */ QX86_MNEMONIC_CVTSS2SD, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_V, &qx86_stuple_sd }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_W, &qx86_stuple_ss }} + } + } + } +}; + +static qx86_opcode_map qx86_opcode_map_2_5a_sp + = +{ + QX86_OPCODE_MAP_INDEX_SP, 3, qx86_opcode_map_2_5a_sp_items +}; + +static qx86_opcode_map_item qx86_opcode_map_2_5b_sp_items[] + = +{ + { + /* code */ QX86_MNEMONIC_CVTDQ2PS, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_V, &qx86_stuple_ps }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_W, &qx86_stuple_dq }} + } + } + }, + { + /* code */ QX86_MNEMONIC_CVTPS2DQ, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_V, &qx86_stuple_dq }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_W, &qx86_stuple_ps }} + } + } + }, + /* F2 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + { + /* code */ QX86_MNEMONIC_CVTTPS2DQ, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_V, &qx86_stuple_dq }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_W, &qx86_stuple_ps }} + } + } + } +}; + +static qx86_opcode_map qx86_opcode_map_2_5b_sp + = +{ + QX86_OPCODE_MAP_INDEX_SP, 3, qx86_opcode_map_2_5b_sp_items +}; + +static qx86_opcode_map_item qx86_opcode_map_2_5c_sp_items[] + = +{ + { + /* code */ QX86_MNEMONIC_SUBPS, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_amode_V, &qx86_stuple_ps }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_W, &qx86_stuple_ps }} + } + } + }, + { + /* code */ QX86_MNEMONIC_SUBPD, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_amode_V, &qx86_stuple_pd }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_W, &qx86_stuple_pd }} + } + } + }, + { + /* code */ QX86_MNEMONIC_SUBSD, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_amode_V, &qx86_stuple_sd }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_W, &qx86_stuple_sd }} + } + } + }, + { + /* code */ QX86_MNEMONIC_SUBSS, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_amode_V, &qx86_stuple_ss }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_W, &qx86_stuple_ss }} + } + } + } +}; + +static qx86_opcode_map qx86_opcode_map_2_5c_sp + = +{ + QX86_OPCODE_MAP_INDEX_SP, 3, qx86_opcode_map_2_5c_sp_items +}; + +static qx86_opcode_map_item qx86_opcode_map_2_5d_sp_items[] + = +{ + { + /* code */ QX86_MNEMONIC_MINPS, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_amode_V, &qx86_stuple_ps }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_W, &qx86_stuple_ps }} + } + } + }, + { + /* code */ QX86_MNEMONIC_MINPD, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_amode_V, &qx86_stuple_pd }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_W, &qx86_stuple_pd }} + } + } + }, + { + /* code */ QX86_MNEMONIC_MINSD, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_amode_V, &qx86_stuple_sd }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_W, &qx86_stuple_sd }} + } + } + }, + { + /* code */ QX86_MNEMONIC_MINSS, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_amode_V, &qx86_stuple_ss }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_W, &qx86_stuple_ss }} + } + } + } +}; + +static qx86_opcode_map qx86_opcode_map_2_5d_sp + = +{ + QX86_OPCODE_MAP_INDEX_SP, 3, qx86_opcode_map_2_5d_sp_items +}; + +static qx86_opcode_map_item qx86_opcode_map_2_5e_sp_items[] + = +{ + { + /* code */ QX86_MNEMONIC_DIVPS, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_amode_V, &qx86_stuple_ps }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_W, &qx86_stuple_ps }} + } + } + }, + { + /* code */ QX86_MNEMONIC_DIVPD, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_amode_V, &qx86_stuple_pd }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_W, &qx86_stuple_pd }} + } + } + }, + { + /* code */ QX86_MNEMONIC_DIVSD, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_amode_V, &qx86_stuple_sd }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_W, &qx86_stuple_sd }} + } + } + }, + { + /* code */ QX86_MNEMONIC_DIVSS, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_amode_V, &qx86_stuple_ss }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_W, &qx86_stuple_ss }} + } + } + } +}; + +static qx86_opcode_map qx86_opcode_map_2_5e_sp + = +{ + QX86_OPCODE_MAP_INDEX_SP, 3, qx86_opcode_map_2_5e_sp_items +}; + + +static qx86_opcode_map_item qx86_opcode_map_2_5f_sp_items[] + = +{ + { + /* code */ QX86_MNEMONIC_MAXPS, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_amode_V, &qx86_stuple_ps }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_W, &qx86_stuple_ps }} + } + } + }, + { + /* code */ QX86_MNEMONIC_MAXPD, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_amode_V, &qx86_stuple_pd }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_W, &qx86_stuple_pd }} + } + } + }, + { + /* code */ QX86_MNEMONIC_MAXSD, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_amode_V, &qx86_stuple_sd }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_W, &qx86_stuple_sd }} + } + } + }, + { + /* code */ QX86_MNEMONIC_MAXSS, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_amode_V, &qx86_stuple_ss }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_W, &qx86_stuple_ss }} + } + } + } +}; + +static qx86_opcode_map qx86_opcode_map_2_5f_sp + = +{ + QX86_OPCODE_MAP_INDEX_SP, 3, qx86_opcode_map_2_5f_sp_items +}; + +static qx86_opcode_map_item qx86_opcode_map_2_60_sp_items[] + = +{ + { + /* code */ QX86_MNEMONIC_PUNPCKLBW, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_amode_P, &qx86_stuple_q }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_Q, &qx86_stuple_d }} + } + } + }, + { + /* code */ QX86_MNEMONIC_PUNPCKLBW, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_amode_V, &qx86_stuple_dq }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_W, &qx86_stuple_q }} + } + } + }, + /* F2 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* F3 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_2_60_sp + = +{ + QX86_OPCODE_MAP_INDEX_SP, 3, qx86_opcode_map_2_60_sp_items +}; + +static qx86_opcode_map_item qx86_opcode_map_2_61_sp_items[] + = +{ + { + /* code */ QX86_MNEMONIC_PUNPCKLWD, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_amode_P, &qx86_stuple_q }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_Q, &qx86_stuple_d }} + } + } + }, + { + /* code */ QX86_MNEMONIC_PUNPCKLWD, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_amode_V, &qx86_stuple_dq }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_W, &qx86_stuple_q }} + } + } + }, + /* F2 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* F3 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_2_61_sp + = +{ + QX86_OPCODE_MAP_INDEX_SP, 3, qx86_opcode_map_2_61_sp_items +}; + +static qx86_opcode_map_item qx86_opcode_map_2_62_sp_items[] + = +{ + { + /* code */ QX86_MNEMONIC_PUNPCKLDQ, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_amode_P, &qx86_stuple_q }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_Q, &qx86_stuple_d }} + } + } + }, + { + /* code */ QX86_MNEMONIC_PUNPCKLDQ, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_amode_V, &qx86_stuple_dq }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_W, &qx86_stuple_q }} + } + } + }, + /* F2 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* F3 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_2_62_sp + = +{ + QX86_OPCODE_MAP_INDEX_SP, 3, qx86_opcode_map_2_62_sp_items +}; + +static qx86_opcode_map_item qx86_opcode_map_2_63_sp_items[] + = +{ + { + /* code */ QX86_MNEMONIC_PACKSSWB, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_amode_P, &qx86_stuple_q }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_Q, &qx86_stuple_q }} + } + } + }, + { + /* code */ QX86_MNEMONIC_PACKSSWB, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_amode_V, &qx86_stuple_dq }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_W, &qx86_stuple_dq }} + } + } + }, + /* F2 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* F3 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_2_63_sp + = +{ + QX86_OPCODE_MAP_INDEX_SP, 3, qx86_opcode_map_2_63_sp_items +}; + +static qx86_opcode_map_item qx86_opcode_map_2_64_sp_items[] + = +{ + { + /* code */ QX86_MNEMONIC_PCMPGTB, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_amode_P, &qx86_stuple_q }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_Q, &qx86_stuple_q }} + } + } + }, + { + /* code */ QX86_MNEMONIC_PCMPGTB, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_amode_V, &qx86_stuple_dq }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_W, &qx86_stuple_dq }} + } + } + }, + /* F2 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* F3 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_2_64_sp + = +{ + QX86_OPCODE_MAP_INDEX_SP, 3, qx86_opcode_map_2_64_sp_items +}; + +static qx86_opcode_map_item qx86_opcode_map_2_65_sp_items[] + = +{ + { + /* code */ QX86_MNEMONIC_PCMPGTW, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_amode_P, &qx86_stuple_q }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_Q, &qx86_stuple_q }} + } + } + }, + { + /* code */ QX86_MNEMONIC_PCMPGTW, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_amode_V, &qx86_stuple_dq }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_W, &qx86_stuple_dq }} + } + } + }, + /* F2 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* F3 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_2_65_sp + = +{ + QX86_OPCODE_MAP_INDEX_SP, 3, qx86_opcode_map_2_65_sp_items +}; + +static qx86_opcode_map_item qx86_opcode_map_2_66_sp_items[] + = +{ + { + /* code */ QX86_MNEMONIC_PCMPGTD, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_amode_P, &qx86_stuple_q }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_Q, &qx86_stuple_q }} + } + } + }, + { + /* code */ QX86_MNEMONIC_PCMPGTD, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_amode_V, &qx86_stuple_dq }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_W, &qx86_stuple_dq }} + } + } + }, + /* F2 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* F3 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_2_66_sp + = +{ + QX86_OPCODE_MAP_INDEX_SP, 3, qx86_opcode_map_2_66_sp_items +}; + +static qx86_opcode_map_item qx86_opcode_map_2_67_sp_items[] + = +{ + { + /* code */ QX86_MNEMONIC_PACKUSWB, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_amode_P, &qx86_stuple_q }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_Q, &qx86_stuple_q }} + } + } + }, + { + /* code */ QX86_MNEMONIC_PACKUSWB, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_amode_V, &qx86_stuple_dq }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_W, &qx86_stuple_dq }} + } + } + }, + /* F2 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* F3 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_2_67_sp + = +{ + QX86_OPCODE_MAP_INDEX_SP, 3, qx86_opcode_map_2_67_sp_items +}; + +static qx86_opcode_map_item qx86_opcode_map_2_68_sp_items[] + = +{ + { + /* code */ QX86_MNEMONIC_PUNPCKHBW, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_amode_P, &qx86_stuple_q }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_Q, &qx86_stuple_d }} + } + } + }, + { + /* code */ QX86_MNEMONIC_PUNPCKHBW, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_amode_V, &qx86_stuple_dq }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_W, &qx86_stuple_q }} + } + } + }, + /* F2 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* F3 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_2_68_sp + = +{ + QX86_OPCODE_MAP_INDEX_SP, 3, qx86_opcode_map_2_68_sp_items +}; + +static qx86_opcode_map_item qx86_opcode_map_2_69_sp_items[] + = +{ + { + /* code */ QX86_MNEMONIC_PUNPCKHWD, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_amode_P, &qx86_stuple_q }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_Q, &qx86_stuple_d }} + } + } + }, + { + /* code */ QX86_MNEMONIC_PUNPCKHWD, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_amode_V, &qx86_stuple_dq }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_W, &qx86_stuple_q }} + } + } + }, + /* F2 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* F3 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_2_69_sp + = +{ + QX86_OPCODE_MAP_INDEX_SP, 3, qx86_opcode_map_2_69_sp_items +}; + +static qx86_opcode_map_item qx86_opcode_map_2_6a_sp_items[] + = +{ + { + /* code */ QX86_MNEMONIC_PUNPCKHDQ, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_amode_P, &qx86_stuple_q }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_Q, &qx86_stuple_d }} + } + } + }, + { + /* code */ QX86_MNEMONIC_PUNPCKHDQ, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_amode_V, &qx86_stuple_dq }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_W, &qx86_stuple_q }} + } + } + }, + /* F2 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* F3 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_2_6a_sp + = +{ + QX86_OPCODE_MAP_INDEX_SP, 3, qx86_opcode_map_2_6a_sp_items +}; + +static qx86_opcode_map_item qx86_opcode_map_2_6b_sp_items[] + = +{ + { + /* code */ QX86_MNEMONIC_PACKSSDW, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_amode_P, &qx86_stuple_q }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_Q, &qx86_stuple_q }} + } + } + }, + { + /* code */ QX86_MNEMONIC_PACKSSDW, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_amode_V, &qx86_stuple_dq }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_W, &qx86_stuple_dq }} + } + } + }, + /* F2 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* F3 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_2_6b_sp + = +{ + QX86_OPCODE_MAP_INDEX_SP, 3, qx86_opcode_map_2_6b_sp_items +}; + +static qx86_opcode_map_item qx86_opcode_map_2_6c_sp_items[] + = +{ + /* 00 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + { + /* code */ QX86_MNEMONIC_PUNPCKLQDQ, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_amode_V, &qx86_stuple_dq }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_W, &qx86_stuple_q }} + } + } + }, + /* F2 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* F3 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_2_6c_sp + = +{ + QX86_OPCODE_MAP_INDEX_SP, 3, qx86_opcode_map_2_6c_sp_items +}; + +static qx86_opcode_map_item qx86_opcode_map_2_6d_sp_items[] + = +{ + /* 00 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + { + /* code */ QX86_MNEMONIC_PUNPCKHQDQ, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_amode_V, &qx86_stuple_dq }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_W, &qx86_stuple_q }} + } + } + }, + /* F2 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* F3 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_2_6d_sp + = +{ + QX86_OPCODE_MAP_INDEX_SP, 3, qx86_opcode_map_2_6d_sp_items +}; + +static qx86_opcode_map_item qx86_opcode_map_2_6e_sp_00_os_items[] + = +{ + { + /* code */ QX86_MNEMONIC_MOVD, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_P, &qx86_stuple_q }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_E, &qx86_stuple_d }} + } + } + }, + { + /* code */ QX86_MNEMONIC_MOVD, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_P, &qx86_stuple_q }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_E, &qx86_stuple_d }} + } + } + }, + { + /* code */ QX86_MNEMONIC_MOVD, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_P, &qx86_stuple_q }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_E, &qx86_stuple_q }} + } + } + } +}; + +static qx86_opcode_map qx86_opcode_map_2_6e_sp_00_os + = +{ + QX86_OPCODE_MAP_INDEX_OS, 2, qx86_opcode_map_2_6e_sp_00_os_items +}; + +static qx86_opcode_map_item qx86_opcode_map_2_6e_sp_66_os_items[] + = +{ + { + /* code */ QX86_MNEMONIC_MOVD, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_V, &qx86_stuple_dq }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_E, &qx86_stuple_d }} + } + } + }, + { + /* code */ QX86_MNEMONIC_MOVD, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_V, &qx86_stuple_dq }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_E, &qx86_stuple_d }} + } + } + }, + { + /* code */ QX86_MNEMONIC_MOVD, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_V, &qx86_stuple_dq }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_E, &qx86_stuple_q }} + } + } + } +}; + +static qx86_opcode_map qx86_opcode_map_2_6e_sp_66_os + = +{ + QX86_OPCODE_MAP_INDEX_OS, 2, qx86_opcode_map_2_6e_sp_66_os_items +}; + +static qx86_opcode_map_item qx86_opcode_map_2_6e_sp_items[] + = +{ + /* 00 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_2_6e_sp_00_os, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 66 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_2_6e_sp_66_os, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* F2 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* F3 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_2_6e_sp + = +{ + QX86_OPCODE_MAP_INDEX_SP, 3, qx86_opcode_map_2_6e_sp_items +}; + + +static qx86_opcode_map_item qx86_opcode_map_2_6f_sp_items[] + = +{ + { + /* code */ QX86_MNEMONIC_MOVQ, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_P, &qx86_stuple_q }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_Q, &qx86_stuple_q }} + } + } + }, + { + /* code */ QX86_MNEMONIC_MOVDQA, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_V, &qx86_stuple_dq }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_W, &qx86_stuple_dq }} + } + } + }, + /* F2 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + { + /* code */ QX86_MNEMONIC_MOVDQU, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_V, &qx86_stuple_dq }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_W, &qx86_stuple_dq }} + } + } + } +}; + +static qx86_opcode_map qx86_opcode_map_2_6f_sp + = +{ + QX86_OPCODE_MAP_INDEX_SP, 3, qx86_opcode_map_2_6f_sp_items +}; + +static qx86_opcode_map_item qx86_opcode_map_2_70_sp_items[] + = +{ + { + /* code */ QX86_MNEMONIC_PSHUFW, + /* map */ 0, + + /* operandCount */ 3, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_P, &qx86_stuple_q }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_Q, &qx86_stuple_q }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_I, &qx86_stuple_b }} + } + } + }, + { + /* code */ QX86_MNEMONIC_PSHUFD, + /* map */ 0, + + /* operandCount */ 3, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_V, &qx86_stuple_dq }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_W, &qx86_stuple_dq }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_I, &qx86_stuple_b }} + } + } + }, + { + /* code */ QX86_MNEMONIC_PSHUFLW, + /* map */ 0, + + /* operandCount */ 3, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_V, &qx86_stuple_q }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_W, &qx86_stuple_q }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_I, &qx86_stuple_b }} + } + } + }, + { + /* code */ QX86_MNEMONIC_PSHUFHW, + /* map */ 0, + + /* operandCount */ 3, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_V, &qx86_stuple_q }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_W, &qx86_stuple_q }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_I, &qx86_stuple_b }} + } + } + } +}; + +static qx86_opcode_map qx86_opcode_map_2_70_sp + = +{ + QX86_OPCODE_MAP_INDEX_SP, 3, qx86_opcode_map_2_70_sp_items +}; + +static qx86_opcode_map_item qx86_opcode_map_2_71_sp_items[] + = +{ + /* 00 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_M12, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 66 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_M12, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* F2 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* F3 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_2_71_sp + = +{ + QX86_OPCODE_MAP_INDEX_SP, 3, qx86_opcode_map_2_71_sp_items +}; + +static qx86_opcode_map_item qx86_opcode_map_2_72_sp_items[] + = +{ + /* 00 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_M13, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 66 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_M13, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* F2 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* F3 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_2_72_sp + = +{ + QX86_OPCODE_MAP_INDEX_SP, 3, qx86_opcode_map_2_72_sp_items +}; + +static qx86_opcode_map_item qx86_opcode_map_2_73_sp_items[] + = +{ + /* 00 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_M14, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 66 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_M14, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* F2 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* F3 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_2_73_sp + = +{ + QX86_OPCODE_MAP_INDEX_SP, 3, qx86_opcode_map_2_73_sp_items +}; + +static qx86_opcode_map_item qx86_opcode_map_2_74_sp_items[] + = +{ + { + /* code */ QX86_MNEMONIC_PCMPEQB, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_amode_P, &qx86_stuple_q }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_Q, &qx86_stuple_q }} + } + } + }, + { + /* code */ QX86_MNEMONIC_PCMPEQB, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_amode_V, &qx86_stuple_dq }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_W, &qx86_stuple_dq }} + } + } + }, + /* F2 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* F3 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_2_74_sp + = +{ + QX86_OPCODE_MAP_INDEX_SP, 3, qx86_opcode_map_2_74_sp_items +}; + +static qx86_opcode_map_item qx86_opcode_map_2_75_sp_items[] + = +{ + { + /* code */ QX86_MNEMONIC_PCMPEQW, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_amode_P, &qx86_stuple_q }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_Q, &qx86_stuple_q }} + } + } + }, + { + /* code */ QX86_MNEMONIC_PCMPEQW, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_amode_V, &qx86_stuple_dq }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_W, &qx86_stuple_dq }} + } + } + }, + /* F2 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* F3 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_2_75_sp + = +{ + QX86_OPCODE_MAP_INDEX_SP, 3, qx86_opcode_map_2_75_sp_items +}; + +static qx86_opcode_map_item qx86_opcode_map_2_76_sp_items[] + = +{ + { + /* code */ QX86_MNEMONIC_PCMPEQD, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_amode_P, &qx86_stuple_q }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_Q, &qx86_stuple_q }} + } + } + }, + { + /* code */ QX86_MNEMONIC_PCMPEQD, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_amode_V, &qx86_stuple_dq }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_W, &qx86_stuple_dq }} + } + } + }, + /* F2 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* F3 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_2_76_sp + = +{ + QX86_OPCODE_MAP_INDEX_SP, 3, qx86_opcode_map_2_76_sp_items +}; + +static qx86_opcode_map_item qx86_opcode_map_2_77_sp_items[] + = +{ + { + /* code */ QX86_MNEMONIC_EMMS, + /* map */ 0, + + /* operandCount */ 0, + /* placeHolder */ {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 66 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* F2 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* F3 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_2_77_sp + = +{ + QX86_OPCODE_MAP_INDEX_SP, 3, qx86_opcode_map_2_77_sp_items +}; + +static qx86_opcode_map_item qx86_opcode_map_2_78_sp_00_cs_items[] + = +{ + /* 00 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + { + /* code */ QX86_MNEMONIC_VMREAD, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_E, &qx86_stuple_d }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_G, &qx86_stuple_d }} + } + } + }, + { + /* code */ QX86_MNEMONIC_VMREAD, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_E, &qx86_stuple_q }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_G, &qx86_stuple_q }} + } + } + } +}; + +static qx86_opcode_map qx86_opcode_map_2_78_sp_00_cs + = +{ + QX86_OPCODE_MAP_INDEX_CS, 2, qx86_opcode_map_2_78_sp_00_cs_items +}; + +static qx86_opcode_map_item qx86_opcode_map_2_78_sp_items[] + = +{ + /* 00 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_2_78_sp_00_cs, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 66 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_M17, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + { + /* code */ QX86_MNEMONIC_INSERTQ, + /* map */ 0, + + /* operandCount */ 4, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_V, &qx86_stuple_dq }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_U, &qx86_stuple_q }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_I, &qx86_stuple_b }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_I, &qx86_stuple_b }} + } + } + }, + /* F3 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_2_78_sp + = +{ + QX86_OPCODE_MAP_INDEX_SP, 3, qx86_opcode_map_2_78_sp_items +}; + +static qx86_opcode_map_item qx86_opcode_map_2_79_sp_00_cs_items[] + = +{ + /* 00 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + { + /* code */ QX86_MNEMONIC_VMWRITE, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_G, &qx86_stuple_d }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_E, &qx86_stuple_d }} + } + } + }, + { + /* code */ QX86_MNEMONIC_VMWRITE, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_G, &qx86_stuple_q }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_E, &qx86_stuple_q }} + } + } + } +}; + +static qx86_opcode_map qx86_opcode_map_2_79_sp_00_cs + = +{ + QX86_OPCODE_MAP_INDEX_CS, 2, qx86_opcode_map_2_79_sp_00_cs_items +}; + +static qx86_opcode_map_item qx86_opcode_map_2_79_sp_items[] + = +{ + /* 00 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_2_79_sp_00_cs, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + { + /* code */ QX86_MNEMONIC_EXTRQ, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_amode_V, &qx86_stuple_dq }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_U, &qx86_stuple_q }} + } + } + }, + { + /* code */ QX86_MNEMONIC_INSERTQ, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_V, &qx86_stuple_dq }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_U, &qx86_stuple_dq }} + } + } + }, + /* F3 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_2_79_sp + = +{ + QX86_OPCODE_MAP_INDEX_SP, 3, qx86_opcode_map_2_79_sp_items +}; + +static qx86_opcode_map_item qx86_opcode_map_2_7c_sp_items[] + = +{ + /* 00 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + { + /* code */ QX86_MNEMONIC_HADDPD, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_amode_V, &qx86_stuple_pd }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_W, &qx86_stuple_pd }} + } + } + }, + { + /* code */ QX86_MNEMONIC_HADDPS, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_amode_V, &qx86_stuple_ps }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_W, &qx86_stuple_ps }} + } + } + }, + /* F3 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_2_7c_sp + = +{ + QX86_OPCODE_MAP_INDEX_SP, 3, qx86_opcode_map_2_7c_sp_items +}; + +static qx86_opcode_map_item qx86_opcode_map_2_7d_sp_items[] + = +{ + /* 00 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + { + /* code */ QX86_MNEMONIC_HSUBPD, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_amode_V, &qx86_stuple_pd }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_W, &qx86_stuple_pd }} + } + } + }, + { + /* code */ QX86_MNEMONIC_HSUBPS, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_amode_V, &qx86_stuple_ps }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_W, &qx86_stuple_ps }} + } + } + }, + /* F3 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_2_7d_sp + = +{ + QX86_OPCODE_MAP_INDEX_SP, 3, qx86_opcode_map_2_7d_sp_items +}; + +static qx86_opcode_map_item qx86_opcode_map_2_7e_sp_00_os_items[] + = +{ + { + /* code */ QX86_MNEMONIC_MOVD, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_E, &qx86_stuple_d }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_P, &qx86_stuple_d }} + } + } + }, + { + /* code */ QX86_MNEMONIC_MOVD, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_E, &qx86_stuple_d }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_P, &qx86_stuple_d }} + } + } + }, + { + /* code */ QX86_MNEMONIC_MOVD, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_E, &qx86_stuple_q }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_P, &qx86_stuple_q }} + } + } + } +}; + +static qx86_opcode_map qx86_opcode_map_2_7e_sp_00_os + = +{ + QX86_OPCODE_MAP_INDEX_OS, 2, qx86_opcode_map_2_7e_sp_00_os_items +}; + +static qx86_opcode_map_item qx86_opcode_map_2_7e_sp_66_os_items[] + = +{ + { + /* code */ QX86_MNEMONIC_MOVD, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_E, &qx86_stuple_d }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_V, &qx86_stuple_d }} + } + } + }, + { + /* code */ QX86_MNEMONIC_MOVD, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_E, &qx86_stuple_d }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_V, &qx86_stuple_d }} + } + } + }, + { + /* code */ QX86_MNEMONIC_MOVD, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_E, &qx86_stuple_q }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_V, &qx86_stuple_q }} + } + } + } +}; + +static qx86_opcode_map qx86_opcode_map_2_7e_sp_66_os + = +{ + QX86_OPCODE_MAP_INDEX_OS, 2, qx86_opcode_map_2_7e_sp_66_os_items +}; + +static qx86_opcode_map_item qx86_opcode_map_2_7e_sp_items[] + = +{ + /* 00 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_2_7e_sp_00_os, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 66 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_2_7e_sp_66_os, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* F2 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + { + /* code */ QX86_MNEMONIC_MOVQ, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_V, &qx86_stuple_q }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_W, &qx86_stuple_q }} + } + } + } +}; + +static qx86_opcode_map qx86_opcode_map_2_7e_sp + = +{ + QX86_OPCODE_MAP_INDEX_SP, 3, qx86_opcode_map_2_7e_sp_items +}; + + +static qx86_opcode_map_item qx86_opcode_map_2_7f_sp_items[] + = +{ + { + /* code */ QX86_MNEMONIC_MOVQ, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_Q, &qx86_stuple_q }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_P, &qx86_stuple_q }} + } + } + }, + { + /* code */ QX86_MNEMONIC_MOVDQA, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_W, &qx86_stuple_dq }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_V, &qx86_stuple_dq }} + } + } + }, + /* F2 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + { + /* code */ QX86_MNEMONIC_MOVDQU, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_W, &qx86_stuple_dq }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_V, &qx86_stuple_dq }} + } + } + } +}; + +static qx86_opcode_map qx86_opcode_map_2_7f_sp + = +{ + QX86_OPCODE_MAP_INDEX_SP, 3, qx86_opcode_map_2_7f_sp_items +}; + + + + +static qx86_opcode_map_item qx86_opcode_map_2_b8_sp_items[] + = +{ + /* 00 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 66 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* F2 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + { + /* code */ QX86_MNEMONIC_POPCNT, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_G, &qx86_stuple_v }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_E, &qx86_stuple_v }} + } + } + } +}; + +static qx86_opcode_map qx86_opcode_map_2_b8_sp + = +{ + QX86_OPCODE_MAP_INDEX_SP, 3, qx86_opcode_map_2_b8_sp_items +}; + +static qx86_opcode_map_item qx86_opcode_map_2_b9_sp_items[] + = +{ + /* 00 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_M10, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 66 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_M10, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* F2 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* F3 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_2_b9_sp + = +{ + QX86_OPCODE_MAP_INDEX_SP, 3, qx86_opcode_map_2_b9_sp_items +}; + +static qx86_opcode_map_item qx86_opcode_map_2_ba_sp_items[] + = +{ + /* 00 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_M8, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 66 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_M8, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* F2 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* F3 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_2_ba_sp + = +{ + QX86_OPCODE_MAP_INDEX_SP, 3, qx86_opcode_map_2_ba_sp_items +}; + +static qx86_opcode_map_item qx86_opcode_map_2_bb_sp_items[] + = +{ + { + /* code */ QX86_MNEMONIC_BTC, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_amode_E, &qx86_stuple_v }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_G, &qx86_stuple_v }} + } + } + }, + { + /* code */ QX86_MNEMONIC_BTC, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_amode_E, &qx86_stuple_v }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_G, &qx86_stuple_v }} + } + } + }, + /* F2 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* F3 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_2_bb_sp + = +{ + QX86_OPCODE_MAP_INDEX_SP, 3, qx86_opcode_map_2_bb_sp_items +}; + +static qx86_opcode_map_item qx86_opcode_map_2_bc_sp_items[] + = +{ + { + /* code */ QX86_MNEMONIC_BSF, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_G, &qx86_stuple_v }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_E, &qx86_stuple_v }} + } + } + }, + { + /* code */ QX86_MNEMONIC_BSF, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_G, &qx86_stuple_v }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_E, &qx86_stuple_v }} + } + } + }, + /* F2 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* F3 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_2_bc_sp + = +{ + QX86_OPCODE_MAP_INDEX_SP, 3, qx86_opcode_map_2_bc_sp_items +}; + +static qx86_opcode_map_item qx86_opcode_map_2_bd_sp_items[] + = +{ + { + /* code */ QX86_MNEMONIC_BSR, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_G, &qx86_stuple_v }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_E, &qx86_stuple_v }} + } + } + }, + { + /* code */ QX86_MNEMONIC_BSR, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_G, &qx86_stuple_v }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_E, &qx86_stuple_v }} + } + } + }, + /* F2 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + { + /* code */ QX86_MNEMONIC_LZCNT, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_G, &qx86_stuple_v }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_E, &qx86_stuple_v }} + } + } + } +}; + +static qx86_opcode_map qx86_opcode_map_2_bd_sp + = +{ + QX86_OPCODE_MAP_INDEX_SP, 3, qx86_opcode_map_2_bd_sp_items +}; + +static qx86_opcode_map_item qx86_opcode_map_2_be_sp_items[] + = +{ + { + /* code */ QX86_MNEMONIC_MOVSX, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_G, &qx86_stuple_v }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_E, &qx86_stuple_b }} + } + } + }, + { + /* code */ QX86_MNEMONIC_MOVSX, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_G, &qx86_stuple_v }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_E, &qx86_stuple_b }} + } + } + }, + /* F2 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* F3 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_2_be_sp + = +{ + QX86_OPCODE_MAP_INDEX_SP, 3, qx86_opcode_map_2_be_sp_items +}; + + +static qx86_opcode_map_item qx86_opcode_map_2_bf_sp_items[] + = +{ + { + /* code */ QX86_MNEMONIC_MOVSX, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_G, &qx86_stuple_v }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_E, &qx86_stuple_w }} + } + } + }, + { + /* code */ QX86_MNEMONIC_MOVSX, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_G, &qx86_stuple_v }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_E, &qx86_stuple_w }} + } + } + }, + /* F2 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* F3 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_2_bf_sp + = +{ + QX86_OPCODE_MAP_INDEX_SP, 3, qx86_opcode_map_2_bf_sp_items +}; + +static qx86_opcode_map_item qx86_opcode_map_2_c2_sp_items[] + = +{ + { + /* code */ QX86_MNEMONIC_CMPPS, + /* map */ 0, + + /* operandCount */ 3, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_amode_V, &qx86_stuple_ps }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_W, &qx86_stuple_ps }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_I, &qx86_stuple_b }} + } + } + }, + { + /* code */ QX86_MNEMONIC_CMPPD, + /* map */ 0, + + /* operandCount */ 3, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_amode_V, &qx86_stuple_pd }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_W, &qx86_stuple_pd }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_I, &qx86_stuple_b }} + } + } + }, + { + /* code */ QX86_MNEMONIC_CMPSD_SSE, + /* map */ 0, + + /* operandCount */ 3, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_amode_V, &qx86_stuple_sd }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_W, &qx86_stuple_sd }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_I, &qx86_stuple_b }} + } + } + }, + { + /* code */ QX86_MNEMONIC_CMPSS, + /* map */ 0, + + /* operandCount */ 3, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_amode_V, &qx86_stuple_ss }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_W, &qx86_stuple_ss }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_I, &qx86_stuple_b }} + } + } + } +}; + +static qx86_opcode_map qx86_opcode_map_2_c2_sp + = +{ + QX86_OPCODE_MAP_INDEX_SP, 3, qx86_opcode_map_2_c2_sp_items +}; + +static qx86_opcode_map_item qx86_opcode_map_2_c3_sp_00_os_items[] + = +{ + { + /* code */ QX86_MNEMONIC_MOVNTI, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_M, &qx86_stuple_d }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_G, &qx86_stuple_d }} + } + } + }, + { + /* code */ QX86_MNEMONIC_MOVNTI, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_M, &qx86_stuple_d }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_G, &qx86_stuple_d }} + } + } + }, + { + /* code */ QX86_MNEMONIC_MOVNTI, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_M, &qx86_stuple_q }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_G, &qx86_stuple_q }} + } + } + } +}; + +static qx86_opcode_map qx86_opcode_map_2_c3_sp_00_os + = +{ + QX86_OPCODE_MAP_INDEX_OS, 2, qx86_opcode_map_2_c3_sp_00_os_items +}; + +static qx86_opcode_map_item qx86_opcode_map_2_c3_sp_items[] + = +{ + /* 00 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_2_c3_sp_00_os, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 66 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* F2 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* F3 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_2_c3_sp + = +{ + QX86_OPCODE_MAP_INDEX_SP, 3, qx86_opcode_map_2_c3_sp_items +}; + +static qx86_opcode_map_item qx86_opcode_map_2_c4_sp_items[] + = +{ + { + /* code */ QX86_MNEMONIC_PINSRW, + /* map */ 0, + + /* operandCount */ 3, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_amode_P, &qx86_stuple_q }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_E, &qx86_stuple_w }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_I, &qx86_stuple_b }} + } + } + }, + { + /* code */ QX86_MNEMONIC_PINSRW, + /* map */ 0, + + /* operandCount */ 3, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_amode_V, &qx86_stuple_dq }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_E, &qx86_stuple_w }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_I, &qx86_stuple_b }} + } + } + }, + /* F2 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* F3 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_2_c4_sp + = +{ + QX86_OPCODE_MAP_INDEX_SP, 3, qx86_opcode_map_2_c4_sp_items +}; + +static qx86_opcode_map_item qx86_opcode_map_2_c5_sp_items[] + = +{ + { + /* code */ QX86_MNEMONIC_PEXTRW, + /* map */ 0, + + /* operandCount */ 3, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_G, &qx86_stuple_d }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_N, &qx86_stuple_q }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_I, &qx86_stuple_b }} + } + } + }, + { + /* code */ QX86_MNEMONIC_PEXTRW, + /* map */ 0, + + /* operandCount */ 3, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_G, &qx86_stuple_d }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_U, &qx86_stuple_dq }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_I, &qx86_stuple_b }} + } + } + }, + /* F2 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* F3 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_2_c5_sp + = +{ + QX86_OPCODE_MAP_INDEX_SP, 3, qx86_opcode_map_2_c5_sp_items +}; + +static qx86_opcode_map_item qx86_opcode_map_2_c6_sp_items[] + = +{ + { + /* code */ QX86_MNEMONIC_SHUFPS, + /* map */ 0, + + /* operandCount */ 3, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_amode_V, &qx86_stuple_ps }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_W, &qx86_stuple_ps }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_I, &qx86_stuple_b }} + } + } + }, + { + /* code */ QX86_MNEMONIC_SHUFPD, + /* map */ 0, + + /* operandCount */ 3, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_amode_V, &qx86_stuple_pd }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_W, &qx86_stuple_pd }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_I, &qx86_stuple_b }} + } + } + }, + /* F2 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* F3 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_2_c6_sp + = +{ + QX86_OPCODE_MAP_INDEX_SP, 3, qx86_opcode_map_2_c6_sp_items +}; + + +static qx86_opcode_map_item qx86_opcode_map_2_d0_sp_items[] + = +{ + /* 00 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + { + /* code */ QX86_MNEMONIC_ADDSUBPD, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_amode_V, &qx86_stuple_pd }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_W, &qx86_stuple_pd }} + } + } + }, + { + /* code */ QX86_MNEMONIC_ADDSUBPS, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_amode_V, &qx86_stuple_ps }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_W, &qx86_stuple_ps }} + } + } + }, + /* F3 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_2_d0_sp + = +{ + QX86_OPCODE_MAP_INDEX_SP, 3, qx86_opcode_map_2_d0_sp_items +}; + +static qx86_opcode_map_item qx86_opcode_map_2_d1_sp_items[] + = +{ + { + /* code */ QX86_MNEMONIC_PSRLW, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_amode_P, &qx86_stuple_q }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_Q, &qx86_stuple_q }} + } + } + }, + { + /* code */ QX86_MNEMONIC_PSRLW, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_amode_V, &qx86_stuple_dq }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_W, &qx86_stuple_dq }} + } + } + }, + /* F2 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* F3 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_2_d1_sp + = +{ + QX86_OPCODE_MAP_INDEX_SP, 3, qx86_opcode_map_2_d1_sp_items +}; + +static qx86_opcode_map_item qx86_opcode_map_2_d2_sp_items[] + = +{ + { + /* code */ QX86_MNEMONIC_PSRLD, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_amode_P, &qx86_stuple_q }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_Q, &qx86_stuple_q }} + } + } + }, + { + /* code */ QX86_MNEMONIC_PSRLD, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_amode_V, &qx86_stuple_dq }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_W, &qx86_stuple_dq }} + } + } + }, + /* F2 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* F3 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_2_d2_sp + = +{ + QX86_OPCODE_MAP_INDEX_SP, 3, qx86_opcode_map_2_d2_sp_items +}; + +static qx86_opcode_map_item qx86_opcode_map_2_d3_sp_items[] + = +{ + { + /* code */ QX86_MNEMONIC_PSRLQ, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_amode_P, &qx86_stuple_q }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_Q, &qx86_stuple_q }} + } + } + }, + { + /* code */ QX86_MNEMONIC_PSRLQ, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_amode_V, &qx86_stuple_dq }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_W, &qx86_stuple_dq }} + } + } + }, + /* F2 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* F3 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_2_d3_sp + = +{ + QX86_OPCODE_MAP_INDEX_SP, 3, qx86_opcode_map_2_d3_sp_items +}; + +static qx86_opcode_map_item qx86_opcode_map_2_d4_sp_items[] + = +{ + { + /* code */ QX86_MNEMONIC_PADDQ, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_amode_P, &qx86_stuple_q }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_Q, &qx86_stuple_q }} + } + } + }, + { + /* code */ QX86_MNEMONIC_PADDQ, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_amode_V, &qx86_stuple_dq }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_W, &qx86_stuple_dq }} + } + } + }, + /* F2 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* F3 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_2_d4_sp + = +{ + QX86_OPCODE_MAP_INDEX_SP, 3, qx86_opcode_map_2_d4_sp_items +}; + +static qx86_opcode_map_item qx86_opcode_map_2_d5_sp_items[] + = +{ + { + /* code */ QX86_MNEMONIC_PMULLW, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_amode_P, &qx86_stuple_q }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_Q, &qx86_stuple_q }} + } + } + }, + { + /* code */ QX86_MNEMONIC_PMULLW, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_amode_V, &qx86_stuple_dq }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_W, &qx86_stuple_dq }} + } + } + }, + /* F2 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* F3 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_2_d5_sp + = +{ + QX86_OPCODE_MAP_INDEX_SP, 3, qx86_opcode_map_2_d5_sp_items +}; + +static qx86_opcode_map_item qx86_opcode_map_2_d6_sp_items[] + = +{ + /* 00 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + { + /* code */ QX86_MNEMONIC_MOVQ, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_W, &qx86_stuple_q }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_V, &qx86_stuple_q }} + } + } + }, + { + /* code */ QX86_MNEMONIC_MOVDQ2Q, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_P, &qx86_stuple_q }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_U, &qx86_stuple_q }} + } + } + }, + { + /* code */ QX86_MNEMONIC_MOVQ2DQ, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_V, &qx86_stuple_dq }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_N, &qx86_stuple_q }} + } + } + } +}; + +static qx86_opcode_map qx86_opcode_map_2_d6_sp + = +{ + QX86_OPCODE_MAP_INDEX_SP, 3, qx86_opcode_map_2_d6_sp_items +}; + +static qx86_opcode_map_item qx86_opcode_map_2_d7_sp_items[] + = +{ + { + /* code */ QX86_MNEMONIC_PMOVMSKB, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_G, &qx86_stuple_d }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_N, &qx86_stuple_q }} + } + } + }, + { + /* code */ QX86_MNEMONIC_PMOVMSKB, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_G, &qx86_stuple_d }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_U, &qx86_stuple_dq }} + } + } + }, + /* F2 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* F3 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_2_d7_sp + = +{ + QX86_OPCODE_MAP_INDEX_SP, 3, qx86_opcode_map_2_d7_sp_items +}; + +static qx86_opcode_map_item qx86_opcode_map_2_d8_sp_items[] + = +{ + { + /* code */ QX86_MNEMONIC_PSUBUSB, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_amode_P, &qx86_stuple_q }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_Q, &qx86_stuple_q }} + } + } + }, + { + /* code */ QX86_MNEMONIC_PSUBUSB, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_amode_V, &qx86_stuple_dq }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_W, &qx86_stuple_dq }} + } + } + }, + /* F2 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* F3 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_2_d8_sp + = +{ + QX86_OPCODE_MAP_INDEX_SP, 3, qx86_opcode_map_2_d8_sp_items +}; + +static qx86_opcode_map_item qx86_opcode_map_2_d9_sp_items[] + = +{ + { + /* code */ QX86_MNEMONIC_PSUBUSW, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_amode_P, &qx86_stuple_q }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_Q, &qx86_stuple_q }} + } + } + }, + { + /* code */ QX86_MNEMONIC_PSUBUSW, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_amode_V, &qx86_stuple_dq }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_W, &qx86_stuple_dq }} + } + } + }, + /* F2 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* F3 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_2_d9_sp + = +{ + QX86_OPCODE_MAP_INDEX_SP, 3, qx86_opcode_map_2_d9_sp_items +}; + +static qx86_opcode_map_item qx86_opcode_map_2_da_sp_items[] + = +{ + { + /* code */ QX86_MNEMONIC_PMINUB, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_amode_P, &qx86_stuple_q }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_Q, &qx86_stuple_q }} + } + } + }, + { + /* code */ QX86_MNEMONIC_PMINUB, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_amode_V, &qx86_stuple_dq }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_W, &qx86_stuple_dq }} + } + } + }, + /* F2 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* F3 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_2_da_sp + = +{ + QX86_OPCODE_MAP_INDEX_SP, 3, qx86_opcode_map_2_da_sp_items +}; + +static qx86_opcode_map_item qx86_opcode_map_2_db_sp_items[] + = +{ + { + /* code */ QX86_MNEMONIC_PAND, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_amode_P, &qx86_stuple_q }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_Q, &qx86_stuple_q }} + } + } + }, + { + /* code */ QX86_MNEMONIC_PAND, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_amode_V, &qx86_stuple_dq }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_W, &qx86_stuple_dq }} + } + } + }, + /* F2 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* F3 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_2_db_sp + = +{ + QX86_OPCODE_MAP_INDEX_SP, 3, qx86_opcode_map_2_db_sp_items +}; + +static qx86_opcode_map_item qx86_opcode_map_2_dc_sp_items[] + = +{ + { + /* code */ QX86_MNEMONIC_PADDUSB, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_amode_P, &qx86_stuple_q }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_Q, &qx86_stuple_q }} + } + } + }, + { + /* code */ QX86_MNEMONIC_PADDUSB, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_amode_V, &qx86_stuple_dq }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_W, &qx86_stuple_dq }} + } + } + }, + /* F2 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* F3 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_2_dc_sp + = +{ + QX86_OPCODE_MAP_INDEX_SP, 3, qx86_opcode_map_2_dc_sp_items +}; + +static qx86_opcode_map_item qx86_opcode_map_2_dd_sp_items[] + = +{ + { + /* code */ QX86_MNEMONIC_PADDUSW, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_amode_P, &qx86_stuple_q }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_Q, &qx86_stuple_q }} + } + } + }, + { + /* code */ QX86_MNEMONIC_PADDUSW, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_amode_V, &qx86_stuple_dq }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_W, &qx86_stuple_dq }} + } + } + }, + /* F2 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* F3 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_2_dd_sp + = +{ + QX86_OPCODE_MAP_INDEX_SP, 3, qx86_opcode_map_2_dd_sp_items +}; + +static qx86_opcode_map_item qx86_opcode_map_2_de_sp_items[] + = +{ + { + /* code */ QX86_MNEMONIC_PMAXUB, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_amode_P, &qx86_stuple_q }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_Q, &qx86_stuple_q }} + } + } + }, + { + /* code */ QX86_MNEMONIC_PMAXUB, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_amode_V, &qx86_stuple_dq }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_W, &qx86_stuple_dq }} + } + } + }, + /* F2 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* F3 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_2_de_sp + = +{ + QX86_OPCODE_MAP_INDEX_SP, 3, qx86_opcode_map_2_de_sp_items +}; + + +static qx86_opcode_map_item qx86_opcode_map_2_df_sp_items[] + = +{ + { + /* code */ QX86_MNEMONIC_PANDN, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_amode_P, &qx86_stuple_q }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_Q, &qx86_stuple_q }} + } + } + }, + { + /* code */ QX86_MNEMONIC_PANDN, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_amode_V, &qx86_stuple_dq }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_W, &qx86_stuple_dq }} + } + } + }, + /* F2 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* F3 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_2_df_sp + = +{ + QX86_OPCODE_MAP_INDEX_SP, 3, qx86_opcode_map_2_df_sp_items +}; + +static qx86_opcode_map_item qx86_opcode_map_2_e0_sp_items[] + = +{ + { + /* code */ QX86_MNEMONIC_PAVGB, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_amode_P, &qx86_stuple_q }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_Q, &qx86_stuple_q }} + } + } + }, + { + /* code */ QX86_MNEMONIC_PAVGB, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_amode_V, &qx86_stuple_dq }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_W, &qx86_stuple_dq }} + } + } + }, + /* F2 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* F3 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_2_e0_sp + = +{ + QX86_OPCODE_MAP_INDEX_SP, 3, qx86_opcode_map_2_e0_sp_items +}; + +static qx86_opcode_map_item qx86_opcode_map_2_e1_sp_items[] + = +{ + { + /* code */ QX86_MNEMONIC_PSRAW, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_amode_P, &qx86_stuple_q }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_Q, &qx86_stuple_q }} + } + } + }, + { + /* code */ QX86_MNEMONIC_PSRAW, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_amode_V, &qx86_stuple_dq }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_W, &qx86_stuple_dq }} + } + } + }, + /* F2 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* F3 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_2_e1_sp + = +{ + QX86_OPCODE_MAP_INDEX_SP, 3, qx86_opcode_map_2_e1_sp_items +}; + +static qx86_opcode_map_item qx86_opcode_map_2_e2_sp_items[] + = +{ + { + /* code */ QX86_MNEMONIC_PSRAD, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_amode_P, &qx86_stuple_q }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_Q, &qx86_stuple_q }} + } + } + }, + { + /* code */ QX86_MNEMONIC_PSRAD, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_amode_V, &qx86_stuple_dq }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_W, &qx86_stuple_dq }} + } + } + }, + /* F2 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* F3 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_2_e2_sp + = +{ + QX86_OPCODE_MAP_INDEX_SP, 3, qx86_opcode_map_2_e2_sp_items +}; + +static qx86_opcode_map_item qx86_opcode_map_2_e3_sp_items[] + = +{ + { + /* code */ QX86_MNEMONIC_PAVGW, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_amode_P, &qx86_stuple_q }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_Q, &qx86_stuple_q }} + } + } + }, + { + /* code */ QX86_MNEMONIC_PAVGW, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_amode_V, &qx86_stuple_dq }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_W, &qx86_stuple_dq }} + } + } + }, + /* F2 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* F3 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_2_e3_sp + = +{ + QX86_OPCODE_MAP_INDEX_SP, 3, qx86_opcode_map_2_e3_sp_items +}; + +static qx86_opcode_map_item qx86_opcode_map_2_e4_sp_items[] + = +{ + { + /* code */ QX86_MNEMONIC_PMULHUW, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_amode_P, &qx86_stuple_q }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_Q, &qx86_stuple_q }} + } + } + }, + { + /* code */ QX86_MNEMONIC_PMULHUW, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_amode_V, &qx86_stuple_dq }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_W, &qx86_stuple_dq }} + } + } + }, + /* F2 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* F3 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_2_e4_sp + = +{ + QX86_OPCODE_MAP_INDEX_SP, 3, qx86_opcode_map_2_e4_sp_items +}; + +static qx86_opcode_map_item qx86_opcode_map_2_e5_sp_items[] + = +{ + { + /* code */ QX86_MNEMONIC_PMULHW, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_amode_P, &qx86_stuple_q }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_Q, &qx86_stuple_q }} + } + } + }, + { + /* code */ QX86_MNEMONIC_PMULHW, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_amode_V, &qx86_stuple_dq }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_W, &qx86_stuple_dq }} + } + } + }, + /* F2 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* F3 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_2_e5_sp + = +{ + QX86_OPCODE_MAP_INDEX_SP, 3, qx86_opcode_map_2_e5_sp_items +}; + +static qx86_opcode_map_item qx86_opcode_map_2_e6_sp_items[] + = +{ + /* 00 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + { + /* code */ QX86_MNEMONIC_CVTTPD2DQ, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_V, &qx86_stuple_q }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_W, &qx86_stuple_pd }} + } + } + }, + { + /* code */ QX86_MNEMONIC_CVTPD2DQ, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_V, &qx86_stuple_q }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_W, &qx86_stuple_pd }} + } + } + }, + { + /* code */ QX86_MNEMONIC_CVTDQ2PD, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_V, &qx86_stuple_pd }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_W, &qx86_stuple_q }} + } + } + } +}; + +static qx86_opcode_map qx86_opcode_map_2_e6_sp + = +{ + QX86_OPCODE_MAP_INDEX_SP, 3, qx86_opcode_map_2_e6_sp_items +}; + +static qx86_opcode_map_item qx86_opcode_map_2_e7_sp_items[] + = +{ + { + /* code */ QX86_MNEMONIC_MOVNTQ, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_M, &qx86_stuple_q }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_P, &qx86_stuple_q }} + } + } + }, + { + /* code */ QX86_MNEMONIC_MOVNTDQ, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_M, &qx86_stuple_dq }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_V, &qx86_stuple_dq }} + } + } + }, + /* F2 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* F3 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_2_e7_sp + = +{ + QX86_OPCODE_MAP_INDEX_SP, 3, qx86_opcode_map_2_e7_sp_items +}; + +static qx86_opcode_map_item qx86_opcode_map_2_e8_sp_items[] + = +{ + { + /* code */ QX86_MNEMONIC_PSUBSB, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_amode_P, &qx86_stuple_q }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_Q, &qx86_stuple_q }} + } + } + }, + { + /* code */ QX86_MNEMONIC_PSUBSB, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_amode_V, &qx86_stuple_dq }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_W, &qx86_stuple_dq }} + } + } + }, + /* F2 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* F3 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_2_e8_sp + = +{ + QX86_OPCODE_MAP_INDEX_SP, 3, qx86_opcode_map_2_e8_sp_items +}; + +static qx86_opcode_map_item qx86_opcode_map_2_e9_sp_items[] + = +{ + { + /* code */ QX86_MNEMONIC_PSUBSW, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_amode_P, &qx86_stuple_q }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_Q, &qx86_stuple_q }} + } + } + }, + { + /* code */ QX86_MNEMONIC_PSUBSW, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_amode_V, &qx86_stuple_dq }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_W, &qx86_stuple_dq }} + } + } + }, + /* F2 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* F3 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_2_e9_sp + = +{ + QX86_OPCODE_MAP_INDEX_SP, 3, qx86_opcode_map_2_e9_sp_items +}; + +static qx86_opcode_map_item qx86_opcode_map_2_ea_sp_items[] + = +{ + { + /* code */ QX86_MNEMONIC_PMINSW, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_amode_P, &qx86_stuple_q }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_Q, &qx86_stuple_q }} + } + } + }, + { + /* code */ QX86_MNEMONIC_PMINSW, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_amode_V, &qx86_stuple_dq }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_W, &qx86_stuple_dq }} + } + } + }, + /* F2 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* F3 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_2_ea_sp + = +{ + QX86_OPCODE_MAP_INDEX_SP, 3, qx86_opcode_map_2_ea_sp_items +}; + +static qx86_opcode_map_item qx86_opcode_map_2_eb_sp_items[] + = +{ + { + /* code */ QX86_MNEMONIC_POR, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_amode_P, &qx86_stuple_q }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_Q, &qx86_stuple_q }} + } + } + }, + { + /* code */ QX86_MNEMONIC_POR, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_amode_V, &qx86_stuple_dq }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_W, &qx86_stuple_dq }} + } + } + }, + /* F2 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* F3 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_2_eb_sp + = +{ + QX86_OPCODE_MAP_INDEX_SP, 3, qx86_opcode_map_2_eb_sp_items +}; + +static qx86_opcode_map_item qx86_opcode_map_2_ec_sp_items[] + = +{ + { + /* code */ QX86_MNEMONIC_PADDSB, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_amode_P, &qx86_stuple_q }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_Q, &qx86_stuple_q }} + } + } + }, + { + /* code */ QX86_MNEMONIC_PADDSB, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_amode_V, &qx86_stuple_dq }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_W, &qx86_stuple_dq }} + } + } + }, + /* F2 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* F3 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_2_ec_sp + = +{ + QX86_OPCODE_MAP_INDEX_SP, 3, qx86_opcode_map_2_ec_sp_items +}; + +static qx86_opcode_map_item qx86_opcode_map_2_ed_sp_items[] + = +{ + { + /* code */ QX86_MNEMONIC_PADDSW, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_amode_P, &qx86_stuple_q }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_Q, &qx86_stuple_q }} + } + } + }, + { + /* code */ QX86_MNEMONIC_PADDSW, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_amode_V, &qx86_stuple_dq }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_W, &qx86_stuple_dq }} + } + } + }, + /* F2 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* F3 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_2_ed_sp + = +{ + QX86_OPCODE_MAP_INDEX_SP, 3, qx86_opcode_map_2_ed_sp_items +}; + +static qx86_opcode_map_item qx86_opcode_map_2_ee_sp_items[] + = +{ + { + /* code */ QX86_MNEMONIC_PMAXSW, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_amode_P, &qx86_stuple_q }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_Q, &qx86_stuple_q }} + } + } + }, + { + /* code */ QX86_MNEMONIC_PMAXSW, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_amode_V, &qx86_stuple_dq }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_W, &qx86_stuple_dq }} + } + } + }, + /* F2 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* F3 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_2_ee_sp + = +{ + QX86_OPCODE_MAP_INDEX_SP, 3, qx86_opcode_map_2_ee_sp_items +}; + + +static qx86_opcode_map_item qx86_opcode_map_2_ef_sp_items[] + = +{ + { + /* code */ QX86_MNEMONIC_PXOR, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_amode_P, &qx86_stuple_q }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_Q, &qx86_stuple_q }} + } + } + }, + { + /* code */ QX86_MNEMONIC_PXOR, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_amode_V, &qx86_stuple_dq }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_W, &qx86_stuple_dq }} + } + } + }, + /* F2 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* F3 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_2_ef_sp + = +{ + QX86_OPCODE_MAP_INDEX_SP, 3, qx86_opcode_map_2_ef_sp_items +}; + +static qx86_opcode_map_item qx86_opcode_map_2_f0_sp_items[] + = +{ + /* 00 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 66 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + { + /* code */ QX86_MNEMONIC_LDDQU, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_V, &qx86_stuple_pd }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_M, &qx86_stuple_dq }} + } + } + }, + /* F3 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_2_f0_sp + = +{ + QX86_OPCODE_MAP_INDEX_SP, 3, qx86_opcode_map_2_f0_sp_items +}; + +static qx86_opcode_map_item qx86_opcode_map_2_f1_sp_items[] + = +{ + { + /* code */ QX86_MNEMONIC_PSLLW, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_amode_P, &qx86_stuple_q }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_Q, &qx86_stuple_q }} + } + } + }, + { + /* code */ QX86_MNEMONIC_PSLLW, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_amode_V, &qx86_stuple_dq }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_W, &qx86_stuple_dq }} + } + } + }, + /* F2 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* F3 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_2_f1_sp + = +{ + QX86_OPCODE_MAP_INDEX_SP, 3, qx86_opcode_map_2_f1_sp_items +}; + +static qx86_opcode_map_item qx86_opcode_map_2_f2_sp_items[] + = +{ + { + /* code */ QX86_MNEMONIC_PSLLD, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_amode_P, &qx86_stuple_q }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_Q, &qx86_stuple_q }} + } + } + }, + { + /* code */ QX86_MNEMONIC_PSLLD, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_amode_V, &qx86_stuple_dq }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_W, &qx86_stuple_dq }} + } + } + }, + /* F2 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* F3 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_2_f2_sp + = +{ + QX86_OPCODE_MAP_INDEX_SP, 3, qx86_opcode_map_2_f2_sp_items +}; + +static qx86_opcode_map_item qx86_opcode_map_2_f3_sp_items[] + = +{ + { + /* code */ QX86_MNEMONIC_PSLLQ, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_amode_P, &qx86_stuple_q }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_Q, &qx86_stuple_q }} + } + } + }, + { + /* code */ QX86_MNEMONIC_PSLLQ, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_amode_V, &qx86_stuple_dq }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_W, &qx86_stuple_dq }} + } + } + }, + /* F2 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* F3 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_2_f3_sp + = +{ + QX86_OPCODE_MAP_INDEX_SP, 3, qx86_opcode_map_2_f3_sp_items +}; + +static qx86_opcode_map_item qx86_opcode_map_2_f4_sp_items[] + = +{ + { + /* code */ QX86_MNEMONIC_PMULUDQ, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_amode_P, &qx86_stuple_q }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_Q, &qx86_stuple_q }} + } + } + }, + { + /* code */ QX86_MNEMONIC_PMULUDQ, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_amode_V, &qx86_stuple_dq }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_W, &qx86_stuple_dq }} + } + } + }, + /* F2 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* F3 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_2_f4_sp + = +{ + QX86_OPCODE_MAP_INDEX_SP, 3, qx86_opcode_map_2_f4_sp_items +}; + +static qx86_opcode_map_item qx86_opcode_map_2_f5_sp_items[] + = +{ + { + /* code */ QX86_MNEMONIC_PMADDWD, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_amode_P, &qx86_stuple_q }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_Q, &qx86_stuple_q }} + } + } + }, + { + /* code */ QX86_MNEMONIC_PMADDWD, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_amode_V, &qx86_stuple_dq }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_W, &qx86_stuple_dq }} + } + } + }, + /* F2 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* F3 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_2_f5_sp + = +{ + QX86_OPCODE_MAP_INDEX_SP, 3, qx86_opcode_map_2_f5_sp_items +}; + +static qx86_opcode_map_item qx86_opcode_map_2_f6_sp_items[] + = +{ + { + /* code */ QX86_MNEMONIC_PSADBW, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_amode_P, &qx86_stuple_q }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_Q, &qx86_stuple_q }} + } + } + }, + { + /* code */ QX86_MNEMONIC_PSADBW, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_amode_V, &qx86_stuple_dq }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_W, &qx86_stuple_dq }} + } + } + }, + /* F2 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* F3 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_2_f6_sp + = +{ + QX86_OPCODE_MAP_INDEX_SP, 3, qx86_opcode_map_2_f6_sp_items +}; + +static qx86_opcode_map_item qx86_opcode_map_2_f7_sp_items[] + = +{ + { + /* code */ QX86_MNEMONIC_MASKMOVQ, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_P, &qx86_stuple_q }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_N, &qx86_stuple_q }} + } + } + }, + { + /* code */ QX86_MNEMONIC_MASKMOVDQU, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_V, &qx86_stuple_dq }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_U, &qx86_stuple_dq }} + } + } + }, + /* F2 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* F3 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_2_f7_sp + = +{ + QX86_OPCODE_MAP_INDEX_SP, 3, qx86_opcode_map_2_f7_sp_items +}; + +static qx86_opcode_map_item qx86_opcode_map_2_f8_sp_items[] + = +{ + { + /* code */ QX86_MNEMONIC_PSUBB, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_amode_P, &qx86_stuple_q }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_Q, &qx86_stuple_q }} + } + } + }, + { + /* code */ QX86_MNEMONIC_PSUBB, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_amode_V, &qx86_stuple_dq }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_W, &qx86_stuple_dq }} + } + } + }, + /* F2 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* F3 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_2_f8_sp + = +{ + QX86_OPCODE_MAP_INDEX_SP, 3, qx86_opcode_map_2_f8_sp_items +}; + +static qx86_opcode_map_item qx86_opcode_map_2_f9_sp_items[] + = +{ + { + /* code */ QX86_MNEMONIC_PSUBW, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_amode_P, &qx86_stuple_q }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_Q, &qx86_stuple_q }} + } + } + }, + { + /* code */ QX86_MNEMONIC_PSUBW, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_amode_V, &qx86_stuple_dq }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_W, &qx86_stuple_dq }} + } + } + }, + /* F2 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* F3 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_2_f9_sp + = +{ + QX86_OPCODE_MAP_INDEX_SP, 3, qx86_opcode_map_2_f9_sp_items +}; + +static qx86_opcode_map_item qx86_opcode_map_2_fa_sp_items[] + = +{ + { + /* code */ QX86_MNEMONIC_PSUBD, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_amode_P, &qx86_stuple_q }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_Q, &qx86_stuple_q }} + } + } + }, + { + /* code */ QX86_MNEMONIC_PSUBD, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_amode_V, &qx86_stuple_dq }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_W, &qx86_stuple_dq }} + } + } + }, + /* F2 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* F3 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_2_fa_sp + = +{ + QX86_OPCODE_MAP_INDEX_SP, 3, qx86_opcode_map_2_fa_sp_items +}; + +static qx86_opcode_map_item qx86_opcode_map_2_fb_sp_items[] + = +{ + { + /* code */ QX86_MNEMONIC_PSUBQ, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_amode_P, &qx86_stuple_q }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_Q, &qx86_stuple_q }} + } + } + }, + { + /* code */ QX86_MNEMONIC_PSUBQ, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_amode_V, &qx86_stuple_dq }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_W, &qx86_stuple_dq }} + } + } + }, + /* F2 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* F3 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_2_fb_sp + = +{ + QX86_OPCODE_MAP_INDEX_SP, 3, qx86_opcode_map_2_fb_sp_items +}; + +static qx86_opcode_map_item qx86_opcode_map_2_fc_sp_items[] + = +{ + { + /* code */ QX86_MNEMONIC_PADDB, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_amode_P, &qx86_stuple_q }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_Q, &qx86_stuple_q }} + } + } + }, + { + /* code */ QX86_MNEMONIC_PADDB, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_amode_V, &qx86_stuple_dq }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_W, &qx86_stuple_dq }} + } + } + }, + /* F2 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* F3 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_2_fc_sp + = +{ + QX86_OPCODE_MAP_INDEX_SP, 3, qx86_opcode_map_2_fc_sp_items +}; + +static qx86_opcode_map_item qx86_opcode_map_2_fd_sp_items[] + = +{ + { + /* code */ QX86_MNEMONIC_PADDW, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_amode_P, &qx86_stuple_q }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_Q, &qx86_stuple_q }} + } + } + }, + { + /* code */ QX86_MNEMONIC_PADDW, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_amode_V, &qx86_stuple_dq }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_W, &qx86_stuple_dq }} + } + } + }, + /* F2 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* F3 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_2_fd_sp + = +{ + QX86_OPCODE_MAP_INDEX_SP, 3, qx86_opcode_map_2_fd_sp_items +}; + + +static qx86_opcode_map_item qx86_opcode_map_2_fe_sp_items[] + = +{ + { + /* code */ QX86_MNEMONIC_PADDD, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_amode_P, &qx86_stuple_q }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_Q, &qx86_stuple_q }} + } + } + }, + { + /* code */ QX86_MNEMONIC_PADDD, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_amode_V, &qx86_stuple_dq }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_W, &qx86_stuple_dq }} + } + } + }, + /* F2 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* F3 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_2_fe_sp + = +{ + QX86_OPCODE_MAP_INDEX_SP, 3, qx86_opcode_map_2_fe_sp_items +}; + +static qx86_opcode_map_item qx86_opcode_map_2_items[] + = +{ + /* 00 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_M6, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 01 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_M7, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 02 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_2_02_cs, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 03 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_2_03_cs, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 04 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 05 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_2_05_cs, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + { + /* code */ QX86_MNEMONIC_CLTS, + /* map */ 0, + + /* operandCount */ 0, + /* placeHolder */ {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 07 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_2_07_cs, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + { + /* code */ QX86_MNEMONIC_INVD, + /* map */ 0, + + /* operandCount */ 0, + /* placeHolder */ {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + { + /* code */ QX86_MNEMONIC_WBINVD, + /* map */ 0, + + /* operandCount */ 0, + /* placeHolder */ {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 0A */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + { + /* code */ QX86_MNEMONIC_UD2, + /* map */ 0, + + /* operandCount */ 0, + /* placeHolder */ {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 0C */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 0D */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_MP, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + { + /* code */ QX86_MNEMONIC_FEMMS, + /* map */ 0, + + /* operandCount */ 0, + /* placeHolder */ {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 0F */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 10 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_2_10_sp, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 11 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_2_11_sp, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 12 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_2_12_sp, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 13 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_2_13_sp, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 14 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_2_14_sp, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 15 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_2_15_sp, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 16 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_2_16_sp, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 17 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_2_17_sp, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 18 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_M16, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + { + /* code */ QX86_MNEMONIC_NOP, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_E, &qx86_stuple_v }} + } + } + }, + { + /* code */ QX86_MNEMONIC_NOP, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_E, &qx86_stuple_v }} + } + } + }, + { + /* code */ QX86_MNEMONIC_NOP, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_E, &qx86_stuple_v }} + } + } + }, + { + /* code */ QX86_MNEMONIC_NOP, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_E, &qx86_stuple_v }} + } + } + }, + { + /* code */ QX86_MNEMONIC_NOP, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_E, &qx86_stuple_v }} + } + } + }, + { + /* code */ QX86_MNEMONIC_NOP, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_E, &qx86_stuple_v }} + } + } + }, + { + /* code */ QX86_MNEMONIC_NOP, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_E, &qx86_stuple_v }} + } + } + }, + /* 20 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_2_20_cs, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 21 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_2_21_cs, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 22 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_2_22_cs, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 23 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_2_23_cs, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 24 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 25 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 26 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 27 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 28 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_2_28_sp, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 29 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_2_29_sp, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 2A */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_2_2a_sp, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 2B */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_2_2b_sp, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 2C */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_2_2c_sp, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 2D */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_2_2d_sp, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 2E */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_2_2e_sp, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 2F */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_2_2f_sp, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + { + /* code */ QX86_MNEMONIC_WRMSR, + /* map */ 0, + + /* operandCount */ 0, + /* placeHolder */ {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + { + /* code */ QX86_MNEMONIC_RDTSC, + /* map */ 0, + + /* operandCount */ 0, + /* placeHolder */ {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + { + /* code */ QX86_MNEMONIC_RDMSR, + /* map */ 0, + + /* operandCount */ 0, + /* placeHolder */ {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + { + /* code */ QX86_MNEMONIC_RDPMC, + /* map */ 0, + + /* operandCount */ 0, + /* placeHolder */ {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + { + /* code */ QX86_MNEMONIC_SYSENTER, + /* map */ 0, + + /* operandCount */ 0, + /* placeHolder */ {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + { + /* code */ QX86_MNEMONIC_SYSEXIT, + /* map */ 0, + + /* operandCount */ 0, + /* placeHolder */ {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 36 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + { + /* code */ QX86_MNEMONIC_GETSEC, + /* map */ 0, + + /* operandCount */ 0, + /* placeHolder */ {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 38 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_3A, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 39 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 3A */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_3B, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 3B */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 3C */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 3D */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 3E */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 3F */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + { + /* code */ QX86_MNEMONIC_CMOVO, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_G, &qx86_stuple_v }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_E, &qx86_stuple_v }} + } + } + }, + { + /* code */ QX86_MNEMONIC_CMOVNO, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_G, &qx86_stuple_v }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_E, &qx86_stuple_v }} + } + } + }, + { + /* code */ QX86_MNEMONIC_CMOVB, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_G, &qx86_stuple_v }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_E, &qx86_stuple_v }} + } + } + }, + { + /* code */ QX86_MNEMONIC_CMOVAE, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_G, &qx86_stuple_v }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_E, &qx86_stuple_v }} + } + } + }, + { + /* code */ QX86_MNEMONIC_CMOVZ, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_G, &qx86_stuple_v }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_E, &qx86_stuple_v }} + } + } + }, + { + /* code */ QX86_MNEMONIC_CMOVNZ, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_G, &qx86_stuple_v }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_E, &qx86_stuple_v }} + } + } + }, + { + /* code */ QX86_MNEMONIC_CMOVBE, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_G, &qx86_stuple_v }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_E, &qx86_stuple_v }} + } + } + }, + { + /* code */ QX86_MNEMONIC_CMOVA, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_G, &qx86_stuple_v }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_E, &qx86_stuple_v }} + } + } + }, + { + /* code */ QX86_MNEMONIC_CMOVS, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_G, &qx86_stuple_v }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_E, &qx86_stuple_v }} + } + } + }, + { + /* code */ QX86_MNEMONIC_CMOVNS, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_G, &qx86_stuple_v }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_E, &qx86_stuple_v }} + } + } + }, + { + /* code */ QX86_MNEMONIC_CMOVP, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_G, &qx86_stuple_v }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_E, &qx86_stuple_v }} + } + } + }, + { + /* code */ QX86_MNEMONIC_CMOVNP, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_G, &qx86_stuple_v }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_E, &qx86_stuple_v }} + } + } + }, + { + /* code */ QX86_MNEMONIC_CMOVL, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_G, &qx86_stuple_v }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_E, &qx86_stuple_v }} + } + } + }, + { + /* code */ QX86_MNEMONIC_CMOVGE, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_G, &qx86_stuple_v }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_E, &qx86_stuple_v }} + } + } + }, + { + /* code */ QX86_MNEMONIC_CMOVLE, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_G, &qx86_stuple_v }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_E, &qx86_stuple_v }} + } + } + }, + { + /* code */ QX86_MNEMONIC_CMOVG, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_G, &qx86_stuple_v }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_E, &qx86_stuple_v }} + } + } + }, + /* 50 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_2_50_sp, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 51 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_2_51_sp, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 52 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_2_52_sp, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 53 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_2_53_sp, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 54 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_2_54_sp, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 55 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_2_55_sp, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 56 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_2_56_sp, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 57 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_2_57_sp, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 58 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_2_58_sp, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 59 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_2_59_sp, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 5A */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_2_5a_sp, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 5B */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_2_5b_sp, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 5C */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_2_5c_sp, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 5D */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_2_5d_sp, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 5E */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_2_5e_sp, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 5F */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_2_5f_sp, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 60 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_2_60_sp, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 61 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_2_61_sp, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 62 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_2_62_sp, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 63 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_2_63_sp, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 64 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_2_64_sp, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 65 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_2_65_sp, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 66 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_2_66_sp, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 67 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_2_67_sp, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 68 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_2_68_sp, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 69 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_2_69_sp, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 6A */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_2_6a_sp, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 6B */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_2_6b_sp, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 6C */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_2_6c_sp, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 6D */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_2_6d_sp, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 6E */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_2_6e_sp, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 6F */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_2_6f_sp, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 70 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_2_70_sp, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 71 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_2_71_sp, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 72 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_2_72_sp, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 73 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_2_73_sp, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 74 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_2_74_sp, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 75 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_2_75_sp, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 76 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_2_76_sp, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 77 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_2_77_sp, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 78 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_2_78_sp, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 79 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_2_79_sp, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 7A */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 7B */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 7C */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_2_7c_sp, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 7D */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_2_7d_sp, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 7E */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_2_7e_sp, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 7F */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_2_7f_sp, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + { + /* code */ QX86_MNEMONIC_JO, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_J, &qx86_stuple_z }} + } + } + }, + { + /* code */ QX86_MNEMONIC_JNO, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_J, &qx86_stuple_z }} + } + } + }, + { + /* code */ QX86_MNEMONIC_JB, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_J, &qx86_stuple_z }} + } + } + }, + { + /* code */ QX86_MNEMONIC_JAE, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_J, &qx86_stuple_z }} + } + } + }, + { + /* code */ QX86_MNEMONIC_JZ, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_J, &qx86_stuple_z }} + } + } + }, + { + /* code */ QX86_MNEMONIC_JNZ, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_J, &qx86_stuple_z }} + } + } + }, + { + /* code */ QX86_MNEMONIC_JBE, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_J, &qx86_stuple_z }} + } + } + }, + { + /* code */ QX86_MNEMONIC_JA, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_J, &qx86_stuple_z }} + } + } + }, + { + /* code */ QX86_MNEMONIC_JS, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_J, &qx86_stuple_z }} + } + } + }, + { + /* code */ QX86_MNEMONIC_JNS, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_J, &qx86_stuple_z }} + } + } + }, + { + /* code */ QX86_MNEMONIC_JP, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_J, &qx86_stuple_z }} + } + } + }, + { + /* code */ QX86_MNEMONIC_JNP, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_J, &qx86_stuple_z }} + } + } + }, + { + /* code */ QX86_MNEMONIC_JL, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_J, &qx86_stuple_z }} + } + } + }, + { + /* code */ QX86_MNEMONIC_JGE, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_J, &qx86_stuple_z }} + } + } + }, + { + /* code */ QX86_MNEMONIC_JLE, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_J, &qx86_stuple_z }} + } + } + }, + { + /* code */ QX86_MNEMONIC_JG, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_J, &qx86_stuple_z }} + } + } + }, + { + /* code */ QX86_MNEMONIC_SETO, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_E, &qx86_stuple_b }} + } + } + }, + { + /* code */ QX86_MNEMONIC_SETNO, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_E, &qx86_stuple_b }} + } + } + }, + { + /* code */ QX86_MNEMONIC_SETB, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_E, &qx86_stuple_b }} + } + } + }, + { + /* code */ QX86_MNEMONIC_SETAE, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_E, &qx86_stuple_b }} + } + } + }, + { + /* code */ QX86_MNEMONIC_SETZ, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_E, &qx86_stuple_b }} + } + } + }, + { + /* code */ QX86_MNEMONIC_SETNZ, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_E, &qx86_stuple_b }} + } + } + }, + { + /* code */ QX86_MNEMONIC_SETBE, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_E, &qx86_stuple_b }} + } + } + }, + { + /* code */ QX86_MNEMONIC_SETA, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_E, &qx86_stuple_b }} + } + } + }, + { + /* code */ QX86_MNEMONIC_SETS, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_E, &qx86_stuple_b }} + } + } + }, + { + /* code */ QX86_MNEMONIC_SETNS, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_E, &qx86_stuple_b }} + } + } + }, + { + /* code */ QX86_MNEMONIC_SETP, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_E, &qx86_stuple_b }} + } + } + }, + { + /* code */ QX86_MNEMONIC_SETNP, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_E, &qx86_stuple_b }} + } + } + }, + { + /* code */ QX86_MNEMONIC_SETL, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_E, &qx86_stuple_b }} + } + } + }, + { + /* code */ QX86_MNEMONIC_SETGE, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_E, &qx86_stuple_b }} + } + } + }, + { + /* code */ QX86_MNEMONIC_SETLE, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_E, &qx86_stuple_b }} + } + } + }, + { + /* code */ QX86_MNEMONIC_SETG, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_E, &qx86_stuple_b }} + } + } + }, + { + /* code */ QX86_MNEMONIC_PUSH, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_FS, 0 }} + } + } + }, + { + /* code */ QX86_MNEMONIC_POP, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_FS, 0 }} + } + } + }, + { + /* code */ QX86_MNEMONIC_CPUID, + /* map */ 0, + + /* operandCount */ 0, + /* placeHolder */ {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + { + /* code */ QX86_MNEMONIC_BT, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_E, &qx86_stuple_v }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_G, &qx86_stuple_v }} + } + } + }, + { + /* code */ QX86_MNEMONIC_SHLD, + /* map */ 0, + + /* operandCount */ 3, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_amode_E, &qx86_stuple_v }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_G, &qx86_stuple_v }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_I, &qx86_stuple_b }} + } + } + }, + { + /* code */ QX86_MNEMONIC_SHLD, + /* map */ 0, + + /* operandCount */ 3, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_amode_E, &qx86_stuple_v }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_G, &qx86_stuple_v }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_CL, 0 }} + } + } + }, + /* A6 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* A7 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + { + /* code */ QX86_MNEMONIC_PUSH, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_GS, 0 }} + } + } + }, + { + /* code */ QX86_MNEMONIC_POP, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_GS, 0 }} + } + } + }, + { + /* code */ QX86_MNEMONIC_RSM, + /* map */ 0, + + /* operandCount */ 0, + /* placeHolder */ {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + { + /* code */ QX86_MNEMONIC_BTS, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_amode_E, &qx86_stuple_v }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_G, &qx86_stuple_v }} + } + } + }, + { + /* code */ QX86_MNEMONIC_SHRD, + /* map */ 0, + + /* operandCount */ 3, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_amode_E, &qx86_stuple_v }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_G, &qx86_stuple_v }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_I, &qx86_stuple_b }} + } + } + }, + { + /* code */ QX86_MNEMONIC_SHRD, + /* map */ 0, + + /* operandCount */ 3, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_amode_E, &qx86_stuple_v }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_G, &qx86_stuple_v }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_CL, 0 }} + } + } + }, + /* AE */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_M15, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + { + /* code */ QX86_MNEMONIC_IMUL, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_amode_G, &qx86_stuple_v }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_E, &qx86_stuple_v }} + } + } + }, + { + /* code */ QX86_MNEMONIC_CMPXCHG, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_amode_E, &qx86_stuple_b }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_G, &qx86_stuple_b }} + } + } + }, + { + /* code */ QX86_MNEMONIC_CMPXCHG, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_amode_E, &qx86_stuple_v }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_G, &qx86_stuple_v }} + } + } + }, + { + /* code */ QX86_MNEMONIC_LSS, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_G, &qx86_stuple_z }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_M, &qx86_stuple_p }} + } + } + }, + { + /* code */ QX86_MNEMONIC_BTR, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_amode_E, &qx86_stuple_v }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_G, &qx86_stuple_v }} + } + } + }, + { + /* code */ QX86_MNEMONIC_LFS, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_G, &qx86_stuple_z }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_M, &qx86_stuple_p }} + } + } + }, + { + /* code */ QX86_MNEMONIC_LGS, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_G, &qx86_stuple_z }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_M, &qx86_stuple_p }} + } + } + }, + { + /* code */ QX86_MNEMONIC_MOVZX, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_G, &qx86_stuple_v }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_E, &qx86_stuple_b }} + } + } + }, + { + /* code */ QX86_MNEMONIC_MOVZX, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_G, &qx86_stuple_v }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_E, &qx86_stuple_w }} + } + } + }, + /* B8 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_2_b8_sp, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* B9 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_2_b9_sp, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* BA */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_2_ba_sp, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* BB */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_2_bb_sp, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* BC */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_2_bc_sp, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* BD */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_2_bd_sp, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* BE */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_2_be_sp, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* BF */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_2_bf_sp, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + { + /* code */ QX86_MNEMONIC_XADD, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_amode_E, &qx86_stuple_b }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_amode_G, &qx86_stuple_b }} + } + } + }, + { + /* code */ QX86_MNEMONIC_XADD, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_amode_E, &qx86_stuple_v }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_amode_G, &qx86_stuple_v }} + } + } + }, + /* C2 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_2_c2_sp, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* C3 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_2_c3_sp, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* C4 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_2_c4_sp, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* C5 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_2_c5_sp, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* C6 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_2_c6_sp, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* C7 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_M9, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + { + /* code */ QX86_MNEMONIC_BSWAP, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_rtuple_r0, 0 }} + } + } + }, + { + /* code */ QX86_MNEMONIC_BSWAP, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_rtuple_r1, 0 }} + } + } + }, + { + /* code */ QX86_MNEMONIC_BSWAP, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_rtuple_r2, 0 }} + } + } + }, + { + /* code */ QX86_MNEMONIC_BSWAP, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_rtuple_r3, 0 }} + } + } + }, + { + /* code */ QX86_MNEMONIC_BSWAP, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_rtuple_r4, 0 }} + } + } + }, + { + /* code */ QX86_MNEMONIC_BSWAP, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_rtuple_r5, 0 }} + } + } + }, + { + /* code */ QX86_MNEMONIC_BSWAP, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_rtuple_r6, 0 }} + } + } + }, + { + /* code */ QX86_MNEMONIC_BSWAP, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_rtuple_r7, 0 }} + } + } + }, + /* D0 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_2_d0_sp, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* D1 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_2_d1_sp, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* D2 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_2_d2_sp, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* D3 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_2_d3_sp, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* D4 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_2_d4_sp, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* D5 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_2_d5_sp, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* D6 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_2_d6_sp, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* D7 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_2_d7_sp, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* D8 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_2_d8_sp, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* D9 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_2_d9_sp, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* DA */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_2_da_sp, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* DB */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_2_db_sp, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* DC */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_2_dc_sp, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* DD */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_2_dd_sp, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* DE */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_2_de_sp, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* DF */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_2_df_sp, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* E0 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_2_e0_sp, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* E1 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_2_e1_sp, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* E2 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_2_e2_sp, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* E3 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_2_e3_sp, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* E4 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_2_e4_sp, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* E5 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_2_e5_sp, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* E6 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_2_e6_sp, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* E7 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_2_e7_sp, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* E8 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_2_e8_sp, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* E9 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_2_e9_sp, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* EA */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_2_ea_sp, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* EB */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_2_eb_sp, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* EC */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_2_ec_sp, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* ED */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_2_ed_sp, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* EE */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_2_ee_sp, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* EF */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_2_ef_sp, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* F0 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_2_f0_sp, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* F1 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_2_f1_sp, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* F2 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_2_f2_sp, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* F3 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_2_f3_sp, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* F4 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_2_f4_sp, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* F5 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_2_f5_sp, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* F6 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_2_f6_sp, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* F7 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_2_f7_sp, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* F8 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_2_f8_sp, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* F9 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_2_f9_sp, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* FA */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_2_fa_sp, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* FB */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_2_fb_sp, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* FC */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_2_fc_sp, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* FD */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_2_fd_sp, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* FE */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_2_fe_sp, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* FF */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_2 + = +{ + QX86_OPCODE_MAP_INDEX_NB, 255, qx86_opcode_map_2_items +}; +/* End of file qx86-d-opcode-map/qx86-opcode-map-2.map */ +/* Generated from file qx86-d-opcode-map/qx86-opcode-map-1.map */ +// +------------------------------------------------------------------------+ +// | quix86 | +// +------------------------------------------------------------------------+ +// | This file is part of quix86, an x86-64 instruction decoder. | +// | | +// | Copyright (C) 2011 Institute for System Programming of Russian Academy | +// | of Sciences. | +// | | +// | Contact e-mail: . | +// | | +// | quix86 is free software: you can redistribute it and/or modify it | +// | under the terms of the GNU General Public License as published by the | +// | Free Software Foundation, either version 3 of the License, or (at your | +// | option) any later version. | +// | | +// | quix86 is distributed in the hope that it will be useful, but WITHOUT | +// | ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or | +// | FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License | +// | for more details. | +// | | +// | You should have received a copy of the GNU General Public License | +// | along with quix86. If not, see . | +// +------------------------------------------------------------------------+ + +// Reference: AMD Architecture Programmer's Manual 3: Table A-1, A-2. + +static qx86_opcode_map_item qx86_opcode_map_1_06_cs_items[] + = +{ + { + /* code */ QX86_MNEMONIC_PUSH, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ES, 0 }} + } + } + }, + { + /* code */ QX86_MNEMONIC_PUSH, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_ES, 0 }} + } + } + }, + /* 02 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_1_06_cs + = +{ + QX86_OPCODE_MAP_INDEX_CS, 2, qx86_opcode_map_1_06_cs_items +}; + + +static qx86_opcode_map_item qx86_opcode_map_1_07_cs_items[] + = +{ + { + /* code */ QX86_MNEMONIC_POP, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_rtuple_ES, 0 }} + } + } + }, + { + /* code */ QX86_MNEMONIC_POP, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_rtuple_ES, 0 }} + } + } + }, + /* 02 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_1_07_cs + = +{ + QX86_OPCODE_MAP_INDEX_CS, 2, qx86_opcode_map_1_07_cs_items +}; + +static qx86_opcode_map_item qx86_opcode_map_1_0e_cs_items[] + = +{ + { + /* code */ QX86_MNEMONIC_PUSH, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_CS, 0 }} + } + } + }, + { + /* code */ QX86_MNEMONIC_PUSH, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_CS, 0 }} + } + } + }, + /* 02 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_1_0e_cs + = +{ + QX86_OPCODE_MAP_INDEX_CS, 2, qx86_opcode_map_1_0e_cs_items +}; + + +static qx86_opcode_map_item qx86_opcode_map_1_16_cs_items[] + = +{ + { + /* code */ QX86_MNEMONIC_PUSH, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_SS, 0 }} + } + } + }, + { + /* code */ QX86_MNEMONIC_PUSH, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_SS, 0 }} + } + } + }, + /* 02 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_1_16_cs + = +{ + QX86_OPCODE_MAP_INDEX_CS, 2, qx86_opcode_map_1_16_cs_items +}; + + +static qx86_opcode_map_item qx86_opcode_map_1_17_cs_items[] + = +{ + { + /* code */ QX86_MNEMONIC_POP, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_rtuple_SS, 0 }} + } + } + }, + { + /* code */ QX86_MNEMONIC_POP, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_rtuple_SS, 0 }} + } + } + }, + /* 02 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_1_17_cs + = +{ + QX86_OPCODE_MAP_INDEX_CS, 2, qx86_opcode_map_1_17_cs_items +}; + +static qx86_opcode_map_item qx86_opcode_map_1_1e_cs_items[] + = +{ + { + /* code */ QX86_MNEMONIC_PUSH, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_DS, 0 }} + } + } + }, + { + /* code */ QX86_MNEMONIC_PUSH, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_DS, 0 }} + } + } + }, + /* 02 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_1_1e_cs + = +{ + QX86_OPCODE_MAP_INDEX_CS, 2, qx86_opcode_map_1_1e_cs_items +}; + + +static qx86_opcode_map_item qx86_opcode_map_1_1f_cs_items[] + = +{ + { + /* code */ QX86_MNEMONIC_POP, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_rtuple_DS, 0 }} + } + } + }, + { + /* code */ QX86_MNEMONIC_POP, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_rtuple_DS, 0 }} + } + } + }, + /* 02 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_1_1f_cs + = +{ + QX86_OPCODE_MAP_INDEX_CS, 2, qx86_opcode_map_1_1f_cs_items +}; + + +static qx86_opcode_map_item qx86_opcode_map_1_27_cs_items[] + = +{ + { + /* code */ QX86_MNEMONIC_DAA, + /* map */ 0, + + /* operandCount */ 0, + /* placeHolder */ {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + { + /* code */ QX86_MNEMONIC_DAA, + /* map */ 0, + + /* operandCount */ 0, + /* placeHolder */ {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 02 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_1_27_cs + = +{ + QX86_OPCODE_MAP_INDEX_CS, 2, qx86_opcode_map_1_27_cs_items +}; + + +static qx86_opcode_map_item qx86_opcode_map_1_2f_cs_items[] + = +{ + { + /* code */ QX86_MNEMONIC_DAS, + /* map */ 0, + + /* operandCount */ 0, + /* placeHolder */ {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + { + /* code */ QX86_MNEMONIC_DAS, + /* map */ 0, + + /* operandCount */ 0, + /* placeHolder */ {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 02 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_1_2f_cs + = +{ + QX86_OPCODE_MAP_INDEX_CS, 2, qx86_opcode_map_1_2f_cs_items +}; + + +static qx86_opcode_map_item qx86_opcode_map_1_37_cs_items[] + = +{ + { + /* code */ QX86_MNEMONIC_AAA, + /* map */ 0, + + /* operandCount */ 0, + /* placeHolder */ {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + { + /* code */ QX86_MNEMONIC_AAA, + /* map */ 0, + + /* operandCount */ 0, + /* placeHolder */ {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 02 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_1_37_cs + = +{ + QX86_OPCODE_MAP_INDEX_CS, 2, qx86_opcode_map_1_37_cs_items +}; + + +static qx86_opcode_map_item qx86_opcode_map_1_3f_cs_items[] + = +{ + { + /* code */ QX86_MNEMONIC_AAS, + /* map */ 0, + + /* operandCount */ 0, + /* placeHolder */ {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + { + /* code */ QX86_MNEMONIC_AAS, + /* map */ 0, + + /* operandCount */ 0, + /* placeHolder */ {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 02 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_1_3f_cs + = +{ + QX86_OPCODE_MAP_INDEX_CS, 2, qx86_opcode_map_1_3f_cs_items +}; + +static qx86_opcode_map_item qx86_opcode_map_1_40_cs_items[] + = +{ + { + /* code */ QX86_MNEMONIC_INC, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_rtuple_eAX, 0 }} + } + } + }, + { + /* code */ QX86_MNEMONIC_INC, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_rtuple_eAX, 0 }} + } + } + }, + /* 02 */ + { + QX86_OPCODE_MAP_ITEM_CODE_PREFIX, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_1_40_cs + = +{ + QX86_OPCODE_MAP_INDEX_CS, 2, qx86_opcode_map_1_40_cs_items +}; + +static qx86_opcode_map_item qx86_opcode_map_1_41_cs_items[] + = +{ + { + /* code */ QX86_MNEMONIC_INC, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_rtuple_eCX, 0 }} + } + } + }, + { + /* code */ QX86_MNEMONIC_INC, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_rtuple_eCX, 0 }} + } + } + }, + /* 02 */ + { + QX86_OPCODE_MAP_ITEM_CODE_PREFIX, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_1_41_cs + = +{ + QX86_OPCODE_MAP_INDEX_CS, 2, qx86_opcode_map_1_41_cs_items +}; + +static qx86_opcode_map_item qx86_opcode_map_1_42_cs_items[] + = +{ + { + /* code */ QX86_MNEMONIC_INC, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_rtuple_eDX, 0 }} + } + } + }, + { + /* code */ QX86_MNEMONIC_INC, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_rtuple_eDX, 0 }} + } + } + }, + /* 02 */ + { + QX86_OPCODE_MAP_ITEM_CODE_PREFIX, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_1_42_cs + = +{ + QX86_OPCODE_MAP_INDEX_CS, 2, qx86_opcode_map_1_42_cs_items +}; + +static qx86_opcode_map_item qx86_opcode_map_1_43_cs_items[] + = +{ + { + /* code */ QX86_MNEMONIC_INC, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_rtuple_eBX, 0 }} + } + } + }, + { + /* code */ QX86_MNEMONIC_INC, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_rtuple_eBX, 0 }} + } + } + }, + /* 02 */ + { + QX86_OPCODE_MAP_ITEM_CODE_PREFIX, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_1_43_cs + = +{ + QX86_OPCODE_MAP_INDEX_CS, 2, qx86_opcode_map_1_43_cs_items +}; + +static qx86_opcode_map_item qx86_opcode_map_1_44_cs_items[] + = +{ + { + /* code */ QX86_MNEMONIC_INC, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_rtuple_eSP, 0 }} + } + } + }, + { + /* code */ QX86_MNEMONIC_INC, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_rtuple_eSP, 0 }} + } + } + }, + /* 02 */ + { + QX86_OPCODE_MAP_ITEM_CODE_PREFIX, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_1_44_cs + = +{ + QX86_OPCODE_MAP_INDEX_CS, 2, qx86_opcode_map_1_44_cs_items +}; + +static qx86_opcode_map_item qx86_opcode_map_1_45_cs_items[] + = +{ + { + /* code */ QX86_MNEMONIC_INC, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_rtuple_eBP, 0 }} + } + } + }, + { + /* code */ QX86_MNEMONIC_INC, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_rtuple_eBP, 0 }} + } + } + }, + /* 02 */ + { + QX86_OPCODE_MAP_ITEM_CODE_PREFIX, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_1_45_cs + = +{ + QX86_OPCODE_MAP_INDEX_CS, 2, qx86_opcode_map_1_45_cs_items +}; + +static qx86_opcode_map_item qx86_opcode_map_1_46_cs_items[] + = +{ + { + /* code */ QX86_MNEMONIC_INC, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_rtuple_eSI, 0 }} + } + } + }, + { + /* code */ QX86_MNEMONIC_INC, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_rtuple_eSI, 0 }} + } + } + }, + /* 02 */ + { + QX86_OPCODE_MAP_ITEM_CODE_PREFIX, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_1_46_cs + = +{ + QX86_OPCODE_MAP_INDEX_CS, 2, qx86_opcode_map_1_46_cs_items +}; + + +static qx86_opcode_map_item qx86_opcode_map_1_47_cs_items[] + = +{ + { + /* code */ QX86_MNEMONIC_INC, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_rtuple_eDI, 0 }} + } + } + }, + { + /* code */ QX86_MNEMONIC_INC, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_rtuple_eDI, 0 }} + } + } + }, + /* 02 */ + { + QX86_OPCODE_MAP_ITEM_CODE_PREFIX, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_1_47_cs + = +{ + QX86_OPCODE_MAP_INDEX_CS, 2, qx86_opcode_map_1_47_cs_items +}; + +static qx86_opcode_map_item qx86_opcode_map_1_48_cs_items[] + = +{ + { + /* code */ QX86_MNEMONIC_DEC, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_rtuple_eAX, 0 }} + } + } + }, + { + /* code */ QX86_MNEMONIC_DEC, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_rtuple_eAX, 0 }} + } + } + }, + /* 02 */ + { + QX86_OPCODE_MAP_ITEM_CODE_PREFIX, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_1_48_cs + = +{ + QX86_OPCODE_MAP_INDEX_CS, 2, qx86_opcode_map_1_48_cs_items +}; + +static qx86_opcode_map_item qx86_opcode_map_1_49_cs_items[] + = +{ + { + /* code */ QX86_MNEMONIC_DEC, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_rtuple_eCX, 0 }} + } + } + }, + { + /* code */ QX86_MNEMONIC_DEC, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_rtuple_eCX, 0 }} + } + } + }, + /* 02 */ + { + QX86_OPCODE_MAP_ITEM_CODE_PREFIX, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_1_49_cs + = +{ + QX86_OPCODE_MAP_INDEX_CS, 2, qx86_opcode_map_1_49_cs_items +}; + +static qx86_opcode_map_item qx86_opcode_map_1_4a_cs_items[] + = +{ + { + /* code */ QX86_MNEMONIC_DEC, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_rtuple_eDX, 0 }} + } + } + }, + { + /* code */ QX86_MNEMONIC_DEC, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_rtuple_eDX, 0 }} + } + } + }, + /* 02 */ + { + QX86_OPCODE_MAP_ITEM_CODE_PREFIX, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_1_4a_cs + = +{ + QX86_OPCODE_MAP_INDEX_CS, 2, qx86_opcode_map_1_4a_cs_items +}; + +static qx86_opcode_map_item qx86_opcode_map_1_4b_cs_items[] + = +{ + { + /* code */ QX86_MNEMONIC_DEC, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_rtuple_eBX, 0 }} + } + } + }, + { + /* code */ QX86_MNEMONIC_DEC, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_rtuple_eBX, 0 }} + } + } + }, + /* 02 */ + { + QX86_OPCODE_MAP_ITEM_CODE_PREFIX, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_1_4b_cs + = +{ + QX86_OPCODE_MAP_INDEX_CS, 2, qx86_opcode_map_1_4b_cs_items +}; + +static qx86_opcode_map_item qx86_opcode_map_1_4c_cs_items[] + = +{ + { + /* code */ QX86_MNEMONIC_DEC, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_rtuple_eSP, 0 }} + } + } + }, + { + /* code */ QX86_MNEMONIC_DEC, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_rtuple_eSP, 0 }} + } + } + }, + /* 02 */ + { + QX86_OPCODE_MAP_ITEM_CODE_PREFIX, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_1_4c_cs + = +{ + QX86_OPCODE_MAP_INDEX_CS, 2, qx86_opcode_map_1_4c_cs_items +}; + +static qx86_opcode_map_item qx86_opcode_map_1_4d_cs_items[] + = +{ + { + /* code */ QX86_MNEMONIC_DEC, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_rtuple_eBP, 0 }} + } + } + }, + { + /* code */ QX86_MNEMONIC_DEC, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_rtuple_eBP, 0 }} + } + } + }, + /* 02 */ + { + QX86_OPCODE_MAP_ITEM_CODE_PREFIX, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_1_4d_cs + = +{ + QX86_OPCODE_MAP_INDEX_CS, 2, qx86_opcode_map_1_4d_cs_items +}; + +static qx86_opcode_map_item qx86_opcode_map_1_4e_cs_items[] + = +{ + { + /* code */ QX86_MNEMONIC_DEC, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_rtuple_eSI, 0 }} + } + } + }, + { + /* code */ QX86_MNEMONIC_DEC, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_rtuple_eSI, 0 }} + } + } + }, + /* 02 */ + { + QX86_OPCODE_MAP_ITEM_CODE_PREFIX, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_1_4e_cs + = +{ + QX86_OPCODE_MAP_INDEX_CS, 2, qx86_opcode_map_1_4e_cs_items +}; + + +static qx86_opcode_map_item qx86_opcode_map_1_4f_cs_items[] + = +{ + { + /* code */ QX86_MNEMONIC_DEC, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_rtuple_eDI, 0 }} + } + } + }, + { + /* code */ QX86_MNEMONIC_DEC, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_rtuple_eDI, 0 }} + } + } + }, + /* 02 */ + { + QX86_OPCODE_MAP_ITEM_CODE_PREFIX, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_1_4f_cs + = +{ + QX86_OPCODE_MAP_INDEX_CS, 2, qx86_opcode_map_1_4f_cs_items +}; + + + +static qx86_opcode_map_item qx86_opcode_map_1_60_cs_00_os_items[] + = +{ + { + /* code */ QX86_MNEMONIC_PUSHA, + /* map */ 0, + + /* operandCount */ 0, + /* placeHolder */ {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + { + /* code */ QX86_MNEMONIC_PUSHAD, + /* map */ 0, + + /* operandCount */ 0, + /* placeHolder */ {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 02 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_1_60_cs_00_os + = +{ + QX86_OPCODE_MAP_INDEX_OS, 2, qx86_opcode_map_1_60_cs_00_os_items +}; + +static qx86_opcode_map_item qx86_opcode_map_1_60_cs_01_os_items[] + = +{ + { + /* code */ QX86_MNEMONIC_PUSHA, + /* map */ 0, + + /* operandCount */ 0, + /* placeHolder */ {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + { + /* code */ QX86_MNEMONIC_PUSHAD, + /* map */ 0, + + /* operandCount */ 0, + /* placeHolder */ {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 02 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_1_60_cs_01_os + = +{ + QX86_OPCODE_MAP_INDEX_OS, 2, qx86_opcode_map_1_60_cs_01_os_items +}; + +static qx86_opcode_map_item qx86_opcode_map_1_60_cs_items[] + = +{ + /* 00 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_1_60_cs_00_os, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 01 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_1_60_cs_01_os, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 02 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_1_60_cs + = +{ + QX86_OPCODE_MAP_INDEX_CS, 2, qx86_opcode_map_1_60_cs_items +}; + +static qx86_opcode_map_item qx86_opcode_map_1_61_cs_00_os_items[] + = +{ + { + /* code */ QX86_MNEMONIC_POPA, + /* map */ 0, + + /* operandCount */ 0, + /* placeHolder */ {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + { + /* code */ QX86_MNEMONIC_POPAD, + /* map */ 0, + + /* operandCount */ 0, + /* placeHolder */ {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 02 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_1_61_cs_00_os + = +{ + QX86_OPCODE_MAP_INDEX_OS, 2, qx86_opcode_map_1_61_cs_00_os_items +}; + +static qx86_opcode_map_item qx86_opcode_map_1_61_cs_01_os_items[] + = +{ + { + /* code */ QX86_MNEMONIC_POPA, + /* map */ 0, + + /* operandCount */ 0, + /* placeHolder */ {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + { + /* code */ QX86_MNEMONIC_POPAD, + /* map */ 0, + + /* operandCount */ 0, + /* placeHolder */ {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 02 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_1_61_cs_01_os + = +{ + QX86_OPCODE_MAP_INDEX_OS, 2, qx86_opcode_map_1_61_cs_01_os_items +}; + +static qx86_opcode_map_item qx86_opcode_map_1_61_cs_items[] + = +{ + /* 00 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_1_61_cs_00_os, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 01 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_1_61_cs_01_os, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 02 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_1_61_cs + = +{ + QX86_OPCODE_MAP_INDEX_CS, 2, qx86_opcode_map_1_61_cs_items +}; + +static qx86_opcode_map_item qx86_opcode_map_1_62_cs_items[] + = +{ + { + /* code */ QX86_MNEMONIC_BOUND, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_G, &qx86_stuple_v }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_M, &qx86_stuple_a }} + } + } + }, + { + /* code */ QX86_MNEMONIC_BOUND, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_G, &qx86_stuple_v }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_M, &qx86_stuple_a }} + } + } + }, + /* 02 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_1_62_cs + = +{ + QX86_OPCODE_MAP_INDEX_CS, 2, qx86_opcode_map_1_62_cs_items +}; + +static qx86_opcode_map_item qx86_opcode_map_1_63_cs_items[] + = +{ + { + /* code */ QX86_MNEMONIC_ARPL, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_amode_E, &qx86_stuple_w }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_G, &qx86_stuple_w }} + } + } + }, + { + /* code */ QX86_MNEMONIC_ARPL, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_amode_E, &qx86_stuple_w }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_G, &qx86_stuple_w }} + } + } + }, + { + /* code */ QX86_MNEMONIC_MOVSXD, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_G, &qx86_stuple_v }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_E, &qx86_stuple_d }} + } + } + } +}; + +static qx86_opcode_map qx86_opcode_map_1_63_cs + = +{ + QX86_OPCODE_MAP_INDEX_CS, 2, qx86_opcode_map_1_63_cs_items +}; + + +static qx86_opcode_map_item qx86_opcode_map_1_6d_os_items[] + = +{ + { + /* code */ QX86_MNEMONIC_INSW, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_Y, &qx86_stuple_z }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_DX, 0 }} + } + } + }, + { + /* code */ QX86_MNEMONIC_INSD, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_Y, &qx86_stuple_z }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_DX, 0 }} + } + } + }, + { + /* code */ QX86_MNEMONIC_INSD, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_Y, &qx86_stuple_z }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_DX, 0 }} + } + } + } +}; + +static qx86_opcode_map qx86_opcode_map_1_6d_os + = +{ + QX86_OPCODE_MAP_INDEX_OS, 2, qx86_opcode_map_1_6d_os_items +}; + + +static qx86_opcode_map_item qx86_opcode_map_1_6f_os_items[] + = +{ + { + /* code */ QX86_MNEMONIC_OUTSW, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_DX, 0 }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_X, &qx86_stuple_z }} + } + } + }, + { + /* code */ QX86_MNEMONIC_OUTSD, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_DX, 0 }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_X, &qx86_stuple_z }} + } + } + }, + { + /* code */ QX86_MNEMONIC_OUTSD, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_DX, 0 }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_X, &qx86_stuple_z }} + } + } + } +}; + +static qx86_opcode_map qx86_opcode_map_1_6f_os + = +{ + QX86_OPCODE_MAP_INDEX_OS, 2, qx86_opcode_map_1_6f_os_items +}; + + + +static qx86_opcode_map_item qx86_opcode_map_1_82_cs_items[] + = +{ + /* 00 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_M1_Eb_Ib, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 01 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_M1_Eb_Ib, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 02 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_1_82_cs + = +{ + QX86_OPCODE_MAP_INDEX_CS, 2, qx86_opcode_map_1_82_cs_items +}; + + +static qx86_opcode_map_item qx86_opcode_map_1_8c_mod_items[] + = +{ + { + /* code */ QX86_MNEMONIC_MOV, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_M, &qx86_stuple_w }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_S, &qx86_stuple_w }} + } + } + }, + { + /* code */ QX86_MNEMONIC_MOV, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_M, &qx86_stuple_w }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_S, &qx86_stuple_w }} + } + } + }, + { + /* code */ QX86_MNEMONIC_MOV, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_M, &qx86_stuple_w }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_S, &qx86_stuple_w }} + } + } + }, + { + /* code */ QX86_MNEMONIC_MOV, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_R, &qx86_stuple_v }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_S, &qx86_stuple_w }} + } + } + } +}; + +static qx86_opcode_map qx86_opcode_map_1_8c_mod + = +{ + QX86_OPCODE_MAP_INDEX_MOD, 3, qx86_opcode_map_1_8c_mod_items +}; + + + +static qx86_opcode_map_item qx86_opcode_map_1_98_os_items[] + = +{ + { + /* code */ QX86_MNEMONIC_CBW, + /* map */ 0, + + /* operandCount */ 0, + /* placeHolder */ {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + { + /* code */ QX86_MNEMONIC_CWDE, + /* map */ 0, + + /* operandCount */ 0, + /* placeHolder */ {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + { + /* code */ QX86_MNEMONIC_CDQE, + /* map */ 0, + + /* operandCount */ 0, + /* placeHolder */ {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_1_98_os + = +{ + QX86_OPCODE_MAP_INDEX_OS, 2, qx86_opcode_map_1_98_os_items +}; + +static qx86_opcode_map_item qx86_opcode_map_1_99_os_items[] + = +{ + { + /* code */ QX86_MNEMONIC_CWD, + /* map */ 0, + + /* operandCount */ 0, + /* placeHolder */ {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + { + /* code */ QX86_MNEMONIC_CDQ, + /* map */ 0, + + /* operandCount */ 0, + /* placeHolder */ {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + { + /* code */ QX86_MNEMONIC_CQO, + /* map */ 0, + + /* operandCount */ 0, + /* placeHolder */ {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_1_99_os + = +{ + QX86_OPCODE_MAP_INDEX_OS, 2, qx86_opcode_map_1_99_os_items +}; + +static qx86_opcode_map_item qx86_opcode_map_1_9a_cs_items[] + = +{ + { + /* code */ QX86_MNEMONIC_CALLF, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_A, &qx86_stuple_p }} + } + } + }, + { + /* code */ QX86_MNEMONIC_CALLF, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_A, &qx86_stuple_p }} + } + } + }, + /* 02 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_1_9a_cs + = +{ + QX86_OPCODE_MAP_INDEX_CS, 2, qx86_opcode_map_1_9a_cs_items +}; + +static qx86_opcode_map_item qx86_opcode_map_1_9c_os_items[] + = +{ + { + /* code */ QX86_MNEMONIC_PUSHF, + /* map */ 0, + + /* operandCount */ 0, + /* placeHolder */ {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + { + /* code */ QX86_MNEMONIC_PUSHFD, + /* map */ 0, + + /* operandCount */ 0, + /* placeHolder */ {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + { + /* code */ QX86_MNEMONIC_PUSHFQ, + /* map */ 0, + + /* operandCount */ 0, + /* placeHolder */ {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_1_9c_os + = +{ + QX86_OPCODE_MAP_INDEX_OS, 2, qx86_opcode_map_1_9c_os_items +}; + +static qx86_opcode_map_item qx86_opcode_map_1_9d_os_items[] + = +{ + { + /* code */ QX86_MNEMONIC_POPF, + /* map */ 0, + + /* operandCount */ 0, + /* placeHolder */ {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + { + /* code */ QX86_MNEMONIC_POPFD, + /* map */ 0, + + /* operandCount */ 0, + /* placeHolder */ {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + { + /* code */ QX86_MNEMONIC_POPFQ, + /* map */ 0, + + /* operandCount */ 0, + /* placeHolder */ {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_1_9d_os + = +{ + QX86_OPCODE_MAP_INDEX_OS, 2, qx86_opcode_map_1_9d_os_items +}; + + +static qx86_opcode_map_item qx86_opcode_map_1_a5_os_items[] + = +{ + { + /* code */ QX86_MNEMONIC_MOVSW, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_Y, &qx86_stuple_v }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_X, &qx86_stuple_v }} + } + } + }, + { + /* code */ QX86_MNEMONIC_MOVSD, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_Y, &qx86_stuple_v }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_X, &qx86_stuple_v }} + } + } + }, + { + /* code */ QX86_MNEMONIC_MOVSQ, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_Y, &qx86_stuple_v }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_X, &qx86_stuple_v }} + } + } + } +}; + +static qx86_opcode_map qx86_opcode_map_1_a5_os + = +{ + QX86_OPCODE_MAP_INDEX_OS, 2, qx86_opcode_map_1_a5_os_items +}; + + +static qx86_opcode_map_item qx86_opcode_map_1_a7_os_items[] + = +{ + { + /* code */ QX86_MNEMONIC_CMPSW, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_X, &qx86_stuple_v }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_Y, &qx86_stuple_v }} + } + } + }, + { + /* code */ QX86_MNEMONIC_CMPSD, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_X, &qx86_stuple_v }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_Y, &qx86_stuple_v }} + } + } + }, + { + /* code */ QX86_MNEMONIC_CMPSQ, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_X, &qx86_stuple_v }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_Y, &qx86_stuple_v }} + } + } + } +}; + +static qx86_opcode_map qx86_opcode_map_1_a7_os + = +{ + QX86_OPCODE_MAP_INDEX_OS, 2, qx86_opcode_map_1_a7_os_items +}; + +static qx86_opcode_map_item qx86_opcode_map_1_ab_os_items[] + = +{ + { + /* code */ QX86_MNEMONIC_STOSW, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_Y, &qx86_stuple_v }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_rAX, 0 }} + } + } + }, + { + /* code */ QX86_MNEMONIC_STOSD, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_Y, &qx86_stuple_v }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_rAX, 0 }} + } + } + }, + { + /* code */ QX86_MNEMONIC_STOSQ, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_Y, &qx86_stuple_v }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_rAX, 0 }} + } + } + } +}; + +static qx86_opcode_map qx86_opcode_map_1_ab_os + = +{ + QX86_OPCODE_MAP_INDEX_OS, 2, qx86_opcode_map_1_ab_os_items +}; + +static qx86_opcode_map_item qx86_opcode_map_1_ad_os_items[] + = +{ + { + /* code */ QX86_MNEMONIC_LODSW, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_rtuple_rAX, 0 }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_X, &qx86_stuple_v }} + } + } + }, + { + /* code */ QX86_MNEMONIC_LODSD, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_rtuple_rAX, 0 }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_X, &qx86_stuple_v }} + } + } + }, + { + /* code */ QX86_MNEMONIC_LODSQ, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_rtuple_rAX, 0 }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_X, &qx86_stuple_v }} + } + } + } +}; + +static qx86_opcode_map qx86_opcode_map_1_ad_os + = +{ + QX86_OPCODE_MAP_INDEX_OS, 2, qx86_opcode_map_1_ad_os_items +}; + + +static qx86_opcode_map_item qx86_opcode_map_1_af_os_items[] + = +{ + { + /* code */ QX86_MNEMONIC_SCASW, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_rAX, 0 }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_Y, &qx86_stuple_v }} + } + } + }, + { + /* code */ QX86_MNEMONIC_SCASD, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_rAX, 0 }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_Y, &qx86_stuple_v }} + } + } + }, + { + /* code */ QX86_MNEMONIC_SCASQ, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_rAX, 0 }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_Y, &qx86_stuple_v }} + } + } + } +}; + +static qx86_opcode_map qx86_opcode_map_1_af_os + = +{ + QX86_OPCODE_MAP_INDEX_OS, 2, qx86_opcode_map_1_af_os_items +}; + + + +static qx86_opcode_map_item qx86_opcode_map_1_c4_mod_00_cs_items[] + = +{ + { + /* code */ QX86_MNEMONIC_LES, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_G, &qx86_stuple_z }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_M, &qx86_stuple_p }} + } + } + }, + { + /* code */ QX86_MNEMONIC_LES, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_G, &qx86_stuple_z }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_M, &qx86_stuple_p }} + } + } + }, + /* 02 */ + { + QX86_OPCODE_MAP_ITEM_CODE_PREFIX, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_1_c4_mod_00_cs + = +{ + QX86_OPCODE_MAP_INDEX_CS, 2, qx86_opcode_map_1_c4_mod_00_cs_items +}; + +static qx86_opcode_map_item qx86_opcode_map_1_c4_mod_01_cs_items[] + = +{ + { + /* code */ QX86_MNEMONIC_LES, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_G, &qx86_stuple_z }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_M, &qx86_stuple_p }} + } + } + }, + { + /* code */ QX86_MNEMONIC_LES, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_G, &qx86_stuple_z }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_M, &qx86_stuple_p }} + } + } + }, + /* 02 */ + { + QX86_OPCODE_MAP_ITEM_CODE_PREFIX, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_1_c4_mod_01_cs + = +{ + QX86_OPCODE_MAP_INDEX_CS, 2, qx86_opcode_map_1_c4_mod_01_cs_items +}; + +static qx86_opcode_map_item qx86_opcode_map_1_c4_mod_02_cs_items[] + = +{ + { + /* code */ QX86_MNEMONIC_LES, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_G, &qx86_stuple_z }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_M, &qx86_stuple_p }} + } + } + }, + { + /* code */ QX86_MNEMONIC_LES, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_G, &qx86_stuple_z }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_M, &qx86_stuple_p }} + } + } + }, + /* 02 */ + { + QX86_OPCODE_MAP_ITEM_CODE_PREFIX, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_1_c4_mod_02_cs + = +{ + QX86_OPCODE_MAP_INDEX_CS, 2, qx86_opcode_map_1_c4_mod_02_cs_items +}; + +static qx86_opcode_map_item qx86_opcode_map_1_c4_mod_items[] + = +{ + /* 00 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_1_c4_mod_00_cs, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 01 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_1_c4_mod_01_cs, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 02 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_1_c4_mod_02_cs, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 03 */ + { + QX86_OPCODE_MAP_ITEM_CODE_PREFIX, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_1_c4_mod + = +{ + QX86_OPCODE_MAP_INDEX_MOD, 3, qx86_opcode_map_1_c4_mod_items +}; + +static qx86_opcode_map_item qx86_opcode_map_1_c5_mod_00_cs_items[] + = +{ + { + /* code */ QX86_MNEMONIC_LDS, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_G, &qx86_stuple_z }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_M, &qx86_stuple_p }} + } + } + }, + { + /* code */ QX86_MNEMONIC_LDS, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_G, &qx86_stuple_z }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_M, &qx86_stuple_p }} + } + } + }, + /* 02 */ + { + QX86_OPCODE_MAP_ITEM_CODE_PREFIX, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_1_c5_mod_00_cs + = +{ + QX86_OPCODE_MAP_INDEX_CS, 2, qx86_opcode_map_1_c5_mod_00_cs_items +}; + +static qx86_opcode_map_item qx86_opcode_map_1_c5_mod_01_cs_items[] + = +{ + { + /* code */ QX86_MNEMONIC_LDS, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_G, &qx86_stuple_z }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_M, &qx86_stuple_p }} + } + } + }, + { + /* code */ QX86_MNEMONIC_LDS, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_G, &qx86_stuple_z }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_M, &qx86_stuple_p }} + } + } + }, + /* 02 */ + { + QX86_OPCODE_MAP_ITEM_CODE_PREFIX, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_1_c5_mod_01_cs + = +{ + QX86_OPCODE_MAP_INDEX_CS, 2, qx86_opcode_map_1_c5_mod_01_cs_items +}; + +static qx86_opcode_map_item qx86_opcode_map_1_c5_mod_02_cs_items[] + = +{ + { + /* code */ QX86_MNEMONIC_LDS, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_G, &qx86_stuple_z }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_M, &qx86_stuple_p }} + } + } + }, + { + /* code */ QX86_MNEMONIC_LDS, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_G, &qx86_stuple_z }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_M, &qx86_stuple_p }} + } + } + }, + /* 02 */ + { + QX86_OPCODE_MAP_ITEM_CODE_PREFIX, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_1_c5_mod_02_cs + = +{ + QX86_OPCODE_MAP_INDEX_CS, 2, qx86_opcode_map_1_c5_mod_02_cs_items +}; + +static qx86_opcode_map_item qx86_opcode_map_1_c5_mod_items[] + = +{ + /* 00 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_1_c5_mod_00_cs, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 01 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_1_c5_mod_01_cs, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 02 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_1_c5_mod_02_cs, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 03 */ + { + QX86_OPCODE_MAP_ITEM_CODE_PREFIX, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_1_c5_mod + = +{ + QX86_OPCODE_MAP_INDEX_MOD, 3, qx86_opcode_map_1_c5_mod_items +}; + + +static qx86_opcode_map_item qx86_opcode_map_1_ce_cs_items[] + = +{ + { + /* code */ QX86_MNEMONIC_INTO, + /* map */ 0, + + /* operandCount */ 0, + /* placeHolder */ {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + { + /* code */ QX86_MNEMONIC_INTO, + /* map */ 0, + + /* operandCount */ 0, + /* placeHolder */ {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 02 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_1_ce_cs + = +{ + QX86_OPCODE_MAP_INDEX_CS, 2, qx86_opcode_map_1_ce_cs_items +}; + + +static qx86_opcode_map_item qx86_opcode_map_1_cf_cs_items[] + = +{ + { + /* code */ QX86_MNEMONIC_IRET, + /* map */ 0, + + /* operandCount */ 0, + /* placeHolder */ {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + { + /* code */ QX86_MNEMONIC_IRETD, + /* map */ 0, + + /* operandCount */ 0, + /* placeHolder */ {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + { + /* code */ QX86_MNEMONIC_IRETQ, + /* map */ 0, + + /* operandCount */ 0, + /* placeHolder */ {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_1_cf_cs + = +{ + QX86_OPCODE_MAP_INDEX_CS, 2, qx86_opcode_map_1_cf_cs_items +}; + +static qx86_opcode_map_item qx86_opcode_map_1_d4_cs_items[] + = +{ + { + /* code */ QX86_MNEMONIC_AAM, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_I, &qx86_stuple_b }} + } + } + }, + { + /* code */ QX86_MNEMONIC_AAM, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_I, &qx86_stuple_b }} + } + } + }, + /* 02 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_1_d4_cs + = +{ + QX86_OPCODE_MAP_INDEX_CS, 2, qx86_opcode_map_1_d4_cs_items +}; + +static qx86_opcode_map_item qx86_opcode_map_1_d5_cs_items[] + = +{ + { + /* code */ QX86_MNEMONIC_AAD, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_I, &qx86_stuple_b }} + } + } + }, + { + /* code */ QX86_MNEMONIC_AAD, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_I, &qx86_stuple_b }} + } + } + }, + /* 02 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_1_d5_cs + = +{ + QX86_OPCODE_MAP_INDEX_CS, 2, qx86_opcode_map_1_d5_cs_items +}; + +static qx86_opcode_map_item qx86_opcode_map_1_d6_cs_items[] + = +{ + { + /* code */ QX86_MNEMONIC_SALC, + /* map */ 0, + + /* operandCount */ 0, + /* placeHolder */ {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + { + /* code */ QX86_MNEMONIC_SALC, + /* map */ 0, + + /* operandCount */ 0, + /* placeHolder */ {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 02 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_1_d6_cs + = +{ + QX86_OPCODE_MAP_INDEX_CS, 2, qx86_opcode_map_1_d6_cs_items +}; + + + +static qx86_opcode_map_item qx86_opcode_map_1_e3_as_items[] + = +{ + { + /* code */ QX86_MNEMONIC_JCXZ, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_J, &qx86_stuple_b }} + } + } + }, + { + /* code */ QX86_MNEMONIC_JECXZ, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_J, &qx86_stuple_b }} + } + } + }, + { + /* code */ QX86_MNEMONIC_JRCXZ, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_J, &qx86_stuple_b }} + } + } + } +}; + +static qx86_opcode_map qx86_opcode_map_1_e3_as + = +{ + QX86_OPCODE_MAP_INDEX_AS, 2, qx86_opcode_map_1_e3_as_items +}; + + +static qx86_opcode_map_item qx86_opcode_map_1_ea_cs_items[] + = +{ + { + /* code */ QX86_MNEMONIC_JMPF, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_A, &qx86_stuple_p }} + } + } + }, + { + /* code */ QX86_MNEMONIC_JMPF, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_A, &qx86_stuple_p }} + } + } + }, + /* 02 */ + { + QX86_OPCODE_MAP_ITEM_CODE_NONE, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_1_ea_cs + = +{ + QX86_OPCODE_MAP_INDEX_CS, 2, qx86_opcode_map_1_ea_cs_items +}; + + + +static qx86_opcode_map_item qx86_opcode_map_1_items[] + = +{ + { + /* code */ QX86_MNEMONIC_ADD, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_amode_E, &qx86_stuple_b }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_G, &qx86_stuple_b }} + } + } + }, + { + /* code */ QX86_MNEMONIC_ADD, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_amode_E, &qx86_stuple_v }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_G, &qx86_stuple_v }} + } + } + }, + { + /* code */ QX86_MNEMONIC_ADD, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_amode_G, &qx86_stuple_b }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_E, &qx86_stuple_b }} + } + } + }, + { + /* code */ QX86_MNEMONIC_ADD, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_amode_G, &qx86_stuple_v }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_E, &qx86_stuple_v }} + } + } + }, + { + /* code */ QX86_MNEMONIC_ADD, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_rtuple_AL, 0 }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_I, &qx86_stuple_b }} + } + } + }, + { + /* code */ QX86_MNEMONIC_ADD, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_rtuple_rAX, 0 }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_I, &qx86_stuple_z }} + } + } + }, + /* 06 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_1_06_cs, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 07 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_1_07_cs, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + { + /* code */ QX86_MNEMONIC_OR, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_amode_E, &qx86_stuple_b }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_G, &qx86_stuple_b }} + } + } + }, + { + /* code */ QX86_MNEMONIC_OR, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_amode_E, &qx86_stuple_v }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_G, &qx86_stuple_v }} + } + } + }, + { + /* code */ QX86_MNEMONIC_OR, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_amode_G, &qx86_stuple_b }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_E, &qx86_stuple_b }} + } + } + }, + { + /* code */ QX86_MNEMONIC_OR, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_amode_G, &qx86_stuple_v }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_E, &qx86_stuple_v }} + } + } + }, + { + /* code */ QX86_MNEMONIC_OR, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_rtuple_AL, 0 }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_I, &qx86_stuple_b }} + } + } + }, + { + /* code */ QX86_MNEMONIC_OR, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_rtuple_rAX, 0 }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_I, &qx86_stuple_z }} + } + } + }, + /* 0E */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_1_0e_cs, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 0F */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_2, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + { + /* code */ QX86_MNEMONIC_ADC, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_amode_E, &qx86_stuple_b }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_G, &qx86_stuple_b }} + } + } + }, + { + /* code */ QX86_MNEMONIC_ADC, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_amode_E, &qx86_stuple_v }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_G, &qx86_stuple_v }} + } + } + }, + { + /* code */ QX86_MNEMONIC_ADC, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_amode_G, &qx86_stuple_b }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_E, &qx86_stuple_b }} + } + } + }, + { + /* code */ QX86_MNEMONIC_ADC, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_amode_G, &qx86_stuple_v }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_E, &qx86_stuple_v }} + } + } + }, + { + /* code */ QX86_MNEMONIC_ADC, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_rtuple_AL, 0 }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_I, &qx86_stuple_b }} + } + } + }, + { + /* code */ QX86_MNEMONIC_ADC, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_rtuple_rAX, 0 }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_I, &qx86_stuple_z }} + } + } + }, + /* 16 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_1_16_cs, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 17 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_1_17_cs, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + { + /* code */ QX86_MNEMONIC_SBB, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_amode_E, &qx86_stuple_b }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_G, &qx86_stuple_b }} + } + } + }, + { + /* code */ QX86_MNEMONIC_SBB, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_amode_E, &qx86_stuple_v }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_G, &qx86_stuple_v }} + } + } + }, + { + /* code */ QX86_MNEMONIC_SBB, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_amode_G, &qx86_stuple_b }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_E, &qx86_stuple_b }} + } + } + }, + { + /* code */ QX86_MNEMONIC_SBB, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_amode_G, &qx86_stuple_v }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_E, &qx86_stuple_v }} + } + } + }, + { + /* code */ QX86_MNEMONIC_SBB, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_rtuple_AL, 0 }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_I, &qx86_stuple_b }} + } + } + }, + { + /* code */ QX86_MNEMONIC_SBB, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_rtuple_rAX, 0 }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_I, &qx86_stuple_z }} + } + } + }, + /* 1E */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_1_1e_cs, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 1F */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_1_1f_cs, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + { + /* code */ QX86_MNEMONIC_AND, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_amode_E, &qx86_stuple_b }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_G, &qx86_stuple_b }} + } + } + }, + { + /* code */ QX86_MNEMONIC_AND, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_amode_E, &qx86_stuple_v }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_G, &qx86_stuple_v }} + } + } + }, + { + /* code */ QX86_MNEMONIC_AND, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_amode_G, &qx86_stuple_b }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_E, &qx86_stuple_b }} + } + } + }, + { + /* code */ QX86_MNEMONIC_AND, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_amode_G, &qx86_stuple_v }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_E, &qx86_stuple_v }} + } + } + }, + { + /* code */ QX86_MNEMONIC_AND, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_rtuple_AL, 0 }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_I, &qx86_stuple_b }} + } + } + }, + { + /* code */ QX86_MNEMONIC_AND, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_rtuple_rAX, 0 }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_I, &qx86_stuple_z }} + } + } + }, + /* 26 */ + { + QX86_OPCODE_MAP_ITEM_CODE_PREFIX, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 27 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_1_27_cs, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + { + /* code */ QX86_MNEMONIC_SUB, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_amode_E, &qx86_stuple_b }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_G, &qx86_stuple_b }} + } + } + }, + { + /* code */ QX86_MNEMONIC_SUB, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_amode_E, &qx86_stuple_v }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_G, &qx86_stuple_v }} + } + } + }, + { + /* code */ QX86_MNEMONIC_SUB, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_amode_G, &qx86_stuple_b }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_E, &qx86_stuple_b }} + } + } + }, + { + /* code */ QX86_MNEMONIC_SUB, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_amode_G, &qx86_stuple_v }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_E, &qx86_stuple_v }} + } + } + }, + { + /* code */ QX86_MNEMONIC_SUB, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_rtuple_AL, 0 }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_I, &qx86_stuple_b }} + } + } + }, + { + /* code */ QX86_MNEMONIC_SUB, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_rtuple_rAX, 0 }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_I, &qx86_stuple_z }} + } + } + }, + /* 2E */ + { + QX86_OPCODE_MAP_ITEM_CODE_PREFIX, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 2F */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_1_2f_cs, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + { + /* code */ QX86_MNEMONIC_XOR, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_amode_E, &qx86_stuple_b }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_G, &qx86_stuple_b }} + } + } + }, + { + /* code */ QX86_MNEMONIC_XOR, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_amode_E, &qx86_stuple_v }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_G, &qx86_stuple_v }} + } + } + }, + { + /* code */ QX86_MNEMONIC_XOR, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_amode_G, &qx86_stuple_b }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_E, &qx86_stuple_b }} + } + } + }, + { + /* code */ QX86_MNEMONIC_XOR, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_amode_G, &qx86_stuple_v }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_E, &qx86_stuple_v }} + } + } + }, + { + /* code */ QX86_MNEMONIC_XOR, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_rtuple_AL, 0 }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_I, &qx86_stuple_b }} + } + } + }, + { + /* code */ QX86_MNEMONIC_XOR, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_rtuple_rAX, 0 }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_I, &qx86_stuple_z }} + } + } + }, + /* 36 */ + { + QX86_OPCODE_MAP_ITEM_CODE_PREFIX, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 37 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_1_37_cs, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + { + /* code */ QX86_MNEMONIC_CMP, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_E, &qx86_stuple_b }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_G, &qx86_stuple_b }} + } + } + }, + { + /* code */ QX86_MNEMONIC_CMP, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_E, &qx86_stuple_v }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_G, &qx86_stuple_v }} + } + } + }, + { + /* code */ QX86_MNEMONIC_CMP, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_G, &qx86_stuple_b }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_E, &qx86_stuple_b }} + } + } + }, + { + /* code */ QX86_MNEMONIC_CMP, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_G, &qx86_stuple_v }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_E, &qx86_stuple_v }} + } + } + }, + { + /* code */ QX86_MNEMONIC_CMP, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_AL, 0 }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_I, &qx86_stuple_b }} + } + } + }, + { + /* code */ QX86_MNEMONIC_CMP, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_rAX, 0 }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_I, &qx86_stuple_z }} + } + } + }, + /* 3E */ + { + QX86_OPCODE_MAP_ITEM_CODE_PREFIX, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 3F */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_1_3f_cs, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 40 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_1_40_cs, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 41 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_1_41_cs, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 42 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_1_42_cs, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 43 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_1_43_cs, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 44 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_1_44_cs, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 45 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_1_45_cs, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 46 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_1_46_cs, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 47 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_1_47_cs, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 48 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_1_48_cs, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 49 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_1_49_cs, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 4A */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_1_4a_cs, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 4B */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_1_4b_cs, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 4C */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_1_4c_cs, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 4D */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_1_4d_cs, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 4E */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_1_4e_cs, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 4F */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_1_4f_cs, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + { + /* code */ QX86_MNEMONIC_PUSH, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_r0, 0 }} + } + } + }, + { + /* code */ QX86_MNEMONIC_PUSH, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_r1, 0 }} + } + } + }, + { + /* code */ QX86_MNEMONIC_PUSH, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_r2, 0 }} + } + } + }, + { + /* code */ QX86_MNEMONIC_PUSH, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_r3, 0 }} + } + } + }, + { + /* code */ QX86_MNEMONIC_PUSH, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_r4, 0 }} + } + } + }, + { + /* code */ QX86_MNEMONIC_PUSH, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_r5, 0 }} + } + } + }, + { + /* code */ QX86_MNEMONIC_PUSH, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_r6, 0 }} + } + } + }, + { + /* code */ QX86_MNEMONIC_PUSH, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_r7, 0 }} + } + } + }, + { + /* code */ QX86_MNEMONIC_POP, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_rtuple_r0, 0 }} + } + } + }, + { + /* code */ QX86_MNEMONIC_POP, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_rtuple_r1, 0 }} + } + } + }, + { + /* code */ QX86_MNEMONIC_POP, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_rtuple_r2, 0 }} + } + } + }, + { + /* code */ QX86_MNEMONIC_POP, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_rtuple_r3, 0 }} + } + } + }, + { + /* code */ QX86_MNEMONIC_POP, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_rtuple_r4, 0 }} + } + } + }, + { + /* code */ QX86_MNEMONIC_POP, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_rtuple_r5, 0 }} + } + } + }, + { + /* code */ QX86_MNEMONIC_POP, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_rtuple_r6, 0 }} + } + } + }, + { + /* code */ QX86_MNEMONIC_POP, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_rtuple_r7, 0 }} + } + } + }, + /* 60 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_1_60_cs, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 61 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_1_61_cs, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 62 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_1_62_cs, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 63 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_1_63_cs, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 64 */ + { + QX86_OPCODE_MAP_ITEM_CODE_PREFIX, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 65 */ + { + QX86_OPCODE_MAP_ITEM_CODE_PREFIX, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 66 */ + { + QX86_OPCODE_MAP_ITEM_CODE_PREFIX, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 67 */ + { + QX86_OPCODE_MAP_ITEM_CODE_PREFIX, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + { + /* code */ QX86_MNEMONIC_PUSH, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_I, &qx86_stuple_z }} + } + } + }, + { + /* code */ QX86_MNEMONIC_IMUL, + /* map */ 0, + + /* operandCount */ 3, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_G, &qx86_stuple_v }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_E, &qx86_stuple_v }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_I, &qx86_stuple_z }} + } + } + }, + { + /* code */ QX86_MNEMONIC_PUSH, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_I, &qx86_stuple_b }} + } + } + }, + { + /* code */ QX86_MNEMONIC_IMUL, + /* map */ 0, + + /* operandCount */ 3, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_G, &qx86_stuple_v }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_E, &qx86_stuple_v }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_I, &qx86_stuple_b }} + } + } + }, + { + /* code */ QX86_MNEMONIC_INSB, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_Y, &qx86_stuple_b }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_DX, 0 }} + } + } + }, + /* 6D */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_1_6d_os, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + { + /* code */ QX86_MNEMONIC_OUTSB, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_DX, 0 }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_X, &qx86_stuple_b }} + } + } + }, + /* 6F */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_1_6f_os, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + { + /* code */ QX86_MNEMONIC_JO, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_J, &qx86_stuple_b }} + } + } + }, + { + /* code */ QX86_MNEMONIC_JNO, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_J, &qx86_stuple_b }} + } + } + }, + { + /* code */ QX86_MNEMONIC_JB, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_J, &qx86_stuple_b }} + } + } + }, + { + /* code */ QX86_MNEMONIC_JAE, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_J, &qx86_stuple_b }} + } + } + }, + { + /* code */ QX86_MNEMONIC_JZ, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_J, &qx86_stuple_b }} + } + } + }, + { + /* code */ QX86_MNEMONIC_JNZ, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_J, &qx86_stuple_b }} + } + } + }, + { + /* code */ QX86_MNEMONIC_JBE, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_J, &qx86_stuple_b }} + } + } + }, + { + /* code */ QX86_MNEMONIC_JA, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_J, &qx86_stuple_b }} + } + } + }, + { + /* code */ QX86_MNEMONIC_JS, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_J, &qx86_stuple_b }} + } + } + }, + { + /* code */ QX86_MNEMONIC_JNS, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_J, &qx86_stuple_b }} + } + } + }, + { + /* code */ QX86_MNEMONIC_JP, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_J, &qx86_stuple_b }} + } + } + }, + { + /* code */ QX86_MNEMONIC_JNP, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_J, &qx86_stuple_b }} + } + } + }, + { + /* code */ QX86_MNEMONIC_JL, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_J, &qx86_stuple_b }} + } + } + }, + { + /* code */ QX86_MNEMONIC_JGE, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_J, &qx86_stuple_b }} + } + } + }, + { + /* code */ QX86_MNEMONIC_JLE, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_J, &qx86_stuple_b }} + } + } + }, + { + /* code */ QX86_MNEMONIC_JG, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_J, &qx86_stuple_b }} + } + } + }, + /* 80 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_M1_Eb_Ib, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 81 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_M1_Ev_Iz, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 82 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_1_82_cs, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 83 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_M1_Ev_Ib, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + { + /* code */ QX86_MNEMONIC_TEST, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_E, &qx86_stuple_b }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_G, &qx86_stuple_b }} + } + } + }, + { + /* code */ QX86_MNEMONIC_TEST, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_E, &qx86_stuple_v }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_G, &qx86_stuple_v }} + } + } + }, + { + /* code */ QX86_MNEMONIC_XCHG, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_amode_E, &qx86_stuple_b }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_amode_G, &qx86_stuple_b }} + } + } + }, + { + /* code */ QX86_MNEMONIC_XCHG, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_amode_E, &qx86_stuple_v }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_amode_G, &qx86_stuple_v }} + } + } + }, + { + /* code */ QX86_MNEMONIC_MOV, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_E, &qx86_stuple_b }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_G, &qx86_stuple_b }} + } + } + }, + { + /* code */ QX86_MNEMONIC_MOV, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_E, &qx86_stuple_v }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_G, &qx86_stuple_v }} + } + } + }, + { + /* code */ QX86_MNEMONIC_MOV, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_G, &qx86_stuple_b }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_E, &qx86_stuple_b }} + } + } + }, + { + /* code */ QX86_MNEMONIC_MOV, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_G, &qx86_stuple_v }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_E, &qx86_stuple_v }} + } + } + }, + /* 8C */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_1_8c_mod, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + { + /* code */ QX86_MNEMONIC_LEA, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_G, &qx86_stuple_v }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_M, &qx86_stuple_i }} + } + } + }, + { + /* code */ QX86_MNEMONIC_MOV, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_S, &qx86_stuple_w }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_E, &qx86_stuple_w }} + } + } + }, + /* 8F */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_M1A, 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_E, &qx86_stuple_v }} + } + } + }, + { + /* code */ QX86_MNEMONIC_XCHG, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_rtuple_r0, 0 }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_rtuple_rAX, 0 }} + } + } + }, + { + /* code */ QX86_MNEMONIC_XCHG, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_rtuple_r1, 0 }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_rtuple_rAX, 0 }} + } + } + }, + { + /* code */ QX86_MNEMONIC_XCHG, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_rtuple_r2, 0 }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_rtuple_rAX, 0 }} + } + } + }, + { + /* code */ QX86_MNEMONIC_XCHG, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_rtuple_r3, 0 }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_rtuple_rAX, 0 }} + } + } + }, + { + /* code */ QX86_MNEMONIC_XCHG, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_rtuple_r4, 0 }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_rtuple_rAX, 0 }} + } + } + }, + { + /* code */ QX86_MNEMONIC_XCHG, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_rtuple_r5, 0 }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_rtuple_rAX, 0 }} + } + } + }, + { + /* code */ QX86_MNEMONIC_XCHG, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_rtuple_r6, 0 }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_rtuple_rAX, 0 }} + } + } + }, + { + /* code */ QX86_MNEMONIC_XCHG, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_rtuple_r7, 0 }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_rtuple_rAX, 0 }} + } + } + }, + /* 98 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_1_98_os, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 99 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_1_99_os, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 9A */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_1_9a_cs, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + { + /* code */ QX86_MNEMONIC_FWAIT, + /* map */ 0, + + /* operandCount */ 0, + /* placeHolder */ {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 9C */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_1_9c_os, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* 9D */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_1_9d_os, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + { + /* code */ QX86_MNEMONIC_SAHF, + /* map */ 0, + + /* operandCount */ 0, + /* placeHolder */ {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + { + /* code */ QX86_MNEMONIC_LAHF, + /* map */ 0, + + /* operandCount */ 0, + /* placeHolder */ {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + { + /* code */ QX86_MNEMONIC_MOV, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_rtuple_AL, 0 }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_O, &qx86_stuple_b }} + } + } + }, + { + /* code */ QX86_MNEMONIC_MOV, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_rtuple_rAX, 0 }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_O, &qx86_stuple_v }} + } + } + }, + { + /* code */ QX86_MNEMONIC_MOV, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_O, &qx86_stuple_b }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_AL, 0 }} + } + } + }, + { + /* code */ QX86_MNEMONIC_MOV, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_O, &qx86_stuple_v }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_rAX, 0 }} + } + } + }, + { + /* code */ QX86_MNEMONIC_MOVSB, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_Y, &qx86_stuple_b }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_X, &qx86_stuple_b }} + } + } + }, + /* A5 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_1_a5_os, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + { + /* code */ QX86_MNEMONIC_CMPSB, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_X, &qx86_stuple_b }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_Y, &qx86_stuple_b }} + } + } + }, + /* A7 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_1_a7_os, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + { + /* code */ QX86_MNEMONIC_TEST, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_AL, 0 }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_I, &qx86_stuple_b }} + } + } + }, + { + /* code */ QX86_MNEMONIC_TEST, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_rAX, 0 }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_I, &qx86_stuple_z }} + } + } + }, + { + /* code */ QX86_MNEMONIC_STOSB, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_Y, &qx86_stuple_b }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_AL, 0 }} + } + } + }, + /* AB */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_1_ab_os, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + { + /* code */ QX86_MNEMONIC_LODSB, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_rtuple_AL, 0 }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_X, &qx86_stuple_b }} + } + } + }, + /* AD */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_1_ad_os, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + { + /* code */ QX86_MNEMONIC_SCASB, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_AL, 0 }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_Y, &qx86_stuple_b }} + } + } + }, + /* AF */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_1_af_os, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + { + /* code */ QX86_MNEMONIC_MOV, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_rtuple_R0B, 0 }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_I, &qx86_stuple_b }} + } + } + }, + { + /* code */ QX86_MNEMONIC_MOV, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_rtuple_R1B, 0 }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_I, &qx86_stuple_b }} + } + } + }, + { + /* code */ QX86_MNEMONIC_MOV, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_rtuple_R2B, 0 }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_I, &qx86_stuple_b }} + } + } + }, + { + /* code */ QX86_MNEMONIC_MOV, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_rtuple_R3B, 0 }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_I, &qx86_stuple_b }} + } + } + }, + { + /* code */ QX86_MNEMONIC_MOV, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_rtuple_R4B, 0 }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_I, &qx86_stuple_b }} + } + } + }, + { + /* code */ QX86_MNEMONIC_MOV, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_rtuple_R5B, 0 }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_I, &qx86_stuple_b }} + } + } + }, + { + /* code */ QX86_MNEMONIC_MOV, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_rtuple_R6B, 0 }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_I, &qx86_stuple_b }} + } + } + }, + { + /* code */ QX86_MNEMONIC_MOV, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_rtuple_R7B, 0 }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_I, &qx86_stuple_b }} + } + } + }, + { + /* code */ QX86_MNEMONIC_MOV, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_rtuple_r0, 0 }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_I, &qx86_stuple_v }} + } + } + }, + { + /* code */ QX86_MNEMONIC_MOV, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_rtuple_r1, 0 }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_I, &qx86_stuple_v }} + } + } + }, + { + /* code */ QX86_MNEMONIC_MOV, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_rtuple_r2, 0 }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_I, &qx86_stuple_v }} + } + } + }, + { + /* code */ QX86_MNEMONIC_MOV, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_rtuple_r3, 0 }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_I, &qx86_stuple_v }} + } + } + }, + { + /* code */ QX86_MNEMONIC_MOV, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_rtuple_r4, 0 }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_I, &qx86_stuple_v }} + } + } + }, + { + /* code */ QX86_MNEMONIC_MOV, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_rtuple_r5, 0 }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_I, &qx86_stuple_v }} + } + } + }, + { + /* code */ QX86_MNEMONIC_MOV, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_rtuple_r6, 0 }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_I, &qx86_stuple_v }} + } + } + }, + { + /* code */ QX86_MNEMONIC_MOV, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_rtuple_r7, 0 }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_I, &qx86_stuple_v }} + } + } + }, + /* C0 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_M2, 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_amode_E, &qx86_stuple_b }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_I, &qx86_stuple_b }} + } + } + }, + /* C1 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_M2, 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_amode_E, &qx86_stuple_v }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_I, &qx86_stuple_b }} + } + } + }, + { + /* code */ QX86_MNEMONIC_RET, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_I, &qx86_stuple_w }} + } + } + }, + { + /* code */ QX86_MNEMONIC_RET, + /* map */ 0, + + /* operandCount */ 0, + /* placeHolder */ {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* C4 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_1_c4_mod, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* C5 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_1_c5_mod, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* C6 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_M11, 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_E, &qx86_stuple_b }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_I, &qx86_stuple_b }} + } + } + }, + /* C7 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_M11, 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_amode_E, &qx86_stuple_v }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_I, &qx86_stuple_z }} + } + } + }, + { + /* code */ QX86_MNEMONIC_ENTER, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_I, &qx86_stuple_w }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_I, &qx86_stuple_b }} + } + } + }, + { + /* code */ QX86_MNEMONIC_LEAVE, + /* map */ 0, + + /* operandCount */ 0, + /* placeHolder */ {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + { + /* code */ QX86_MNEMONIC_RETF, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_I, &qx86_stuple_w }} + } + } + }, + { + /* code */ QX86_MNEMONIC_RETF, + /* map */ 0, + + /* operandCount */ 0, + /* placeHolder */ {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + { + /* code */ QX86_MNEMONIC_INT3, + /* map */ 0, + + /* operandCount */ 0, + /* placeHolder */ {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + { + /* code */ QX86_MNEMONIC_INT, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_I, &qx86_stuple_b }} + } + } + }, + /* CE */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_1_ce_cs, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* CF */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_1_cf_cs, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* D0 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_M2, 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_amode_E, &qx86_stuple_b }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_IMPLICIT_1, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* placeHolder */ {{ 0, 0 }} + } + } + }, + /* D1 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_M2, 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_amode_E, &qx86_stuple_v }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_IMPLICIT_1, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* placeHolder */ {{ 0, 0 }} + } + } + }, + /* D2 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_M2, 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_amode_E, &qx86_stuple_b }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_CL, 0 }} + } + } + }, + /* D3 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_M2, 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_amode_E, &qx86_stuple_v }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_CL, 0 }} + } + } + }, + /* D4 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_1_d4_cs, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* D5 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_1_d5_cs, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* D6 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_1_d6_cs, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + { + /* code */ QX86_MNEMONIC_XLAT, + /* map */ 0, + + /* operandCount */ 0, + /* placeHolder */ {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* D8 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_D8, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* D9 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_D9, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* DA */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_DA, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* DB */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_DB, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* DC */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_DC, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* DD */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_DD, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* DE */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_DE, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* DF */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_DF, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + { + /* code */ QX86_MNEMONIC_LOOPNZ, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_J, &qx86_stuple_b }} + } + } + }, + { + /* code */ QX86_MNEMONIC_LOOPZ, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_J, &qx86_stuple_b }} + } + } + }, + { + /* code */ QX86_MNEMONIC_LOOP, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_J, &qx86_stuple_b }} + } + } + }, + /* E3 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_1_e3_as, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + { + /* code */ QX86_MNEMONIC_IN, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_rtuple_AL, 0 }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_I, &qx86_stuple_b }} + } + } + }, + { + /* code */ QX86_MNEMONIC_IN, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_rtuple_eAX, 0 }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_I, &qx86_stuple_b }} + } + } + }, + { + /* code */ QX86_MNEMONIC_OUT, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_I, &qx86_stuple_b }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_AL, 0 }} + } + } + }, + { + /* code */ QX86_MNEMONIC_OUT, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_I, &qx86_stuple_b }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_eAX, 0 }} + } + } + }, + { + /* code */ QX86_MNEMONIC_CALL, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_J, &qx86_stuple_z }} + } + } + }, + { + /* code */ QX86_MNEMONIC_JMP, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_J, &qx86_stuple_z }} + } + } + }, + /* EA */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_1_ea_cs, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + { + /* code */ QX86_MNEMONIC_JMP, + /* map */ 0, + + /* operandCount */ 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_amode_J, &qx86_stuple_b }} + } + } + }, + { + /* code */ QX86_MNEMONIC_IN, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_rtuple_AL, 0 }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_DX, 0 }} + } + } + }, + { + /* code */ QX86_MNEMONIC_IN, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_WRITTEN, + /* u */ {{ &qx86_rtuple_eAX, 0 }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_DX, 0 }} + } + } + }, + { + /* code */ QX86_MNEMONIC_OUT, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_DX, 0 }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_AL, 0 }} + } + } + }, + { + /* code */ QX86_MNEMONIC_OUT, + /* map */ 0, + + /* operandCount */ 2, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_DX, 0 }} + }, + { + /* superclass */ QX86_OPERAND_FORM_TYPE_RTUPLE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READ, + /* u */ {{ &qx86_rtuple_eAX, 0 }} + } + } + }, + /* F0 */ + { + QX86_OPCODE_MAP_ITEM_CODE_PREFIX, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + { + /* code */ QX86_MNEMONIC_INT1, + /* map */ 0, + + /* operandCount */ 0, + /* placeHolder */ {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* F2 */ + { + QX86_OPCODE_MAP_ITEM_CODE_PREFIX, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* F3 */ + { + QX86_OPCODE_MAP_ITEM_CODE_PREFIX, 0, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + { + /* code */ QX86_MNEMONIC_HLT, + /* map */ 0, + + /* operandCount */ 0, + /* placeHolder */ {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + { + /* code */ QX86_MNEMONIC_CMC, + /* map */ 0, + + /* operandCount */ 0, + /* placeHolder */ {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* F6 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_M3, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* F7 */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_M3, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + { + /* code */ QX86_MNEMONIC_CLC, + /* map */ 0, + + /* operandCount */ 0, + /* placeHolder */ {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + { + /* code */ QX86_MNEMONIC_STC, + /* map */ 0, + + /* operandCount */ 0, + /* placeHolder */ {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + { + /* code */ QX86_MNEMONIC_CLI, + /* map */ 0, + + /* operandCount */ 0, + /* placeHolder */ {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + { + /* code */ QX86_MNEMONIC_STI, + /* map */ 0, + + /* operandCount */ 0, + /* placeHolder */ {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + { + /* code */ QX86_MNEMONIC_CLD, + /* map */ 0, + + /* operandCount */ 0, + /* placeHolder */ {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + { + /* code */ QX86_MNEMONIC_STD, + /* map */ 0, + + /* operandCount */ 0, + /* placeHolder */ {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + }, + /* FE */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_M4, 1, + /* operandClasses */ + { + { + /* superclass */ QX86_OPERAND_FORM_TYPE_AMODE, + /* attributes */ QX86_OPERAND_ATTRIBUTE_RW_CERTAIN | QX86_OPERAND_ATTRIBUTE_READWRITTEN, + /* u */ {{ &qx86_amode_E, &qx86_stuple_b }} + } + } + }, + /* FF */ + { + QX86_OPCODE_MAP_ITEM_CODE_LINK, &qx86_opcode_map_M5, -1, {{QX86_OPERAND_FORM_TYPE_NONE, 0, {{0,0}}}} + } +}; + +static qx86_opcode_map qx86_opcode_map_1 + = +{ + QX86_OPCODE_MAP_INDEX_NB, 255, qx86_opcode_map_1_items +}; +/* End of file qx86-d-opcode-map/qx86-opcode-map-1.map */ + +static qx86_opcode_map * qx86_opcode_maps[QX86_OPCODE_ESCAPE_COUNT] + = +{ + &qx86_opcode_map_1, &qx86_opcode_map_2, + &qx86_opcode_map_3A, &qx86_opcode_map_3B +}; + + +/* Reference: AMD Architecture Programmer's Manual 1: Sections 3.1, 4.3, 5.4, + 6.2. */ +//static +QX86_CONST qx86_rtab_item qx86_rtab[QX86_REGISTER_COUNT] + = +{ + { + 0, 0, + QX86_RCLASS_NONE, 0 + }, + { + 0, 0, + QX86_RCLASS_NONE, 0 + }, + { + 0, 0, + QX86_RCLASS_NONE, 0 + }, + { + 0, 0, + QX86_RCLASS_NONE, 0 + }, + + { + 0, 0, + QX86_RCLASS_NONE, 0 + }, + { + "IP", "IP", + QX86_RCLASS_IP, 2 + }, + { + "EIP", "EIP", + QX86_RCLASS_IP, 4 + }, + { + "RIP", "RIP", + QX86_RCLASS_IP, 8 + }, + + { + 0, 0, + QX86_RCLASS_NONE, 0 + }, + { + "FLAGS", "FLAGS", + QX86_RCLASS_FLAGS, 2 + }, + { + "EFLAGS", "EFLAGS", + QX86_RCLASS_FLAGS, 4 + }, + { + "RFLAGS", "RFLAGS", + QX86_RCLASS_FLAGS, 8 + }, + + { + "AH", "AH", + QX86_RCLASS_REG8, 1 + }, + { + "CH", "CH", + QX86_RCLASS_REG8, 1 + }, + { + "DH", "DH", + QX86_RCLASS_REG8, 1 + }, + { + "BH", "BH", + QX86_RCLASS_REG8, 1 + }, + + { + "AL", "AL", + QX86_RCLASS_REG8, 1 + }, + { + "CL", "CL", + QX86_RCLASS_REG8, 1 + }, + { + "DL", "DL", + QX86_RCLASS_REG8, 1 + }, + { + "BL", "BL", + QX86_RCLASS_REG8, 1 + }, + { + "SPL", "SPL", + QX86_RCLASS_REG8, 1 + }, + { + "BPL", "BPL", + QX86_RCLASS_REG8, 1 + }, + { + "SIL", "SIL", + QX86_RCLASS_REG8, 1 + }, + { + "DIL", "DIL", + QX86_RCLASS_REG8, 1 + }, + { + "R8B", "R8B", + QX86_RCLASS_REG8, 1 + }, + { + "R9B", "R9B", + QX86_RCLASS_REG8, 1 + }, + { + "R10B", "R10B", + QX86_RCLASS_REG8, 1 + }, + { + "R11B", "R11B", + QX86_RCLASS_REG8, 1 + }, + { + "R12B", "R12B", + QX86_RCLASS_REG8, 1 + }, + { + "R13B", "R13B", + QX86_RCLASS_REG8, 1 + }, + { + "R14B", "R14B", + QX86_RCLASS_REG8, 1 + }, + { + "R15B", "R15B", + QX86_RCLASS_REG8, 1 + }, + + { + "AX", "AX", + QX86_RCLASS_REG16, 2 + }, + { + "CX", "CX", + QX86_RCLASS_REG16, 2 + }, + { + "DX", "DX", + QX86_RCLASS_REG16, 2 + }, + { + "BX", "BX", + QX86_RCLASS_REG16, 2 + }, + { + "SP", "SP", + QX86_RCLASS_REG16, 2 + }, + { + "BP", "BP", + QX86_RCLASS_REG16, 2 + }, + { + "SI", "SI", + QX86_RCLASS_REG16, 2 + }, + { + "DI", "DI", + QX86_RCLASS_REG16, 2 + }, + { + "R8W", "R8W", + QX86_RCLASS_REG16, 2 + }, + { + "R9W", "R9W", + QX86_RCLASS_REG16, 2 + }, + { + "R10W", "R10W", + QX86_RCLASS_REG16, 2 + }, + { + "R11W", "R11W", + QX86_RCLASS_REG16, 2 + }, + { + "R12W", "R12W", + QX86_RCLASS_REG16, 2 + }, + { + "R13W", "R13W", + QX86_RCLASS_REG16, 2 + }, + { + "R14W", "R14W", + QX86_RCLASS_REG16, 2 + }, + { + "R15W", "R15W", + QX86_RCLASS_REG16, 2 + }, + + { + "EAX", "EAX", + QX86_RCLASS_REG32, 4 + }, + { + "ECX", "ECX", + QX86_RCLASS_REG32, 4 + }, + { + "EDX", "EDX", + QX86_RCLASS_REG32, 4 + }, + { + "EBX", "EBX", + QX86_RCLASS_REG32, 4 + }, + { + "ESP", "ESP", + QX86_RCLASS_REG32, 4 + }, + { + "EBP", "EBP", + QX86_RCLASS_REG32, 4 + }, + { + "ESI", "ESI", + QX86_RCLASS_REG32, 4 + }, + { + "EDI", "EDI", + QX86_RCLASS_REG32, 4 + }, + { + "R8D", "R8D", + QX86_RCLASS_REG32, 4 + }, + { + "R9D", "R9D", + QX86_RCLASS_REG32, 4 + }, + { + "R10D", "R10D", + QX86_RCLASS_REG32, 4 + }, + { + "R11D", "R11D", + QX86_RCLASS_REG32, 4 + }, + { + "R12D", "R12D", + QX86_RCLASS_REG32, 4 + }, + { + "R13D", "R13D", + QX86_RCLASS_REG32, 4 + }, + { + "R14D", "R14D", + QX86_RCLASS_REG32, 4 + }, + { + "R15D", "R15D", + QX86_RCLASS_REG32, 4 + }, + + { + "RAX", "RAX", + QX86_RCLASS_REG64, 8 + }, + { + "RCX", "RCX", + QX86_RCLASS_REG64, 8 + }, + { + "RDX", "RDX", + QX86_RCLASS_REG64, 8 + }, + { + "RBX", "RBX", + QX86_RCLASS_REG64, 8 + }, + { + "RSP", "RSP", + QX86_RCLASS_REG64, 8 + }, + { + "RBP", "RBP", + QX86_RCLASS_REG64, 8 + }, + { + "RSI", "RSI", + QX86_RCLASS_REG64, 8 + }, + { + "RDI", "RDI", + QX86_RCLASS_REG64, 8 + }, + { + "R8", "R8", + QX86_RCLASS_REG64, 8 + }, + { + "R9", "R9", + QX86_RCLASS_REG64, 8 + }, + { + "R10", "R10", + QX86_RCLASS_REG64, 8 + }, + { + "R11", "R11", + QX86_RCLASS_REG64, 8 + }, + { + "R12", "R12", + QX86_RCLASS_REG64, 8 + }, + { + "R13", "R13", + QX86_RCLASS_REG64, 8 + }, + { + "R14", "R14", + QX86_RCLASS_REG64, 8 + }, + { + "R15", "R15", + QX86_RCLASS_REG64, 8 + }, + + { + "CR0", "CR0", + QX86_RCLASS_CREG, 8 + }, + { + "CR1", "CR1", + QX86_RCLASS_CREG, 8 + }, + { + "CR2", "CR2", + QX86_RCLASS_CREG, 8 + }, + { + "CR3", "CR3", + QX86_RCLASS_CREG, 8 + }, + { + "CR4", "CR4", + QX86_RCLASS_CREG, 8 + }, + { + "CR5", "CR5", + QX86_RCLASS_CREG, 8 + }, + { + "CR6", "CR6", + QX86_RCLASS_CREG, 8 + }, + { + "CR7", "CR7", + QX86_RCLASS_CREG, 8 + }, + { + "CR8", "CR8", + QX86_RCLASS_CREG, 8 + }, + { + "CR9", "CR9", + QX86_RCLASS_CREG, 8 + }, + { + "CR10", "CR10", + QX86_RCLASS_CREG, 8 + }, + { + "CR11", "CR11", + QX86_RCLASS_CREG, 8 + }, + { + "CR12", "CR12", + QX86_RCLASS_CREG, 8 + }, + { + "CR13", "CR13", + QX86_RCLASS_CREG, 8 + }, + { + "CR14", "CR14", + QX86_RCLASS_CREG, 8 + }, + { + "CR15", "CR15", + QX86_RCLASS_CREG, 8 + }, + + { + "DR0", "DR0", + QX86_RCLASS_DREG, 8 + }, + { + "DR1", "DR1", + QX86_RCLASS_DREG, 8 + }, + { + "DR2", "DR2", + QX86_RCLASS_DREG, 8 + }, + { + "DR3", "DR3", + QX86_RCLASS_DREG, 8 + }, + { + "DR4", "DR4", + QX86_RCLASS_DREG, 8 + }, + { + "DR5", "DR5", + QX86_RCLASS_DREG, 8 + }, + { + "DR6", "DR6", + QX86_RCLASS_DREG, 8 + }, + { + "DR7", "DR7", + QX86_RCLASS_DREG, 8 + }, + { + "DR8", "DR8", + QX86_RCLASS_DREG, 8 + }, + { + "DR9", "DR9", + QX86_RCLASS_DREG, 8 + }, + { + "DR10", "DR10", + QX86_RCLASS_DREG, 8 + }, + { + "DR11", "DR11", + QX86_RCLASS_DREG, 8 + }, + { + "DR12", "DR12", + QX86_RCLASS_DREG, 8 + }, + { + "DR13", "DR13", + QX86_RCLASS_DREG, 8 + }, + { + "DR14", "DR14", + QX86_RCLASS_DREG, 8 + }, + { + "DR15", "DR15", + QX86_RCLASS_DREG, 8 + }, + + { + "ES", "ES", + QX86_RCLASS_SREG, 2 + }, + { + "CS", "CS", + QX86_RCLASS_SREG, 2 + }, + { + "SS", "SS", + QX86_RCLASS_SREG, 2 + }, + { + "DS", "DS", + QX86_RCLASS_SREG, 2 + }, + { + "FS", "FS", + QX86_RCLASS_SREG, 2 + }, + { + "GS", "GS", + QX86_RCLASS_SREG, 2 + }, + { + "SR6", "SR6", + QX86_RCLASS_SREG, 2 + }, + { + "SR7", "SR7", + QX86_RCLASS_SREG, 2 + }, + + { + "ST0", "ST0", + QX86_RCLASS_X87, 10 + }, + { + "ST1", "ST1", + QX86_RCLASS_X87, 10 + }, + { + "ST2", "ST2", + QX86_RCLASS_X87, 10 + }, + { + "ST3", "ST3", + QX86_RCLASS_X87, 10 + }, + { + "ST4", "ST4", + QX86_RCLASS_X87, 10 + }, + { + "ST5", "ST5", + QX86_RCLASS_X87, 10 + }, + { + "ST6", "ST6", + QX86_RCLASS_X87, 10 + }, + { + "ST7", "ST7", + QX86_RCLASS_X87, 10 + }, + + { + "FPR0", "FPR0", + QX86_RCLASS_X87, 10 + }, + { + "FPR1", "FPR1", + QX86_RCLASS_X87, 10 + }, + { + "FPR2", "FPR2", + QX86_RCLASS_X87, 10 + }, + { + "FPR3", "FPR3", + QX86_RCLASS_X87, 10 + }, + { + "FPR4", "FPR4", + QX86_RCLASS_X87, 10 + }, + { + "FPR5", "FPR5", + QX86_RCLASS_X87, 10 + }, + { + "FPR6", "FPR6", + QX86_RCLASS_X87, 10 + }, + { + "FPR7", "FPR7", + QX86_RCLASS_X87, 10 + }, + + { + "MMX0", "MMX0", + QX86_RCLASS_MMX, 8 + }, + { + "MMX1", "MMX1", + QX86_RCLASS_MMX, 8 + }, + { + "MMX2", "MMX2", + QX86_RCLASS_MMX, 8 + }, + { + "MMX3", "MMX3", + QX86_RCLASS_MMX, 8 + }, + { + "MMX4", "MMX4", + QX86_RCLASS_MMX, 8 + }, + { + "MMX5", "MMX5", + QX86_RCLASS_MMX, 8 + }, + { + "MMX6", "MMX6", + QX86_RCLASS_MMX, 8 + }, + { + "MMX7", "MMX7", + QX86_RCLASS_MMX, 8 + }, + + { + "XMM0", "XMM0", + QX86_RCLASS_XMM, 16 + }, + { + "XMM1", "XMM1", + QX86_RCLASS_XMM, 16 + }, + { + "XMM2", "XMM2", + QX86_RCLASS_XMM, 16 + }, + { + "XMM3", "XMM3", + QX86_RCLASS_XMM, 16 + }, + { + "XMM4", "XMM4", + QX86_RCLASS_XMM, 16 + }, + { + "XMM5", "XMM5", + QX86_RCLASS_XMM, 16 + }, + { + "XMM6", "XMM6", + QX86_RCLASS_XMM, 16 + }, + { + "XMM7", "XMM7", + QX86_RCLASS_XMM, 16 + }, + { + "XMM8", "XMM8", + QX86_RCLASS_XMM, 16 + }, + { + "XMM9", "XMM9", + QX86_RCLASS_XMM, 16 + }, + { + "XMM10", "XMM10", + QX86_RCLASS_XMM, 16 + }, + { + "XMM11", "XMM11", + QX86_RCLASS_XMM, 16 + }, + { + "XMM12", "XMM12", + QX86_RCLASS_XMM, 16 + }, + { + "XMM13", "XMM13", + QX86_RCLASS_XMM, 16 + }, + { + "XMM14", "XMM14", + QX86_RCLASS_XMM, 16 + }, + { + "XMM15", "XMM15", + QX86_RCLASS_XMM, 16 + }, + + { + "YMM0", "YMM0", + QX86_RCLASS_YMM, 16 + }, + { + "YMM1", "YMM1", + QX86_RCLASS_YMM, 16 + }, + { + "YMM2", "YMM2", + QX86_RCLASS_YMM, 16 + }, + { + "YMM3", "YMM3", + QX86_RCLASS_YMM, 16 + }, + { + "YMM4", "YMM4", + QX86_RCLASS_YMM, 16 + }, + { + "YMM5", "YMM5", + QX86_RCLASS_YMM, 16 + }, + { + "YMM6", "YMM6", + QX86_RCLASS_YMM, 16 + }, + { + "YMM7", "YMM7", + QX86_RCLASS_YMM, 16 + }, + { + "YMM8", "YMM8", + QX86_RCLASS_YMM, 16 + }, + { + "YMM9", "YMM9", + QX86_RCLASS_YMM, 16 + }, + { + "YMM10", "YMM10", + QX86_RCLASS_YMM, 16 + }, + { + "YMM11", "YMM11", + QX86_RCLASS_YMM, 16 + }, + { + "YMM12", "YMM12", + QX86_RCLASS_YMM, 16 + }, + { + "YMM13", "YMM13", + QX86_RCLASS_YMM, 16 + }, + { + "YMM14", "YMM14", + QX86_RCLASS_YMM, 16 + }, + { + "YMM15", "YMM15", + QX86_RCLASS_YMM, 16 + } +}; + +/* Reference: none. Example: 04 = ADD AL, Ib. */ +static qx86_rtuple qx86_rtuple_AL + = +{ + "AL", "AL", + + { + QX86_REGISTER_AL, QX86_REGISTER_INVALID, + QX86_REGISTER_AL, QX86_REGISTER_AL, + + QX86_REGISTER_AL, QX86_REGISTER_INVALID, + QX86_REGISTER_AL, QX86_REGISTER_AL, + + QX86_REGISTER_AL, QX86_REGISTER_INVALID, + QX86_REGISTER_AL, QX86_REGISTER_AL + } +}; + +/* Reference: none. Example: D2 = Eb, CL. */ +static qx86_rtuple qx86_rtuple_CL + = +{ + "CL", "CL", + + { + QX86_REGISTER_CL, QX86_REGISTER_INVALID, + QX86_REGISTER_CL, QX86_REGISTER_CL, + + QX86_REGISTER_CL, QX86_REGISTER_INVALID, + QX86_REGISTER_CL, QX86_REGISTER_CL, + + QX86_REGISTER_CL, QX86_REGISTER_INVALID, + QX86_REGISTER_CL, QX86_REGISTER_CL + } +}; + +/* Reference: none. Example: DF E0 = FNSTSW AX. */ +static qx86_rtuple qx86_rtuple_AX + = +{ + "AX", "AX", + + { + QX86_REGISTER_AX, QX86_REGISTER_INVALID, + QX86_REGISTER_AX, QX86_REGISTER_AX, + + QX86_REGISTER_AX, QX86_REGISTER_INVALID, + QX86_REGISTER_AX, QX86_REGISTER_AX, + + QX86_REGISTER_AX, QX86_REGISTER_INVALID, + QX86_REGISTER_AX, QX86_REGISTER_AX + } +}; + +/* Reference: none. Example: EC = IN AL, DX. */ +static qx86_rtuple qx86_rtuple_DX + = +{ + "DX", "DX", + + { + QX86_REGISTER_DX, QX86_REGISTER_INVALID, + QX86_REGISTER_DX, QX86_REGISTER_DX, + + QX86_REGISTER_DX, QX86_REGISTER_INVALID, + QX86_REGISTER_DX, QX86_REGISTER_DX, + + QX86_REGISTER_DX, QX86_REGISTER_INVALID, + QX86_REGISTER_DX, QX86_REGISTER_DX + } +}; + +/* Reference: none. Example: 06 = PUSH ES. */ +static qx86_rtuple qx86_rtuple_ES + = +{ + "ES", "ES", + + { + QX86_REGISTER_ES, QX86_REGISTER_INVALID, + QX86_REGISTER_ES, QX86_REGISTER_ES, + + QX86_REGISTER_ES, QX86_REGISTER_INVALID, + QX86_REGISTER_ES, QX86_REGISTER_ES, + + QX86_REGISTER_ES, QX86_REGISTER_INVALID, + QX86_REGISTER_ES, QX86_REGISTER_ES + } +}; + +/* Reference: none. Example: 0E = PUSH CS. */ +static qx86_rtuple qx86_rtuple_CS + = +{ + "CS", "CS", + + { + QX86_REGISTER_CS, QX86_REGISTER_INVALID, + QX86_REGISTER_CS, QX86_REGISTER_CS, + + QX86_REGISTER_CS, QX86_REGISTER_INVALID, + QX86_REGISTER_CS, QX86_REGISTER_CS, + + QX86_REGISTER_CS, QX86_REGISTER_INVALID, + QX86_REGISTER_CS, QX86_REGISTER_CS + } +}; + +/* Reference: none. Example: 16 = PUSH SS. */ +static qx86_rtuple qx86_rtuple_SS + = +{ + "SS", "SS", + + { + QX86_REGISTER_SS, QX86_REGISTER_INVALID, + QX86_REGISTER_SS, QX86_REGISTER_SS, + + QX86_REGISTER_SS, QX86_REGISTER_INVALID, + QX86_REGISTER_SS, QX86_REGISTER_SS, + + QX86_REGISTER_SS, QX86_REGISTER_INVALID, + QX86_REGISTER_SS, QX86_REGISTER_SS + } +}; + +/* Reference: none. Example: 1E = PUSH DS. */ +static qx86_rtuple qx86_rtuple_DS + = +{ + "DS", "DS", + + { + QX86_REGISTER_DS, QX86_REGISTER_INVALID, + QX86_REGISTER_DS, QX86_REGISTER_DS, + + QX86_REGISTER_DS, QX86_REGISTER_INVALID, + QX86_REGISTER_DS, QX86_REGISTER_DS, + + QX86_REGISTER_DS, QX86_REGISTER_INVALID, + QX86_REGISTER_DS, QX86_REGISTER_DS + } +}; + +/* Reference: none. Example: 0F A0 = PUSH FS. */ +static qx86_rtuple qx86_rtuple_FS + = +{ + "FS", "FS", + + { + QX86_REGISTER_FS, QX86_REGISTER_INVALID, + QX86_REGISTER_FS, QX86_REGISTER_FS, + + QX86_REGISTER_FS, QX86_REGISTER_INVALID, + QX86_REGISTER_FS, QX86_REGISTER_FS, + + QX86_REGISTER_FS, QX86_REGISTER_INVALID, + QX86_REGISTER_FS, QX86_REGISTER_FS + } +}; + +/* Reference: none. Example: 0F A8 = PUSH GS. */ +static qx86_rtuple qx86_rtuple_GS + = +{ + "GS", "GS", + + { + QX86_REGISTER_GS, QX86_REGISTER_INVALID, + QX86_REGISTER_GS, QX86_REGISTER_GS, + + QX86_REGISTER_GS, QX86_REGISTER_INVALID, + QX86_REGISTER_GS, QX86_REGISTER_GS, + + QX86_REGISTER_GS, QX86_REGISTER_INVALID, + QX86_REGISTER_GS, QX86_REGISTER_GS + } +}; + +/* Reference: none. Example: 40 = INC eAX. */ +static qx86_rtuple qx86_rtuple_eAX + = +{ + "eAX", "eAX", + + { + QX86_REGISTER_AX, QX86_REGISTER_INVALID, + QX86_REGISTER_AX, QX86_REGISTER_AX, + + QX86_REGISTER_EAX, QX86_REGISTER_INVALID, + QX86_REGISTER_EAX, QX86_REGISTER_EAX, + + QX86_REGISTER_EAX, QX86_REGISTER_INVALID, + QX86_REGISTER_EAX, QX86_REGISTER_EAX + } +}; + +/* Reference: none. Example: 41 = INC eCX. */ +static qx86_rtuple qx86_rtuple_eCX + = +{ + "eCX", "eCX", + + { + QX86_REGISTER_CX, QX86_REGISTER_INVALID, + QX86_REGISTER_CX, QX86_REGISTER_CX, + + QX86_REGISTER_ECX, QX86_REGISTER_INVALID, + QX86_REGISTER_ECX, QX86_REGISTER_ECX, + + QX86_REGISTER_ECX, QX86_REGISTER_ECX, + QX86_REGISTER_ECX, QX86_REGISTER_ECX + } +}; + +/* Reference: none. Example: 42 = INC eDX. */ +static qx86_rtuple qx86_rtuple_eDX + = +{ + "eDX", "eDX", + + { + QX86_REGISTER_DX, QX86_REGISTER_INVALID, + QX86_REGISTER_DX, QX86_REGISTER_DX, + + QX86_REGISTER_EDX, QX86_REGISTER_INVALID, + QX86_REGISTER_EDX, QX86_REGISTER_EDX, + + QX86_REGISTER_EDX, QX86_REGISTER_EDX, + QX86_REGISTER_EDX, QX86_REGISTER_EDX + } +}; + +/* Reference: none. Example: 43 = INC eBX. */ +static qx86_rtuple qx86_rtuple_eBX + = +{ + "eBX", "eBX", + + { + QX86_REGISTER_BX, QX86_REGISTER_INVALID, + QX86_REGISTER_BX, QX86_REGISTER_BX, + + QX86_REGISTER_EBX, QX86_REGISTER_INVALID, + QX86_REGISTER_EBX, QX86_REGISTER_EBX, + + QX86_REGISTER_EBX, QX86_REGISTER_INVALID, + QX86_REGISTER_EBX, QX86_REGISTER_EBX + } +}; + +/* Reference: none. Example: 44 = INC eSP. */ +static qx86_rtuple qx86_rtuple_eSP + = +{ + "eSP", "eSP", + + { + QX86_REGISTER_SP, QX86_REGISTER_INVALID, + QX86_REGISTER_SP, QX86_REGISTER_SP, + + QX86_REGISTER_ESP, QX86_REGISTER_INVALID, + QX86_REGISTER_ESP, QX86_REGISTER_ESP, + + QX86_REGISTER_ESP, QX86_REGISTER_INVALID, + QX86_REGISTER_ESP, QX86_REGISTER_ESP + } +}; + +/* Reference: none. Example: 45 = INC eBP. */ +static qx86_rtuple qx86_rtuple_eBP + = +{ + "eBP", "eBP", + + { + QX86_REGISTER_BP, QX86_REGISTER_INVALID, + QX86_REGISTER_BP, QX86_REGISTER_BP, + + QX86_REGISTER_EBP, QX86_REGISTER_INVALID, + QX86_REGISTER_EBP, QX86_REGISTER_EBP, + + QX86_REGISTER_EBP, QX86_REGISTER_INVALID, + QX86_REGISTER_EBP, QX86_REGISTER_EBP + } +}; + +/* Reference: none. Example: 46 = INC eSI. */ +static qx86_rtuple qx86_rtuple_eSI + = +{ + "eSI", "eSI", + + { + QX86_REGISTER_SI, QX86_REGISTER_INVALID, + QX86_REGISTER_SI, QX86_REGISTER_SI, + + QX86_REGISTER_ESI, QX86_REGISTER_INVALID, + QX86_REGISTER_ESI, QX86_REGISTER_ESI, + + QX86_REGISTER_ESI, QX86_REGISTER_INVALID, + QX86_REGISTER_ESI, QX86_REGISTER_ESI + } +}; + +/* Reference: none. Example: 47 = INC eDI. */ +static qx86_rtuple qx86_rtuple_eDI + = +{ + "eDI", "eDI", + + { + QX86_REGISTER_DI, QX86_REGISTER_INVALID, + QX86_REGISTER_DI, QX86_REGISTER_DI, + + QX86_REGISTER_EDI, QX86_REGISTER_INVALID, + QX86_REGISTER_EDI, QX86_REGISTER_EDI, + + QX86_REGISTER_EDI, QX86_REGISTER_INVALID, + QX86_REGISTER_EDI, QX86_REGISTER_EDI + } +}; + +/* Reference: none. Example: 05 = ADD rAX, Iz. */ +static qx86_rtuple qx86_rtuple_rAX + = +{ + "rAX", "rAX", + + { + QX86_REGISTER_AX, QX86_REGISTER_INVALID, + QX86_REGISTER_AX, QX86_REGISTER_AX, + + QX86_REGISTER_EAX, QX86_REGISTER_INVALID, + QX86_REGISTER_EAX, QX86_REGISTER_EAX, + + QX86_REGISTER_RAX, QX86_REGISTER_INVALID, + QX86_REGISTER_RAX, QX86_REGISTER_RAX + } +}; + +/* Reference: none. Needed for the X addressing mode. */ +static qx86_rtuple qx86_rtuple_rSI + = +{ + "rSI", "rSI", + + { + QX86_REGISTER_SI, QX86_REGISTER_INVALID, + QX86_REGISTER_SI, QX86_REGISTER_SI, + + QX86_REGISTER_ESI, QX86_REGISTER_INVALID, + QX86_REGISTER_ESI, QX86_REGISTER_ESI, + + QX86_REGISTER_RSI, QX86_REGISTER_INVALID, + QX86_REGISTER_RSI, QX86_REGISTER_RSI + } +}; + +/* Reference: none. Needed for the Y addressing mode. */ +static qx86_rtuple qx86_rtuple_rDI + = +{ + "rDI", "rDI", + + { + QX86_REGISTER_DI, QX86_REGISTER_INVALID, + QX86_REGISTER_DI, QX86_REGISTER_DI, + + QX86_REGISTER_EDI, QX86_REGISTER_INVALID, + QX86_REGISTER_EDI, QX86_REGISTER_EDI, + + QX86_REGISTER_RDI, QX86_REGISTER_INVALID, + QX86_REGISTER_RDI, QX86_REGISTER_RDI + } +}; + +/* Reference: none. Example: 50 = PUSH r0. */ +static qx86_rtuple qx86_rtuple_r0 + = +{ + "r0", "r0", + + { + QX86_REGISTER_AX, QX86_REGISTER_INVALID, + QX86_REGISTER_AX, QX86_REGISTER_R8W, + + QX86_REGISTER_EAX, QX86_REGISTER_INVALID, + QX86_REGISTER_EAX, QX86_REGISTER_R8D, + + QX86_REGISTER_RAX, QX86_REGISTER_INVALID, + QX86_REGISTER_RAX, QX86_REGISTER_R8 + } +}; + +/* Reference: none. Example: 51 = PUSH r1. */ +static qx86_rtuple qx86_rtuple_r1 + = +{ + "r1", "r1", + + { + QX86_REGISTER_CX, QX86_REGISTER_INVALID, + QX86_REGISTER_CX, QX86_REGISTER_R9W, + + QX86_REGISTER_ECX, QX86_REGISTER_INVALID, + QX86_REGISTER_ECX, QX86_REGISTER_R9D, + + QX86_REGISTER_RCX, QX86_REGISTER_INVALID, + QX86_REGISTER_RCX, QX86_REGISTER_R9 + } +}; + +/* Reference: none. Example: 52 = PUSH r2. */ +static qx86_rtuple qx86_rtuple_r2 + = +{ + "r2", "r2", + + { + QX86_REGISTER_DX, QX86_REGISTER_INVALID, + QX86_REGISTER_DX, QX86_REGISTER_R10W, + + QX86_REGISTER_EDX, QX86_REGISTER_INVALID, + QX86_REGISTER_EDX, QX86_REGISTER_R10D, + + QX86_REGISTER_RDX, QX86_REGISTER_INVALID, + QX86_REGISTER_RDX, QX86_REGISTER_R10 + } +}; + +/* Reference: none. Example: 53 = PUSH r3. */ +static qx86_rtuple qx86_rtuple_r3 + = +{ + "r3", "r3", + + { + QX86_REGISTER_BX, QX86_REGISTER_INVALID, + QX86_REGISTER_BX, QX86_REGISTER_R11W, + + QX86_REGISTER_EBX, QX86_REGISTER_INVALID, + QX86_REGISTER_EBX, QX86_REGISTER_R11D, + + QX86_REGISTER_RBX, QX86_REGISTER_INVALID, + QX86_REGISTER_RBX, QX86_REGISTER_R11 + } +}; + +/* Reference: none. Example: 54 = PUSH r4. */ +static qx86_rtuple qx86_rtuple_r4 + = +{ + "r4", "r4", + + { + QX86_REGISTER_SP, QX86_REGISTER_INVALID, + QX86_REGISTER_SP, QX86_REGISTER_R12W, + + QX86_REGISTER_ESP, QX86_REGISTER_INVALID, + QX86_REGISTER_ESP, QX86_REGISTER_R12D, + + QX86_REGISTER_RSP, QX86_REGISTER_INVALID, + QX86_REGISTER_RSP, QX86_REGISTER_R12 + } +}; + +/* Reference: none. Example: 55 = PUSH r5. */ +static qx86_rtuple qx86_rtuple_r5 + = +{ + "r5", "r5", + + { + QX86_REGISTER_BP, QX86_REGISTER_INVALID, + QX86_REGISTER_BP, QX86_REGISTER_R13W, + + QX86_REGISTER_EBP, QX86_REGISTER_INVALID, + QX86_REGISTER_EBP, QX86_REGISTER_R13D, + + QX86_REGISTER_RBP, QX86_REGISTER_INVALID, + QX86_REGISTER_RBP, QX86_REGISTER_R13 + } +}; + +/* Reference: none. Example: 56 = PUSH r6. */ +static qx86_rtuple qx86_rtuple_r6 + = +{ + "r6", "r6", + + { + QX86_REGISTER_SI, QX86_REGISTER_INVALID, + QX86_REGISTER_SI, QX86_REGISTER_R14W, + + QX86_REGISTER_ESI, QX86_REGISTER_INVALID, + QX86_REGISTER_ESI, QX86_REGISTER_R14D, + + QX86_REGISTER_RSI, QX86_REGISTER_INVALID, + QX86_REGISTER_RSI, QX86_REGISTER_R14 + } +}; + +/* Reference: none. Example: 57 = PUSH r7. */ +static qx86_rtuple qx86_rtuple_r7 + = +{ + "r7", "r7", + + { + QX86_REGISTER_DI, QX86_REGISTER_INVALID, + QX86_REGISTER_DI, QX86_REGISTER_R15W, + + QX86_REGISTER_EDI, QX86_REGISTER_INVALID, + QX86_REGISTER_EDI, QX86_REGISTER_R15D, + + QX86_REGISTER_RDI, QX86_REGISTER_INVALID, + QX86_REGISTER_RDI, QX86_REGISTER_R15 + } +}; + +/* Reference: none. Example: B0 = MOV R0B, Ib. */ +static qx86_rtuple qx86_rtuple_R0B + = +{ + "R0B", "R0B", + + { + QX86_REGISTER_AL, QX86_REGISTER_INVALID, + QX86_REGISTER_AL, QX86_REGISTER_R8B, + + QX86_REGISTER_AL, QX86_REGISTER_INVALID, + QX86_REGISTER_AL, QX86_REGISTER_R8B, + + QX86_REGISTER_AL, QX86_REGISTER_INVALID, + QX86_REGISTER_AL, QX86_REGISTER_R8B + } +}; + +/* Reference: none. Example: B1 = MOV R1B, Ib. */ +static qx86_rtuple qx86_rtuple_R1B + = +{ + "R1B", "R1B", + + { + QX86_REGISTER_CL, QX86_REGISTER_INVALID, + QX86_REGISTER_CL, QX86_REGISTER_R9B, + + QX86_REGISTER_CL, QX86_REGISTER_INVALID, + QX86_REGISTER_CL, QX86_REGISTER_R9B, + + QX86_REGISTER_CL, QX86_REGISTER_INVALID, + QX86_REGISTER_CL, QX86_REGISTER_R9B + } +}; + +/* Reference: none. Example: B2 = MOV R2B, Ib. */ +static qx86_rtuple qx86_rtuple_R2B + = +{ + "R2B", "R2B", + + { + QX86_REGISTER_DL, QX86_REGISTER_INVALID, + QX86_REGISTER_DL, QX86_REGISTER_R10B, + + QX86_REGISTER_DL, QX86_REGISTER_INVALID, + QX86_REGISTER_DL, QX86_REGISTER_R10B, + + QX86_REGISTER_DL, QX86_REGISTER_INVALID, + QX86_REGISTER_DL, QX86_REGISTER_R10B + } +}; + +/* Reference: none. Example: B3 = MOV R3B, Ib. */ +static qx86_rtuple qx86_rtuple_R3B + = +{ + "R3B", "R3B", + + { + QX86_REGISTER_BL, QX86_REGISTER_INVALID, + QX86_REGISTER_BL, QX86_REGISTER_R11B, + + QX86_REGISTER_BL, QX86_REGISTER_INVALID, + QX86_REGISTER_BL, QX86_REGISTER_R11B, + + QX86_REGISTER_BL, QX86_REGISTER_INVALID, + QX86_REGISTER_BL, QX86_REGISTER_R11B + } +}; + +/* Reference: none. Example: B4 = MOV R4B, Ib. */ +static qx86_rtuple qx86_rtuple_R4B + = +{ + "R4B", "R4B", + + { + QX86_REGISTER_AH, QX86_REGISTER_INVALID, + QX86_REGISTER_SPL, QX86_REGISTER_R12B, + + QX86_REGISTER_AH, QX86_REGISTER_INVALID, + QX86_REGISTER_SPL, QX86_REGISTER_R12B, + + QX86_REGISTER_AH, QX86_REGISTER_INVALID, + QX86_REGISTER_SPL, QX86_REGISTER_R12B + } +}; + +/* Reference: none. Example: B5 = MOV R5B, Ib. */ +static qx86_rtuple qx86_rtuple_R5B + = +{ + "R5B", "R5B", + + { + QX86_REGISTER_CH, QX86_REGISTER_INVALID, + QX86_REGISTER_BPL, QX86_REGISTER_R13B, + + QX86_REGISTER_CH, QX86_REGISTER_INVALID, + QX86_REGISTER_BPL, QX86_REGISTER_R13B, + + QX86_REGISTER_CH, QX86_REGISTER_INVALID, + QX86_REGISTER_BPL, QX86_REGISTER_R13B + } +}; + +/* Reference: none. Example: B6 = MOV R6B, Ib. */ +static qx86_rtuple qx86_rtuple_R6B + = +{ + "R6B", "R6B", + + { + QX86_REGISTER_DH, QX86_REGISTER_INVALID, + QX86_REGISTER_SIL, QX86_REGISTER_R14B, + + QX86_REGISTER_DH, QX86_REGISTER_INVALID, + QX86_REGISTER_SIL, QX86_REGISTER_R14B, + + QX86_REGISTER_DH, QX86_REGISTER_INVALID, + QX86_REGISTER_SIL, QX86_REGISTER_R14B + } +}; + +/* Reference: none. Example: B7 = MOV R7B, Ib. */ +static qx86_rtuple qx86_rtuple_R7B + = +{ + "R7B", "R7B", + + { + QX86_REGISTER_BH, QX86_REGISTER_INVALID, + QX86_REGISTER_DIL, QX86_REGISTER_R15B, + + QX86_REGISTER_BH, QX86_REGISTER_INVALID, + QX86_REGISTER_DIL, QX86_REGISTER_R15B, + + QX86_REGISTER_BH, QX86_REGISTER_INVALID, + QX86_REGISTER_DIL, QX86_REGISTER_R15B + } +}; + +/* Reference: none. Example: D8 C0 = FADD ST0, ST0. */ +static qx86_rtuple qx86_rtuple_ST0 + = +{ + "ST0", "ST0", + + { + QX86_REGISTER_ST0, QX86_REGISTER_INVALID, + QX86_REGISTER_ST0, QX86_REGISTER_ST0, + + QX86_REGISTER_ST0, QX86_REGISTER_INVALID, + QX86_REGISTER_ST0, QX86_REGISTER_ST0, + + QX86_REGISTER_ST0, QX86_REGISTER_INVALID, + QX86_REGISTER_ST0, QX86_REGISTER_ST0 + } +}; + +/* Reference: none. Example: D8 C1 = FADD ST0, ST1. */ +static qx86_rtuple qx86_rtuple_ST1 + = +{ + "ST1", "ST1", + + { + QX86_REGISTER_ST1, QX86_REGISTER_INVALID, + QX86_REGISTER_ST1, QX86_REGISTER_ST1, + + QX86_REGISTER_ST1, QX86_REGISTER_INVALID, + QX86_REGISTER_ST1, QX86_REGISTER_ST1, + + QX86_REGISTER_ST1, QX86_REGISTER_INVALID, + QX86_REGISTER_ST1, QX86_REGISTER_ST1 + } +}; + +/* Reference: none. Example: D8 C2 = FADD ST0, ST2. */ +static qx86_rtuple qx86_rtuple_ST2 + = +{ + "ST2", "ST2", + + { + QX86_REGISTER_ST2, QX86_REGISTER_INVALID, + QX86_REGISTER_ST2, QX86_REGISTER_ST2, + + QX86_REGISTER_ST2, QX86_REGISTER_INVALID, + QX86_REGISTER_ST2, QX86_REGISTER_ST2, + + QX86_REGISTER_ST2, QX86_REGISTER_INVALID, + QX86_REGISTER_ST2, QX86_REGISTER_ST2 + } +}; + +/* Reference: none. Example: D8 C3 = FADD ST0, ST3. */ +static qx86_rtuple qx86_rtuple_ST3 + = +{ + "ST3", "ST3", + + { + QX86_REGISTER_ST3, QX86_REGISTER_INVALID, + QX86_REGISTER_ST3, QX86_REGISTER_ST3, + + QX86_REGISTER_ST3, QX86_REGISTER_INVALID, + QX86_REGISTER_ST3, QX86_REGISTER_ST3, + + QX86_REGISTER_ST3, QX86_REGISTER_INVALID, + QX86_REGISTER_ST3, QX86_REGISTER_ST3 + } +}; + +/* Reference: none. Example: D8 C4 = FADD ST0, ST4. */ +static qx86_rtuple qx86_rtuple_ST4 + = +{ + "ST4", "ST4", + + { + QX86_REGISTER_ST4, QX86_REGISTER_INVALID, + QX86_REGISTER_ST4, QX86_REGISTER_ST4, + + QX86_REGISTER_ST4, QX86_REGISTER_INVALID, + QX86_REGISTER_ST4, QX86_REGISTER_ST4, + + QX86_REGISTER_ST4, QX86_REGISTER_INVALID, + QX86_REGISTER_ST4, QX86_REGISTER_ST4 + } +}; + +/* Reference: none. Example: D8 C5 = FADD ST0, ST5. */ +static qx86_rtuple qx86_rtuple_ST5 + = +{ + "ST5", "ST5", + + { + QX86_REGISTER_ST5, QX86_REGISTER_INVALID, + QX86_REGISTER_ST5, QX86_REGISTER_ST5, + + QX86_REGISTER_ST5, QX86_REGISTER_INVALID, + QX86_REGISTER_ST5, QX86_REGISTER_ST5, + + QX86_REGISTER_ST5, QX86_REGISTER_INVALID, + QX86_REGISTER_ST5, QX86_REGISTER_ST5 + } +}; + +/* Reference: none. Example: D8 C6 = FADD ST0, ST6. */ +static qx86_rtuple qx86_rtuple_ST6 + = +{ + "ST6", "ST6", + + { + QX86_REGISTER_ST6, QX86_REGISTER_INVALID, + QX86_REGISTER_ST6, QX86_REGISTER_ST6, + + QX86_REGISTER_ST6, QX86_REGISTER_INVALID, + QX86_REGISTER_ST6, QX86_REGISTER_ST6, + + QX86_REGISTER_ST6, QX86_REGISTER_INVALID, + QX86_REGISTER_ST6, QX86_REGISTER_ST6 + } +}; + +/* Reference: none. Example: D8 C7 = FADD ST0, ST7. */ +static qx86_rtuple qx86_rtuple_ST7 + = +{ + "ST7", "ST7", + + { + QX86_REGISTER_ST7, QX86_REGISTER_INVALID, + QX86_REGISTER_ST7, QX86_REGISTER_ST7, + + QX86_REGISTER_ST7, QX86_REGISTER_INVALID, + QX86_REGISTER_ST7, QX86_REGISTER_ST7, + + QX86_REGISTER_ST7, QX86_REGISTER_INVALID, + QX86_REGISTER_ST7, QX86_REGISTER_ST7 + } +}; + +/* Reference: AMD Architecture Programmer's Manual 3: Table A-16. */ +static int qx86_sib_base_32[16] + = +{ + QX86_REGISTER_EAX, QX86_REGISTER_ECX, + QX86_REGISTER_EDX, QX86_REGISTER_EBX, + QX86_REGISTER_ESP, QX86_REGISTER_SPECIAL, + QX86_REGISTER_ESI, QX86_REGISTER_EDI, + + QX86_REGISTER_R8D, QX86_REGISTER_R9D, + QX86_REGISTER_R10D, QX86_REGISTER_R11D, + QX86_REGISTER_R12D, QX86_REGISTER_SPECIAL, + QX86_REGISTER_R14D, QX86_REGISTER_R15D +}; + +/* Reference: AMD Architecture Programmer's Manual 3: Table A-16. */ +static int qx86_sib_base_64[16] + = +{ + QX86_REGISTER_RAX, QX86_REGISTER_RCX, + QX86_REGISTER_RDX, QX86_REGISTER_RBX, + QX86_REGISTER_RSP, QX86_REGISTER_SPECIAL, + QX86_REGISTER_RSI, QX86_REGISTER_RDI, + + QX86_REGISTER_R8, QX86_REGISTER_R9, + QX86_REGISTER_R10, QX86_REGISTER_R11, + QX86_REGISTER_R12, QX86_REGISTER_SPECIAL, + QX86_REGISTER_R14, QX86_REGISTER_R15 +}; + +/* Reference: AMD Architecture Programmer's Manual 3: Table A-16. */ +static int * qx86_sib_base[4] + = +{ + 0, qx86_sib_base_32, + qx86_sib_base_64, 0 +}; + +/* Reference: AMD Architecture Programmer's Manual 3: Table A-16. */ +static int qx86_sib_base_special_32[8] + = +{ + QX86_REGISTER_NONE, QX86_REGISTER_EBP, + QX86_REGISTER_EBP, QX86_REGISTER_INVALID, + + QX86_REGISTER_NONE, QX86_REGISTER_R13D, + QX86_REGISTER_R13D, QX86_REGISTER_INVALID +}; + +/* Reference: AMD Architecture Programmer's Manual 3: Table A-16. */ +static int qx86_sib_base_special_64[8] + = +{ + QX86_REGISTER_NONE, QX86_REGISTER_RBP, + QX86_REGISTER_RBP, QX86_REGISTER_INVALID, + + QX86_REGISTER_NONE, QX86_REGISTER_R13, + QX86_REGISTER_R13, QX86_REGISTER_INVALID +}; + +/* Reference: AMD Architecture Programmer's Manual 3: Table A-16. */ +static int * qx86_sib_base_special[4] + = +{ + 0, qx86_sib_base_special_32, + qx86_sib_base_special_64, 0 +}; + +/* Reference: AMD Architecture Programmer's Manual 3: Table A-17. */ +static int qx86_sib_index_32[16] + = +{ + QX86_REGISTER_EAX, QX86_REGISTER_ECX, + QX86_REGISTER_EDX, QX86_REGISTER_EBX, + QX86_REGISTER_NONE, QX86_REGISTER_EBP, + QX86_REGISTER_ESI, QX86_REGISTER_EDI, + + QX86_REGISTER_R8D, QX86_REGISTER_R9D, + QX86_REGISTER_R10D, QX86_REGISTER_R11D, + QX86_REGISTER_R12D, QX86_REGISTER_R13D, + QX86_REGISTER_R14D, QX86_REGISTER_R15D +}; + +/* Reference: AMD Architecture Programmer's Manual 3: Table A-17. */ +static int qx86_sib_index_64[16] + = +{ + QX86_REGISTER_RAX, QX86_REGISTER_RCX, + QX86_REGISTER_RDX, QX86_REGISTER_RBX, + QX86_REGISTER_NONE, QX86_REGISTER_EBP, + QX86_REGISTER_RSI, QX86_REGISTER_RDI, + + QX86_REGISTER_R8, QX86_REGISTER_R9, + QX86_REGISTER_R10, QX86_REGISTER_R11, + QX86_REGISTER_R12, QX86_REGISTER_R13, + QX86_REGISTER_R14, QX86_REGISTER_R15 +}; + +/* Reference: AMD Architecture Programmer's Manual 3: Table A-17. */ +static int * qx86_sib_index[4] + = +{ + 0, qx86_sib_index_32, + qx86_sib_index_64, 0 +}; + +/* Reference: AMD Architecture Programmer's Manual 3: Table 1-3. */ +static int qx86_address_size_16[2] + = +{ + QX86_SIZE_16, QX86_SIZE_32 +}; + +/* Reference: AMD Architecture Programmer's Manual 3: Table 1-3. */ +static int qx86_address_size_32[2] + = +{ + QX86_SIZE_32, QX86_SIZE_16 +}; + +/* Reference: AMD Architecture Programmer's Manual 3: Table 1-3. */ +static int qx86_address_size_64[2] + = +{ + QX86_SIZE_64, QX86_SIZE_32 +}; + +/* Reference: AMD Architecture Programmer's Manual 3: Table 1-3. */ +static int * qx86_address_size[4] + = +{ + qx86_address_size_16, qx86_address_size_32, + qx86_address_size_64, 0 +}; + +/* Reference: AMD Architecture Programmer's Manual 3: Table 1-2. */ +static int qx86_operand_size_16[4] + = +{ + QX86_SIZE_16, QX86_SIZE_32, + QX86_SIZE_INVALID, QX86_SIZE_INVALID +}; + +/* Reference: AMD Architecture Programmer's Manual 3: Table 1-2. */ +static int qx86_operand_size_32[4] + = +{ + QX86_SIZE_32, QX86_SIZE_16, + QX86_SIZE_INVALID, QX86_SIZE_INVALID +}; + +/* Reference: AMD Architecture Programmer's Manual 3: Table 1-2. */ +static int qx86_operand_size_64[4] + = +{ + QX86_SIZE_32, QX86_SIZE_16, + QX86_SIZE_64, QX86_SIZE_64 +}; + +/* Reference: AMD Architecture Programmer's Manual 3: Table 1-2. */ +static int * qx86_operand_size[4] + = +{ + qx86_operand_size_16, qx86_operand_size_32, + qx86_operand_size_64, 0 +}; + +/* Reference: see BOUND. */ +static qx86_stuple qx86_stuple_a + = +{ + "a", "a", + + { + "BARR4", "BARR8", + 0, 0 + }, + + { + 4, 8, + 0, 0 + } +}; + +/* Reference: none. */ +static qx86_stuple qx86_stuple_b + = +{ + "b", "b", + + { + "BYTE", "BYTE", + "BYTE", 0 + }, + + { + 1, 1, + 1, 0 + } +}; + +/* Reference: none. */ +static qx86_stuple qx86_stuple_d + = +{ + "d", "d", + + { + "DWORD", "DWORD", + "DWORD", 0 + }, + + { + 4, 4, + 4, 0 + } +}; + +/* Reference: none. */ +static qx86_stuple qx86_stuple_dq + = +{ + "dq", "dq", + + { + "OWORD", "OWORD", + "OWORD", 0 + }, + + { + 16, 16, + 16, 0 + } +}; + +/* Reference: see FNSAVE. */ +static qx86_stuple qx86_stuple_f + = +{ + "f", "f", + + { + "F94", "F108", + "F108", 0 + }, + + { + 94, 108, + 108, 0 + } +}; + +/* Reference: see FSTENV. */ +static qx86_stuple qx86_stuple_fe + = +{ + "fe", "fe", + + { + "FE14", "FE28", + "FE28", 0 + }, + + { + 14, 28, + 28, 0 + } +}; + +/* Reference: see FXSAVE. */ +static qx86_stuple qx86_stuple_fx + = +{ + "fx", "fx", + + { + "FX512", "FX512", + "FX512", 0 + }, + + { + 512, 512, + 512, 0 + } +}; + +/* Reference: see LEA. */ +static qx86_stuple qx86_stuple_i + = +{ + "", "", + + { + "", "", + "", 0 + }, + + { + 0, 0, + 0, 0 + } +}; + +/* Reference: see JMPF. */ +static qx86_stuple qx86_stuple_p + = +{ + "p", "p", + + { + "FAR4", "FAR6", + 0, 0 + }, + + { + 4, 6, + 0, 0 + } +}; + +/* Reference: see MOVUPD. */ +static qx86_stuple qx86_stuple_pd + = +{ + "pd", "pd", + + { + "OWORD", "OWORD", + "OWORD", 0 + }, + + { + 16, 16, + 16, 0 + } +}; + +/* Reference: see MOVLPD. */ +static qx86_stuple qx86_stuple_ps + = +{ + "ps", "ps", + + { + "OWORD", "OWORD", + "OWORD", 0 + }, + + { + 16, 16, + 16, 0 + } +}; + +/* Reference: none. */ +static qx86_stuple qx86_stuple_q + = +{ + "q", "q", + + { + "QWORD", "QWORD", + "QWORD", 0 + }, + + { + 8, 8, + 8, 0 + } +}; + +/* Reference: see LGDT. */ +static qx86_stuple qx86_stuple_s + = +{ + "s", "s", + + { + "PD6", "PD6", + "PD10", 0 + }, + + { + 6, 6, + 10, 0 + } +}; + +/* Reference: see FBLD. */ +static qx86_stuple qx86_stuple_sb + = +{ + "sb", "sb", + + { + "TWORD", "TWORD", + "TWORD", 0 + }, + + { + 10, 10, + 10, 0 + } +}; + +/* Reference: see MOVSD. */ +static qx86_stuple qx86_stuple_sd + = +{ + "sd", "sd", + + { + "QWORD", "QWORD", + "QWORD", 0 + }, + + { + 8, 8, + 8, 0 + } +}; + +/* Reference: see FLD. */ +static qx86_stuple qx86_stuple_se + = +{ + "se", "se", + + { + "TWORD", "TWORD", + "TWORD", 0 + }, + + { + 10, 10, + 10, 0 + } +}; + +/* Reference: see MOVSS. */ +static qx86_stuple qx86_stuple_ss + = +{ + "ss", "ss", + + { + "DWORD", "DWORD", + "DWORD", 0 + }, + + { + 4, 4, + 4, 0 + } +}; + +/* Reference: none. */ +static qx86_stuple qx86_stuple_v + = +{ + "v", "v", + + { + "WORD", "DWORD", + "QWORD", 0 + }, + + { + 2, 4, + 8, 0 + } +}; + +/* Reference: none. */ +static qx86_stuple qx86_stuple_w + = +{ + "w", "w", + + { + "WORD", "WORD", + "WORD", 0 + }, + + { + 2, 2, + 2, 0 + } +}; + +/* Reference: none. */ +static qx86_stuple qx86_stuple_z + = +{ + "z", "z", + + { + "WORD", "DWORD", + "DWORD", 0 + }, + + { + 2, 4, + 4, 0 + } +}; + +int +qx86_calculate_effective_address(QX86_CONST qx86_insn *insn, int operandIndex, qx86_uint64 *address) +{ + QX86_CONST qx86_operand * operand; + + qx86_uint8 value[32]; + + qx86_uint64 offset; + + /* Test insn and address to be non-NULL. */ + if (!insn || !address) return QX86_E_API; + + /* Test operandIndex to be a valid index. */ + if (operandIndex < 0) return QX86_E_API; + if (operandIndex >= insn->operandCount) return QX86_E_API; + + /* Get operand pointer. */ + operand = insn->operands + operandIndex; + + /* The operand must be a memory operand. */ + if (QX86_OPERAND_TYPE_MEMORY != operand->ot) return QX86_E_API; + + /* In case the callback function is NULL, assume it fails. */ + if (!insn->callback) return QX86_E_CALLBACK; + + /* Load displacement, part 1. */ + if (operand->u.m.disp[operand->u.m.dispSize - 1] & 0x80) + { + /* MSB is set, extend 1 into upper bits. */ + switch (operand->u.m.dispSize) + { + case QX86_DISP_64: + /* Use zero instead because thus we can use XOR. */ + offset = 0ULL; break; + + case QX86_DISP_32: + /* Leave 32 bits intact. */ + offset = 0xFFFFFFFF00000000ULL; break; + + case QX86_DISP_16: + /* Leave 16 bits intact. */ + offset = 0xFFFFFFFFFFFF0000ULL; break; + + case QX86_DISP_8: + /* Leave 8 bits intact. */ + offset = 0xFFFFFFFFFFFFFF00ULL; break; + + default: + /* No action. */ + break; + } + } + else + { + /* MSB is not set, extend 0 into upper bits. */ + offset = 0ULL; + } + + /* Load displacement, part 2. */ + switch (operand->u.m.dispSize) + { + case QX86_DISP_64: + /* Move bits 32..63. */ + offset |= ((qx86_uint64) operand->u.m.disp[7]) << 54; + offset |= ((qx86_uint64) operand->u.m.disp[6]) << 48; + offset |= ((qx86_uint64) operand->u.m.disp[5]) << 40; + offset |= ((qx86_uint64) operand->u.m.disp[4]) << 32; + + /* FTI. */ + + case QX86_DISP_32: + /* Move bits 16..31. */ + offset |= ((qx86_uint64) operand->u.m.disp[3]) << 24; + offset |= ((qx86_uint64) operand->u.m.disp[2]) << 16; + + /* FTI. */ + + case QX86_DISP_16: + /* Move bits 8..15. */ + offset |= ((qx86_uint64) operand->u.m.disp[1]) << 8; + + /* FTI. */ + + case QX86_DISP_8: + /* Move bits 0..7. */ + offset |= (qx86_uint64) operand->u.m.disp[0]; + + /* FTI. */ + + case QX86_DISP_NONE: + /* Done. */ + break; + + default: + /* Invalid value. */ + return QX86_E_INTERNAL; + } + + /* Calculate offset: base. */ + if (QX86_REGISTER_NONE != operand->u.m.bri) + { + /* Ask for base value. */ + if (!insn->callback(insn->data, operand->u.m.bri, QX86_SUBREG_NONE, value)) return QX86_E_CALLBACK; + + /* Convert to an address. */ + qx86_extract_address(value, address); + + /* Add to offset. */ + offset += *address; + } + + /* Calculate offset: index. */ + if (QX86_REGISTER_NONE != operand->u.m.iri) + { + /* Ask for index value. */ + if (!insn->callback(insn->data, operand->u.m.iri, QX86_SUBREG_NONE, value)) return QX86_E_CALLBACK; + + /* Convert to an address. */ + qx86_extract_address(value, address); + + /* Scale and add to offset. */ + offset += *address << operand->u.m.scale; + } + + /* Truncate to address size. */ + switch (insn->attributes.addressSize) + { + case QX86_SIZE_16: + /* Truncate to 16 bits. */ + offset &= 0xFFFFULL; + + /* Done. */ + break; + + case QX86_SIZE_32: + /* Truncate to 32 bits. */ + offset &= 0xFFFFFFFFULL; + + /* Done. */ + break; + + case QX86_SIZE_64: + /* No truncation necessary. */ + break; + + default: + /* Invalid value. */ + return QX86_E_INTERNAL; + } + + /* Put offset into address. */ + *address = offset; + + /* Success. */ + return QX86_SUCCESS; +} + +int +qx86_calculate_linear_address(QX86_CONST qx86_insn *insn, int operandIndex, qx86_uint64 *address) +{ + int result; + + QX86_CONST qx86_operand * operand; + + qx86_uint8 value[32]; + + qx86_uint64 base; + qx86_uint64 offset; + + /* Get effective address. */ + result = qx86_calculate_effective_address(insn, operandIndex, &offset); + + /* Test outcome. */ + if (QX86_SUCCESS != result) return result; + + /* Get operand pointer. */ + operand = insn->operands + operandIndex; + + /* Find out whether we need to ask for base. */ + switch (operand->u.m.sri) + { + default: + /* Bases different from FS or GS are fixed at 0 in 64-bit mode. */ + if (QX86_SIZE_64 == (insn->processorMode & QX86_SIZE_MASK)) + { + /* Null base. */ + base = 0ULL; + break; + } + + /* FTI. */ + + case QX86_REGISTER_FS: + case QX86_REGISTER_GS: + /* Ask for base value. */ + if (!insn->callback(insn->data, operand->u.m.sri, QX86_SUBREG_BASE, value)) return QX86_E_CALLBACK; + + /* Convert to address. */ + qx86_extract_address(value, &base); + break; + } + + /* Combine base and offset in address. */ + *address = base + offset; + + /* Success. */ + return QX86_SUCCESS; +} + +int +qx86_decode(qx86_insn *insn, int processorMode, QX86_CONST void *ptr, int ptrSize) +{ + qx86_ctx ctx; + + int i; + int result; + + void * data; + + /* Test insn and ptr to be non-NULL. */ + if (!insn || !ptr) return QX86_E_API; + + /* Test ptrSize to be positive. */ + if (ptrSize <= 0) + { + /* Either an API error or a null call. */ + return ptrSize ? QX86_E_API : QX86_E_INSN_INCOMPLETE; + } + + /* Validate processorMode. */ + if ((processorMode & QX86_SIZE_MASK) != processorMode) return QX86_E_API; + if ((processorMode & QX86_SIZE_MASK) == QX86_SIZE_INVALID) return QX86_E_API; + + /* Clamp ptrSize. */ + if (ptrSize > QX86_INSN_SIZE_MAX) ptrSize = QX86_INSN_SIZE_MAX; + + /* Initialize ctx. */ + ctx.ptr = (qx86_uint8 *) ptr; + ctx.ptrSize = ptrSize; + ctx.pumpIndex = -1; + + /* Remember data stored in insn. */ + data = insn->data; + + /* Initialize insn for a new decode iteration. */ + insn->rawSize = 0; + insn->processorMode = processorMode; + insn->defects = QX86_DEFECT_NONE; + insn->data = &ctx; + + /* Step 1. Scan and decode prefixes. */ + if (QX86_SUCCESS != (result = qx86_decode_prefixes(insn))) + { + /* Put back user data and bail out. */ + return insn->data = data, result; + } + + /* Step 2. Decode instruction form from opcode maps. */ + if (QX86_SUCCESS != (result = qx86_decode_opcode(insn))) + { + /* Put back user data and bail out. */ + return insn->data = data, result; + } + + /* Step 3. Perform operand size fixup for D64 and F64 cases. */ + if (QX86_SIZE_64 == (processorMode & QX86_SIZE_MASK)) + { + /* See if the mnemonic has a D64 or F64 attribute. */ + if (qx86_mtab[insn->mnemonic].attributes & (QX86_MATTRIBUTE_DEFAULT_SIZE_64 | QX86_MATTRIBUTE_FIXED_SIZE_64)) + { + /* Fixed makes us do fixup in all cases. */ + result = qx86_mtab[insn->mnemonic].attributes & QX86_MATTRIBUTE_FIXED_SIZE_64; + + /* Otherwise, must not be overridden. */ + result |= !insn->attributes.operandSizeOverridden; + + /* See if we must perform fixup. */ + if (result) + { + /* Yes. */ + insn->attributes.operandSize = QX86_SIZE_64; + + /* Move up the mnemonic chain. */ + while (QX86_MNEMONIC_NONE != qx86_mtab[insn->mnemonic].promoted) insn->mnemonic = qx86_mtab[insn->mnemonic].promoted; + } + } + } + + /* Step 4. Decode instruction operands. */ + for (i = 0; i < insn->operandCount; ++i) + { + /* Decode i'th operand. */ + if (QX86_SUCCESS != (result = qx86_decode_operand(insn, i))) + { + /* Put back user data and bail out. */ + return insn->data = data, result; + } + } + + /* Step 5. Finalize instruction structure. */ + insn->iclass = qx86_mtab[insn->mnemonic].iclass; + + /* Success. */ + return insn->data = data, QX86_SUCCESS; +} + +static int +qx86_decode_amode(qx86_insn *insn, int index) +{ + qx86_operand * operand; + + qx86_amode * amode; + qx86_stuple * stuple; + + int rclass; + int rindex; + + int result; + + /* Get amode and stuple. */ + amode = insn->operandForms[index]->u.a.amode; + stuple = insn->operandForms[index]->u.a.stuple; + + /* Store effective operand size. */ + operand = insn->operands + index; + operand->size = stuple->sizes[insn->attributes.operandSize]; + + /* Call decode function if present. */ + if (amode->decodeFunc) return amode->decodeFunc(insn, index); + + /* Otherwise, default ModRM-based decode process. */ + if (QX86_MODRM_FIELD_NONE == amode->modrmField) return QX86_E_INTERNAL; + + /* Get rclass. */ + if (QX86_RCLASS_RESERVED_3 == amode->rclass) + { + /* This pseudo-class needs further evaluation via operand->size. */ + switch (operand->size) + { + case 1: + /* Map to REG8. */ + rclass = QX86_RCLASS_REG8; + break; + + case 2: + /* Map to REG16. */ + rclass = QX86_RCLASS_REG16; + break; + + case 4: + /* Map to REG32. */ + rclass = QX86_RCLASS_REG32; + break; + + case 8: + /* Map to REG64. */ + rclass = QX86_RCLASS_REG64; + break; + + default: + /* Invalid size; internal error. */ + return QX86_E_INTERNAL; + } + + /* Could have returned an invalid class. */ + if (!rclass) return QX86_E_INTERNAL; + } + else + { + /* All other rclasses map to themself. */ + rclass = amode->rclass; + } + + /* Validate rclass. */ + if (!qx86_modrm_rindex[rclass]) return QX86_E_INTERNAL; + + /* Decode ModRM. */ + if (QX86_SUCCESS != (result = qx86_decode_modifiers(insn))) return result; + + /* A value of QX86_MODRM_FIELD_MOD requires special processing. */ + if (QX86_MODRM_FIELD_MOD == amode->modrmField) + { + /* Have a look at mod field value. */ + if (3 != QX86_MODRM_MOD(insn->modifiers.modrm)) + { + /* Values other than 3 are for memory operands. */ + return qx86_decode_amode_m(insn, index); + } + } + + /* Build rindex. */ + switch (amode->modrmField) + { + case QX86_MODRM_FIELD_RM: + /* Check that mod field contains 3. */ + if (3 != QX86_MODRM_MOD(insn->modifiers.modrm)) + { + /* A defect. */ + insn->defects |= QX86_DEFECT_MODRM_MOD_NOT_3; + } + + /* No break intended. */ + + case QX86_MODRM_FIELD_MOD: + /* Use r/m and extendedB. */ + rindex = insn->modifiers.extendedB << 3 | QX86_MODRM_RM(insn->modifiers.modrm); + break; + + case QX86_MODRM_FIELD_REG: + /* Use reg and extendedR. */ + rindex = insn->modifiers.extendedR << 3 | QX86_MODRM_REG(insn->modifiers.modrm); + break; + + default: + /* Unexpected value; internal error. */ + return QX86_E_INTERNAL; + } + + /* Fetch rindex. */ + rindex = qx86_modrm_rindex[rclass][rindex]; + + /* Validate rindex. */ + if (QX86_REGISTER_INVALID == rindex) return QX86_E_INTERNAL; + + /* Initialize operand. */ + operand->ot = QX86_OPERAND_TYPE_REGISTER; + operand->u.r.rindex = rindex; + + /* Success. */ + return QX86_SUCCESS; +} + +static int +qx86_decode_amode_a(qx86_insn *insn, int index) +{ + qx86_operand * operand; + + int result; + + /* Initialize operand. */ + operand = insn->operands + index; + operand->ot = QX86_OPERAND_TYPE_FAR_POINTER; + + /* Operand size determines whether 16-bit or 32-bit offset is used. */ + switch (insn->attributes.operandSize) + { + case QX86_SIZE_16: + /* 16-bit offset and 16-bit selector. */ + operand->size = 4; + operand->u.f.offsetSize = 2; + + /* Continued below. */ + break; + + case QX86_SIZE_32: + /* 32-bit offset and 16-bit selector. */ + operand->size = 6; + operand->u.f.offsetSize = 4; + + /* Continued below. */ + break; + + default: + /* Invalid in 64-bit mode; unreachable. */ + return QX86_E_INTERNAL; + } + + /* Pump offset octets. */ + if (QX86_SUCCESS != (result = qx86_pump(insn, operand->u.f.offset, operand->u.f.offsetSize))) + { + /* Bail out. */ + return result; + } + + /* Pump selector octets. */ + return qx86_pump(insn, operand->u.f.selector, sizeof(operand->u.f.selector)); +} + +static int +qx86_decode_amode_i(qx86_insn *insn, int index) +{ + qx86_operand * operand; + + /* Initialize operand. XXX */ + operand = insn->operands + index; + operand->ot = QX86_OPERAND_TYPE_IMMEDIATE; + operand->u.i.valueSize = (qx86_uint8) operand->size; + + /* Operand size has been recorded before. */ + switch (operand->size) + { + case 1: + case 2: + case 4: + case 8: + /* Good operand size. */ + return qx86_pump(insn, operand->u.i.value, operand->size); + + default: + /* Invalid operand size; internal error. */ + return QX86_E_INTERNAL; + } +} + +static int +qx86_decode_amode_j(qx86_insn *insn, int index) +{ + qx86_operand * operand; + + /* Initialize operand. XXX */ + operand = insn->operands + index; + operand->ot = QX86_OPERAND_TYPE_JUMP_OFFSET; + operand->u.j.offsetSize = (qx86_uint8) operand->size; + + /* Operand size has been recorded before. */ + switch (operand->size) + { + case 1: + case 2: + case 4: + case 8: + /* Good operand size. */ + return qx86_pump(insn, operand->u.j.offset, operand->size); + + default: + /* Invalid operand size; internal error. */ + return QX86_E_INTERNAL; + } +} + +static int +qx86_decode_amode_m(qx86_insn *insn, int index) +{ + qx86_operand * operand; + + qx86_uint8 modrm; + qx86_uint8 sib; + + int b; + int bmask; + + int x; + int xmask; + + int p; + int q; + + int result; + + /* Decode ModRM and, if present, SIB. */ + result = qx86_decode_modifiers(insn); + + /* Bail out on error. */ + if (QX86_SUCCESS != result) return result; + + /* Get modrm and sib. */ + modrm = insn->modifiers.modrm; + sib = insn->modifiers.sib; + + /* Check mod field not to contain 11b. */ + if (3 == QX86_MODRM_MOD(modrm)) + { + /* Detected a defect. */ + insn->defects |= QX86_DEFECT_MODRM_MOD_3; + } + + /* Calculate b, x, bmask and xmask. */ + b = 1 & insn->modifiers.extendedB; + bmask = b << 3; + x = 1 & insn->modifiers.extendedX; + xmask = x << 3; + + /* Calculate p and q. */ + p = insn->attributes.addressSize; + q = (QX86_MODRM_MOD(modrm) << 4) | QX86_MODRM_RM(modrm); + + /* Initialize operand. XXX */ + operand = insn->operands + index; + operand->ot = QX86_OPERAND_TYPE_MEMORY; + operand->u.m.dispSize = (qx86_uint8) qx86_modrm_disp[p][q | bmask]; + + /* All other attributes can come from either ModRM or SIB. */ + if (insn->modifiers.sibIndex >= 0) + { + /* Use SIB. */ + operand->u.m.bri = qx86_sib_base[p][QX86_SIB_BASE(sib) | bmask]; + operand->u.m.iri = qx86_sib_index[p][QX86_SIB_INDEX(sib) | xmask]; + operand->u.m.scale = QX86_SIB_SCALE(sib); + + /* Handle the special /5 case. */ + if (QX86_REGISTER_SPECIAL == operand->u.m.bri) + { + /* Load new base. */ + operand->u.m.bri = qx86_sib_base_special[p][QX86_MODRM_MOD(modrm) | bmask]; + + /* Add displacement for zero mod case. */ + if (!QX86_MODRM_MOD(modrm)) operand->u.m.dispSize = QX86_DISP_32; + } + } + else + { + /* Use ModRM. */ + operand->u.m.bri = qx86_modrm_base[p][q | bmask]; + operand->u.m.iri = qx86_modrm_index[p][q | bmask]; + operand->u.m.scale = qx86_modrm_scale[p][q | bmask]; + + /* Handle rIP case. */ + if (QX86_RCLASS_IP == qx86_rtab[operand->u.m.bri].rclass) + { + /* Downgrade to no base in 16-bit and 32-bit modes. */ + if (QX86_SIZE_64 != (insn->processorMode & QX86_SIZE_MASK)) + { + /* No base. */ + operand->u.m.bri = QX86_REGISTER_NONE; + } + } + } + + /* Handle bases that default to stack addressing. */ + switch (operand->u.m.bri) + { + case QX86_REGISTER_SP: + case QX86_REGISTER_BP: + case QX86_REGISTER_ESP: + case QX86_REGISTER_EBP: + case QX86_REGISTER_RSP: + case QX86_REGISTER_RBP: + /* Use SS. */ + operand->u.m.sri = QX86_REGISTER_SS; + break; + + default: + /* Use DS. */ + operand->u.m.sri = QX86_REGISTER_DS; + break; + + case QX86_REGISTER_INVALID: + case QX86_REGISTER_SPECIAL: + /* Internal error. */ + return QX86_E_INTERNAL; + } + + /* Handle DS/SS override. */ + if (QX86_REGISTER_NONE != insn->modifiers.sriOverride) operand->u.m.sri = insn->modifiers.sriOverride; + + /* Pump displacement. */ + return qx86_pump(insn, operand->u.m.disp, operand->u.m.dispSize); +} + +static int +qx86_decode_amode_o(qx86_insn *insn, int index) +{ + qx86_operand * operand; + + /* Initialize operand. */ + operand = insn->operands + index; + operand->ot = QX86_OPERAND_TYPE_MEMORY; + operand->u.m.sri = QX86_REGISTER_DS; + operand->u.m.bri = 0; + operand->u.m.iri = 0; + operand->u.m.scale = 0; + operand->u.m.dispSize = QX86_SIZE_OCTETS(insn->attributes.addressSize); + + /* Handle DS override. */ + if (insn->modifiers.sriOverride) operand->u.m.sri = insn->modifiers.sriOverride; + + /* Pump offset octets. */ + return qx86_pump(insn, operand->u.m.disp, operand->u.m.dispSize); +} + +static int +qx86_decode_amode_x(qx86_insn *insn, int index) +{ + qx86_operand * operand; + + /* Initialize operand. */ + operand = insn->operands + index; + operand->ot = QX86_OPERAND_TYPE_MEMORY; + operand->u.m.sri = QX86_REGISTER_DS; + operand->u.m.bri = 0; + operand->u.m.iri = qx86_rtuple_rSI.rindexes[insn->attributes.addressSize << 2]; + operand->u.m.scale = 0; + operand->u.m.dispSize = 0; + + /* Handle DS override. */ + if (insn->modifiers.sriOverride) operand->u.m.sri = insn->modifiers.sriOverride; + + /* Success. */ + return QX86_SUCCESS; +} + +static int +qx86_decode_amode_y(qx86_insn *insn, int index) +{ + qx86_operand * operand; + + /* Initialize operand. */ + operand = insn->operands + index; + operand->ot = QX86_OPERAND_TYPE_MEMORY; + operand->u.m.sri = QX86_REGISTER_ES; + operand->u.m.bri = 0; + operand->u.m.iri = qx86_rtuple_rDI.rindexes[insn->attributes.addressSize << 2]; + operand->u.m.scale = 0; + operand->u.m.dispSize = 0; + + /* Success. */ + return QX86_SUCCESS; +} + +static int +qx86_decode_implicit_1(qx86_insn *insn, int index) +{ + qx86_operand * operand; + + /* Initialize operand. */ + operand = insn->operands + index; + operand->ot = QX86_OPERAND_TYPE_IMMEDIATE; + operand->size = 1; + operand->u.i.value[0] = 1; + operand->u.i.valueSize = 1; + + /* Success. */ + return QX86_SUCCESS; +} + +static int +qx86_decode_modifiers(qx86_insn *insn) +{ + int result; + + /* We could have decoded modifiers earlier, in which case we are done. */ + if (insn->modifiers.modrmIndex >= 0) return QX86_SUCCESS; + + /* Fetch ModRM. */ + result = qx86_pump(insn, &insn->modifiers.modrm, 1); + + /* Test if successful. */ + if (QX86_SUCCESS != result) return result; + + /* Store ModRM index. */ + insn->modifiers.modrmIndex = insn->rawSize - 1; + + /* 16-bit addresses don't allow SIB. */ + if (QX86_SIZE_16 != insn->attributes.addressSize) + { + /* ModRM r/m field must contain 4 for SIB to be present. */ + if (4 == QX86_MODRM_RM(insn->modifiers.modrm)) + { + /* ModRM mod field must not contain 3 for SIB to be present. */ + if (3 != QX86_MODRM_MOD(insn->modifiers.modrm)) + { + /* SIB is present. */ + result = qx86_pump(insn, &insn->modifiers.sib, 1); + + /* Test if successful. */ + if (QX86_SUCCESS != result) return result; + + /* Store SIB index. */ + insn->modifiers.sibIndex = insn->rawSize - 1; + } + } + } + + /* Success. */ + return QX86_SUCCESS; +} + +static int +qx86_decode_opcode(qx86_insn *insn) +{ + qx86_opcode_map * map; + qx86_opcode_map_item * item; + + int result; + + /* Initialize instruction operand count. */ + insn->operandCount = -1; + + /* Loop around maps. */ + for (map = qx86_opcode_maps[insn->modifiers.escape]; /* ILB */; map = item->link) + { + /* Choose item. */ + result = qx86_opcode_map_choose(insn, map, &item); + + /* Bail out on error. */ + if (QX86_SUCCESS != result) return result; + + /* Move in operand forms. */ + if (item->operandCount >= 0) + { + /* No operand must have been defined before. */ + if (insn->operandCount < 0) + { + /* Move loop. */ + while (++insn->operandCount < item->operandCount) + { + /* Move one operand form pointer. */ + insn->operandForms[insn->operandCount] = item->operandForms + insn->operandCount; + } + } + else + { + /* Internal error. Maps are messed up. */ + return QX86_E_INTERNAL; + } + } + + /* Perform required action. */ + switch (item->code) + { + case QX86_OPCODE_MAP_ITEM_CODE_NONE: + /* Undefined opcode. Decode process stops. */ + return QX86_E_INSN_UNDEFINED; + + case QX86_OPCODE_MAP_ITEM_CODE_LINK: + /* Proceed to next map. */ + continue; + + case QX86_OPCODE_MAP_ITEM_CODE_PREFIX: + /* Prefixes must have been parsed before. */ + return QX86_E_INTERNAL; + + default: + /* Be paranoid. */ + if (item->code <= 0) return QX86_E_INTERNAL; + if (item->code >= QX86_MNEMONIC_COUNT) return QX86_E_INTERNAL; + + /* Store the mnemonic. */ + insn->mnemonic = item->code; + + /* Done. */ + break; + } + + /* Exit the loop. */ + break; + } + + /* Test that we have defined the operands. */ + if (insn->operandCount < 0) return QX86_E_INTERNAL; + + /* Success. */ + return QX86_SUCCESS; +} + +static int +qx86_decode_operand(qx86_insn *insn, int index) +{ + /* Copy operand attributes. */ + insn->operands[index].attributes = insn->operandForms[index]->attributes; + + /* Call appropriate functions. */ + switch (insn->operandForms[index]->ft) + { + case QX86_OPERAND_FORM_TYPE_AMODE: + /* Decode amode operand. */ + return qx86_decode_amode(insn, index); + + case QX86_OPERAND_FORM_TYPE_IMPLICIT_1: + /* Decode implicit 1 operand. */ + return qx86_decode_implicit_1(insn, index); + + case QX86_OPERAND_FORM_TYPE_RTUPLE: + /* Decode rtuple operand. */ + return qx86_decode_rtuple(insn, index); + + default: + /* Invalid ft value; internal error. */ + return QX86_E_INTERNAL; + } +} + +static int +qx86_decode_prefixes(qx86_insn *insn) +{ + /* TODO: I will rewrite this all. */ + + qx86_uint8 nb; + + int aso; + int oso; + + int result; + + /* Initialize modifiers: indexes. */ + insn->modifiers.modrmIndex = -1; + insn->modifiers.sibIndex = -1; + insn->modifiers.rexIndex = -1; + + /* Initialize modifiers: defaults. */ + insn->modifiers.escape = QX86_OPCODE_ESCAPE_NONE; + insn->modifiers.opcodePrefix = 0; /* XXX enum needed */ + insn->modifiers.sriOverride = QX86_REGISTER_NONE; + insn->modifiers.repeatPrefix = 0; /* XXX enum needed. */ + + /* Initialize attributes. */ + insn->attributes.interlocked = 0; + + /* Initialize locals. */ + aso = 0; + oso = 0; + + /* Loop fetching octets. */ + for (insn->modifiers.prefixSize = 0; /* ILB */; ++insn->modifiers.prefixSize) + { + /* Pump an octet. */ + result = qx86_pump(insn, &nb, 1); + + /* Test result. */ + if (QX86_SUCCESS != result) return result; + + /* Look for prefixes. */ + switch (nb) + { + case 0x26: + /* ES override. */ + insn->modifiers.sriOverride = QX86_REGISTER_ES; + continue; + + case 0x2E: + /* CS override. */ + insn->modifiers.sriOverride = QX86_REGISTER_CS; + continue; + + case 0x36: + /* SS override. */ + insn->modifiers.sriOverride = QX86_REGISTER_SS; + continue; + + case 0x3E: + /* DS override. */ + insn->modifiers.sriOverride = QX86_REGISTER_DS; + continue; + + case 0x40: + case 0x41: + case 0x42: + case 0x43: + case 0x44: + case 0x45: + case 0x46: + case 0x47: + case 0x48: + case 0x49: + case 0x4A: + case 0x4B: + case 0x4C: + case 0x4D: + case 0x4E: + case 0x4F: + /* REX. Only in 64-bit mode. */ + if (QX86_SIZE_64 == (insn->processorMode & QX86_SIZE_MASK)) + { + /* A prefix. */ + insn->modifiers.rexIndex = insn->modifiers.prefixSize; + insn->modifiers.rex = nb; + + /* Continue. */ + continue; + } + else + { + /* Not a prefix. */ + break; + } + + case 0x64: + /* FS override. */ + insn->modifiers.sriOverride = QX86_REGISTER_FS; + continue; + + case 0x65: + /* GS override. */ + insn->modifiers.sriOverride = QX86_REGISTER_GS; + continue; + + case 0x66: + /* Operand size override and opcode extension. */ + oso = 1; insn->modifiers.opcodePrefix = 1; + continue; + + case 0x67: + /* Address size override. */ + aso = 1; + continue; + + case 0xF0: + /* LOCK. Ignored for now. XXX. */ + insn->attributes.interlocked = 1; + continue; + + case 0xF2: + /* REPNZ. Ignored for now. XXX. */ + insn->modifiers.opcodePrefix = 2; + insn->modifiers.repeatPrefix = 0xF2; + continue; + + case 0xF3: + /* REP/REPZ. Ignored for now. XXX. */ + insn->modifiers.opcodePrefix = 3; + insn->modifiers.repeatPrefix = 0xF3; + continue; + + default: + /* No other prefixes. */ + break; + } + + /* We have eaten an extra octet. */ + result = qx86_unpump(insn); + + /* Test outcome. */ + if (QX86_SUCCESS != result) return result; + + /* Done. */ + break; + } + + /* oso can also get a value of 2. */ + if (insn->modifiers.rexIndex >= 0) + { + /* Get the w field. */ + if (QX86_REX_W(insn->modifiers.rex)) oso = 2; + } + + /* Define effective address and operand sizes. XXX. */ + insn->attributes.addressSize = (qx86_uint8) qx86_address_size[insn->processorMode & QX86_SIZE_MASK][aso]; + insn->attributes.addressSizeOverridden + = 0 != aso; + insn->attributes.operandSize = (qx86_uint8) qx86_operand_size[insn->processorMode & QX86_SIZE_MASK][oso]; + insn->attributes.operandSizeOverridden + = 0 != oso; + + /* Define REX stuff. XXX. */ + if (insn->modifiers.rexIndex >= 0) + { + /* Yes extensions. */ + insn->modifiers.extendedB = 2 | QX86_REX_B(insn->modifiers.rex); + insn->modifiers.extendedR = 2 | QX86_REX_R(insn->modifiers.rex); + insn->modifiers.extendedX = 2 | QX86_REX_X(insn->modifiers.rex); + } + else + { + /* No extensions. */ + insn->modifiers.extendedB = 0; + insn->modifiers.extendedR = 0; + insn->modifiers.extendedX = 0; + } + + /* Success. */ + return QX86_SUCCESS; +} + +static int +qx86_decode_rtuple(qx86_insn *insn, int index) +{ + qx86_operand * operand; + qx86_rtuple * rtuple; + + int rindex; + + /* Get rtuple and extract rindex. */ + rtuple = insn->operandForms[index]->u.r.rtuple; + rindex = (insn->attributes.operandSize << 2) | insn->modifiers.extendedR; + rindex = rtuple->rindexes[rindex]; + + /* Validate rindex. */ + if (QX86_REGISTER_INVALID == rindex) return QX86_E_INTERNAL; + + /* Initialize operand. */ + operand = insn->operands + index; + operand->ot = QX86_OPERAND_TYPE_REGISTER; + operand->size = qx86_rtab[rindex].size; + operand->u.r.rindex = rindex; + + /* Success. */ + return QX86_SUCCESS; +} + +static int +qx86_opcode_map_choose(qx86_insn *insn, qx86_opcode_map *map, qx86_opcode_map_item **item) +{ + qx86_uint8 index; + + int result; + + /* Switch index. */ + switch (map->index) + { + case QX86_OPCODE_MAP_INDEX_NB: + /* Pump an octet. */ + result = qx86_pump(insn, &index, 1); + + /* Bail out on error. */ + if (QX86_SUCCESS != result) return result; + + /* Store pumpIndex. */ + ((qx86_ctx *) insn->data)->pumpIndex = insn->rawSize - 1; + + /* Done. */ + break; + + case QX86_OPCODE_MAP_INDEX_PB: + /* See if we have decoded an opcode octet before. */ + if (((qx86_ctx *) insn->data)->pumpIndex >= 0) + { + /* Yes. Get it. */ + index = insn->raw[((qx86_ctx *) insn->data)->pumpIndex]; + } + else + { + /* No. Internal error. */ + return QX86_E_INTERNAL; + } + + /* Done. */ + break; + + case QX86_OPCODE_MAP_INDEX_AS: + /* Effective address size, an attribute. */ + index = insn->attributes.addressSize; + + /* Done. */ + break; + + case QX86_OPCODE_MAP_INDEX_CS: + /* Code size. */ + index = insn->processorMode & QX86_SIZE_MASK; + + /* Done. */ + break; + + case QX86_OPCODE_MAP_INDEX_OS: + /* Effective operand size, an attribute. */ + index = insn->attributes.operandSize; + + /* Done. */ + break; + + case QX86_OPCODE_MAP_INDEX_SP: + /* Opcode extension (SIMD) prefix, a modifier. */ + index = insn->modifiers.opcodePrefix; + + /* Done. */ + break; + + case QX86_OPCODE_MAP_INDEX_MOD: + case QX86_OPCODE_MAP_INDEX_REG: + case QX86_OPCODE_MAP_INDEX_RM: + /* Decode ModRM. */ + result = qx86_decode_modifiers(insn); + + /* Bail out on error. */ + if (QX86_SUCCESS != result) return result; + + /* Switch once more. */ + switch (map->index) + { + case QX86_OPCODE_MAP_INDEX_MOD: + /* Get mod field value. */ + index = QX86_MODRM_MOD(insn->modifiers.modrm); + break; + + case QX86_OPCODE_MAP_INDEX_REG: + /* Get reg field value. */ + index = QX86_MODRM_REG(insn->modifiers.modrm); + break; + + case QX86_OPCODE_MAP_INDEX_RM: + /* Get r/m field value. */ + index = QX86_MODRM_RM(insn->modifiers.modrm); + break; + + default: + /* Silence compiler complaints. */ + index = 0; + break; + } + + /* Done. */ + break; + + default: + /* Bad index value; internal error. */ + return QX86_E_INTERNAL; + } + + /* Validate chosen index. */ + if (index > map->limit) return QX86_E_INTERNAL; + + /* Pick item. */ + *item = map->items + index; + + /* Success. */ + return QX86_SUCCESS; +} + +static int +qx86_print(qx86_print_item *items, char *buffer, int *bufferSize) +{ + qx86_print_item * item; + int size; + + QX86_CONST char * p; + QX86_CONST qx86_uint8 * x; + + /* XXX */ + static const char hexDigits[16] + = + { + '0', '1', '2', '3', '4', '5', '6', '7', + '8', '9', 'A', 'B', 'C', 'D', 'E', 'F' + }; + + /* XXX */ + (void) qx86_flip_case; + + /* Scan items. */ + for (size = 0, item = items; /* ILB */; ++item) + { + /* See if this item contains a number or a string. */ + if (item->number) + { + /* Format number. */ + for (x = item->number + item->numberSize - 1; x >= item->number; --x) + { + /* See if there is space left for 2 characters. */ + if (size + 1 < *bufferSize) + { + /* Print nibbles. */ + buffer[size + 0] = hexDigits[*x / 16]; + buffer[size + 1] = hexDigits[*x % 16]; + } + + /* Increase size. */ + size += 2; + } + } + else if (item->string) + { + /* While we still have room for characters, copy them. */ + for (p = item->string; *p; ++p) + { + /* See if there is space left. */ + if (size < *bufferSize) + { + /* Yes. Copy character. */ + buffer[size] = *p; + } + + /* In all cases, increment the size. */ + ++size; + } + } + else + { + /* No data in this item. This is the terminator. */ + break; + } + } + + /* Attempt to terminate with a NUL. */ + if (size++ < *bufferSize) buffer[size - 1] = '\0'; + + /* Now size contains the actual buffer size. */ + if (size <= *bufferSize) + { + /* Had enough space to print all characters. */ + *bufferSize = size; return QX86_SUCCESS; + } + else + { + /* Could not print all characaters. */ + *bufferSize = size; return QX86_E_INSUFFICIENT_BUFFER; + } +} + +int +qx86_print_intel(QX86_CONST qx86_insn *insn, QX86_CONST qx86_print_options_intel *options, char *buffer, int *bufferSize) +{ + qx86_print_item items[32]; /* TODO: size. */ + qx86_print_item * item; + + QX86_CONST qx86_operand * operand; + + int i; + int printPlus; + + /* Test insn, options, buffer, and bufferSize to be non-NULL. */ + if (!insn || !options || !buffer || !bufferSize) return QX86_E_API; + + /* Start with item pointing at items. */ + item = items; + + /* Print lock prefix. TODO. */ + if (insn->attributes.interlocked) + { + item->number = 0; + item->string = "LOCK "; + item = item + 1; + } + + /* Print repeat prefixes. TODO: this will be rewritten after p/l commit. */ + if (insn->modifiers.repeatPrefix) + { + /* Do print. */ + if (qx86_mtab[insn->mnemonic].attributes & QX86_MATTRIBUTE_REP) + { + /* Test for REPZ/REPNZ support. */ + if (qx86_mtab[insn->mnemonic].attributes & QX86_MATTRIBUTE_REPZ) + { + /* Use REPZ or REPNZ. */ + if (0xF2 == insn->modifiers.repeatPrefix) + { + /* REPNZ. */ + item->number = 0; + item->string = "REPNZ "; + item = item + 1; + } + else + { + /* REPZ. */ + item->number = 0; + item->string = "REPZ "; + item = item + 1; + } + } + else + { + /* Use plain REP. */ + item->number = 0; + item->string = "REP "; + item = item + 1; + } + } + } + + /* Print instruction mnemonic. */ + item->number = 0; + item->string = qx86_mtab[insn->mnemonic].name; + item = item + 1; + + /* Print operands. */ + for (i = 0, operand = insn->operands; i < insn->operandCount; ++i, ++operand) + { + /* Print a comma before the operand if needed. */ + if (i) + { + /* Print it. */ + item->number = 0; + item->string = ", "; + item = item + 1; + } + else + { + /* Otherwise, print whitespace before first operand. */ + item->number = 0; + item->string = " "; + item = item + 1; + } + + /* Switch operand type. */ + switch (operand->ot) + { + case QX86_OPERAND_TYPE_FAR_POINTER: + /* Print segment value. */ + item->number = operand->u.f.selector; + item->numberSize = 2; + item->string = 0; + item = item + 1; + + /* Add colon. */ + item->number = 0; + item->string = ":"; + item = item + 1; + + /* Print offset value. */ + item->number = operand->u.f.offset; + item->numberSize = operand->u.f.offsetSize; + item->string = 0; + item = item + 1; + + /* Done. */ + break; + + case QX86_OPERAND_TYPE_IMMEDIATE: + /* Print immediate value. */ + item->number = operand->u.i.value; + item->numberSize = operand->u.i.valueSize; + item = item + 1; + + /* Done. */ + break; + + case QX86_OPERAND_TYPE_JUMP_OFFSET: + /* Print jump offset value. */ + item->number = operand->u.j.offset; + item->numberSize = operand->u.j.offsetSize; + item = item + 1; + + /* Done. */ + break; + + case QX86_OPERAND_TYPE_MEMORY: + /* Print atom name. */ + item->number = 0; + item->string = insn->operandForms[i]->u.a.stuple->atoms[insn->attributes.operandSize]; + item = item + 1; + + /* Print "PTR." */ + item->number = 0; + item->string = " PTR "; + item = item + 1; + + /* Print segment register name if overridden. */ + if (QX86_REGISTER_NONE != insn->modifiers.sriOverride) + { + /* Overridden. Print name. */ + item->number = 0; + item->string = qx86_rtab[operand->u.m.sri].name; + item = item + 1; + + /* Print colon. */ + item->number = 0; + item->string = ":"; + item = item + 1; + } + + /* Open brackets. */ + item->number = 0; + item->string = "["; + item = item + 1; + + /* Test if a base is used. */ + if (QX86_REGISTER_NONE != operand->u.m.bri) + { + /* Print it. */ + item->number = 0; + item->string = qx86_rtab[operand->u.m.bri].name; + item = item + 1; + + /* Need to print plus before a component to follow. */ + printPlus = 1; + } + else + { + /* No plus required. */ + printPlus = 0; + } + + /* Test if an index is used. */ + if (QX86_REGISTER_NONE != operand->u.m.iri) + { + /* Print a plus if needed. */ + if (printPlus) + { + /* Do print. */ + item->number = 0; + item->string = " + "; + item = item + 1; + } + + /* Print index register name. */ + item->number = 0; + item->string = qx86_rtab[operand->u.m.iri].name; + item = item + 1; + + /* Test for scale different than 1. */ + switch (operand->u.m.scale) + { + case QX86_SCALE_NONE: + /* No action. */ + break; + + case QX86_SCALE_X2: + /* Print X2 scale. */ + item->number = 0; + item->string = " * 2"; + item = item + 1; + + /* Done. */ + break; + + case QX86_SCALE_X4: + /* Print X4 scale. */ + item->number = 0; + item->string = " * 4"; + item = item + 1; + + /* Done. */ + break; + + case QX86_SCALE_X8: + /* Print X8 scale. */ + item->number = 0; + item->string = " * 8"; + item = item + 1; + + /* Done. */ + break; + + default: + /* Operand had been tampered with. */ + return QX86_E_INTERNAL; + } + + /* Need to print plus. */ + printPlus = 1; + } + + /* Test if a displacement exists. */ + if (QX86_DISP_NONE != operand->u.m.dispSize) + { + /* Print plus as needed. */ + if (printPlus) + { + /* Do print. */ + item->number = 0; + item->string = " + "; + item = item + 1; + } + + /* Print displacement. */ + item->number = operand->u.m.disp; + item->numberSize = operand->u.m.dispSize; + item->string = 0; + item = item + 1; + } + + /* Close brackets. */ + item->number = 0; + item->string = "]"; + item = item + 1; + + /* Done. */ + break; + + case QX86_OPERAND_TYPE_REGISTER: + /* Print register name. */ + item->number = 0; + item->string = qx86_rtab[operand->u.r.rindex].name; + item = item + 1; + + /* Done. */ + break; + + default: + /* Operand had been tampered with. */ + return QX86_E_INTERNAL; + } + } + + /* Terminate items. */ + item->number = 0; + item->string = 0; + + /* Jump to the generic print routine. */ + return qx86_print(items, buffer, bufferSize); +} diff --git a/palacios/src/palacios/vmm_quix86.c b/palacios/src/palacios/vmm_quix86.c new file mode 100644 index 0000000..6440878 --- /dev/null +++ b/palacios/src/palacios/vmm_quix86.c @@ -0,0 +1,939 @@ +/* + * This file is part of the Palacios Virtual Machine Monitor developed + * by the V3VEE Project with funding from the United States National + * Science Foundation and the Department of Energy. + * + * The V3VEE Project is a joint project between Northwestern University + * and the University of New Mexico. You can find out more at + * http://www.v3vee.org + * + * Copyright (c) 2011, Jack Lange + * Copyright (c) 2008, The V3VEE Project + * All rights reserved. + * + * Author: Alexander Kudryavtsev + * + * This is free software. You are permitted to use, + * redistribute, and modify it as specified in the file "V3VEE_LICENSE". + */ + +#include +#include +#include +#include +#include +#include +#include + +#include + +#ifndef V3_CONFIG_DEBUG_DECODER +#undef PrintDebug +#define PrintDebug(fmt, args...) +#endif + +#define GPR_REGISTER 0 +#define SEGMENT_REGISTER 1 +#define CTRL_REGISTER 2 +#define DEBUG_REGISTER 3 + + +// QUIX86 does not have to be initialised or deinitialised. +int v3_init_decoder(struct guest_info * core) { + return 0; +} +int v3_deinit_decoder(struct guest_info * core) { + return 0; +} + +static int get_opcode(qx86_insn *inst); +static int qx86_register_to_v3_reg(struct guest_info * info, int qx86_reg, + addr_t * v3_reg, uint_t * reg_len); + + + + +static int decode_string_op(struct guest_info * info, + const qx86_insn * qx86_inst, struct x86_instr * instr) { + + int status = 0; + PrintDebug("String operation\n"); + + if (instr->prefixes.rep == 1) { + uint64_t a_mask = ~(~0ULL << (QX86_SIZE_OCTETS(qx86_inst->attributes.addressSize) * 8)); + + instr->str_op_length = info->vm_regs.rcx & a_mask; + } else { + instr->str_op_length = 1; + } + + + if (instr->op_type == V3_OP_MOVS) { + instr->num_operands = 2; + + if((status = qx86_calculate_linear_address(qx86_inst, 0, (qx86_uint64*)&instr->dst_operand.operand)) != QX86_SUCCESS) { + PrintError("Could not get destination memory operand: qx86_calculate_linear_address: %d\n", status); + return -1; + } + + if((status = qx86_calculate_linear_address(qx86_inst, 1, (qx86_uint64*)&instr->src_operand.operand)) != QX86_SUCCESS) { + PrintError("Could not get source memory operand: qx86_calculate_linear_address: %d\n", status); + return -1; + } + + instr->dst_operand.write = 1; + instr->src_operand.read = 1; + + } else if (instr->op_type == V3_OP_STOS) { + instr->num_operands = 2; + + if((status = qx86_calculate_linear_address(qx86_inst, 0, (qx86_uint64*)&instr->dst_operand.operand)) != QX86_SUCCESS) { + PrintError("Could not get destination memory operand: qx86_calculate_linear_address: %d\n", status); + return -1; + } + + // STOS reads from rax + qx86_register_to_v3_reg(info, + qx86_inst->operands[1].u.r.rindex, + &(instr->src_operand.operand), &(instr->src_operand.size)); + instr->src_operand.type = REG_OPERAND; + + instr->src_operand.read = 1; + instr->dst_operand.write = 1; + + } else { + PrintError("Unhandled String OP\n"); + return -1; + } + + return 0; +} + + +static int +callback(void *data, int rindex, int subreg, unsigned char *value) +{ + void* reg_addr = 0; + uint_t reg_size; + + struct guest_info *info = (struct guest_info*)data; + int v3_reg_type = qx86_register_to_v3_reg(info, + rindex, + (addr_t*)®_addr, ®_size); + + if(v3_reg_type == -1) { + PrintError("Callback failed to get register index %d\n", rindex); + return 0; + } + + *(uint64_t*)value = 0; + switch(subreg) { + case QX86_SUBREG_BASE: *(uint64_t*)value = ((struct v3_segment*)reg_addr)->base; break; + case QX86_SUBREG_LIMIT: *(uint32_t*)value = ((struct v3_segment*)reg_addr)->limit; break; + case QX86_SUBREG_FLAGS: PrintError("Callback doesn't know how to give flags.\n"); return 0;break; + case QX86_SUBREG_NONE: { + switch(qx86_rtab[rindex].size) { + case 1: *(uint8_t* )value = *(uint8_t* )reg_addr; break; + case 2: *(uint16_t*)value = *(uint16_t*)reg_addr; break; + case 4: *(uint32_t*)value = *(uint32_t*)reg_addr; break; + case 8: *(uint64_t*)value = *(uint64_t*)reg_addr; break; + } + break; + } + } + + return 1; +} + +static inline int qx86_op_to_v3_op(struct guest_info *info, qx86_insn *qx86_insn, int op_num, struct x86_operand * v3_op) { + int status = 0; + qx86_operand *qx86_op = &qx86_insn->operands[op_num]; + if (qx86_op->ot == QX86_OPERAND_TYPE_REGISTER) { + int v3_reg_type = qx86_register_to_v3_reg(info, + qx86_op->u.r.rindex, + &(v3_op->operand), &(v3_op->size)); + + if (v3_reg_type == -1) { + PrintError("Operand %d is an Unhandled Operand: %s\n", op_num, qx86_rtab[qx86_op->u.r.rindex].name); + v3_op->type = INVALID_OPERAND; + return -1; + } else if (v3_reg_type == SEGMENT_REGISTER) { + struct v3_segment * seg_reg = (struct v3_segment *)(v3_op->operand); + v3_op->operand = (addr_t)&(seg_reg->selector); + } + v3_op->type = REG_OPERAND; + + } else if(qx86_op->ot == QX86_OPERAND_TYPE_MEMORY) { + PrintDebug("Memory operand (%d)\n", op_num); + if((status = qx86_calculate_linear_address(qx86_insn, op_num, (qx86_uint64*)&v3_op->operand)) != QX86_SUCCESS) { + PrintError("Could not get memory operand %d: qx86_calculate_linear_address() returns %d\n", op_num, status); + return -1; + } + v3_op->type = MEM_OPERAND; + v3_op->size = qx86_op->size; + + } else if(qx86_op->ot == QX86_OPERAND_TYPE_IMMEDIATE) { + v3_op->size = qx86_op->u.i.valueSize; + + if (v3_op->size > 4) { + PrintError("Unhandled 64 bit immediates\n"); + return -1; + } + v3_op->operand = (addr_t)*(uint64_t*)qx86_op->u.i.value; + v3_op->type = IMM_OPERAND; + + } else { + PrintError("Unhandled Operand %d Type %d\n", op_num, qx86_op->ot); + return -1; + } + + if (qx86_op->attributes & QX86_OPERAND_ATTRIBUTE_READ) { + v3_op->read = 1; + } + if (qx86_op->attributes & QX86_OPERAND_ATTRIBUTE_WRITTEN) { + v3_op->write = 1; + } + return 0; +} + +int v3_decode(struct guest_info * info, addr_t instr_ptr, struct x86_instr * instr) { + int proc_mode; + qx86_insn qx86_inst; + uint8_t inst_buf[QX86_INSN_SIZE_MAX]; + + memset(instr, 0, sizeof(struct x86_instr)); + memset(&qx86_inst, 0, sizeof(qx86_inst)); + + v3_get_prefixes((uchar_t *)instr_ptr, &(instr->prefixes)); + + switch(v3_get_vm_cpu_mode(info)) { + case REAL: case LONG_16_COMPAT: + proc_mode = QX86_SIZE_16; break; + case PROTECTED: case PROTECTED_PAE: case LONG_32_COMPAT: + proc_mode = QX86_SIZE_32; break; + case LONG: + proc_mode = QX86_SIZE_64; break; + default: + PrintError("Unsupported CPU mode: %d\n", info->cpu_mode); + return -1; + } + + int left_in_page = 0x1000 - (instr_ptr & 0xfff); + if(left_in_page < QX86_INSN_SIZE_MAX) { + addr_t instr_ptr2; + int status = 0; + + if (info->mem_mode == PHYSICAL_MEM) { + status = v3_gpa_to_hva(info, get_addr_linear(info, (info->rip & ~0xfffULL) + 0x1000, &(info->segments.cs)), &instr_ptr2); + } else { + status = v3_gva_to_hva(info, get_addr_linear(info, (info->rip & ~0xfffULL) + 0x1000, &(info->segments.cs)), &instr_ptr2); + } + if (status == -1) { + PrintError("Could not translate Instruction Address at second stage translation (%p)\n", (void *)(addr_t)info->rip); + return -1; + } + + if(((instr_ptr & ~0xfffULL) + 0x1000) != instr_ptr2) { + PrintError("Note: phys page non-contiguous\n"); + memcpy(inst_buf, (const void*)instr_ptr, left_in_page); + memcpy(inst_buf + left_in_page, (const void*)instr_ptr2, QX86_INSN_SIZE_MAX - left_in_page); + instr_ptr = (addr_t)inst_buf; + } // in other case, address space is contiguous and everything is OK + + + + + } + + qx86_inst.callback = callback; + qx86_inst.data = info; + + int status = qx86_decode(&qx86_inst, proc_mode, (const void*)instr_ptr, QX86_INSN_SIZE_MAX); + if(status != QX86_SUCCESS) { + PrintError("qx86_decode() returned %d\n", status); + return -1; + } + + instr->instr_length = qx86_inst.rawSize; + + if ((instr->op_type = get_opcode(&qx86_inst)) == V3_INVALID_OP) { + PrintError("Could not get opcode. (mnemonic=%s)\n", qx86_mtab[qx86_inst.mnemonic].name); + return -1; + } + + if(instr->op_type == V3_OP_MOVS || instr->op_type == V3_OP_STOS) { + instr->is_str_op = 1; + return decode_string_op(info, &qx86_inst, instr); + } else { + instr->is_str_op = 0; + instr->str_op_length = 0; + } + + instr->num_operands = qx86_inst.operandCount; + + + // set first operand + if (instr->num_operands >= 1) { + if (qx86_op_to_v3_op(info, &qx86_inst, 0, &instr->dst_operand) != 0) + return -1; + } + + // set second operand + if (instr->num_operands >= 2) { + if (qx86_op_to_v3_op(info, &qx86_inst, 1, &instr->src_operand) != 0) + return -1; + } + + // set third operand + if (instr->num_operands >= 3) { + if (qx86_op_to_v3_op(info, &qx86_inst, 2, &instr->third_operand) != 0) + return -1; + } + +#ifdef V3_CONFIG_DEBUG_DECODER + qx86_print_options_intel opt; + char buf[128]; + int buf_sz = 128; + if(qx86_print_intel(&qx86_inst, &opt, buf, &buf_sz) != QX86_SUCCESS) { + PrintDebug("Print failed!\n"); + } else { + PrintDebug("Instruction: %s\n", buf); + } + PrintDebug("Operands: dst %p src %p 3rd %p\n", (void*)instr->dst_operand.operand, (void*)instr->src_operand.operand, (void*)instr->third_operand.operand); +#endif + return 0; +} + +static int get_opcode(qx86_insn *inst) { + + switch (inst->mnemonic) { + + +#define IS_CR(op) inst->operands[op].ot == QX86_OPERAND_TYPE_REGISTER && \ + qx86_rtab[inst->operands[op].u.r.rindex].rclass == QX86_RCLASS_CREG + + /* MOV cases */ + case QX86_MNEMONIC_MOV: { + if(inst->operands[0].ot == QX86_OPERAND_TYPE_MEMORY || inst->operands[1].ot == QX86_OPERAND_TYPE_MEMORY) + return V3_OP_MOV; + if(IS_CR(0)) + return V3_OP_MOV2CR; + if(IS_CR(1)) + return V3_OP_MOVCR2; + + PrintError("Bad operand types for MOV: %d %d\n", inst->operands[0].ot, inst->operands[1].ot); + return V3_INVALID_OP; + } + + /* Control Instructions */ + + case QX86_MNEMONIC_SMSW: + return V3_OP_SMSW; + + case QX86_MNEMONIC_LMSW: + return V3_OP_LMSW; + + case QX86_MNEMONIC_CLTS: + return V3_OP_CLTS; + + case QX86_MNEMONIC_INVLPG: + return V3_OP_INVLPG; + + + /* Data Instructions */ + + case QX86_MNEMONIC_ADC: + return V3_OP_ADC; + + case QX86_MNEMONIC_ADD: + return V3_OP_ADD; + + case QX86_MNEMONIC_AND: + return V3_OP_AND; + + case QX86_MNEMONIC_SUB: + return V3_OP_SUB; + + + case QX86_MNEMONIC_MOVZX: + return V3_OP_MOVZX; + + case QX86_MNEMONIC_MOVSX: + return V3_OP_MOVSX; + + + + case QX86_MNEMONIC_DEC: + return V3_OP_DEC; + + case QX86_MNEMONIC_INC: + return V3_OP_INC; + + case QX86_MNEMONIC_OR: + return V3_OP_OR; + + case QX86_MNEMONIC_XOR: + return V3_OP_XOR; + + case QX86_MNEMONIC_NEG: + return V3_OP_NEG; + + case QX86_MNEMONIC_NOT: + return V3_OP_NOT; + + case QX86_MNEMONIC_XCHG: + return V3_OP_XCHG; + + case QX86_MNEMONIC_SETB: + return V3_OP_SETB; + + case QX86_MNEMONIC_SETBE: + return V3_OP_SETBE; + + case QX86_MNEMONIC_SETL: + return V3_OP_SETL; + + case QX86_MNEMONIC_SETLE: + return V3_OP_SETLE; + + case QX86_MNEMONIC_SETAE: + return V3_OP_SETNB; + + case QX86_MNEMONIC_SETA: + return V3_OP_SETNBE; + + case QX86_MNEMONIC_SETGE: + return V3_OP_SETNL; + + case QX86_MNEMONIC_SETG: + return V3_OP_SETNLE; + + case QX86_MNEMONIC_SETNO: + return V3_OP_SETNO; + + case QX86_MNEMONIC_SETNP: + return V3_OP_SETNP; + + case QX86_MNEMONIC_SETNS: + return V3_OP_SETNS; + + case QX86_MNEMONIC_SETNZ: + return V3_OP_SETNZ; + + case QX86_MNEMONIC_SETO: + return V3_OP_SETO; + + case QX86_MNEMONIC_SETP: + return V3_OP_SETP; + + case QX86_MNEMONIC_SETS: + return V3_OP_SETS; + + case QX86_MNEMONIC_SETZ: + return V3_OP_SETZ; + + case QX86_MNEMONIC_MOVSB: + case QX86_MNEMONIC_MOVSW: + case QX86_MNEMONIC_MOVSD: + case QX86_MNEMONIC_MOVSQ: + return V3_OP_MOVS; + + case QX86_MNEMONIC_STOSB: + case QX86_MNEMONIC_STOSW: + case QX86_MNEMONIC_STOSD: + case QX86_MNEMONIC_STOSQ: + return V3_OP_STOS; + + + default: + return V3_INVALID_OP; + } +} + + +static int qx86_register_to_v3_reg(struct guest_info * info, int qx86_reg, + addr_t * v3_reg, uint_t * reg_len) { + + PrintDebug("qx86 Register: %s\n", qx86_rtab[qx86_reg].name); + + switch (qx86_reg) { + case QX86_REGISTER_INVALID: + *v3_reg = 0; + *reg_len = 0; + return -1; + + /* + * GPRs + */ + case QX86_REGISTER_RAX: + *v3_reg = (addr_t)&(info->vm_regs.rax); + *reg_len = 8; + return GPR_REGISTER; + case QX86_REGISTER_EAX: + *v3_reg = (addr_t)&(info->vm_regs.rax); + *reg_len = 4; + return GPR_REGISTER; + case QX86_REGISTER_AX: + *v3_reg = (addr_t)&(info->vm_regs.rax); + *reg_len = 2; + return GPR_REGISTER; + case QX86_REGISTER_AH: + *v3_reg = (addr_t)(&(info->vm_regs.rax)) + 1; + *reg_len = 1; + return GPR_REGISTER; + case QX86_REGISTER_AL: + *v3_reg = (addr_t)&(info->vm_regs.rax); + *reg_len = 1; + return GPR_REGISTER; + + case QX86_REGISTER_RCX: + *v3_reg = (addr_t)&(info->vm_regs.rcx); + *reg_len = 8; + return GPR_REGISTER; + case QX86_REGISTER_ECX: + *v3_reg = (addr_t)&(info->vm_regs.rcx); + *reg_len = 4; + return GPR_REGISTER; + case QX86_REGISTER_CX: + *v3_reg = (addr_t)&(info->vm_regs.rcx); + *reg_len = 2; + return GPR_REGISTER; + case QX86_REGISTER_CH: + *v3_reg = (addr_t)(&(info->vm_regs.rcx)) + 1; + *reg_len = 1; + return GPR_REGISTER; + case QX86_REGISTER_CL: + *v3_reg = (addr_t)&(info->vm_regs.rcx); + *reg_len = 1; + return GPR_REGISTER; + + case QX86_REGISTER_RDX: + *v3_reg = (addr_t)&(info->vm_regs.rdx); + *reg_len = 8; + return GPR_REGISTER; + case QX86_REGISTER_EDX: + *v3_reg = (addr_t)&(info->vm_regs.rdx); + *reg_len = 4; + return GPR_REGISTER; + case QX86_REGISTER_DX: + *v3_reg = (addr_t)&(info->vm_regs.rdx); + *reg_len = 2; + return GPR_REGISTER; + case QX86_REGISTER_DH: + *v3_reg = (addr_t)(&(info->vm_regs.rdx)) + 1; + *reg_len = 1; + return GPR_REGISTER; + case QX86_REGISTER_DL: + *v3_reg = (addr_t)&(info->vm_regs.rdx); + *reg_len = 1; + return GPR_REGISTER; + + case QX86_REGISTER_RBX: + *v3_reg = (addr_t)&(info->vm_regs.rbx); + *reg_len = 8; + return GPR_REGISTER; + case QX86_REGISTER_EBX: + *v3_reg = (addr_t)&(info->vm_regs.rbx); + *reg_len = 4; + return GPR_REGISTER; + case QX86_REGISTER_BX: + *v3_reg = (addr_t)&(info->vm_regs.rbx); + *reg_len = 2; + return GPR_REGISTER; + case QX86_REGISTER_BH: + *v3_reg = (addr_t)(&(info->vm_regs.rbx)) + 1; + *reg_len = 1; + return GPR_REGISTER; + case QX86_REGISTER_BL: + *v3_reg = (addr_t)&(info->vm_regs.rbx); + *reg_len = 1; + return GPR_REGISTER; + + + case QX86_REGISTER_RSP: + *v3_reg = (addr_t)&(info->vm_regs.rsp); + *reg_len = 8; + return GPR_REGISTER; + case QX86_REGISTER_ESP: + *v3_reg = (addr_t)&(info->vm_regs.rsp); + *reg_len = 4; + return GPR_REGISTER; + case QX86_REGISTER_SP: + *v3_reg = (addr_t)&(info->vm_regs.rsp); + *reg_len = 2; + return GPR_REGISTER; + case QX86_REGISTER_SPL: + *v3_reg = (addr_t)&(info->vm_regs.rsp); + *reg_len = 1; + return GPR_REGISTER; + + case QX86_REGISTER_RBP: + *v3_reg = (addr_t)&(info->vm_regs.rbp); + *reg_len = 8; + return GPR_REGISTER; + case QX86_REGISTER_EBP: + *v3_reg = (addr_t)&(info->vm_regs.rbp); + *reg_len = 4; + return GPR_REGISTER; + case QX86_REGISTER_BP: + *v3_reg = (addr_t)&(info->vm_regs.rbp); + *reg_len = 2; + return GPR_REGISTER; + case QX86_REGISTER_BPL: + *v3_reg = (addr_t)&(info->vm_regs.rbp); + *reg_len = 1; + return GPR_REGISTER; + + + + case QX86_REGISTER_RSI: + *v3_reg = (addr_t)&(info->vm_regs.rsi); + *reg_len = 8; + return GPR_REGISTER; + case QX86_REGISTER_ESI: + *v3_reg = (addr_t)&(info->vm_regs.rsi); + *reg_len = 4; + return GPR_REGISTER; + case QX86_REGISTER_SI: + *v3_reg = (addr_t)&(info->vm_regs.rsi); + *reg_len = 2; + return GPR_REGISTER; + case QX86_REGISTER_SIL: + *v3_reg = (addr_t)&(info->vm_regs.rsi); + *reg_len = 1; + return GPR_REGISTER; + + + case QX86_REGISTER_RDI: + *v3_reg = (addr_t)&(info->vm_regs.rdi); + *reg_len = 8; + return GPR_REGISTER; + case QX86_REGISTER_EDI: + *v3_reg = (addr_t)&(info->vm_regs.rdi); + *reg_len = 4; + return GPR_REGISTER; + case QX86_REGISTER_DI: + *v3_reg = (addr_t)&(info->vm_regs.rdi); + *reg_len = 2; + return GPR_REGISTER; + case QX86_REGISTER_DIL: + *v3_reg = (addr_t)&(info->vm_regs.rdi); + *reg_len = 1; + return GPR_REGISTER; + + + + + + case QX86_REGISTER_R8: + *v3_reg = (addr_t)&(info->vm_regs.r8); + *reg_len = 8; + return GPR_REGISTER; + case QX86_REGISTER_R8D: + *v3_reg = (addr_t)&(info->vm_regs.r8); + *reg_len = 4; + return GPR_REGISTER; + case QX86_REGISTER_R8W: + *v3_reg = (addr_t)&(info->vm_regs.r8); + *reg_len = 2; + return GPR_REGISTER; + case QX86_REGISTER_R8B: + *v3_reg = (addr_t)&(info->vm_regs.r8); + *reg_len = 1; + return GPR_REGISTER; + + case QX86_REGISTER_R9: + *v3_reg = (addr_t)&(info->vm_regs.r9); + *reg_len = 8; + return GPR_REGISTER; + case QX86_REGISTER_R9D: + *v3_reg = (addr_t)&(info->vm_regs.r9); + *reg_len = 4; + return GPR_REGISTER; + case QX86_REGISTER_R9W: + *v3_reg = (addr_t)&(info->vm_regs.r9); + *reg_len = 2; + return GPR_REGISTER; + case QX86_REGISTER_R9B: + *v3_reg = (addr_t)&(info->vm_regs.r9); + *reg_len = 1; + return GPR_REGISTER; + + case QX86_REGISTER_R10: + *v3_reg = (addr_t)&(info->vm_regs.r10); + *reg_len = 8; + return GPR_REGISTER; + case QX86_REGISTER_R10D: + *v3_reg = (addr_t)&(info->vm_regs.r10); + *reg_len = 4; + return GPR_REGISTER; + case QX86_REGISTER_R10W: + *v3_reg = (addr_t)&(info->vm_regs.r10); + *reg_len = 2; + return GPR_REGISTER; + case QX86_REGISTER_R10B: + *v3_reg = (addr_t)&(info->vm_regs.r10); + *reg_len = 1; + return GPR_REGISTER; + + case QX86_REGISTER_R11: + *v3_reg = (addr_t)&(info->vm_regs.r11); + *reg_len = 8; + return GPR_REGISTER; + case QX86_REGISTER_R11D: + *v3_reg = (addr_t)&(info->vm_regs.r11); + *reg_len = 4; + return GPR_REGISTER; + case QX86_REGISTER_R11W: + *v3_reg = (addr_t)&(info->vm_regs.r11); + *reg_len = 2; + return GPR_REGISTER; + case QX86_REGISTER_R11B: + *v3_reg = (addr_t)&(info->vm_regs.r11); + *reg_len = 1; + return GPR_REGISTER; + + case QX86_REGISTER_R12: + *v3_reg = (addr_t)&(info->vm_regs.r12); + *reg_len = 8; + return GPR_REGISTER; + case QX86_REGISTER_R12D: + *v3_reg = (addr_t)&(info->vm_regs.r12); + *reg_len = 4; + return GPR_REGISTER; + case QX86_REGISTER_R12W: + *v3_reg = (addr_t)&(info->vm_regs.r12); + *reg_len = 2; + return GPR_REGISTER; + case QX86_REGISTER_R12B: + *v3_reg = (addr_t)&(info->vm_regs.r12); + *reg_len = 1; + return GPR_REGISTER; + + case QX86_REGISTER_R13: + *v3_reg = (addr_t)&(info->vm_regs.r13); + *reg_len = 8; + return GPR_REGISTER; + case QX86_REGISTER_R13D: + *v3_reg = (addr_t)&(info->vm_regs.r13); + *reg_len = 4; + return GPR_REGISTER; + case QX86_REGISTER_R13W: + *v3_reg = (addr_t)&(info->vm_regs.r13); + *reg_len = 2; + return GPR_REGISTER; + case QX86_REGISTER_R13B: + *v3_reg = (addr_t)&(info->vm_regs.r13); + *reg_len = 1; + return GPR_REGISTER; + + case QX86_REGISTER_R14: + *v3_reg = (addr_t)&(info->vm_regs.r14); + *reg_len = 8; + return GPR_REGISTER; + case QX86_REGISTER_R14D: + *v3_reg = (addr_t)&(info->vm_regs.r14); + *reg_len = 4; + return GPR_REGISTER; + case QX86_REGISTER_R14W: + *v3_reg = (addr_t)&(info->vm_regs.r14); + *reg_len = 2; + return GPR_REGISTER; + case QX86_REGISTER_R14B: + *v3_reg = (addr_t)&(info->vm_regs.r14); + *reg_len = 1; + return GPR_REGISTER; + + case QX86_REGISTER_R15: + *v3_reg = (addr_t)&(info->vm_regs.r15); + *reg_len = 8; + return GPR_REGISTER; + case QX86_REGISTER_R15D: + *v3_reg = (addr_t)&(info->vm_regs.r15); + *reg_len = 4; + return GPR_REGISTER; + case QX86_REGISTER_R15W: + *v3_reg = (addr_t)&(info->vm_regs.r15); + *reg_len = 2; + return GPR_REGISTER; + case QX86_REGISTER_R15B: + *v3_reg = (addr_t)&(info->vm_regs.r15); + *reg_len = 1; + return GPR_REGISTER; + + + /* + * CTRL REGS + */ + case QX86_REGISTER_RIP: + *v3_reg = (addr_t)&(info->rip); + *reg_len = 8; + return CTRL_REGISTER; + case QX86_REGISTER_EIP: + *v3_reg = (addr_t)&(info->rip); + *reg_len = 4; + return CTRL_REGISTER; + case QX86_REGISTER_IP: + *v3_reg = (addr_t)&(info->rip); + *reg_len = 2; + return CTRL_REGISTER; + + case QX86_REGISTER_FLAGS: + *v3_reg = (addr_t)&(info->ctrl_regs.rflags); + *reg_len = 2; + return CTRL_REGISTER; + case QX86_REGISTER_EFLAGS: + *v3_reg = (addr_t)&(info->ctrl_regs.rflags); + *reg_len = 4; + return CTRL_REGISTER; + case QX86_REGISTER_RFLAGS: + *v3_reg = (addr_t)&(info->ctrl_regs.rflags); + *reg_len = 8; + return CTRL_REGISTER; + + case QX86_REGISTER_CR0: + *v3_reg = (addr_t)&(info->ctrl_regs.cr0); + *reg_len = 4; + return CTRL_REGISTER; + case QX86_REGISTER_CR2: + *v3_reg = (addr_t)&(info->ctrl_regs.cr2); + *reg_len = 4; + return CTRL_REGISTER; + case QX86_REGISTER_CR3: + *v3_reg = (addr_t)&(info->ctrl_regs.cr3); + *reg_len = 4; + return CTRL_REGISTER; + case QX86_REGISTER_CR4: + *v3_reg = (addr_t)&(info->ctrl_regs.cr4); + *reg_len = 4; + return CTRL_REGISTER; + case QX86_REGISTER_CR8: + *v3_reg = (addr_t)&(info->ctrl_regs.cr8); + *reg_len = 4; + return CTRL_REGISTER; + + case QX86_REGISTER_CR1: + case QX86_REGISTER_CR5: + case QX86_REGISTER_CR6: + case QX86_REGISTER_CR7: + case QX86_REGISTER_CR9: + case QX86_REGISTER_CR10: + case QX86_REGISTER_CR11: + case QX86_REGISTER_CR12: + case QX86_REGISTER_CR13: + case QX86_REGISTER_CR14: + case QX86_REGISTER_CR15: + return -1; + + + /* + * SEGMENT REGS + */ + case QX86_REGISTER_CS: + *v3_reg = (addr_t)&(info->segments.cs); + *reg_len = 8; + return SEGMENT_REGISTER; + case QX86_REGISTER_DS: + *v3_reg = (addr_t)&(info->segments.ds); + *reg_len = 8; + return SEGMENT_REGISTER; + case QX86_REGISTER_ES: + *v3_reg = (addr_t)&(info->segments.es); + *reg_len = 8; + return SEGMENT_REGISTER; + case QX86_REGISTER_SS: + *v3_reg = (addr_t)&(info->segments.ss); + *reg_len = 8; + return SEGMENT_REGISTER; + case QX86_REGISTER_FS: + *v3_reg = (addr_t)&(info->segments.fs); + *reg_len = 8; + return SEGMENT_REGISTER; + case QX86_REGISTER_GS: + *v3_reg = (addr_t)&(info->segments.gs); + *reg_len = 8; + return SEGMENT_REGISTER; + + case QX86_REGISTER_DR0: + case QX86_REGISTER_DR1: + case QX86_REGISTER_DR2: + case QX86_REGISTER_DR3: + case QX86_REGISTER_DR4: + case QX86_REGISTER_DR5: + case QX86_REGISTER_DR6: + case QX86_REGISTER_DR7: + case QX86_REGISTER_DR8: + case QX86_REGISTER_DR9: + case QX86_REGISTER_DR10: + case QX86_REGISTER_DR11: + case QX86_REGISTER_DR12: + case QX86_REGISTER_DR13: + case QX86_REGISTER_DR14: + case QX86_REGISTER_DR15: + return -1; + + + + + + + case QX86_REGISTER_XMM0: + case QX86_REGISTER_XMM1: + case QX86_REGISTER_XMM2: + case QX86_REGISTER_XMM3: + case QX86_REGISTER_XMM4: + case QX86_REGISTER_XMM5: + case QX86_REGISTER_XMM6: + case QX86_REGISTER_XMM7: + case QX86_REGISTER_XMM8: + case QX86_REGISTER_XMM9: + case QX86_REGISTER_XMM10: + case QX86_REGISTER_XMM11: + case QX86_REGISTER_XMM12: + case QX86_REGISTER_XMM13: + case QX86_REGISTER_XMM14: + case QX86_REGISTER_XMM15: + + case QX86_REGISTER_YMM0: + case QX86_REGISTER_YMM1: + case QX86_REGISTER_YMM2: + case QX86_REGISTER_YMM3: + case QX86_REGISTER_YMM4: + case QX86_REGISTER_YMM5: + case QX86_REGISTER_YMM6: + case QX86_REGISTER_YMM7: + case QX86_REGISTER_YMM8: + case QX86_REGISTER_YMM9: + case QX86_REGISTER_YMM10: + case QX86_REGISTER_YMM11: + case QX86_REGISTER_YMM12: + case QX86_REGISTER_YMM13: + case QX86_REGISTER_YMM14: + case QX86_REGISTER_YMM15: + + case QX86_REGISTER_MMX0: + case QX86_REGISTER_MMX1: + case QX86_REGISTER_MMX2: + case QX86_REGISTER_MMX3: + case QX86_REGISTER_MMX4: + case QX86_REGISTER_MMX5: + case QX86_REGISTER_MMX6: + case QX86_REGISTER_MMX7: + + case QX86_REGISTER_ST0: + case QX86_REGISTER_ST1: + case QX86_REGISTER_ST2: + case QX86_REGISTER_ST3: + case QX86_REGISTER_ST4: + case QX86_REGISTER_ST5: + case QX86_REGISTER_ST6: + case QX86_REGISTER_ST7: + // error?? + return -1; + + } + + + return 0; +} +