instab.c

来自「开放源码的编译器open watcom 1.6.0版的源代码」· C语言 代码 · 共 407 行 · 第 1/2 页

C
407
字号
    I_TEST,     OT_ACCUM_IMMED,         /* a9 */
    I_STOSB,    OT_ES_DI,               /* aa */
    I_STOSW,    OT_ES_DI,               /* ab */
    I_LODSB,    OT_DS_SI,               /* ac */
    I_LODSW,    OT_DS_SI,               /* ad */
    I_SCASB,    OT_ES_DI,               /* ae */
    I_SCASW,    OT_ES_DI,               /* af */
    I_MOV,      OT_REG8_IMMED,          /* b0 */
    I_MOV,      OT_REG8_IMMED,          /* b1 */
    I_MOV,      OT_REG8_IMMED,          /* b2 */
    I_MOV,      OT_REG8_IMMED,          /* b3 */
    I_MOV,      OT_REG8_IMMED,          /* b4 */
    I_MOV,      OT_REG8_IMMED,          /* b5 */
    I_MOV,      OT_REG8_IMMED,          /* b6 */
    I_MOV,      OT_REG8_IMMED,          /* b7 */
    I_MOV,      OT_REG16_IMMED,         /* b8 */
    I_MOV,      OT_REG16_IMMED,         /* b9 */
    I_MOV,      OT_REG16_IMMED,         /* ba */
    I_MOV,      OT_REG16_IMMED,         /* bb */
    I_MOV,      OT_REG16_IMMED,         /* bc */
    I_MOV,      OT_REG16_IMMED,         /* bd */
    I_MOV,      OT_REG16_IMMED,         /* be */
    I_MOV,      OT_REG16_IMMED,         /* bf */
    I_SHIFT,    OT_MEM_IMMED8,          /* c0 (186) */
    I_SHIFT,    OT_MEM_IMMED8,          /* c1 (186) */
    I_RET,      OT_IMMED_WORD,          /* c2 */
    I_RET,      OT_NULL,                /* c3 */
    I_LES,      OT_MOD_REG,             /* c4 */
    I_LDS,      OT_MOD_REG,             /* c5 */
    I_MOV,      OT_MEM_IMMED8,          /* c6 */
    I_MOV,      OT_MEM_IMMED16,         /* c7 */
    I_ENTER,    OT_ENTER,               /* c8 (186) */
    I_LEAVE,    OT_NULL,                /* c9 (186) */
    I_RET_FAR,  OT_IMMED_WORD,          /* ca */
    I_RET_FAR,  OT_NULL,                /* cb */
    I_INT,      OT_THREE,               /* cc */
    I_INT,      OT_IMMED8,              /* cd */
    I_INTO,     OT_NULL,                /* ce */
    I_IRET,     OT_NULL,                /* cf */
    I_SHIFT,    OT_RM_1,                /* d0 */
    I_SHIFT,    OT_RM_1,                /* d1 */
    I_SHIFT,    OT_RM_CL,               /* d2 */
    I_SHIFT,    OT_RM_CL,               /* d3 */
    I_AAM,      OT_EXTRA,                /* d4 */
    I_AAD,      OT_EXTRA,                /* d5 */
    I_INVALID,  OT_NULL,                /* d6 */
    I_XLAT,     OT_NULL,                /* d7 */
    I_ESC,      OT_ESC,                 /* d8 */
    I_ESC,      OT_ESC,                 /* d9 */
    I_ESC,      OT_ESC,                 /* da */
    I_ESC,      OT_ESC,                 /* db */
    I_ESC,      OT_ESC,                 /* dc */
    I_ESC,      OT_ESC,                 /* dd */
    I_ESC,      OT_ESC,                 /* de */
    I_ESC,      OT_ESC,                 /* df */
    I_LOOPNE,   OT_IP_INC8,             /* e0 */
    I_LOOPE,    OT_IP_INC8,             /* e1 */
    I_LOOP,     OT_IP_INC8,             /* e2 */
    I_JCXZ,     OT_IP_INC8,             /* e3 */
    I_IN,       OT_ACCUM_IMMED8,        /* e4 */
    I_IN,       OT_ACCUM_IMMED8,        /* e5 */
    I_OUT,      OT_IMMED8_ACCUM,        /* e6 */
    I_OUT,      OT_IMMED8_ACCUM,        /* e7 */
    I_CALL,     OT_IP_INC16,            /* e8 */
    I_JMP,      OT_IP_INC16,            /* e9 */
    I_JMP_FAR,  OT_SEG_ADDR,            /* ea */
    I_JMP,      OT_IP_INC8,             /* eb */
    I_IN,       OT_ACCUM_DX,            /* ec */
    I_IN,       OT_ACCUM_DX,            /* ed */
    I_OUT,      OT_DX_ACCUM,            /* ee */
    I_OUT,      OT_DX_ACCUM,            /* ef */
    I_LOCK,     OT_PREFIX,              /* f0 */
    I_INVALID,  OT_NULL,                /* f1 */
    I_REPNE,    OT_PREFIX,              /* f2 */
    I_REPE,     OT_PREFIX,              /* f3 */
    I_HALT,     OT_NULL,                /* f4 */
    I_CMC,      OT_NULL,                /* f5 */
    I_GROUP1,   OT_RM_TEST,             /* f6 */
    I_GROUP1,   OT_RM_TEST,             /* f7 */
    I_CLC,      OT_NULL,                /* f8 */
    I_STC,      OT_NULL,                /* f9 */
    I_CLI,      OT_NULL,                /* fa */
    I_STI,      OT_NULL,                /* fb */
    I_CLD,      OT_NULL,                /* fc */
    I_STD,      OT_NULL,                /* fd */
    I_GROUP2,   OT_RM,                  /* fe */
    I_GROUP3,   OT_RM                   /* ff */
};

op_desc  const                S4xInsTab[] = {
    I_CMOVO,       OT_CC_MODRM,             /* 0 */
    I_CMOVNO,      OT_CC_MODRM,             /* 1 */
    I_CMOVB,       OT_CC_MODRM,             /* 2 */
    I_CMOVAE,      OT_CC_MODRM,             /* 3 */
    I_CMOVE,       OT_CC_MODRM,             /* 4 */
    I_CMOVNE,      OT_CC_MODRM,             /* 5 */
    I_CMOVBE,      OT_CC_MODRM,             /* 6 */
    I_CMOVA,       OT_CC_MODRM,             /* 7 */
    I_CMOVS,       OT_CC_MODRM,             /* 8 */
    I_CMOVNS,      OT_CC_MODRM,             /* 9 */
    I_CMOVP,       OT_CC_MODRM,             /* a */
    I_CMOVPO,      OT_CC_MODRM,             /* b */
    I_CMOVL,       OT_CC_MODRM,             /* c */
    I_CMOVGE,      OT_CC_MODRM,             /* d */
    I_CMOVLE,      OT_CC_MODRM,             /* e */
    I_CMOVG,       OT_CC_MODRM,             /* f */
};

op_desc  const                S6xInsTab[] = {
    I_PUNPCKLBW,        OT_MM_MODRM,    /* 0 */
    I_PUNPCKLWD,        OT_MM_MODRM,    /* 1 */
    I_PUNPCKLDQ,        OT_MM_MODRM,    /* 2 */
    I_PACKSSWB,         OT_MM_MODRM,    /* 3 */
    I_PCMPGTB,          OT_MM_MODRM,    /* 4 */
    I_PCMPGTW,          OT_MM_MODRM,    /* 5 */
    I_PCMPGTD,          OT_MM_MODRM,    /* 6 */
    I_PACKUSWB,         OT_MM_MODRM,    /* 7 */
    I_PUNPCKHBW,        OT_MM_MODRM,    /* 8 */
    I_PUNPCKHWD,        OT_MM_MODRM,    /* 9 */
    I_PUNPCKHDQ,        OT_MM_MODRM,    /* a */
    I_PACKSSDW,         OT_MM_MODRM,    /* b */
    I_INVALID,          OT_NULL,        /* c */
    I_INVALID,          OT_NULL,        /* d */
    I_MOVD,             OT_MM_MODRM,    /* e */
    I_MOVQ,             OT_MM_MODRM,    /* f */
};

op_desc  const                S7xInsTab[] = {
    I_INVALID,          OT_NULL,        /* 0 */
    I_PSLLW,            OT_MM_IMMED8,   /* 1 */ //NYI
    I_PSLLD,            OT_MM_IMMED8,   /* 2 */ //NYI
    I_PSLLQ,            OT_MM_IMMED8,   /* 3 */ //NYI
    I_PCMPEQB,          OT_MM_MODRM,    /* 4 */
    I_PCMPEQW,          OT_MM_MODRM,    /* 5 */
    I_PCMPEQD,          OT_MM_MODRM,    /* 6 */
    I_EMMS,             OT_NULL,        /* 7 */
    I_INVALID,          OT_NULL,        /* 8 */
    I_INVALID,          OT_NULL,        /* 9 */
    I_INVALID,          OT_NULL,        /* a */
    I_INVALID,          OT_NULL,        /* b */
    I_INVALID,          OT_NULL,        /* c */
    I_INVALID,          OT_NULL,        /* d */
    I_MOVD,             OT_MODRM_MM,    /* e */
    I_MOVQ,             OT_MODRM_MM,    /* f */
};

op_desc  const                SDxInsTab[] = {
    I_INVALID,          OT_NULL,        /* 0 */
    I_PSRLW,            OT_MM_MODRM,    /* 1 */
    I_PSRLD,            OT_MM_MODRM,    /* 2 */
    I_PSRLQ,            OT_MM_MODRM,    /* 3 */
    I_INVALID,          OT_NULL,        /* 4 */
    I_PMULLW,           OT_MM_MODRM,    /* 5 */
    I_INVALID,          OT_NULL,        /* 6 */
    I_INVALID,          OT_NULL,        /* 7 */
    I_PSUBUSB,          OT_MM_MODRM,    /* 8 */
    I_PSUBUSW,          OT_MM_MODRM,    /* 9 */
    I_INVALID,          OT_NULL,        /* a */
    I_PAND,             OT_MM_MODRM,    /* b */
    I_PADDUSB,          OT_MM_MODRM,    /* c */
    I_PADDUSW,          OT_MM_MODRM,    /* d */
    I_INVALID,          OT_NULL,        /* e */
    I_PANDN,            OT_MM_MODRM,    /* f */
};

op_desc  const                SExInsTab[] = {
    I_INVALID,          OT_NULL,        /* 0 */
    I_PSRAW,            OT_MM_MODRM,    /* 1 */
    I_PSRAD,            OT_MM_MODRM,    /* 2 */
    I_INVALID,          OT_NULL,        /* 3 */
    I_INVALID,          OT_NULL,        /* 4 */
    I_PMULHW,           OT_MM_MODRM,    /* 5 */
    I_INVALID,          OT_NULL,        /* 6 */
    I_INVALID,          OT_NULL,        /* 7 */
    I_PSUBSB,           OT_MM_MODRM,    /* 8 */
    I_PSUBSW,           OT_MM_MODRM,    /* 9 */
    I_INVALID,          OT_NULL,        /* a */
    I_POR,              OT_MM_MODRM,    /* b */
    I_PADDSB,           OT_MM_MODRM,    /* c */
    I_PADDSW,           OT_MM_MODRM,    /* d */
    I_INVALID,          OT_NULL,        /* e */
    I_PXOR,             OT_MM_MODRM,    /* f */
};

op_desc  const                SFxInsTab[] = {
    I_INVALID,          OT_NULL,        /* 0 */
    I_PSLLW,            OT_MM_MODRM,    /* 1 */
    I_PSLLD,            OT_MM_MODRM,    /* 2 */
    I_PSLLQ,            OT_MM_MODRM,    /* 3 */
    I_INVALID,          OT_NULL,        /* 4 */
    I_PMADDWD,          OT_MM_MODRM,    /* 5 */
    I_INVALID,          OT_NULL,        /* 6 */
    I_INVALID,          OT_NULL,        /* 7 */
    I_PSUBB,            OT_MM_MODRM,    /* 8 */
    I_PSUBW,            OT_MM_MODRM,    /* 9 */
    I_PSUBD,            OT_MM_MODRM,    /* a */
    I_INVALID,          OT_NULL,        /* b */
    I_PADDB,            OT_MM_MODRM,    /* c */
    I_PADDW,            OT_MM_MODRM,    /* d */
    I_PADDD,            OT_MM_MODRM,    /* e */
    I_INVALID,          OT_NULL,        /* f */
};

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?