mirror of
https://github.com/capstone-engine/capstone.git
synced 2024-12-14 08:59:18 +00:00
Merge branch 'next' of https://github.com/aquynh/capstone into python
This commit is contained in:
commit
f601fddc53
@ -955,8 +955,7 @@ static void printAddrModeTBH(MCInst *MI, unsigned Op, SStream *O)
|
||||
MI->flat_insn->detail->arm.operands[MI->flat_insn->detail->arm.op_count].mem.index = MCOperand_getReg(MO2);
|
||||
SStream_concat0(O, ", lsl #1]");
|
||||
if (MI->csh->detail) {
|
||||
MI->flat_insn->detail->arm.operands[MI->flat_insn->detail->arm.op_count].shift.type = ARM_SFT_LSL;
|
||||
MI->flat_insn->detail->arm.operands[MI->flat_insn->detail->arm.op_count].shift.value = 1;
|
||||
MI->flat_insn->detail->arm.operands[MI->flat_insn->detail->arm.op_count].mem.lshift = 1;
|
||||
}
|
||||
set_mem_access(MI, false);
|
||||
}
|
||||
@ -2091,8 +2090,7 @@ static void printT2AddrModeSoRegOperand(MCInst *MI,
|
||||
SStream_concat0(O, ", lsl ");
|
||||
SStream_concat(O, "#%d", ShAmt);
|
||||
if (MI->csh->detail) {
|
||||
MI->flat_insn->detail->arm.operands[MI->flat_insn->detail->arm.op_count - 1].shift.type = ARM_SFT_LSL;
|
||||
MI->flat_insn->detail->arm.operands[MI->flat_insn->detail->arm.op_count - 1].shift.value = ShAmt;
|
||||
MI->flat_insn->detail->arm.operands[MI->flat_insn->detail->arm.op_count].mem.lshift = ShAmt;
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -153,14 +153,6 @@ static void printSSECC(MCInst *MI, unsigned Op, SStream *OS)
|
||||
case 5: SStream_concat0(OS, "nlt"); op_addSseCC(MI, X86_SSE_CC_NLT); break;
|
||||
case 6: SStream_concat0(OS, "nle"); op_addSseCC(MI, X86_SSE_CC_NLE); break;
|
||||
case 7: SStream_concat0(OS, "ord"); op_addSseCC(MI, X86_SSE_CC_ORD); break;
|
||||
case 8: SStream_concat0(OS, "eq_uq"); op_addSseCC(MI, X86_SSE_CC_EQ_UQ); break;
|
||||
case 9: SStream_concat0(OS, "nge"); op_addSseCC(MI, X86_SSE_CC_NGE); break;
|
||||
case 0xa: SStream_concat0(OS, "ngt"); op_addSseCC(MI, X86_SSE_CC_NGT); break;
|
||||
case 0xb: SStream_concat0(OS, "false"); op_addSseCC(MI, X86_SSE_CC_FALSE); break;
|
||||
case 0xc: SStream_concat0(OS, "neq_oq"); op_addSseCC(MI, X86_SSE_CC_NEQ_OQ); break;
|
||||
case 0xd: SStream_concat0(OS, "ge"); op_addSseCC(MI, X86_SSE_CC_GE); break;
|
||||
case 0xe: SStream_concat0(OS, "gt"); op_addSseCC(MI, X86_SSE_CC_GT); break;
|
||||
case 0xf: SStream_concat0(OS, "true"); op_addSseCC(MI, X86_SSE_CC_TRUE); break;
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -1640,8 +1640,6 @@ static int readModRM(struct InternalInstruction *insn)
|
||||
case TYPE_SEGMENTREG: \
|
||||
return prefix##_ES + (index & 7); \
|
||||
case TYPE_DEBUGREG: \
|
||||
if (index > 7) \
|
||||
*valid = 0; \
|
||||
return prefix##_DR0 + index; \
|
||||
case TYPE_CONTROLREG: \
|
||||
return prefix##_CR0 + index; \
|
||||
@ -1874,7 +1872,7 @@ static int readMaskRegister(struct InternalInstruction *insn)
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
|
||||
/*
|
||||
* readOperands - Consults the specifier for an instruction and consumes all
|
||||
* operands for that instruction, interpreting them as it goes.
|
||||
@ -1888,7 +1886,7 @@ static int readOperands(struct InternalInstruction *insn)
|
||||
int hasVVVV, needVVVV;
|
||||
int sawRegImm = 0;
|
||||
|
||||
// printf(">>> readOperands()\n");
|
||||
// printf(">>> readOperands(): ID = %u\n", insn->instructionID);
|
||||
/* If non-zero vvvv specified, need to make sure one of the operands
|
||||
uses it. */
|
||||
hasVVVV = !readVVVV(insn);
|
||||
@ -2031,6 +2029,7 @@ static bool invalidPrefix(struct InternalInstruction *insn)
|
||||
case X86_ADC64mi8:
|
||||
case X86_ADC64mr:
|
||||
case X86_ADC8mi:
|
||||
case X86_ADC8mi8:
|
||||
case X86_ADC8mr:
|
||||
|
||||
// ADD
|
||||
@ -2043,6 +2042,7 @@ static bool invalidPrefix(struct InternalInstruction *insn)
|
||||
case X86_ADD64mi32:
|
||||
case X86_ADD64mi8:
|
||||
case X86_ADD64mr:
|
||||
case X86_ADD82_8mi8:
|
||||
case X86_ADD8mi:
|
||||
case X86_ADD8mr:
|
||||
|
||||
@ -2056,6 +2056,7 @@ static bool invalidPrefix(struct InternalInstruction *insn)
|
||||
case X86_AND64mi32:
|
||||
case X86_AND64mi8:
|
||||
case X86_AND64mr:
|
||||
case X86_AND82_8mi8:
|
||||
case X86_AND8mi:
|
||||
case X86_AND8mr:
|
||||
|
||||
@ -2121,6 +2122,7 @@ static bool invalidPrefix(struct InternalInstruction *insn)
|
||||
case X86_OR64mi32:
|
||||
case X86_OR64mi8:
|
||||
case X86_OR64mr:
|
||||
case X86_OR82_8mi8:
|
||||
case X86_OR8mi:
|
||||
case X86_OR8mr:
|
||||
|
||||
@ -2135,6 +2137,7 @@ static bool invalidPrefix(struct InternalInstruction *insn)
|
||||
case X86_SBB64mi8:
|
||||
case X86_SBB64mr:
|
||||
case X86_SBB8mi:
|
||||
case X86_SBB8mi8:
|
||||
case X86_SBB8mr:
|
||||
|
||||
// SUB
|
||||
@ -2147,6 +2150,7 @@ static bool invalidPrefix(struct InternalInstruction *insn)
|
||||
case X86_SUB64mi32:
|
||||
case X86_SUB64mi8:
|
||||
case X86_SUB64mr:
|
||||
case X86_SUB82_8mi8:
|
||||
case X86_SUB8mi:
|
||||
case X86_SUB8mr:
|
||||
|
||||
@ -2172,6 +2176,7 @@ static bool invalidPrefix(struct InternalInstruction *insn)
|
||||
case X86_XOR64mi32:
|
||||
case X86_XOR64mi8:
|
||||
case X86_XOR64mr:
|
||||
case X86_XOR82_8mi8:
|
||||
case X86_XOR8mi:
|
||||
case X86_XOR8mr:
|
||||
|
||||
|
@ -350,7 +350,15 @@
|
||||
ENTRY(DR4) \
|
||||
ENTRY(DR5) \
|
||||
ENTRY(DR6) \
|
||||
ENTRY(DR7)
|
||||
ENTRY(DR7) \
|
||||
ENTRY(DR8) \
|
||||
ENTRY(DR9) \
|
||||
ENTRY(DR10) \
|
||||
ENTRY(DR11) \
|
||||
ENTRY(DR12) \
|
||||
ENTRY(DR13) \
|
||||
ENTRY(DR14) \
|
||||
ENTRY(DR15)
|
||||
|
||||
#define REGS_CONTROL \
|
||||
ENTRY(CR0) \
|
||||
|
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
@ -7,7 +7,7 @@
|
||||
\*===----------------------------------------------------------------------===*/
|
||||
|
||||
/* Capstone Disassembly Engine, http://www.capstone-engine.org */
|
||||
/* By Nguyen Anh Quynh <aquynh@gmail.com>, 2013-2014 */
|
||||
/* By Nguyen Anh Quynh <aquynh@gmail.com>, 2013-2015 */
|
||||
|
||||
/// printInstruction - This method is automatically generated by tablegen
|
||||
/// from the instruction set description.
|
||||
@ -69,8 +69,10 @@ static void printInstruction(MCInst *MI, SStream *O, MCRegisterInfo *MRI)
|
||||
8532099U, // ADC64rm
|
||||
2240643U, // ADC64rr
|
||||
2232451U, // ADC64rr_REV
|
||||
2240643U, // ADC82_8ri8
|
||||
5384U, // ADC8i8
|
||||
155779U, // ADC8mi
|
||||
155779U, // ADC8mi8
|
||||
155779U, // ADC8mr
|
||||
2240643U, // ADC8ri
|
||||
10629251U, // ADC8rm
|
||||
@ -116,11 +118,12 @@ static void printInstruction(MCInst *MI, SStream *O, MCRegisterInfo *MRI)
|
||||
2240699U, // ADD64rr
|
||||
0U, // ADD64rr_DB
|
||||
2232507U, // ADD64rr_REV
|
||||
155835U, // ADD82_8mi8
|
||||
2240699U, // ADD82_8ri8
|
||||
5393U, // ADD8i8
|
||||
155835U, // ADD8mi
|
||||
155835U, // ADD8mr
|
||||
2240699U, // ADD8ri
|
||||
2240699U, // ADD8ri8
|
||||
10629307U, // ADD8rm
|
||||
2240699U, // ADD8rr
|
||||
2232507U, // ADD8rr_REV
|
||||
@ -159,11 +162,12 @@ static void printInstruction(MCInst *MI, SStream *O, MCRegisterInfo *MRI)
|
||||
8532204U, // AND64rm
|
||||
2240748U, // AND64rr
|
||||
2232556U, // AND64rr_REV
|
||||
155884U, // AND82_8mi8
|
||||
2240748U, // AND82_8ri8
|
||||
5402U, // AND8i8
|
||||
155884U, // AND8mi
|
||||
155884U, // AND8mr
|
||||
2240748U, // AND8ri
|
||||
2240748U, // AND8ri8
|
||||
10629356U, // AND8rm
|
||||
2240748U, // AND8rr
|
||||
2232556U, // AND8rr_REV
|
||||
@ -448,8 +452,10 @@ static void printInstruction(MCInst *MI, SStream *O, MCRegisterInfo *MRI)
|
||||
16913109U, // CMP64rm
|
||||
14815957U, // CMP64rr
|
||||
14815957U, // CMP64rr_REV
|
||||
14815957U, // CMP82_8ri8
|
||||
5419U, // CMP8i8
|
||||
156373U, // CMP8mi
|
||||
156373U, // CMP8mi8
|
||||
156373U, // CMP8mr
|
||||
14815957U, // CMP8ri
|
||||
21107413U, // CMP8rm
|
||||
@ -889,6 +895,7 @@ static void printInstruction(MCInst *MI, SStream *O, MCRegisterInfo *MRI)
|
||||
14815513U, // MOVSX64_NOREXrr32
|
||||
19010750U, // MOVSX64rm16
|
||||
12718361U, // MOVSX64rm32
|
||||
12718361U, // MOVSX64rm32_alt
|
||||
21107902U, // MOVSX64rm8
|
||||
14816446U, // MOVSX64rr16
|
||||
14815513U, // MOVSX64rr32
|
||||
@ -993,11 +1000,12 @@ static void printInstruction(MCInst *MI, SStream *O, MCRegisterInfo *MRI)
|
||||
8532834U, // OR64rm
|
||||
2241378U, // OR64rr
|
||||
2233186U, // OR64rr_REV
|
||||
156514U, // OR82_8mi8
|
||||
2241378U, // OR82_8ri8
|
||||
5429U, // OR8i8
|
||||
156514U, // OR8mi
|
||||
156514U, // OR8mr
|
||||
2241378U, // OR8ri
|
||||
2241378U, // OR8ri8
|
||||
10629986U, // OR8rm
|
||||
2241378U, // OR8rr
|
||||
2233186U, // OR8rr_REV
|
||||
@ -1302,8 +1310,10 @@ static void printInstruction(MCInst *MI, SStream *O, MCRegisterInfo *MRI)
|
||||
8532045U, // SBB64rm
|
||||
2240589U, // SBB64rr
|
||||
2232397U, // SBB64rr_REV
|
||||
2240589U, // SBB82_8ri8
|
||||
5344U, // SBB8i8
|
||||
155725U, // SBB8mi
|
||||
155725U, // SBB8mi8
|
||||
155725U, // SBB8mr
|
||||
2240589U, // SBB8ri
|
||||
10629197U, // SBB8rm
|
||||
@ -1495,11 +1505,12 @@ static void printInstruction(MCInst *MI, SStream *O, MCRegisterInfo *MRI)
|
||||
8532087U, // SUB64rm
|
||||
2240631U, // SUB64rr
|
||||
2232439U, // SUB64rr_REV
|
||||
155767U, // SUB82_8mi8
|
||||
2240631U, // SUB82_8ri8
|
||||
5375U, // SUB8i8
|
||||
155767U, // SUB8mi
|
||||
155767U, // SUB8mr
|
||||
2240631U, // SUB8ri
|
||||
2240631U, // SUB8ri8
|
||||
10629239U, // SUB8rm
|
||||
2240631U, // SUB8rr
|
||||
2232439U, // SUB8rr_REV
|
||||
@ -1667,11 +1678,12 @@ static void printInstruction(MCInst *MI, SStream *O, MCRegisterInfo *MRI)
|
||||
8532846U, // XOR64rm
|
||||
2241390U, // XOR64rr
|
||||
2233198U, // XOR64rr_REV
|
||||
156526U, // XOR82_8mi8
|
||||
2241390U, // XOR82_8ri8
|
||||
5428U, // XOR8i8
|
||||
156526U, // XOR8mi
|
||||
156526U, // XOR8mr
|
||||
2241390U, // XOR8ri
|
||||
2241390U, // XOR8ri8
|
||||
10629998U, // XOR8rm
|
||||
2241390U, // XOR8rr
|
||||
2233198U, // XOR8rr_REV
|
||||
@ -2146,7 +2158,7 @@ static void printInstruction(MCInst *MI, SStream *O, MCRegisterInfo *MRI)
|
||||
printi64mem(MI, 0, O);
|
||||
break;
|
||||
case 6:
|
||||
// ADC8mi, ADC8mr, ADD8mi, ADD8mr, AND8mi, AND8mr, CMP8mi, CMP8mr, CMPXCH...
|
||||
// ADC8mi, ADC8mi8, ADC8mr, ADD82_8mi8, ADD8mi, ADD8mr, AND82_8mi8, AND8m...
|
||||
printi8mem(MI, 0, O);
|
||||
break;
|
||||
case 7:
|
||||
@ -2515,7 +2527,7 @@ static void printInstruction(MCInst *MI, SStream *O, MCRegisterInfo *MRI)
|
||||
/// for the specified register.
|
||||
static char *getRegisterName(unsigned RegNo)
|
||||
{
|
||||
// assert(RegNo && RegNo < 234 && "Invalid register number!");
|
||||
// assert(RegNo && RegNo < 242 && "Invalid register number!");
|
||||
|
||||
#ifndef CAPSTONE_DIET
|
||||
static char AsmStrs[] = {
|
||||
@ -2531,221 +2543,230 @@ static char *getRegisterName(unsigned RegNo)
|
||||
/* 54 */ 'y', 'm', 'm', '1', '0', 0,
|
||||
/* 60 */ 'z', 'm', 'm', '1', '0', 0,
|
||||
/* 66 */ 'c', 'r', '1', '0', 0,
|
||||
/* 71 */ 'x', 'm', 'm', '2', '0', 0,
|
||||
/* 77 */ 'y', 'm', 'm', '2', '0', 0,
|
||||
/* 83 */ 'z', 'm', 'm', '2', '0', 0,
|
||||
/* 89 */ 'x', 'm', 'm', '3', '0', 0,
|
||||
/* 95 */ 'y', 'm', 'm', '3', '0', 0,
|
||||
/* 101 */ 'z', 'm', 'm', '3', '0', 0,
|
||||
/* 107 */ 'k', '0', 0,
|
||||
/* 110 */ 'x', 'm', 'm', '0', 0,
|
||||
/* 115 */ 'y', 'm', 'm', '0', 0,
|
||||
/* 120 */ 'z', 'm', 'm', '0', 0,
|
||||
/* 125 */ 'f', 'p', '0', 0,
|
||||
/* 129 */ 'c', 'r', '0', 0,
|
||||
/* 133 */ 'd', 'r', '0', 0,
|
||||
/* 137 */ 'x', 'm', 'm', '1', '1', 0,
|
||||
/* 143 */ 'y', 'm', 'm', '1', '1', 0,
|
||||
/* 149 */ 'z', 'm', 'm', '1', '1', 0,
|
||||
/* 155 */ 'c', 'r', '1', '1', 0,
|
||||
/* 160 */ 'x', 'm', 'm', '2', '1', 0,
|
||||
/* 166 */ 'y', 'm', 'm', '2', '1', 0,
|
||||
/* 172 */ 'z', 'm', 'm', '2', '1', 0,
|
||||
/* 178 */ 'x', 'm', 'm', '3', '1', 0,
|
||||
/* 184 */ 'y', 'm', 'm', '3', '1', 0,
|
||||
/* 190 */ 'z', 'm', 'm', '3', '1', 0,
|
||||
/* 196 */ 'k', '1', 0,
|
||||
/* 199 */ 'x', 'm', 'm', '1', 0,
|
||||
/* 204 */ 'y', 'm', 'm', '1', 0,
|
||||
/* 209 */ 'z', 'm', 'm', '1', 0,
|
||||
/* 214 */ 'f', 'p', '1', 0,
|
||||
/* 218 */ 'c', 'r', '1', 0,
|
||||
/* 222 */ 'd', 'r', '1', 0,
|
||||
/* 226 */ 'x', 'm', 'm', '1', '2', 0,
|
||||
/* 232 */ 'y', 'm', 'm', '1', '2', 0,
|
||||
/* 238 */ 'z', 'm', 'm', '1', '2', 0,
|
||||
/* 244 */ 'c', 'r', '1', '2', 0,
|
||||
/* 249 */ 'x', 'm', 'm', '2', '2', 0,
|
||||
/* 255 */ 'y', 'm', 'm', '2', '2', 0,
|
||||
/* 261 */ 'z', 'm', 'm', '2', '2', 0,
|
||||
/* 267 */ 'k', '2', 0,
|
||||
/* 270 */ 'x', 'm', 'm', '2', 0,
|
||||
/* 275 */ 'y', 'm', 'm', '2', 0,
|
||||
/* 280 */ 'z', 'm', 'm', '2', 0,
|
||||
/* 285 */ 'f', 'p', '2', 0,
|
||||
/* 289 */ 'c', 'r', '2', 0,
|
||||
/* 293 */ 'd', 'r', '2', 0,
|
||||
/* 297 */ 'x', 'm', 'm', '1', '3', 0,
|
||||
/* 303 */ 'y', 'm', 'm', '1', '3', 0,
|
||||
/* 309 */ 'z', 'm', 'm', '1', '3', 0,
|
||||
/* 315 */ 'c', 'r', '1', '3', 0,
|
||||
/* 320 */ 'x', 'm', 'm', '2', '3', 0,
|
||||
/* 326 */ 'y', 'm', 'm', '2', '3', 0,
|
||||
/* 332 */ 'z', 'm', 'm', '2', '3', 0,
|
||||
/* 338 */ 'k', '3', 0,
|
||||
/* 341 */ 'x', 'm', 'm', '3', 0,
|
||||
/* 346 */ 'y', 'm', 'm', '3', 0,
|
||||
/* 351 */ 'z', 'm', 'm', '3', 0,
|
||||
/* 356 */ 'f', 'p', '3', 0,
|
||||
/* 360 */ 'c', 'r', '3', 0,
|
||||
/* 364 */ 'd', 'r', '3', 0,
|
||||
/* 368 */ 'x', 'm', 'm', '1', '4', 0,
|
||||
/* 374 */ 'y', 'm', 'm', '1', '4', 0,
|
||||
/* 380 */ 'z', 'm', 'm', '1', '4', 0,
|
||||
/* 386 */ 'c', 'r', '1', '4', 0,
|
||||
/* 391 */ 'x', 'm', 'm', '2', '4', 0,
|
||||
/* 397 */ 'y', 'm', 'm', '2', '4', 0,
|
||||
/* 403 */ 'z', 'm', 'm', '2', '4', 0,
|
||||
/* 409 */ 'k', '4', 0,
|
||||
/* 412 */ 'x', 'm', 'm', '4', 0,
|
||||
/* 417 */ 'y', 'm', 'm', '4', 0,
|
||||
/* 422 */ 'z', 'm', 'm', '4', 0,
|
||||
/* 427 */ 'f', 'p', '4', 0,
|
||||
/* 431 */ 'c', 'r', '4', 0,
|
||||
/* 435 */ 'd', 'r', '4', 0,
|
||||
/* 439 */ 'x', 'm', 'm', '1', '5', 0,
|
||||
/* 445 */ 'y', 'm', 'm', '1', '5', 0,
|
||||
/* 451 */ 'z', 'm', 'm', '1', '5', 0,
|
||||
/* 457 */ 'c', 'r', '1', '5', 0,
|
||||
/* 462 */ 'x', 'm', 'm', '2', '5', 0,
|
||||
/* 468 */ 'y', 'm', 'm', '2', '5', 0,
|
||||
/* 474 */ 'z', 'm', 'm', '2', '5', 0,
|
||||
/* 480 */ 'k', '5', 0,
|
||||
/* 483 */ 'x', 'm', 'm', '5', 0,
|
||||
/* 488 */ 'y', 'm', 'm', '5', 0,
|
||||
/* 493 */ 'z', 'm', 'm', '5', 0,
|
||||
/* 498 */ 'f', 'p', '5', 0,
|
||||
/* 502 */ 'c', 'r', '5', 0,
|
||||
/* 506 */ 'd', 'r', '5', 0,
|
||||
/* 510 */ 'x', 'm', 'm', '1', '6', 0,
|
||||
/* 516 */ 'y', 'm', 'm', '1', '6', 0,
|
||||
/* 522 */ 'z', 'm', 'm', '1', '6', 0,
|
||||
/* 528 */ 'x', 'm', 'm', '2', '6', 0,
|
||||
/* 534 */ 'y', 'm', 'm', '2', '6', 0,
|
||||
/* 540 */ 'z', 'm', 'm', '2', '6', 0,
|
||||
/* 546 */ 'k', '6', 0,
|
||||
/* 549 */ 'x', 'm', 'm', '6', 0,
|
||||
/* 554 */ 'y', 'm', 'm', '6', 0,
|
||||
/* 559 */ 'z', 'm', 'm', '6', 0,
|
||||
/* 564 */ 'f', 'p', '6', 0,
|
||||
/* 568 */ 'c', 'r', '6', 0,
|
||||
/* 572 */ 'd', 'r', '6', 0,
|
||||
/* 576 */ 'x', 'm', 'm', '1', '7', 0,
|
||||
/* 582 */ 'y', 'm', 'm', '1', '7', 0,
|
||||
/* 588 */ 'z', 'm', 'm', '1', '7', 0,
|
||||
/* 594 */ 'x', 'm', 'm', '2', '7', 0,
|
||||
/* 600 */ 'y', 'm', 'm', '2', '7', 0,
|
||||
/* 606 */ 'z', 'm', 'm', '2', '7', 0,
|
||||
/* 612 */ 'k', '7', 0,
|
||||
/* 615 */ 'x', 'm', 'm', '7', 0,
|
||||
/* 620 */ 'y', 'm', 'm', '7', 0,
|
||||
/* 625 */ 'z', 'm', 'm', '7', 0,
|
||||
/* 630 */ 'f', 'p', '7', 0,
|
||||
/* 634 */ 'c', 'r', '7', 0,
|
||||
/* 638 */ 'd', 'r', '7', 0,
|
||||
/* 642 */ 'x', 'm', 'm', '1', '8', 0,
|
||||
/* 648 */ 'y', 'm', 'm', '1', '8', 0,
|
||||
/* 654 */ 'z', 'm', 'm', '1', '8', 0,
|
||||
/* 660 */ 'x', 'm', 'm', '2', '8', 0,
|
||||
/* 666 */ 'y', 'm', 'm', '2', '8', 0,
|
||||
/* 672 */ 'z', 'm', 'm', '2', '8', 0,
|
||||
/* 678 */ 'x', 'm', 'm', '8', 0,
|
||||
/* 683 */ 'y', 'm', 'm', '8', 0,
|
||||
/* 688 */ 'z', 'm', 'm', '8', 0,
|
||||
/* 693 */ 'c', 'r', '8', 0,
|
||||
/* 697 */ 'x', 'm', 'm', '1', '9', 0,
|
||||
/* 703 */ 'y', 'm', 'm', '1', '9', 0,
|
||||
/* 709 */ 'z', 'm', 'm', '1', '9', 0,
|
||||
/* 715 */ 'x', 'm', 'm', '2', '9', 0,
|
||||
/* 721 */ 'y', 'm', 'm', '2', '9', 0,
|
||||
/* 727 */ 'z', 'm', 'm', '2', '9', 0,
|
||||
/* 733 */ 'x', 'm', 'm', '9', 0,
|
||||
/* 738 */ 'y', 'm', 'm', '9', 0,
|
||||
/* 743 */ 'z', 'm', 'm', '9', 0,
|
||||
/* 748 */ 'c', 'r', '9', 0,
|
||||
/* 752 */ 'r', '1', '0', 'b', 0,
|
||||
/* 757 */ 'r', '1', '1', 'b', 0,
|
||||
/* 762 */ 'r', '1', '2', 'b', 0,
|
||||
/* 767 */ 'r', '1', '3', 'b', 0,
|
||||
/* 772 */ 'r', '1', '4', 'b', 0,
|
||||
/* 777 */ 'r', '1', '5', 'b', 0,
|
||||
/* 782 */ 'r', '8', 'b', 0,
|
||||
/* 786 */ 'r', '9', 'b', 0,
|
||||
/* 790 */ 'r', '1', '0', 'd', 0,
|
||||
/* 795 */ 'r', '1', '1', 'd', 0,
|
||||
/* 800 */ 'r', '1', '2', 'd', 0,
|
||||
/* 805 */ 'r', '1', '3', 'd', 0,
|
||||
/* 810 */ 'r', '1', '4', 'd', 0,
|
||||
/* 815 */ 'r', '1', '5', 'd', 0,
|
||||
/* 820 */ 'r', '8', 'd', 0,
|
||||
/* 824 */ 'r', '9', 'd', 0,
|
||||
/* 828 */ 'a', 'h', 0,
|
||||
/* 831 */ 'b', 'h', 0,
|
||||
/* 834 */ 'c', 'h', 0,
|
||||
/* 837 */ 'd', 'h', 0,
|
||||
/* 840 */ 'e', 'd', 'i', 0,
|
||||
/* 844 */ 'r', 'd', 'i', 0,
|
||||
/* 848 */ 'e', 's', 'i', 0,
|
||||
/* 852 */ 'r', 's', 'i', 0,
|
||||
/* 856 */ 'a', 'l', 0,
|
||||
/* 859 */ 'b', 'l', 0,
|
||||
/* 862 */ 'c', 'l', 0,
|
||||
/* 865 */ 'd', 'l', 0,
|
||||
/* 868 */ 'd', 'i', 'l', 0,
|
||||
/* 872 */ 's', 'i', 'l', 0,
|
||||
/* 876 */ 'b', 'p', 'l', 0,
|
||||
/* 880 */ 's', 'p', 'l', 0,
|
||||
/* 884 */ 'e', 'b', 'p', 0,
|
||||
/* 888 */ 'r', 'b', 'p', 0,
|
||||
/* 892 */ 'e', 'i', 'p', 0,
|
||||
/* 896 */ 'r', 'i', 'p', 0,
|
||||
/* 900 */ 'e', 's', 'p', 0,
|
||||
/* 904 */ 'r', 's', 'p', 0,
|
||||
/* 908 */ 'c', 's', 0,
|
||||
/* 911 */ 'd', 's', 0,
|
||||
/* 914 */ 'e', 's', 0,
|
||||
/* 917 */ 'f', 's', 0,
|
||||
/* 920 */ 'f', 'l', 'a', 'g', 's', 0,
|
||||
/* 926 */ 's', 's', 0,
|
||||
/* 929 */ 'r', '1', '0', 'w', 0,
|
||||
/* 934 */ 'r', '1', '1', 'w', 0,
|
||||
/* 939 */ 'r', '1', '2', 'w', 0,
|
||||
/* 944 */ 'r', '1', '3', 'w', 0,
|
||||
/* 949 */ 'r', '1', '4', 'w', 0,
|
||||
/* 954 */ 'r', '1', '5', 'w', 0,
|
||||
/* 959 */ 'r', '8', 'w', 0,
|
||||
/* 963 */ 'r', '9', 'w', 0,
|
||||
/* 967 */ 'f', 'p', 's', 'w', 0,
|
||||
/* 972 */ 'e', 'a', 'x', 0,
|
||||
/* 976 */ 'r', 'a', 'x', 0,
|
||||
/* 980 */ 'e', 'b', 'x', 0,
|
||||
/* 984 */ 'r', 'b', 'x', 0,
|
||||
/* 988 */ 'e', 'c', 'x', 0,
|
||||
/* 992 */ 'r', 'c', 'x', 0,
|
||||
/* 996 */ 'e', 'd', 'x', 0,
|
||||
/* 1000 */ 'r', 'd', 'x', 0,
|
||||
/* 1004 */ 'e', 'i', 'z', 0,
|
||||
/* 1008 */ 'r', 'i', 'z', 0,
|
||||
/* 71 */ 'd', 'r', '1', '0', 0,
|
||||
/* 76 */ 'x', 'm', 'm', '2', '0', 0,
|
||||
/* 82 */ 'y', 'm', 'm', '2', '0', 0,
|
||||
/* 88 */ 'z', 'm', 'm', '2', '0', 0,
|
||||
/* 94 */ 'x', 'm', 'm', '3', '0', 0,
|
||||
/* 100 */ 'y', 'm', 'm', '3', '0', 0,
|
||||
/* 106 */ 'z', 'm', 'm', '3', '0', 0,
|
||||
/* 112 */ 'k', '0', 0,
|
||||
/* 115 */ 'x', 'm', 'm', '0', 0,
|
||||
/* 120 */ 'y', 'm', 'm', '0', 0,
|
||||
/* 125 */ 'z', 'm', 'm', '0', 0,
|
||||
/* 130 */ 'f', 'p', '0', 0,
|
||||
/* 134 */ 'c', 'r', '0', 0,
|
||||
/* 138 */ 'd', 'r', '0', 0,
|
||||
/* 142 */ 'x', 'm', 'm', '1', '1', 0,
|
||||
/* 148 */ 'y', 'm', 'm', '1', '1', 0,
|
||||
/* 154 */ 'z', 'm', 'm', '1', '1', 0,
|
||||
/* 160 */ 'c', 'r', '1', '1', 0,
|
||||
/* 165 */ 'd', 'r', '1', '1', 0,
|
||||
/* 170 */ 'x', 'm', 'm', '2', '1', 0,
|
||||
/* 176 */ 'y', 'm', 'm', '2', '1', 0,
|
||||
/* 182 */ 'z', 'm', 'm', '2', '1', 0,
|
||||
/* 188 */ 'x', 'm', 'm', '3', '1', 0,
|
||||
/* 194 */ 'y', 'm', 'm', '3', '1', 0,
|
||||
/* 200 */ 'z', 'm', 'm', '3', '1', 0,
|
||||
/* 206 */ 'k', '1', 0,
|
||||
/* 209 */ 'x', 'm', 'm', '1', 0,
|
||||
/* 214 */ 'y', 'm', 'm', '1', 0,
|
||||
/* 219 */ 'z', 'm', 'm', '1', 0,
|
||||
/* 224 */ 'f', 'p', '1', 0,
|
||||
/* 228 */ 'c', 'r', '1', 0,
|
||||
/* 232 */ 'd', 'r', '1', 0,
|
||||
/* 236 */ 'x', 'm', 'm', '1', '2', 0,
|
||||
/* 242 */ 'y', 'm', 'm', '1', '2', 0,
|
||||
/* 248 */ 'z', 'm', 'm', '1', '2', 0,
|
||||
/* 254 */ 'c', 'r', '1', '2', 0,
|
||||
/* 259 */ 'd', 'r', '1', '2', 0,
|
||||
/* 264 */ 'x', 'm', 'm', '2', '2', 0,
|
||||
/* 270 */ 'y', 'm', 'm', '2', '2', 0,
|
||||
/* 276 */ 'z', 'm', 'm', '2', '2', 0,
|
||||
/* 282 */ 'k', '2', 0,
|
||||
/* 285 */ 'x', 'm', 'm', '2', 0,
|
||||
/* 290 */ 'y', 'm', 'm', '2', 0,
|
||||
/* 295 */ 'z', 'm', 'm', '2', 0,
|
||||
/* 300 */ 'f', 'p', '2', 0,
|
||||
/* 304 */ 'c', 'r', '2', 0,
|
||||
/* 308 */ 'd', 'r', '2', 0,
|
||||
/* 312 */ 'x', 'm', 'm', '1', '3', 0,
|
||||
/* 318 */ 'y', 'm', 'm', '1', '3', 0,
|
||||
/* 324 */ 'z', 'm', 'm', '1', '3', 0,
|
||||
/* 330 */ 'c', 'r', '1', '3', 0,
|
||||
/* 335 */ 'd', 'r', '1', '3', 0,
|
||||
/* 340 */ 'x', 'm', 'm', '2', '3', 0,
|
||||
/* 346 */ 'y', 'm', 'm', '2', '3', 0,
|
||||
/* 352 */ 'z', 'm', 'm', '2', '3', 0,
|
||||
/* 358 */ 'k', '3', 0,
|
||||
/* 361 */ 'x', 'm', 'm', '3', 0,
|
||||
/* 366 */ 'y', 'm', 'm', '3', 0,
|
||||
/* 371 */ 'z', 'm', 'm', '3', 0,
|
||||
/* 376 */ 'f', 'p', '3', 0,
|
||||
/* 380 */ 'c', 'r', '3', 0,
|
||||
/* 384 */ 'd', 'r', '3', 0,
|
||||
/* 388 */ 'x', 'm', 'm', '1', '4', 0,
|
||||
/* 394 */ 'y', 'm', 'm', '1', '4', 0,
|
||||
/* 400 */ 'z', 'm', 'm', '1', '4', 0,
|
||||
/* 406 */ 'c', 'r', '1', '4', 0,
|
||||
/* 411 */ 'd', 'r', '1', '4', 0,
|
||||
/* 416 */ 'x', 'm', 'm', '2', '4', 0,
|
||||
/* 422 */ 'y', 'm', 'm', '2', '4', 0,
|
||||
/* 428 */ 'z', 'm', 'm', '2', '4', 0,
|
||||
/* 434 */ 'k', '4', 0,
|
||||
/* 437 */ 'x', 'm', 'm', '4', 0,
|
||||
/* 442 */ 'y', 'm', 'm', '4', 0,
|
||||
/* 447 */ 'z', 'm', 'm', '4', 0,
|
||||
/* 452 */ 'f', 'p', '4', 0,
|
||||
/* 456 */ 'c', 'r', '4', 0,
|
||||
/* 460 */ 'd', 'r', '4', 0,
|
||||
/* 464 */ 'x', 'm', 'm', '1', '5', 0,
|
||||
/* 470 */ 'y', 'm', 'm', '1', '5', 0,
|
||||
/* 476 */ 'z', 'm', 'm', '1', '5', 0,
|
||||
/* 482 */ 'c', 'r', '1', '5', 0,
|
||||
/* 487 */ 'd', 'r', '1', '5', 0,
|
||||
/* 492 */ 'x', 'm', 'm', '2', '5', 0,
|
||||
/* 498 */ 'y', 'm', 'm', '2', '5', 0,
|
||||
/* 504 */ 'z', 'm', 'm', '2', '5', 0,
|
||||
/* 510 */ 'k', '5', 0,
|
||||
/* 513 */ 'x', 'm', 'm', '5', 0,
|
||||
/* 518 */ 'y', 'm', 'm', '5', 0,
|
||||
/* 523 */ 'z', 'm', 'm', '5', 0,
|
||||
/* 528 */ 'f', 'p', '5', 0,
|
||||
/* 532 */ 'c', 'r', '5', 0,
|
||||
/* 536 */ 'd', 'r', '5', 0,
|
||||
/* 540 */ 'x', 'm', 'm', '1', '6', 0,
|
||||
/* 546 */ 'y', 'm', 'm', '1', '6', 0,
|
||||
/* 552 */ 'z', 'm', 'm', '1', '6', 0,
|
||||
/* 558 */ 'x', 'm', 'm', '2', '6', 0,
|
||||
/* 564 */ 'y', 'm', 'm', '2', '6', 0,
|
||||
/* 570 */ 'z', 'm', 'm', '2', '6', 0,
|
||||
/* 576 */ 'k', '6', 0,
|
||||
/* 579 */ 'x', 'm', 'm', '6', 0,
|
||||
/* 584 */ 'y', 'm', 'm', '6', 0,
|
||||
/* 589 */ 'z', 'm', 'm', '6', 0,
|
||||
/* 594 */ 'f', 'p', '6', 0,
|
||||
/* 598 */ 'c', 'r', '6', 0,
|
||||
/* 602 */ 'd', 'r', '6', 0,
|
||||
/* 606 */ 'x', 'm', 'm', '1', '7', 0,
|
||||
/* 612 */ 'y', 'm', 'm', '1', '7', 0,
|
||||
/* 618 */ 'z', 'm', 'm', '1', '7', 0,
|
||||
/* 624 */ 'x', 'm', 'm', '2', '7', 0,
|
||||
/* 630 */ 'y', 'm', 'm', '2', '7', 0,
|
||||
/* 636 */ 'z', 'm', 'm', '2', '7', 0,
|
||||
/* 642 */ 'k', '7', 0,
|
||||
/* 645 */ 'x', 'm', 'm', '7', 0,
|
||||
/* 650 */ 'y', 'm', 'm', '7', 0,
|
||||
/* 655 */ 'z', 'm', 'm', '7', 0,
|
||||
/* 660 */ 'f', 'p', '7', 0,
|
||||
/* 664 */ 'c', 'r', '7', 0,
|
||||
/* 668 */ 'd', 'r', '7', 0,
|
||||
/* 672 */ 'x', 'm', 'm', '1', '8', 0,
|
||||
/* 678 */ 'y', 'm', 'm', '1', '8', 0,
|
||||
/* 684 */ 'z', 'm', 'm', '1', '8', 0,
|
||||
/* 690 */ 'x', 'm', 'm', '2', '8', 0,
|
||||
/* 696 */ 'y', 'm', 'm', '2', '8', 0,
|
||||
/* 702 */ 'z', 'm', 'm', '2', '8', 0,
|
||||
/* 708 */ 'x', 'm', 'm', '8', 0,
|
||||
/* 713 */ 'y', 'm', 'm', '8', 0,
|
||||
/* 718 */ 'z', 'm', 'm', '8', 0,
|
||||
/* 723 */ 'c', 'r', '8', 0,
|
||||
/* 727 */ 'd', 'r', '8', 0,
|
||||
/* 731 */ 'x', 'm', 'm', '1', '9', 0,
|
||||
/* 737 */ 'y', 'm', 'm', '1', '9', 0,
|
||||
/* 743 */ 'z', 'm', 'm', '1', '9', 0,
|
||||
/* 749 */ 'x', 'm', 'm', '2', '9', 0,
|
||||
/* 755 */ 'y', 'm', 'm', '2', '9', 0,
|
||||
/* 761 */ 'z', 'm', 'm', '2', '9', 0,
|
||||
/* 767 */ 'x', 'm', 'm', '9', 0,
|
||||
/* 772 */ 'y', 'm', 'm', '9', 0,
|
||||
/* 777 */ 'z', 'm', 'm', '9', 0,
|
||||
/* 782 */ 'c', 'r', '9', 0,
|
||||
/* 786 */ 'd', 'r', '9', 0,
|
||||
/* 790 */ 'r', '1', '0', 'b', 0,
|
||||
/* 795 */ 'r', '1', '1', 'b', 0,
|
||||
/* 800 */ 'r', '1', '2', 'b', 0,
|
||||
/* 805 */ 'r', '1', '3', 'b', 0,
|
||||
/* 810 */ 'r', '1', '4', 'b', 0,
|
||||
/* 815 */ 'r', '1', '5', 'b', 0,
|
||||
/* 820 */ 'r', '8', 'b', 0,
|
||||
/* 824 */ 'r', '9', 'b', 0,
|
||||
/* 828 */ 'r', '1', '0', 'd', 0,
|
||||
/* 833 */ 'r', '1', '1', 'd', 0,
|
||||
/* 838 */ 'r', '1', '2', 'd', 0,
|
||||
/* 843 */ 'r', '1', '3', 'd', 0,
|
||||
/* 848 */ 'r', '1', '4', 'd', 0,
|
||||
/* 853 */ 'r', '1', '5', 'd', 0,
|
||||
/* 858 */ 'r', '8', 'd', 0,
|
||||
/* 862 */ 'r', '9', 'd', 0,
|
||||
/* 866 */ 'a', 'h', 0,
|
||||
/* 869 */ 'b', 'h', 0,
|
||||
/* 872 */ 'c', 'h', 0,
|
||||
/* 875 */ 'd', 'h', 0,
|
||||
/* 878 */ 'e', 'd', 'i', 0,
|
||||
/* 882 */ 'r', 'd', 'i', 0,
|
||||
/* 886 */ 'e', 's', 'i', 0,
|
||||
/* 890 */ 'r', 's', 'i', 0,
|
||||
/* 894 */ 'a', 'l', 0,
|
||||
/* 897 */ 'b', 'l', 0,
|
||||
/* 900 */ 'c', 'l', 0,
|
||||
/* 903 */ 'd', 'l', 0,
|
||||
/* 906 */ 'd', 'i', 'l', 0,
|
||||
/* 910 */ 's', 'i', 'l', 0,
|
||||
/* 914 */ 'b', 'p', 'l', 0,
|
||||
/* 918 */ 's', 'p', 'l', 0,
|
||||
/* 922 */ 'e', 'b', 'p', 0,
|
||||
/* 926 */ 'r', 'b', 'p', 0,
|
||||
/* 930 */ 'e', 'i', 'p', 0,
|
||||
/* 934 */ 'r', 'i', 'p', 0,
|
||||
/* 938 */ 'e', 's', 'p', 0,
|
||||
/* 942 */ 'r', 's', 'p', 0,
|
||||
/* 946 */ 'c', 's', 0,
|
||||
/* 949 */ 'd', 's', 0,
|
||||
/* 952 */ 'e', 's', 0,
|
||||
/* 955 */ 'f', 's', 0,
|
||||
/* 958 */ 'f', 'l', 'a', 'g', 's', 0,
|
||||
/* 964 */ 's', 's', 0,
|
||||
/* 967 */ 'r', '1', '0', 'w', 0,
|
||||
/* 972 */ 'r', '1', '1', 'w', 0,
|
||||
/* 977 */ 'r', '1', '2', 'w', 0,
|
||||
/* 982 */ 'r', '1', '3', 'w', 0,
|
||||
/* 987 */ 'r', '1', '4', 'w', 0,
|
||||
/* 992 */ 'r', '1', '5', 'w', 0,
|
||||
/* 997 */ 'r', '8', 'w', 0,
|
||||
/* 1001 */ 'r', '9', 'w', 0,
|
||||
/* 1005 */ 'f', 'p', 's', 'w', 0,
|
||||
/* 1010 */ 'e', 'a', 'x', 0,
|
||||
/* 1014 */ 'r', 'a', 'x', 0,
|
||||
/* 1018 */ 'e', 'b', 'x', 0,
|
||||
/* 1022 */ 'r', 'b', 'x', 0,
|
||||
/* 1026 */ 'e', 'c', 'x', 0,
|
||||
/* 1030 */ 'r', 'c', 'x', 0,
|
||||
/* 1034 */ 'e', 'd', 'x', 0,
|
||||
/* 1038 */ 'r', 'd', 'x', 0,
|
||||
/* 1042 */ 'e', 'i', 'z', 0,
|
||||
/* 1046 */ 'r', 'i', 'z', 0,
|
||||
};
|
||||
|
||||
static const uint32_t RegAsmOffset[] = {
|
||||
828, 856, 973, 831, 859, 885, 876, 981, 834, 862, 908, 989, 837, 841,
|
||||
868, 865, 911, 997, 972, 884, 980, 988, 840, 996, 920, 892, 1004, 914,
|
||||
848, 900, 967, 917, 923, 893, 976, 888, 984, 992, 844, 1000, 896, 1008,
|
||||
852, 904, 849, 872, 901, 880, 926, 129, 218, 289, 360, 431, 502, 568,
|
||||
634, 693, 748, 66, 155, 244, 315, 386, 457, 133, 222, 293, 364, 435,
|
||||
506, 572, 638, 125, 214, 285, 356, 427, 498, 564, 630, 107, 196, 267,
|
||||
338, 409, 480, 546, 612, 111, 200, 271, 342, 413, 484, 550, 616, 694,
|
||||
749, 67, 156, 245, 316, 387, 458, 0, 6, 12, 18, 24, 30, 36,
|
||||
42, 110, 199, 270, 341, 412, 483, 549, 615, 678, 733, 48, 137, 226,
|
||||
297, 368, 439, 510, 576, 642, 697, 71, 160, 249, 320, 391, 462, 528,
|
||||
594, 660, 715, 89, 178, 115, 204, 275, 346, 417, 488, 554, 620, 683,
|
||||
738, 54, 143, 232, 303, 374, 445, 516, 582, 648, 703, 77, 166, 255,
|
||||
326, 397, 468, 534, 600, 666, 721, 95, 184, 120, 209, 280, 351, 422,
|
||||
493, 559, 625, 688, 743, 60, 149, 238, 309, 380, 451, 522, 588, 654,
|
||||
709, 83, 172, 261, 332, 403, 474, 540, 606, 672, 727, 101, 190, 782,
|
||||
786, 752, 757, 762, 767, 772, 777, 820, 824, 790, 795, 800, 805, 810,
|
||||
815, 959, 963, 929, 934, 939, 944, 949, 954,
|
||||
866, 894, 1011, 869, 897, 923, 914, 1019, 872, 900, 946, 1027, 875, 879,
|
||||
906, 903, 949, 1035, 1010, 922, 1018, 1026, 878, 1034, 958, 930, 1042, 952,
|
||||
886, 938, 1005, 955, 961, 931, 1014, 926, 1022, 1030, 882, 1038, 934, 1046,
|
||||
890, 942, 887, 910, 939, 918, 964, 134, 228, 304, 380, 456, 532, 598,
|
||||
664, 723, 782, 66, 160, 254, 330, 406, 482, 138, 232, 308, 384, 460,
|
||||
536, 602, 668, 727, 786, 71, 165, 259, 335, 411, 487, 130, 224, 300,
|
||||
376, 452, 528, 594, 660, 112, 206, 282, 358, 434, 510, 576, 642, 116,
|
||||
210, 286, 362, 438, 514, 580, 646, 724, 783, 67, 161, 255, 331, 407,
|
||||
483, 0, 6, 12, 18, 24, 30, 36, 42, 115, 209, 285, 361, 437,
|
||||
513, 579, 645, 708, 767, 48, 142, 236, 312, 388, 464, 540, 606, 672,
|
||||
731, 76, 170, 264, 340, 416, 492, 558, 624, 690, 749, 94, 188, 120,
|
||||
214, 290, 366, 442, 518, 584, 650, 713, 772, 54, 148, 242, 318, 394,
|
||||
470, 546, 612, 678, 737, 82, 176, 270, 346, 422, 498, 564, 630, 696,
|
||||
755, 100, 194, 125, 219, 295, 371, 447, 523, 589, 655, 718, 777, 60,
|
||||
154, 248, 324, 400, 476, 552, 618, 684, 743, 88, 182, 276, 352, 428,
|
||||
504, 570, 636, 702, 761, 106, 200, 820, 824, 790, 795, 800, 805, 810,
|
||||
815, 858, 862, 828, 833, 838, 843, 848, 853, 997, 1001, 967, 972, 977,
|
||||
982, 987, 992,
|
||||
};
|
||||
|
||||
//int i;
|
||||
|
@ -7,7 +7,7 @@
|
||||
\*===----------------------------------------------------------------------===*/
|
||||
|
||||
/* Capstone Disassembly Engine, http://www.capstone-engine.org */
|
||||
/* By Nguyen Anh Quynh <aquynh@gmail.com>, 2013-2014 */
|
||||
/* By Nguyen Anh Quynh <aquynh@gmail.com>, 2013-2015 */
|
||||
|
||||
/// printInstruction - This method is automatically generated by tablegen
|
||||
/// from the instruction set description.
|
||||
@ -69,8 +69,10 @@ static void printInstruction(MCInst *MI, SStream *O, MCRegisterInfo *MRI)
|
||||
1623380U, // ADC64rm
|
||||
1598804U, // ADC64rr
|
||||
2123092U, // ADC64rr_REV
|
||||
1597486U, // ADC82_8ri8
|
||||
4726830U, // ADC8i8
|
||||
5259310U, // ADC8mi
|
||||
5259310U, // ADC8mi8
|
||||
5259310U, // ADC8mr
|
||||
1597486U, // ADC8ri
|
||||
57390U, // ADC8rm
|
||||
@ -116,11 +118,12 @@ static void printInstruction(MCInst *MI, SStream *O, MCRegisterInfo *MRI)
|
||||
1598838U, // ADD64rr
|
||||
0U, // ADD64rr_DB
|
||||
2123126U, // ADD64rr_REV
|
||||
5259329U, // ADD82_8mi8
|
||||
1597505U, // ADD82_8ri8
|
||||
4726849U, // ADD8i8
|
||||
5259329U, // ADD8mi
|
||||
5259329U, // ADD8mr
|
||||
1597505U, // ADD8ri
|
||||
1597505U, // ADD8ri8
|
||||
57409U, // ADD8rm
|
||||
1597505U, // ADD8rr
|
||||
2121793U, // ADD8rr_REV
|
||||
@ -159,11 +162,12 @@ static void printInstruction(MCInst *MI, SStream *O, MCRegisterInfo *MRI)
|
||||
1623439U, // AND64rm
|
||||
1598863U, // AND64rr
|
||||
2123151U, // AND64rr_REV
|
||||
5259335U, // AND82_8mi8
|
||||
1597511U, // AND82_8ri8
|
||||
4726855U, // AND8i8
|
||||
5259335U, // AND8mi
|
||||
5259335U, // AND8mr
|
||||
1597511U, // AND8ri
|
||||
1597511U, // AND8ri8
|
||||
57415U, // AND8rm
|
||||
1597511U, // AND8rr
|
||||
2121799U, // AND8rr_REV
|
||||
@ -448,8 +452,10 @@ static void printInstruction(MCInst *MI, SStream *O, MCRegisterInfo *MRI)
|
||||
83630U, // CMP64rm
|
||||
22619822U, // CMP64rr
|
||||
22619822U, // CMP64rr_REV
|
||||
22618245U, // CMP82_8ri8
|
||||
4726917U, // CMP8i8
|
||||
5259397U, // CMP8mi
|
||||
5259397U, // CMP8mi8
|
||||
5259397U, // CMP8mr
|
||||
22618245U, // CMP8ri
|
||||
139397U, // CMP8rm
|
||||
@ -889,6 +895,7 @@ static void printInstruction(MCInst *MI, SStream *O, MCRegisterInfo *MRI)
|
||||
22619760U, // MOVSX64_NOREXrr32
|
||||
100306U, // MOVSX64rm16
|
||||
67184U, // MOVSX64rm32
|
||||
67184U, // MOVSX64rm32_alt
|
||||
140598U, // MOVSX64rm8
|
||||
22620114U, // MOVSX64rr16
|
||||
22619760U, // MOVSX64rr32
|
||||
@ -993,11 +1000,12 @@ static void printInstruction(MCInst *MI, SStream *O, MCRegisterInfo *MRI)
|
||||
1623780U, // OR64rm
|
||||
1599204U, // OR64rr
|
||||
2123492U, // OR64rr_REV
|
||||
5259422U, // OR82_8mi8
|
||||
1597598U, // OR82_8ri8
|
||||
4726942U, // OR8i8
|
||||
5259422U, // OR8mi
|
||||
5259422U, // OR8mr
|
||||
1597598U, // OR8ri
|
||||
1597598U, // OR8ri8
|
||||
57502U, // OR8rm
|
||||
1597598U, // OR8rr
|
||||
2121886U, // OR8rr_REV
|
||||
@ -1302,8 +1310,10 @@ static void printInstruction(MCInst *MI, SStream *O, MCRegisterInfo *MRI)
|
||||
1623344U, // SBB64rm
|
||||
1598768U, // SBB64rr
|
||||
2123056U, // SBB64rr_REV
|
||||
1597474U, // SBB82_8ri8
|
||||
4726818U, // SBB8i8
|
||||
5259298U, // SBB8mi
|
||||
5259298U, // SBB8mi8
|
||||
5259298U, // SBB8mr
|
||||
1597474U, // SBB8ri
|
||||
57378U, // SBB8rm
|
||||
@ -1495,11 +1505,12 @@ static void printInstruction(MCInst *MI, SStream *O, MCRegisterInfo *MRI)
|
||||
1623358U, // SUB64rm
|
||||
1598782U, // SUB64rr
|
||||
2123070U, // SUB64rr_REV
|
||||
5259304U, // SUB82_8mi8
|
||||
1597480U, // SUB82_8ri8
|
||||
4726824U, // SUB8i8
|
||||
5259304U, // SUB8mi
|
||||
5259304U, // SUB8mr
|
||||
1597480U, // SUB8ri
|
||||
1597480U, // SUB8ri8
|
||||
57384U, // SUB8rm
|
||||
1597480U, // SUB8rr
|
||||
2121768U, // SUB8rr_REV
|
||||
@ -1667,11 +1678,12 @@ static void printInstruction(MCInst *MI, SStream *O, MCRegisterInfo *MRI)
|
||||
1623794U, // XOR64rm
|
||||
1599218U, // XOR64rr
|
||||
2123506U, // XOR64rr_REV
|
||||
5259427U, // XOR82_8mi8
|
||||
1597603U, // XOR82_8ri8
|
||||
4726947U, // XOR8i8
|
||||
5259427U, // XOR8mi
|
||||
5259427U, // XOR8mr
|
||||
1597603U, // XOR8ri
|
||||
1597603U, // XOR8ri8
|
||||
57507U, // XOR8rm
|
||||
1597603U, // XOR8rr
|
||||
2121891U, // XOR8rr_REV
|
||||
@ -2615,7 +2627,7 @@ static void printInstruction(MCInst *MI, SStream *O, MCRegisterInfo *MRI)
|
||||
return;
|
||||
break;
|
||||
case 10:
|
||||
// ADC8mi, ADC8mr, ADD8mi, ADD8mr, AND8mi, AND8mr, CMP8mi, CMP8mr, CMPXCH...
|
||||
// ADC8mi, ADC8mi8, ADC8mr, ADD82_8mi8, ADD8mi, ADD8mr, AND82_8mi8, AND8m...
|
||||
printi8mem(MI, 0, O);
|
||||
break;
|
||||
case 11:
|
||||
@ -2798,7 +2810,7 @@ static void printInstruction(MCInst *MI, SStream *O, MCRegisterInfo *MRI)
|
||||
/// for the specified register.
|
||||
static char *getRegisterName(unsigned RegNo)
|
||||
{
|
||||
// assert(RegNo && RegNo < 234 && "Invalid register number!");
|
||||
// assert(RegNo && RegNo < 242 && "Invalid register number!");
|
||||
|
||||
#ifndef CAPSTONE_DIET
|
||||
static char AsmStrs[] = {
|
||||
@ -2814,221 +2826,230 @@ static char *getRegisterName(unsigned RegNo)
|
||||
/* 54 */ 'y', 'm', 'm', '1', '0', 0,
|
||||
/* 60 */ 'z', 'm', 'm', '1', '0', 0,
|
||||
/* 66 */ 'c', 'r', '1', '0', 0,
|
||||
/* 71 */ 'x', 'm', 'm', '2', '0', 0,
|
||||
/* 77 */ 'y', 'm', 'm', '2', '0', 0,
|
||||
/* 83 */ 'z', 'm', 'm', '2', '0', 0,
|
||||
/* 89 */ 'x', 'm', 'm', '3', '0', 0,
|
||||
/* 95 */ 'y', 'm', 'm', '3', '0', 0,
|
||||
/* 101 */ 'z', 'm', 'm', '3', '0', 0,
|
||||
/* 107 */ 'k', '0', 0,
|
||||
/* 110 */ 'x', 'm', 'm', '0', 0,
|
||||
/* 115 */ 'y', 'm', 'm', '0', 0,
|
||||
/* 120 */ 'z', 'm', 'm', '0', 0,
|
||||
/* 125 */ 'f', 'p', '0', 0,
|
||||
/* 129 */ 'c', 'r', '0', 0,
|
||||
/* 133 */ 'd', 'r', '0', 0,
|
||||
/* 137 */ 'x', 'm', 'm', '1', '1', 0,
|
||||
/* 143 */ 'y', 'm', 'm', '1', '1', 0,
|
||||
/* 149 */ 'z', 'm', 'm', '1', '1', 0,
|
||||
/* 155 */ 'c', 'r', '1', '1', 0,
|
||||
/* 160 */ 'x', 'm', 'm', '2', '1', 0,
|
||||
/* 166 */ 'y', 'm', 'm', '2', '1', 0,
|
||||
/* 172 */ 'z', 'm', 'm', '2', '1', 0,
|
||||
/* 178 */ 'x', 'm', 'm', '3', '1', 0,
|
||||
/* 184 */ 'y', 'm', 'm', '3', '1', 0,
|
||||
/* 190 */ 'z', 'm', 'm', '3', '1', 0,
|
||||
/* 196 */ 'k', '1', 0,
|
||||
/* 199 */ 'x', 'm', 'm', '1', 0,
|
||||
/* 204 */ 'y', 'm', 'm', '1', 0,
|
||||
/* 209 */ 'z', 'm', 'm', '1', 0,
|
||||
/* 214 */ 'f', 'p', '1', 0,
|
||||
/* 218 */ 'c', 'r', '1', 0,
|
||||
/* 222 */ 'd', 'r', '1', 0,
|
||||
/* 226 */ 'x', 'm', 'm', '1', '2', 0,
|
||||
/* 232 */ 'y', 'm', 'm', '1', '2', 0,
|
||||
/* 238 */ 'z', 'm', 'm', '1', '2', 0,
|
||||
/* 244 */ 'c', 'r', '1', '2', 0,
|
||||
/* 249 */ 'x', 'm', 'm', '2', '2', 0,
|
||||
/* 255 */ 'y', 'm', 'm', '2', '2', 0,
|
||||
/* 261 */ 'z', 'm', 'm', '2', '2', 0,
|
||||
/* 267 */ 'k', '2', 0,
|
||||
/* 270 */ 'x', 'm', 'm', '2', 0,
|
||||
/* 275 */ 'y', 'm', 'm', '2', 0,
|
||||
/* 280 */ 'z', 'm', 'm', '2', 0,
|
||||
/* 285 */ 'f', 'p', '2', 0,
|
||||
/* 289 */ 'c', 'r', '2', 0,
|
||||
/* 293 */ 'd', 'r', '2', 0,
|
||||
/* 297 */ 'x', 'm', 'm', '1', '3', 0,
|
||||
/* 303 */ 'y', 'm', 'm', '1', '3', 0,
|
||||
/* 309 */ 'z', 'm', 'm', '1', '3', 0,
|
||||
/* 315 */ 'c', 'r', '1', '3', 0,
|
||||
/* 320 */ 'x', 'm', 'm', '2', '3', 0,
|
||||
/* 326 */ 'y', 'm', 'm', '2', '3', 0,
|
||||
/* 332 */ 'z', 'm', 'm', '2', '3', 0,
|
||||
/* 338 */ 'k', '3', 0,
|
||||
/* 341 */ 'x', 'm', 'm', '3', 0,
|
||||
/* 346 */ 'y', 'm', 'm', '3', 0,
|
||||
/* 351 */ 'z', 'm', 'm', '3', 0,
|
||||
/* 356 */ 'f', 'p', '3', 0,
|
||||
/* 360 */ 'c', 'r', '3', 0,
|
||||
/* 364 */ 'd', 'r', '3', 0,
|
||||
/* 368 */ 'x', 'm', 'm', '1', '4', 0,
|
||||
/* 374 */ 'y', 'm', 'm', '1', '4', 0,
|
||||
/* 380 */ 'z', 'm', 'm', '1', '4', 0,
|
||||
/* 386 */ 'c', 'r', '1', '4', 0,
|
||||
/* 391 */ 'x', 'm', 'm', '2', '4', 0,
|
||||
/* 397 */ 'y', 'm', 'm', '2', '4', 0,
|
||||
/* 403 */ 'z', 'm', 'm', '2', '4', 0,
|
||||
/* 409 */ 'k', '4', 0,
|
||||
/* 412 */ 'x', 'm', 'm', '4', 0,
|
||||
/* 417 */ 'y', 'm', 'm', '4', 0,
|
||||
/* 422 */ 'z', 'm', 'm', '4', 0,
|
||||
/* 427 */ 'f', 'p', '4', 0,
|
||||
/* 431 */ 'c', 'r', '4', 0,
|
||||
/* 435 */ 'd', 'r', '4', 0,
|
||||
/* 439 */ 'x', 'm', 'm', '1', '5', 0,
|
||||
/* 445 */ 'y', 'm', 'm', '1', '5', 0,
|
||||
/* 451 */ 'z', 'm', 'm', '1', '5', 0,
|
||||
/* 457 */ 'c', 'r', '1', '5', 0,
|
||||
/* 462 */ 'x', 'm', 'm', '2', '5', 0,
|
||||
/* 468 */ 'y', 'm', 'm', '2', '5', 0,
|
||||
/* 474 */ 'z', 'm', 'm', '2', '5', 0,
|
||||
/* 480 */ 'k', '5', 0,
|
||||
/* 483 */ 'x', 'm', 'm', '5', 0,
|
||||
/* 488 */ 'y', 'm', 'm', '5', 0,
|
||||
/* 493 */ 'z', 'm', 'm', '5', 0,
|
||||
/* 498 */ 'f', 'p', '5', 0,
|
||||
/* 502 */ 'c', 'r', '5', 0,
|
||||
/* 506 */ 'd', 'r', '5', 0,
|
||||
/* 510 */ 'x', 'm', 'm', '1', '6', 0,
|
||||
/* 516 */ 'y', 'm', 'm', '1', '6', 0,
|
||||
/* 522 */ 'z', 'm', 'm', '1', '6', 0,
|
||||
/* 528 */ 'x', 'm', 'm', '2', '6', 0,
|
||||
/* 534 */ 'y', 'm', 'm', '2', '6', 0,
|
||||
/* 540 */ 'z', 'm', 'm', '2', '6', 0,
|
||||
/* 546 */ 'k', '6', 0,
|
||||
/* 549 */ 'x', 'm', 'm', '6', 0,
|
||||
/* 554 */ 'y', 'm', 'm', '6', 0,
|
||||
/* 559 */ 'z', 'm', 'm', '6', 0,
|
||||
/* 564 */ 'f', 'p', '6', 0,
|
||||
/* 568 */ 'c', 'r', '6', 0,
|
||||
/* 572 */ 'd', 'r', '6', 0,
|
||||
/* 576 */ 'x', 'm', 'm', '1', '7', 0,
|
||||
/* 582 */ 'y', 'm', 'm', '1', '7', 0,
|
||||
/* 588 */ 'z', 'm', 'm', '1', '7', 0,
|
||||
/* 594 */ 'x', 'm', 'm', '2', '7', 0,
|
||||
/* 600 */ 'y', 'm', 'm', '2', '7', 0,
|
||||
/* 606 */ 'z', 'm', 'm', '2', '7', 0,
|
||||
/* 612 */ 'k', '7', 0,
|
||||
/* 615 */ 'x', 'm', 'm', '7', 0,
|
||||
/* 620 */ 'y', 'm', 'm', '7', 0,
|
||||
/* 625 */ 'z', 'm', 'm', '7', 0,
|
||||
/* 630 */ 'f', 'p', '7', 0,
|
||||
/* 634 */ 'c', 'r', '7', 0,
|
||||
/* 638 */ 'd', 'r', '7', 0,
|
||||
/* 642 */ 'x', 'm', 'm', '1', '8', 0,
|
||||
/* 648 */ 'y', 'm', 'm', '1', '8', 0,
|
||||
/* 654 */ 'z', 'm', 'm', '1', '8', 0,
|
||||
/* 660 */ 'x', 'm', 'm', '2', '8', 0,
|
||||
/* 666 */ 'y', 'm', 'm', '2', '8', 0,
|
||||
/* 672 */ 'z', 'm', 'm', '2', '8', 0,
|
||||
/* 678 */ 'x', 'm', 'm', '8', 0,
|
||||
/* 683 */ 'y', 'm', 'm', '8', 0,
|
||||
/* 688 */ 'z', 'm', 'm', '8', 0,
|
||||
/* 693 */ 'c', 'r', '8', 0,
|
||||
/* 697 */ 'x', 'm', 'm', '1', '9', 0,
|
||||
/* 703 */ 'y', 'm', 'm', '1', '9', 0,
|
||||
/* 709 */ 'z', 'm', 'm', '1', '9', 0,
|
||||
/* 715 */ 'x', 'm', 'm', '2', '9', 0,
|
||||
/* 721 */ 'y', 'm', 'm', '2', '9', 0,
|
||||
/* 727 */ 'z', 'm', 'm', '2', '9', 0,
|
||||
/* 733 */ 'x', 'm', 'm', '9', 0,
|
||||
/* 738 */ 'y', 'm', 'm', '9', 0,
|
||||
/* 743 */ 'z', 'm', 'm', '9', 0,
|
||||
/* 748 */ 'c', 'r', '9', 0,
|
||||
/* 752 */ 'r', '1', '0', 'b', 0,
|
||||
/* 757 */ 'r', '1', '1', 'b', 0,
|
||||
/* 762 */ 'r', '1', '2', 'b', 0,
|
||||
/* 767 */ 'r', '1', '3', 'b', 0,
|
||||
/* 772 */ 'r', '1', '4', 'b', 0,
|
||||
/* 777 */ 'r', '1', '5', 'b', 0,
|
||||
/* 782 */ 'r', '8', 'b', 0,
|
||||
/* 786 */ 'r', '9', 'b', 0,
|
||||
/* 790 */ 'r', '1', '0', 'd', 0,
|
||||
/* 795 */ 'r', '1', '1', 'd', 0,
|
||||
/* 800 */ 'r', '1', '2', 'd', 0,
|
||||
/* 805 */ 'r', '1', '3', 'd', 0,
|
||||
/* 810 */ 'r', '1', '4', 'd', 0,
|
||||
/* 815 */ 'r', '1', '5', 'd', 0,
|
||||
/* 820 */ 'r', '8', 'd', 0,
|
||||
/* 824 */ 'r', '9', 'd', 0,
|
||||
/* 828 */ 'a', 'h', 0,
|
||||
/* 831 */ 'b', 'h', 0,
|
||||
/* 834 */ 'c', 'h', 0,
|
||||
/* 837 */ 'd', 'h', 0,
|
||||
/* 840 */ 'e', 'd', 'i', 0,
|
||||
/* 844 */ 'r', 'd', 'i', 0,
|
||||
/* 848 */ 'e', 's', 'i', 0,
|
||||
/* 852 */ 'r', 's', 'i', 0,
|
||||
/* 856 */ 'a', 'l', 0,
|
||||
/* 859 */ 'b', 'l', 0,
|
||||
/* 862 */ 'c', 'l', 0,
|
||||
/* 865 */ 'd', 'l', 0,
|
||||
/* 868 */ 'd', 'i', 'l', 0,
|
||||
/* 872 */ 's', 'i', 'l', 0,
|
||||
/* 876 */ 'b', 'p', 'l', 0,
|
||||
/* 880 */ 's', 'p', 'l', 0,
|
||||
/* 884 */ 'e', 'b', 'p', 0,
|
||||
/* 888 */ 'r', 'b', 'p', 0,
|
||||
/* 892 */ 'e', 'i', 'p', 0,
|
||||
/* 896 */ 'r', 'i', 'p', 0,
|
||||
/* 900 */ 'e', 's', 'p', 0,
|
||||
/* 904 */ 'r', 's', 'p', 0,
|
||||
/* 908 */ 'c', 's', 0,
|
||||
/* 911 */ 'd', 's', 0,
|
||||
/* 914 */ 'e', 's', 0,
|
||||
/* 917 */ 'f', 's', 0,
|
||||
/* 920 */ 'f', 'l', 'a', 'g', 's', 0,
|
||||
/* 926 */ 's', 's', 0,
|
||||
/* 929 */ 'r', '1', '0', 'w', 0,
|
||||
/* 934 */ 'r', '1', '1', 'w', 0,
|
||||
/* 939 */ 'r', '1', '2', 'w', 0,
|
||||
/* 944 */ 'r', '1', '3', 'w', 0,
|
||||
/* 949 */ 'r', '1', '4', 'w', 0,
|
||||
/* 954 */ 'r', '1', '5', 'w', 0,
|
||||
/* 959 */ 'r', '8', 'w', 0,
|
||||
/* 963 */ 'r', '9', 'w', 0,
|
||||
/* 967 */ 'f', 'p', 's', 'w', 0,
|
||||
/* 972 */ 'e', 'a', 'x', 0,
|
||||
/* 976 */ 'r', 'a', 'x', 0,
|
||||
/* 980 */ 'e', 'b', 'x', 0,
|
||||
/* 984 */ 'r', 'b', 'x', 0,
|
||||
/* 988 */ 'e', 'c', 'x', 0,
|
||||
/* 992 */ 'r', 'c', 'x', 0,
|
||||
/* 996 */ 'e', 'd', 'x', 0,
|
||||
/* 1000 */ 'r', 'd', 'x', 0,
|
||||
/* 1004 */ 'e', 'i', 'z', 0,
|
||||
/* 1008 */ 'r', 'i', 'z', 0,
|
||||
/* 71 */ 'd', 'r', '1', '0', 0,
|
||||
/* 76 */ 'x', 'm', 'm', '2', '0', 0,
|
||||
/* 82 */ 'y', 'm', 'm', '2', '0', 0,
|
||||
/* 88 */ 'z', 'm', 'm', '2', '0', 0,
|
||||
/* 94 */ 'x', 'm', 'm', '3', '0', 0,
|
||||
/* 100 */ 'y', 'm', 'm', '3', '0', 0,
|
||||
/* 106 */ 'z', 'm', 'm', '3', '0', 0,
|
||||
/* 112 */ 'k', '0', 0,
|
||||
/* 115 */ 'x', 'm', 'm', '0', 0,
|
||||
/* 120 */ 'y', 'm', 'm', '0', 0,
|
||||
/* 125 */ 'z', 'm', 'm', '0', 0,
|
||||
/* 130 */ 'f', 'p', '0', 0,
|
||||
/* 134 */ 'c', 'r', '0', 0,
|
||||
/* 138 */ 'd', 'r', '0', 0,
|
||||
/* 142 */ 'x', 'm', 'm', '1', '1', 0,
|
||||
/* 148 */ 'y', 'm', 'm', '1', '1', 0,
|
||||
/* 154 */ 'z', 'm', 'm', '1', '1', 0,
|
||||
/* 160 */ 'c', 'r', '1', '1', 0,
|
||||
/* 165 */ 'd', 'r', '1', '1', 0,
|
||||
/* 170 */ 'x', 'm', 'm', '2', '1', 0,
|
||||
/* 176 */ 'y', 'm', 'm', '2', '1', 0,
|
||||
/* 182 */ 'z', 'm', 'm', '2', '1', 0,
|
||||
/* 188 */ 'x', 'm', 'm', '3', '1', 0,
|
||||
/* 194 */ 'y', 'm', 'm', '3', '1', 0,
|
||||
/* 200 */ 'z', 'm', 'm', '3', '1', 0,
|
||||
/* 206 */ 'k', '1', 0,
|
||||
/* 209 */ 'x', 'm', 'm', '1', 0,
|
||||
/* 214 */ 'y', 'm', 'm', '1', 0,
|
||||
/* 219 */ 'z', 'm', 'm', '1', 0,
|
||||
/* 224 */ 'f', 'p', '1', 0,
|
||||
/* 228 */ 'c', 'r', '1', 0,
|
||||
/* 232 */ 'd', 'r', '1', 0,
|
||||
/* 236 */ 'x', 'm', 'm', '1', '2', 0,
|
||||
/* 242 */ 'y', 'm', 'm', '1', '2', 0,
|
||||
/* 248 */ 'z', 'm', 'm', '1', '2', 0,
|
||||
/* 254 */ 'c', 'r', '1', '2', 0,
|
||||
/* 259 */ 'd', 'r', '1', '2', 0,
|
||||
/* 264 */ 'x', 'm', 'm', '2', '2', 0,
|
||||
/* 270 */ 'y', 'm', 'm', '2', '2', 0,
|
||||
/* 276 */ 'z', 'm', 'm', '2', '2', 0,
|
||||
/* 282 */ 'k', '2', 0,
|
||||
/* 285 */ 'x', 'm', 'm', '2', 0,
|
||||
/* 290 */ 'y', 'm', 'm', '2', 0,
|
||||
/* 295 */ 'z', 'm', 'm', '2', 0,
|
||||
/* 300 */ 'f', 'p', '2', 0,
|
||||
/* 304 */ 'c', 'r', '2', 0,
|
||||
/* 308 */ 'd', 'r', '2', 0,
|
||||
/* 312 */ 'x', 'm', 'm', '1', '3', 0,
|
||||
/* 318 */ 'y', 'm', 'm', '1', '3', 0,
|
||||
/* 324 */ 'z', 'm', 'm', '1', '3', 0,
|
||||
/* 330 */ 'c', 'r', '1', '3', 0,
|
||||
/* 335 */ 'd', 'r', '1', '3', 0,
|
||||
/* 340 */ 'x', 'm', 'm', '2', '3', 0,
|
||||
/* 346 */ 'y', 'm', 'm', '2', '3', 0,
|
||||
/* 352 */ 'z', 'm', 'm', '2', '3', 0,
|
||||
/* 358 */ 'k', '3', 0,
|
||||
/* 361 */ 'x', 'm', 'm', '3', 0,
|
||||
/* 366 */ 'y', 'm', 'm', '3', 0,
|
||||
/* 371 */ 'z', 'm', 'm', '3', 0,
|
||||
/* 376 */ 'f', 'p', '3', 0,
|
||||
/* 380 */ 'c', 'r', '3', 0,
|
||||
/* 384 */ 'd', 'r', '3', 0,
|
||||
/* 388 */ 'x', 'm', 'm', '1', '4', 0,
|
||||
/* 394 */ 'y', 'm', 'm', '1', '4', 0,
|
||||
/* 400 */ 'z', 'm', 'm', '1', '4', 0,
|
||||
/* 406 */ 'c', 'r', '1', '4', 0,
|
||||
/* 411 */ 'd', 'r', '1', '4', 0,
|
||||
/* 416 */ 'x', 'm', 'm', '2', '4', 0,
|
||||
/* 422 */ 'y', 'm', 'm', '2', '4', 0,
|
||||
/* 428 */ 'z', 'm', 'm', '2', '4', 0,
|
||||
/* 434 */ 'k', '4', 0,
|
||||
/* 437 */ 'x', 'm', 'm', '4', 0,
|
||||
/* 442 */ 'y', 'm', 'm', '4', 0,
|
||||
/* 447 */ 'z', 'm', 'm', '4', 0,
|
||||
/* 452 */ 'f', 'p', '4', 0,
|
||||
/* 456 */ 'c', 'r', '4', 0,
|
||||
/* 460 */ 'd', 'r', '4', 0,
|
||||
/* 464 */ 'x', 'm', 'm', '1', '5', 0,
|
||||
/* 470 */ 'y', 'm', 'm', '1', '5', 0,
|
||||
/* 476 */ 'z', 'm', 'm', '1', '5', 0,
|
||||
/* 482 */ 'c', 'r', '1', '5', 0,
|
||||
/* 487 */ 'd', 'r', '1', '5', 0,
|
||||
/* 492 */ 'x', 'm', 'm', '2', '5', 0,
|
||||
/* 498 */ 'y', 'm', 'm', '2', '5', 0,
|
||||
/* 504 */ 'z', 'm', 'm', '2', '5', 0,
|
||||
/* 510 */ 'k', '5', 0,
|
||||
/* 513 */ 'x', 'm', 'm', '5', 0,
|
||||
/* 518 */ 'y', 'm', 'm', '5', 0,
|
||||
/* 523 */ 'z', 'm', 'm', '5', 0,
|
||||
/* 528 */ 'f', 'p', '5', 0,
|
||||
/* 532 */ 'c', 'r', '5', 0,
|
||||
/* 536 */ 'd', 'r', '5', 0,
|
||||
/* 540 */ 'x', 'm', 'm', '1', '6', 0,
|
||||
/* 546 */ 'y', 'm', 'm', '1', '6', 0,
|
||||
/* 552 */ 'z', 'm', 'm', '1', '6', 0,
|
||||
/* 558 */ 'x', 'm', 'm', '2', '6', 0,
|
||||
/* 564 */ 'y', 'm', 'm', '2', '6', 0,
|
||||
/* 570 */ 'z', 'm', 'm', '2', '6', 0,
|
||||
/* 576 */ 'k', '6', 0,
|
||||
/* 579 */ 'x', 'm', 'm', '6', 0,
|
||||
/* 584 */ 'y', 'm', 'm', '6', 0,
|
||||
/* 589 */ 'z', 'm', 'm', '6', 0,
|
||||
/* 594 */ 'f', 'p', '6', 0,
|
||||
/* 598 */ 'c', 'r', '6', 0,
|
||||
/* 602 */ 'd', 'r', '6', 0,
|
||||
/* 606 */ 'x', 'm', 'm', '1', '7', 0,
|
||||
/* 612 */ 'y', 'm', 'm', '1', '7', 0,
|
||||
/* 618 */ 'z', 'm', 'm', '1', '7', 0,
|
||||
/* 624 */ 'x', 'm', 'm', '2', '7', 0,
|
||||
/* 630 */ 'y', 'm', 'm', '2', '7', 0,
|
||||
/* 636 */ 'z', 'm', 'm', '2', '7', 0,
|
||||
/* 642 */ 'k', '7', 0,
|
||||
/* 645 */ 'x', 'm', 'm', '7', 0,
|
||||
/* 650 */ 'y', 'm', 'm', '7', 0,
|
||||
/* 655 */ 'z', 'm', 'm', '7', 0,
|
||||
/* 660 */ 'f', 'p', '7', 0,
|
||||
/* 664 */ 'c', 'r', '7', 0,
|
||||
/* 668 */ 'd', 'r', '7', 0,
|
||||
/* 672 */ 'x', 'm', 'm', '1', '8', 0,
|
||||
/* 678 */ 'y', 'm', 'm', '1', '8', 0,
|
||||
/* 684 */ 'z', 'm', 'm', '1', '8', 0,
|
||||
/* 690 */ 'x', 'm', 'm', '2', '8', 0,
|
||||
/* 696 */ 'y', 'm', 'm', '2', '8', 0,
|
||||
/* 702 */ 'z', 'm', 'm', '2', '8', 0,
|
||||
/* 708 */ 'x', 'm', 'm', '8', 0,
|
||||
/* 713 */ 'y', 'm', 'm', '8', 0,
|
||||
/* 718 */ 'z', 'm', 'm', '8', 0,
|
||||
/* 723 */ 'c', 'r', '8', 0,
|
||||
/* 727 */ 'd', 'r', '8', 0,
|
||||
/* 731 */ 'x', 'm', 'm', '1', '9', 0,
|
||||
/* 737 */ 'y', 'm', 'm', '1', '9', 0,
|
||||
/* 743 */ 'z', 'm', 'm', '1', '9', 0,
|
||||
/* 749 */ 'x', 'm', 'm', '2', '9', 0,
|
||||
/* 755 */ 'y', 'm', 'm', '2', '9', 0,
|
||||
/* 761 */ 'z', 'm', 'm', '2', '9', 0,
|
||||
/* 767 */ 'x', 'm', 'm', '9', 0,
|
||||
/* 772 */ 'y', 'm', 'm', '9', 0,
|
||||
/* 777 */ 'z', 'm', 'm', '9', 0,
|
||||
/* 782 */ 'c', 'r', '9', 0,
|
||||
/* 786 */ 'd', 'r', '9', 0,
|
||||
/* 790 */ 'r', '1', '0', 'b', 0,
|
||||
/* 795 */ 'r', '1', '1', 'b', 0,
|
||||
/* 800 */ 'r', '1', '2', 'b', 0,
|
||||
/* 805 */ 'r', '1', '3', 'b', 0,
|
||||
/* 810 */ 'r', '1', '4', 'b', 0,
|
||||
/* 815 */ 'r', '1', '5', 'b', 0,
|
||||
/* 820 */ 'r', '8', 'b', 0,
|
||||
/* 824 */ 'r', '9', 'b', 0,
|
||||
/* 828 */ 'r', '1', '0', 'd', 0,
|
||||
/* 833 */ 'r', '1', '1', 'd', 0,
|
||||
/* 838 */ 'r', '1', '2', 'd', 0,
|
||||
/* 843 */ 'r', '1', '3', 'd', 0,
|
||||
/* 848 */ 'r', '1', '4', 'd', 0,
|
||||
/* 853 */ 'r', '1', '5', 'd', 0,
|
||||
/* 858 */ 'r', '8', 'd', 0,
|
||||
/* 862 */ 'r', '9', 'd', 0,
|
||||
/* 866 */ 'a', 'h', 0,
|
||||
/* 869 */ 'b', 'h', 0,
|
||||
/* 872 */ 'c', 'h', 0,
|
||||
/* 875 */ 'd', 'h', 0,
|
||||
/* 878 */ 'e', 'd', 'i', 0,
|
||||
/* 882 */ 'r', 'd', 'i', 0,
|
||||
/* 886 */ 'e', 's', 'i', 0,
|
||||
/* 890 */ 'r', 's', 'i', 0,
|
||||
/* 894 */ 'a', 'l', 0,
|
||||
/* 897 */ 'b', 'l', 0,
|
||||
/* 900 */ 'c', 'l', 0,
|
||||
/* 903 */ 'd', 'l', 0,
|
||||
/* 906 */ 'd', 'i', 'l', 0,
|
||||
/* 910 */ 's', 'i', 'l', 0,
|
||||
/* 914 */ 'b', 'p', 'l', 0,
|
||||
/* 918 */ 's', 'p', 'l', 0,
|
||||
/* 922 */ 'e', 'b', 'p', 0,
|
||||
/* 926 */ 'r', 'b', 'p', 0,
|
||||
/* 930 */ 'e', 'i', 'p', 0,
|
||||
/* 934 */ 'r', 'i', 'p', 0,
|
||||
/* 938 */ 'e', 's', 'p', 0,
|
||||
/* 942 */ 'r', 's', 'p', 0,
|
||||
/* 946 */ 'c', 's', 0,
|
||||
/* 949 */ 'd', 's', 0,
|
||||
/* 952 */ 'e', 's', 0,
|
||||
/* 955 */ 'f', 's', 0,
|
||||
/* 958 */ 'f', 'l', 'a', 'g', 's', 0,
|
||||
/* 964 */ 's', 's', 0,
|
||||
/* 967 */ 'r', '1', '0', 'w', 0,
|
||||
/* 972 */ 'r', '1', '1', 'w', 0,
|
||||
/* 977 */ 'r', '1', '2', 'w', 0,
|
||||
/* 982 */ 'r', '1', '3', 'w', 0,
|
||||
/* 987 */ 'r', '1', '4', 'w', 0,
|
||||
/* 992 */ 'r', '1', '5', 'w', 0,
|
||||
/* 997 */ 'r', '8', 'w', 0,
|
||||
/* 1001 */ 'r', '9', 'w', 0,
|
||||
/* 1005 */ 'f', 'p', 's', 'w', 0,
|
||||
/* 1010 */ 'e', 'a', 'x', 0,
|
||||
/* 1014 */ 'r', 'a', 'x', 0,
|
||||
/* 1018 */ 'e', 'b', 'x', 0,
|
||||
/* 1022 */ 'r', 'b', 'x', 0,
|
||||
/* 1026 */ 'e', 'c', 'x', 0,
|
||||
/* 1030 */ 'r', 'c', 'x', 0,
|
||||
/* 1034 */ 'e', 'd', 'x', 0,
|
||||
/* 1038 */ 'r', 'd', 'x', 0,
|
||||
/* 1042 */ 'e', 'i', 'z', 0,
|
||||
/* 1046 */ 'r', 'i', 'z', 0,
|
||||
};
|
||||
|
||||
static const uint32_t RegAsmOffset[] = {
|
||||
828, 856, 973, 831, 859, 885, 876, 981, 834, 862, 908, 989, 837, 841,
|
||||
868, 865, 911, 997, 972, 884, 980, 988, 840, 996, 920, 892, 1004, 914,
|
||||
848, 900, 967, 917, 923, 893, 976, 888, 984, 992, 844, 1000, 896, 1008,
|
||||
852, 904, 849, 872, 901, 880, 926, 129, 218, 289, 360, 431, 502, 568,
|
||||
634, 693, 748, 66, 155, 244, 315, 386, 457, 133, 222, 293, 364, 435,
|
||||
506, 572, 638, 125, 214, 285, 356, 427, 498, 564, 630, 107, 196, 267,
|
||||
338, 409, 480, 546, 612, 111, 200, 271, 342, 413, 484, 550, 616, 694,
|
||||
749, 67, 156, 245, 316, 387, 458, 0, 6, 12, 18, 24, 30, 36,
|
||||
42, 110, 199, 270, 341, 412, 483, 549, 615, 678, 733, 48, 137, 226,
|
||||
297, 368, 439, 510, 576, 642, 697, 71, 160, 249, 320, 391, 462, 528,
|
||||
594, 660, 715, 89, 178, 115, 204, 275, 346, 417, 488, 554, 620, 683,
|
||||
738, 54, 143, 232, 303, 374, 445, 516, 582, 648, 703, 77, 166, 255,
|
||||
326, 397, 468, 534, 600, 666, 721, 95, 184, 120, 209, 280, 351, 422,
|
||||
493, 559, 625, 688, 743, 60, 149, 238, 309, 380, 451, 522, 588, 654,
|
||||
709, 83, 172, 261, 332, 403, 474, 540, 606, 672, 727, 101, 190, 782,
|
||||
786, 752, 757, 762, 767, 772, 777, 820, 824, 790, 795, 800, 805, 810,
|
||||
815, 959, 963, 929, 934, 939, 944, 949, 954,
|
||||
866, 894, 1011, 869, 897, 923, 914, 1019, 872, 900, 946, 1027, 875, 879,
|
||||
906, 903, 949, 1035, 1010, 922, 1018, 1026, 878, 1034, 958, 930, 1042, 952,
|
||||
886, 938, 1005, 955, 961, 931, 1014, 926, 1022, 1030, 882, 1038, 934, 1046,
|
||||
890, 942, 887, 910, 939, 918, 964, 134, 228, 304, 380, 456, 532, 598,
|
||||
664, 723, 782, 66, 160, 254, 330, 406, 482, 138, 232, 308, 384, 460,
|
||||
536, 602, 668, 727, 786, 71, 165, 259, 335, 411, 487, 130, 224, 300,
|
||||
376, 452, 528, 594, 660, 112, 206, 282, 358, 434, 510, 576, 642, 116,
|
||||
210, 286, 362, 438, 514, 580, 646, 724, 783, 67, 161, 255, 331, 407,
|
||||
483, 0, 6, 12, 18, 24, 30, 36, 42, 115, 209, 285, 361, 437,
|
||||
513, 579, 645, 708, 767, 48, 142, 236, 312, 388, 464, 540, 606, 672,
|
||||
731, 76, 170, 264, 340, 416, 492, 558, 624, 690, 749, 94, 188, 120,
|
||||
214, 290, 366, 442, 518, 584, 650, 713, 772, 54, 148, 242, 318, 394,
|
||||
470, 546, 612, 678, 737, 82, 176, 270, 346, 422, 498, 564, 630, 696,
|
||||
755, 100, 194, 125, 219, 295, 371, 447, 523, 589, 655, 718, 777, 60,
|
||||
154, 248, 324, 400, 476, 552, 618, 684, 743, 88, 182, 276, 352, 428,
|
||||
504, 570, 636, 702, 761, 106, 200, 820, 824, 790, 795, 800, 805, 810,
|
||||
815, 858, 862, 828, 833, 838, 843, 848, 853, 997, 1001, 967, 972, 977,
|
||||
982, 987, 992,
|
||||
};
|
||||
|
||||
//int i;
|
||||
|
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
@ -166,14 +166,6 @@ static void printSSECC(MCInst *MI, unsigned Op, SStream *OS)
|
||||
case 5: SStream_concat0(OS, "nlt"); op_addSseCC(MI, X86_SSE_CC_NLT); break;
|
||||
case 6: SStream_concat0(OS, "nle"); op_addSseCC(MI, X86_SSE_CC_NLE); break;
|
||||
case 7: SStream_concat0(OS, "ord"); op_addSseCC(MI, X86_SSE_CC_ORD); break;
|
||||
case 8: SStream_concat0(OS, "eq_uq"); op_addSseCC(MI, X86_SSE_CC_EQ_UQ); break;
|
||||
case 9: SStream_concat0(OS, "nge"); op_addSseCC(MI, X86_SSE_CC_NGE); break;
|
||||
case 0xa: SStream_concat0(OS, "ngt"); op_addSseCC(MI, X86_SSE_CC_NGT); break;
|
||||
case 0xb: SStream_concat0(OS, "false"); op_addSseCC(MI, X86_SSE_CC_FALSE); break;
|
||||
case 0xc: SStream_concat0(OS, "neq_oq"); op_addSseCC(MI, X86_SSE_CC_NEQ_OQ); break;
|
||||
case 0xd: SStream_concat0(OS, "ge"); op_addSseCC(MI, X86_SSE_CC_GE); break;
|
||||
case 0xe: SStream_concat0(OS, "gt"); op_addSseCC(MI, X86_SSE_CC_GT); break;
|
||||
case 0xf: SStream_concat0(OS, "true"); op_addSseCC(MI, X86_SSE_CC_TRUE); break;
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -151,6 +151,14 @@ static name_map reg_name_maps[] = {
|
||||
{ X86_REG_DR5, "dr5" },
|
||||
{ X86_REG_DR6, "dr6" },
|
||||
{ X86_REG_DR7, "dr7" },
|
||||
{ X86_REG_DR8, "dr8" },
|
||||
{ X86_REG_DR9, "dr9" },
|
||||
{ X86_REG_DR10, "dr10" },
|
||||
{ X86_REG_DR11, "dr11" },
|
||||
{ X86_REG_DR12, "dr12" },
|
||||
{ X86_REG_DR13, "dr13" },
|
||||
{ X86_REG_DR14, "dr14" },
|
||||
{ X86_REG_DR15, "dr15" },
|
||||
{ X86_REG_FP0, "fp0" },
|
||||
{ X86_REG_FP1, "fp1" },
|
||||
{ X86_REG_FP2, "fp2" },
|
||||
@ -390,6 +398,14 @@ uint8_t regsize_map_32 [] = {
|
||||
4, // { X86_REG_DR5, "dr5" },
|
||||
4, // { X86_REG_DR6, "dr6" },
|
||||
4, // { X86_REG_DR7, "dr7" },
|
||||
4, // { X86_REG_DR8, "dr8" },
|
||||
4, // { X86_REG_DR9, "dr9" },
|
||||
4, // { X86_REG_DR10, "dr10" },
|
||||
4, // { X86_REG_DR11, "dr11" },
|
||||
4, // { X86_REG_DR12, "dr12" },
|
||||
4, // { X86_REG_DR13, "dr13" },
|
||||
4, // { X86_REG_DR14, "dr14" },
|
||||
4, // { X86_REG_DR15, "dr15" },
|
||||
10, // { X86_REG_FP0, "fp0" },
|
||||
10, // { X86_REG_FP1, "fp1" },
|
||||
10, // { X86_REG_FP2, "fp2" },
|
||||
@ -628,6 +644,14 @@ uint8_t regsize_map_64 [] = {
|
||||
8, // { X86_REG_DR5, "dr5" },
|
||||
8, // { X86_REG_DR6, "dr6" },
|
||||
8, // { X86_REG_DR7, "dr7" },
|
||||
8, // { X86_REG_DR8, "dr8" },
|
||||
8, // { X86_REG_DR9, "dr9" },
|
||||
8, // { X86_REG_DR10, "dr10" },
|
||||
8, // { X86_REG_DR11, "dr11" },
|
||||
8, // { X86_REG_DR12, "dr12" },
|
||||
8, // { X86_REG_DR13, "dr13" },
|
||||
8, // { X86_REG_DR14, "dr14" },
|
||||
8, // { X86_REG_DR15, "dr15" },
|
||||
10, // { X86_REG_FP0, "fp0" },
|
||||
10, // { X86_REG_FP1, "fp1" },
|
||||
10, // { X86_REG_FP2, "fp2" },
|
||||
@ -997,6 +1021,7 @@ static name_map insn_name_maps[] = {
|
||||
{ X86_INS_FPREM, "fprem" },
|
||||
{ X86_INS_FPREM1, "fprem1" },
|
||||
{ X86_INS_FPTAN, "fptan" },
|
||||
{ X86_INS_FFREEP, "ffreep" },
|
||||
{ X86_INS_FRNDINT, "frndint" },
|
||||
{ X86_INS_FRSTOR, "frstor" },
|
||||
{ X86_INS_FNSAVE, "fnsave" },
|
||||
@ -1489,6 +1514,7 @@ static name_map insn_name_maps[] = {
|
||||
{ X86_INS_FST, "fst" },
|
||||
{ X86_INS_FSTP, "fstp" },
|
||||
{ X86_INS_FSTPNCE, "fstpnce" },
|
||||
{ X86_INS_FXCH, "fxch" },
|
||||
{ X86_INS_SUBPD, "subpd" },
|
||||
{ X86_INS_SUBPS, "subps" },
|
||||
{ X86_INS_FSUBR, "fsubr" },
|
||||
@ -2088,7 +2114,6 @@ static name_map insn_name_maps[] = {
|
||||
{ X86_INS_XACQUIRE, "xacquire" },
|
||||
{ X86_INS_XBEGIN, "xbegin" },
|
||||
{ X86_INS_XCHG, "xchg" },
|
||||
{ X86_INS_FXCH, "fxch" },
|
||||
{ X86_INS_XCRYPTCBC, "xcryptcbc" },
|
||||
{ X86_INS_XCRYPTCFB, "xcryptcfb" },
|
||||
{ X86_INS_XCRYPTCTR, "xcryptctr" },
|
||||
@ -2109,6 +2134,8 @@ static name_map insn_name_maps[] = {
|
||||
{ X86_INS_XSHA256, "xsha256" },
|
||||
{ X86_INS_XSTORE, "xstore" },
|
||||
{ X86_INS_XTEST, "xtest" },
|
||||
{ X86_INS_FDISI8087_NOP, "fdisi8087_nop" },
|
||||
{ X86_INS_FENI8087_NOP, "feni8087_nop" },
|
||||
};
|
||||
#endif
|
||||
|
||||
@ -2403,6 +2430,12 @@ static insn_map insns[] = { // full x86 instructions
|
||||
X86_ADC64rr_REV, X86_INS_ADC,
|
||||
#ifndef CAPSTONE_DIET
|
||||
{ X86_REG_EFLAGS, 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
|
||||
#endif
|
||||
},
|
||||
{
|
||||
X86_ADC82_8ri8, X86_INS_ADC,
|
||||
#ifndef CAPSTONE_DIET
|
||||
{ X86_REG_EFLAGS, 0 }, { X86_REG_EFLAGS, 0 }, { X86_GRP_NOT64BITMODE, 0 }, 0, 0
|
||||
#endif
|
||||
},
|
||||
{
|
||||
@ -2415,6 +2448,12 @@ static insn_map insns[] = { // full x86 instructions
|
||||
X86_ADC8mi, X86_INS_ADC,
|
||||
#ifndef CAPSTONE_DIET
|
||||
{ X86_REG_EFLAGS, 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
|
||||
#endif
|
||||
},
|
||||
{
|
||||
X86_ADC8mi8, X86_INS_ADC,
|
||||
#ifndef CAPSTONE_DIET
|
||||
{ X86_REG_EFLAGS, 0 }, { X86_REG_EFLAGS, 0 }, { X86_GRP_NOT64BITMODE, 0 }, 0, 0
|
||||
#endif
|
||||
},
|
||||
{
|
||||
@ -2631,6 +2670,18 @@ static insn_map insns[] = { // full x86 instructions
|
||||
X86_ADD64rr_REV, X86_INS_ADD,
|
||||
#ifndef CAPSTONE_DIET
|
||||
{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
|
||||
#endif
|
||||
},
|
||||
{
|
||||
X86_ADD82_8mi8, X86_INS_ADD,
|
||||
#ifndef CAPSTONE_DIET
|
||||
{ 0 }, { X86_REG_EFLAGS, 0 }, { X86_GRP_NOT64BITMODE, 0 }, 0, 0
|
||||
#endif
|
||||
},
|
||||
{
|
||||
X86_ADD82_8ri8, X86_INS_ADD,
|
||||
#ifndef CAPSTONE_DIET
|
||||
{ 0 }, { X86_REG_EFLAGS, 0 }, { X86_GRP_NOT64BITMODE, 0 }, 0, 0
|
||||
#endif
|
||||
},
|
||||
{
|
||||
@ -2655,12 +2706,6 @@ static insn_map insns[] = { // full x86 instructions
|
||||
X86_ADD8ri, X86_INS_ADD,
|
||||
#ifndef CAPSTONE_DIET
|
||||
{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
|
||||
#endif
|
||||
},
|
||||
{
|
||||
X86_ADD8ri8, X86_INS_ADD,
|
||||
#ifndef CAPSTONE_DIET
|
||||
{ 0 }, { X86_REG_EFLAGS, 0 }, { X86_GRP_NOT64BITMODE, 0 }, 0, 0
|
||||
#endif
|
||||
},
|
||||
{
|
||||
@ -3075,6 +3120,18 @@ static insn_map insns[] = { // full x86 instructions
|
||||
X86_AND64rr_REV, X86_INS_AND,
|
||||
#ifndef CAPSTONE_DIET
|
||||
{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
|
||||
#endif
|
||||
},
|
||||
{
|
||||
X86_AND82_8mi8, X86_INS_AND,
|
||||
#ifndef CAPSTONE_DIET
|
||||
{ 0 }, { X86_REG_EFLAGS, 0 }, { X86_GRP_NOT64BITMODE, 0 }, 0, 0
|
||||
#endif
|
||||
},
|
||||
{
|
||||
X86_AND82_8ri8, X86_INS_AND,
|
||||
#ifndef CAPSTONE_DIET
|
||||
{ 0 }, { X86_REG_EFLAGS, 0 }, { X86_GRP_NOT64BITMODE, 0 }, 0, 0
|
||||
#endif
|
||||
},
|
||||
{
|
||||
@ -3099,12 +3156,6 @@ static insn_map insns[] = { // full x86 instructions
|
||||
X86_AND8ri, X86_INS_AND,
|
||||
#ifndef CAPSTONE_DIET
|
||||
{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
|
||||
#endif
|
||||
},
|
||||
{
|
||||
X86_AND8ri8, X86_INS_AND,
|
||||
#ifndef CAPSTONE_DIET
|
||||
{ 0 }, { X86_REG_EFLAGS, 0 }, { X86_GRP_NOT64BITMODE, 0 }, 0, 0
|
||||
#endif
|
||||
},
|
||||
{
|
||||
@ -4863,6 +4914,12 @@ static insn_map insns[] = { // full x86 instructions
|
||||
X86_CMP64rr_REV, X86_INS_CMP,
|
||||
#ifndef CAPSTONE_DIET
|
||||
{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
|
||||
#endif
|
||||
},
|
||||
{
|
||||
X86_CMP82_8ri8, X86_INS_CMP,
|
||||
#ifndef CAPSTONE_DIET
|
||||
{ 0 }, { X86_REG_EFLAGS, 0 }, { X86_GRP_NOT64BITMODE, 0 }, 0, 0
|
||||
#endif
|
||||
},
|
||||
{
|
||||
@ -4875,6 +4932,12 @@ static insn_map insns[] = { // full x86 instructions
|
||||
X86_CMP8mi, X86_INS_CMP,
|
||||
#ifndef CAPSTONE_DIET
|
||||
{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
|
||||
#endif
|
||||
},
|
||||
{
|
||||
X86_CMP8mi8, X86_INS_CMP,
|
||||
#ifndef CAPSTONE_DIET
|
||||
{ 0 }, { X86_REG_EFLAGS, 0 }, { X86_GRP_NOT64BITMODE, 0 }, 0, 0
|
||||
#endif
|
||||
},
|
||||
{
|
||||
@ -6111,6 +6174,12 @@ static insn_map insns[] = { // full x86 instructions
|
||||
X86_FPTAN, X86_INS_FPTAN,
|
||||
#ifndef CAPSTONE_DIET
|
||||
{ 0 }, { 0 }, { 0 }, 0, 0
|
||||
#endif
|
||||
},
|
||||
{
|
||||
X86_FP_FFREEP, X86_INS_FFREEP,
|
||||
#ifndef CAPSTONE_DIET
|
||||
{ 0 }, { X86_REG_FPSW, 0 }, { 0 }, 0, 0
|
||||
#endif
|
||||
},
|
||||
{
|
||||
@ -11397,6 +11466,12 @@ static insn_map insns[] = { // full x86 instructions
|
||||
X86_MOVSX64rm32, X86_INS_MOVSXD,
|
||||
#ifndef CAPSTONE_DIET
|
||||
{ 0 }, { 0 }, { 0 }, 0, 0
|
||||
#endif
|
||||
},
|
||||
{
|
||||
X86_MOVSX64rm32_alt, X86_INS_MOVSXD,
|
||||
#ifndef CAPSTONE_DIET
|
||||
{ 0 }, { 0 }, { X86_GRP_MODE64, 0 }, 0, 0
|
||||
#endif
|
||||
},
|
||||
{
|
||||
@ -12225,6 +12300,18 @@ static insn_map insns[] = { // full x86 instructions
|
||||
X86_OR64rr_REV, X86_INS_OR,
|
||||
#ifndef CAPSTONE_DIET
|
||||
{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
|
||||
#endif
|
||||
},
|
||||
{
|
||||
X86_OR82_8mi8, X86_INS_OR,
|
||||
#ifndef CAPSTONE_DIET
|
||||
{ 0 }, { X86_REG_EFLAGS, 0 }, { X86_GRP_NOT64BITMODE, 0 }, 0, 0
|
||||
#endif
|
||||
},
|
||||
{
|
||||
X86_OR82_8ri8, X86_INS_OR,
|
||||
#ifndef CAPSTONE_DIET
|
||||
{ 0 }, { X86_REG_EFLAGS, 0 }, { X86_GRP_NOT64BITMODE, 0 }, 0, 0
|
||||
#endif
|
||||
},
|
||||
{
|
||||
@ -12249,12 +12336,6 @@ static insn_map insns[] = { // full x86 instructions
|
||||
X86_OR8ri, X86_INS_OR,
|
||||
#ifndef CAPSTONE_DIET
|
||||
{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
|
||||
#endif
|
||||
},
|
||||
{
|
||||
X86_OR8ri8, X86_INS_OR,
|
||||
#ifndef CAPSTONE_DIET
|
||||
{ 0 }, { X86_REG_EFLAGS, 0 }, { X86_GRP_NOT64BITMODE, 0 }, 0, 0
|
||||
#endif
|
||||
},
|
||||
{
|
||||
@ -16083,6 +16164,12 @@ static insn_map insns[] = { // full x86 instructions
|
||||
X86_SBB64rr_REV, X86_INS_SBB,
|
||||
#ifndef CAPSTONE_DIET
|
||||
{ X86_REG_EFLAGS, 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
|
||||
#endif
|
||||
},
|
||||
{
|
||||
X86_SBB82_8ri8, X86_INS_SBB,
|
||||
#ifndef CAPSTONE_DIET
|
||||
{ X86_REG_EFLAGS, 0 }, { X86_REG_EFLAGS, 0 }, { X86_GRP_NOT64BITMODE, 0 }, 0, 0
|
||||
#endif
|
||||
},
|
||||
{
|
||||
@ -16095,6 +16182,12 @@ static insn_map insns[] = { // full x86 instructions
|
||||
X86_SBB8mi, X86_INS_SBB,
|
||||
#ifndef CAPSTONE_DIET
|
||||
{ X86_REG_EFLAGS, 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
|
||||
#endif
|
||||
},
|
||||
{
|
||||
X86_SBB8mi8, X86_INS_SBB,
|
||||
#ifndef CAPSTONE_DIET
|
||||
{ X86_REG_EFLAGS, 0 }, { X86_REG_EFLAGS, 0 }, { X86_GRP_NOT64BITMODE, 0 }, 0, 0
|
||||
#endif
|
||||
},
|
||||
{
|
||||
@ -17451,6 +17544,18 @@ static insn_map insns[] = { // full x86 instructions
|
||||
X86_SUB64rr_REV, X86_INS_SUB,
|
||||
#ifndef CAPSTONE_DIET
|
||||
{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
|
||||
#endif
|
||||
},
|
||||
{
|
||||
X86_SUB82_8mi8, X86_INS_SUB,
|
||||
#ifndef CAPSTONE_DIET
|
||||
{ 0 }, { X86_REG_EFLAGS, 0 }, { X86_GRP_NOT64BITMODE, 0 }, 0, 0
|
||||
#endif
|
||||
},
|
||||
{
|
||||
X86_SUB82_8ri8, X86_INS_SUB,
|
||||
#ifndef CAPSTONE_DIET
|
||||
{ 0 }, { X86_REG_EFLAGS, 0 }, { X86_GRP_NOT64BITMODE, 0 }, 0, 0
|
||||
#endif
|
||||
},
|
||||
{
|
||||
@ -17475,12 +17580,6 @@ static insn_map insns[] = { // full x86 instructions
|
||||
X86_SUB8ri, X86_INS_SUB,
|
||||
#ifndef CAPSTONE_DIET
|
||||
{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
|
||||
#endif
|
||||
},
|
||||
{
|
||||
X86_SUB8ri8, X86_INS_SUB,
|
||||
#ifndef CAPSTONE_DIET
|
||||
{ 0 }, { X86_REG_EFLAGS, 0 }, { X86_GRP_NOT64BITMODE, 0 }, 0, 0
|
||||
#endif
|
||||
},
|
||||
{
|
||||
@ -37707,6 +37806,18 @@ static insn_map insns[] = { // full x86 instructions
|
||||
X86_XOR64rr_REV, X86_INS_XOR,
|
||||
#ifndef CAPSTONE_DIET
|
||||
{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
|
||||
#endif
|
||||
},
|
||||
{
|
||||
X86_XOR82_8mi8, X86_INS_XOR,
|
||||
#ifndef CAPSTONE_DIET
|
||||
{ 0 }, { X86_REG_EFLAGS, 0 }, { X86_GRP_NOT64BITMODE, 0 }, 0, 0
|
||||
#endif
|
||||
},
|
||||
{
|
||||
X86_XOR82_8ri8, X86_INS_XOR,
|
||||
#ifndef CAPSTONE_DIET
|
||||
{ 0 }, { X86_REG_EFLAGS, 0 }, { X86_GRP_NOT64BITMODE, 0 }, 0, 0
|
||||
#endif
|
||||
},
|
||||
{
|
||||
@ -37731,12 +37842,6 @@ static insn_map insns[] = { // full x86 instructions
|
||||
X86_XOR8ri, X86_INS_XOR,
|
||||
#ifndef CAPSTONE_DIET
|
||||
{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
|
||||
#endif
|
||||
},
|
||||
{
|
||||
X86_XOR8ri8, X86_INS_XOR,
|
||||
#ifndef CAPSTONE_DIET
|
||||
{ 0 }, { X86_REG_EFLAGS, 0 }, { X86_GRP_NOT64BITMODE, 0 }, 0, 0
|
||||
#endif
|
||||
},
|
||||
{
|
||||
@ -37851,6 +37956,18 @@ static insn_map insns[] = { // full x86 instructions
|
||||
X86_XTEST, X86_INS_XTEST,
|
||||
#ifndef CAPSTONE_DIET
|
||||
{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
|
||||
#endif
|
||||
},
|
||||
{
|
||||
X86_fdisi8087_nop, X86_INS_FDISI8087_NOP,
|
||||
#ifndef CAPSTONE_DIET
|
||||
{ 0 }, { 0 }, { 0 }, 0, 0
|
||||
#endif
|
||||
},
|
||||
{
|
||||
X86_feni8087_nop, X86_INS_FENI8087_NOP,
|
||||
#ifndef CAPSTONE_DIET
|
||||
{ 0 }, { 0 }, { 0 }, 0, 0
|
||||
#endif
|
||||
},
|
||||
};
|
||||
@ -38048,6 +38165,12 @@ static insn_map insns[] = { // reduce x86 instructions
|
||||
X86_ADC64rr_REV, X86_INS_ADC,
|
||||
#ifndef CAPSTONE_DIET
|
||||
{ X86_REG_EFLAGS, 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
|
||||
#endif
|
||||
},
|
||||
{
|
||||
X86_ADC82_8ri8, X86_INS_ADC,
|
||||
#ifndef CAPSTONE_DIET
|
||||
{ X86_REG_EFLAGS, 0 }, { X86_REG_EFLAGS, 0 }, { X86_GRP_NOT64BITMODE, 0 }, 0, 0
|
||||
#endif
|
||||
},
|
||||
{
|
||||
@ -38060,6 +38183,12 @@ static insn_map insns[] = { // reduce x86 instructions
|
||||
X86_ADC8mi, X86_INS_ADC,
|
||||
#ifndef CAPSTONE_DIET
|
||||
{ X86_REG_EFLAGS, 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
|
||||
#endif
|
||||
},
|
||||
{
|
||||
X86_ADC8mi8, X86_INS_ADC,
|
||||
#ifndef CAPSTONE_DIET
|
||||
{ X86_REG_EFLAGS, 0 }, { X86_REG_EFLAGS, 0 }, { X86_GRP_NOT64BITMODE, 0 }, 0, 0
|
||||
#endif
|
||||
},
|
||||
{
|
||||
@ -38276,6 +38405,18 @@ static insn_map insns[] = { // reduce x86 instructions
|
||||
X86_ADD64rr_REV, X86_INS_ADD,
|
||||
#ifndef CAPSTONE_DIET
|
||||
{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
|
||||
#endif
|
||||
},
|
||||
{
|
||||
X86_ADD82_8mi8, X86_INS_ADD,
|
||||
#ifndef CAPSTONE_DIET
|
||||
{ 0 }, { X86_REG_EFLAGS, 0 }, { X86_GRP_NOT64BITMODE, 0 }, 0, 0
|
||||
#endif
|
||||
},
|
||||
{
|
||||
X86_ADD82_8ri8, X86_INS_ADD,
|
||||
#ifndef CAPSTONE_DIET
|
||||
{ 0 }, { X86_REG_EFLAGS, 0 }, { X86_GRP_NOT64BITMODE, 0 }, 0, 0
|
||||
#endif
|
||||
},
|
||||
{
|
||||
@ -38300,12 +38441,6 @@ static insn_map insns[] = { // reduce x86 instructions
|
||||
X86_ADD8ri, X86_INS_ADD,
|
||||
#ifndef CAPSTONE_DIET
|
||||
{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
|
||||
#endif
|
||||
},
|
||||
{
|
||||
X86_ADD8ri8, X86_INS_ADD,
|
||||
#ifndef CAPSTONE_DIET
|
||||
{ 0 }, { X86_REG_EFLAGS, 0 }, { X86_GRP_NOT64BITMODE, 0 }, 0, 0
|
||||
#endif
|
||||
},
|
||||
{
|
||||
@ -38510,6 +38645,18 @@ static insn_map insns[] = { // reduce x86 instructions
|
||||
X86_AND64rr_REV, X86_INS_AND,
|
||||
#ifndef CAPSTONE_DIET
|
||||
{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
|
||||
#endif
|
||||
},
|
||||
{
|
||||
X86_AND82_8mi8, X86_INS_AND,
|
||||
#ifndef CAPSTONE_DIET
|
||||
{ 0 }, { X86_REG_EFLAGS, 0 }, { X86_GRP_NOT64BITMODE, 0 }, 0, 0
|
||||
#endif
|
||||
},
|
||||
{
|
||||
X86_AND82_8ri8, X86_INS_AND,
|
||||
#ifndef CAPSTONE_DIET
|
||||
{ 0 }, { X86_REG_EFLAGS, 0 }, { X86_GRP_NOT64BITMODE, 0 }, 0, 0
|
||||
#endif
|
||||
},
|
||||
{
|
||||
@ -38534,12 +38681,6 @@ static insn_map insns[] = { // reduce x86 instructions
|
||||
X86_AND8ri, X86_INS_AND,
|
||||
#ifndef CAPSTONE_DIET
|
||||
{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
|
||||
#endif
|
||||
},
|
||||
{
|
||||
X86_AND8ri8, X86_INS_AND,
|
||||
#ifndef CAPSTONE_DIET
|
||||
{ 0 }, { X86_REG_EFLAGS, 0 }, { X86_GRP_NOT64BITMODE, 0 }, 0, 0
|
||||
#endif
|
||||
},
|
||||
{
|
||||
@ -40142,6 +40283,12 @@ static insn_map insns[] = { // reduce x86 instructions
|
||||
X86_CMP64rr_REV, X86_INS_CMP,
|
||||
#ifndef CAPSTONE_DIET
|
||||
{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
|
||||
#endif
|
||||
},
|
||||
{
|
||||
X86_CMP82_8ri8, X86_INS_CMP,
|
||||
#ifndef CAPSTONE_DIET
|
||||
{ 0 }, { X86_REG_EFLAGS, 0 }, { X86_GRP_NOT64BITMODE, 0 }, 0, 0
|
||||
#endif
|
||||
},
|
||||
{
|
||||
@ -40154,6 +40301,12 @@ static insn_map insns[] = { // reduce x86 instructions
|
||||
X86_CMP8mi, X86_INS_CMP,
|
||||
#ifndef CAPSTONE_DIET
|
||||
{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
|
||||
#endif
|
||||
},
|
||||
{
|
||||
X86_CMP8mi8, X86_INS_CMP,
|
||||
#ifndef CAPSTONE_DIET
|
||||
{ 0 }, { X86_REG_EFLAGS, 0 }, { X86_GRP_NOT64BITMODE, 0 }, 0, 0
|
||||
#endif
|
||||
},
|
||||
{
|
||||
@ -42710,6 +42863,12 @@ static insn_map insns[] = { // reduce x86 instructions
|
||||
X86_MOVSX64rm32, X86_INS_MOVSXD,
|
||||
#ifndef CAPSTONE_DIET
|
||||
{ 0 }, { 0 }, { 0 }, 0, 0
|
||||
#endif
|
||||
},
|
||||
{
|
||||
X86_MOVSX64rm32_alt, X86_INS_MOVSXD,
|
||||
#ifndef CAPSTONE_DIET
|
||||
{ 0 }, { 0 }, { X86_GRP_MODE64, 0 }, 0, 0
|
||||
#endif
|
||||
},
|
||||
{
|
||||
@ -43334,6 +43493,18 @@ static insn_map insns[] = { // reduce x86 instructions
|
||||
X86_OR64rr_REV, X86_INS_OR,
|
||||
#ifndef CAPSTONE_DIET
|
||||
{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
|
||||
#endif
|
||||
},
|
||||
{
|
||||
X86_OR82_8mi8, X86_INS_OR,
|
||||
#ifndef CAPSTONE_DIET
|
||||
{ 0 }, { X86_REG_EFLAGS, 0 }, { X86_GRP_NOT64BITMODE, 0 }, 0, 0
|
||||
#endif
|
||||
},
|
||||
{
|
||||
X86_OR82_8ri8, X86_INS_OR,
|
||||
#ifndef CAPSTONE_DIET
|
||||
{ 0 }, { X86_REG_EFLAGS, 0 }, { X86_GRP_NOT64BITMODE, 0 }, 0, 0
|
||||
#endif
|
||||
},
|
||||
{
|
||||
@ -43358,12 +43529,6 @@ static insn_map insns[] = { // reduce x86 instructions
|
||||
X86_OR8ri, X86_INS_OR,
|
||||
#ifndef CAPSTONE_DIET
|
||||
{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
|
||||
#endif
|
||||
},
|
||||
{
|
||||
X86_OR8ri8, X86_INS_OR,
|
||||
#ifndef CAPSTONE_DIET
|
||||
{ 0 }, { X86_REG_EFLAGS, 0 }, { X86_GRP_NOT64BITMODE, 0 }, 0, 0
|
||||
#endif
|
||||
},
|
||||
{
|
||||
@ -45158,6 +45323,12 @@ static insn_map insns[] = { // reduce x86 instructions
|
||||
X86_SBB64rr_REV, X86_INS_SBB,
|
||||
#ifndef CAPSTONE_DIET
|
||||
{ X86_REG_EFLAGS, 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
|
||||
#endif
|
||||
},
|
||||
{
|
||||
X86_SBB82_8ri8, X86_INS_SBB,
|
||||
#ifndef CAPSTONE_DIET
|
||||
{ X86_REG_EFLAGS, 0 }, { X86_REG_EFLAGS, 0 }, { X86_GRP_NOT64BITMODE, 0 }, 0, 0
|
||||
#endif
|
||||
},
|
||||
{
|
||||
@ -45170,6 +45341,12 @@ static insn_map insns[] = { // reduce x86 instructions
|
||||
X86_SBB8mi, X86_INS_SBB,
|
||||
#ifndef CAPSTONE_DIET
|
||||
{ X86_REG_EFLAGS, 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
|
||||
#endif
|
||||
},
|
||||
{
|
||||
X86_SBB8mi8, X86_INS_SBB,
|
||||
#ifndef CAPSTONE_DIET
|
||||
{ X86_REG_EFLAGS, 0 }, { X86_REG_EFLAGS, 0 }, { X86_GRP_NOT64BITMODE, 0 }, 0, 0
|
||||
#endif
|
||||
},
|
||||
{
|
||||
@ -46232,6 +46409,18 @@ static insn_map insns[] = { // reduce x86 instructions
|
||||
X86_SUB64rr_REV, X86_INS_SUB,
|
||||
#ifndef CAPSTONE_DIET
|
||||
{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
|
||||
#endif
|
||||
},
|
||||
{
|
||||
X86_SUB82_8mi8, X86_INS_SUB,
|
||||
#ifndef CAPSTONE_DIET
|
||||
{ 0 }, { X86_REG_EFLAGS, 0 }, { X86_GRP_NOT64BITMODE, 0 }, 0, 0
|
||||
#endif
|
||||
},
|
||||
{
|
||||
X86_SUB82_8ri8, X86_INS_SUB,
|
||||
#ifndef CAPSTONE_DIET
|
||||
{ 0 }, { X86_REG_EFLAGS, 0 }, { X86_GRP_NOT64BITMODE, 0 }, 0, 0
|
||||
#endif
|
||||
},
|
||||
{
|
||||
@ -46256,12 +46445,6 @@ static insn_map insns[] = { // reduce x86 instructions
|
||||
X86_SUB8ri, X86_INS_SUB,
|
||||
#ifndef CAPSTONE_DIET
|
||||
{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
|
||||
#endif
|
||||
},
|
||||
{
|
||||
X86_SUB8ri8, X86_INS_SUB,
|
||||
#ifndef CAPSTONE_DIET
|
||||
{ 0 }, { X86_REG_EFLAGS, 0 }, { X86_GRP_NOT64BITMODE, 0 }, 0, 0
|
||||
#endif
|
||||
},
|
||||
{
|
||||
@ -47114,6 +47297,18 @@ static insn_map insns[] = { // reduce x86 instructions
|
||||
X86_XOR64rr_REV, X86_INS_XOR,
|
||||
#ifndef CAPSTONE_DIET
|
||||
{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
|
||||
#endif
|
||||
},
|
||||
{
|
||||
X86_XOR82_8mi8, X86_INS_XOR,
|
||||
#ifndef CAPSTONE_DIET
|
||||
{ 0 }, { X86_REG_EFLAGS, 0 }, { X86_GRP_NOT64BITMODE, 0 }, 0, 0
|
||||
#endif
|
||||
},
|
||||
{
|
||||
X86_XOR82_8ri8, X86_INS_XOR,
|
||||
#ifndef CAPSTONE_DIET
|
||||
{ 0 }, { X86_REG_EFLAGS, 0 }, { X86_GRP_NOT64BITMODE, 0 }, 0, 0
|
||||
#endif
|
||||
},
|
||||
{
|
||||
@ -47138,12 +47333,6 @@ static insn_map insns[] = { // reduce x86 instructions
|
||||
X86_XOR8ri, X86_INS_XOR,
|
||||
#ifndef CAPSTONE_DIET
|
||||
{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
|
||||
#endif
|
||||
},
|
||||
{
|
||||
X86_XOR8ri8, X86_INS_XOR,
|
||||
#ifndef CAPSTONE_DIET
|
||||
{ 0 }, { X86_REG_EFLAGS, 0 }, { X86_GRP_NOT64BITMODE, 0 }, 0, 0
|
||||
#endif
|
||||
},
|
||||
{
|
||||
|
@ -70,6 +70,8 @@ public class TestArm {
|
||||
System.out.printf("\t\t\toperands[%d].mem.scale: %d\n", c, (i.value.mem.scale));
|
||||
if (i.value.mem.disp != 0)
|
||||
System.out.printf("\t\t\toperands[%d].mem.disp: 0x%x\n", c, (i.value.mem.disp));
|
||||
if (i.value.mem.lshift != 0)
|
||||
System.out.printf("\t\t\toperands[%d].mem.lshift: 0x%x\n", c, (i.value.mem.lshift));
|
||||
}
|
||||
if (i.vector_index > 0)
|
||||
System.out.printf("\t\t\toperands[%d].vector_index = %d\n", c, (i.vector_index));
|
||||
|
@ -18,10 +18,11 @@ public class Arm {
|
||||
public int index;
|
||||
public int scale;
|
||||
public int disp;
|
||||
public int lshift;
|
||||
|
||||
@Override
|
||||
public List getFieldOrder() {
|
||||
return Arrays.asList("base", "index", "scale", "disp");
|
||||
return Arrays.asList("base", "index", "scale", "disp", "lshift");
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -273,7 +273,7 @@ public class Capstone {
|
||||
}
|
||||
|
||||
// Capstone API version
|
||||
public static final int CS_API_MAJOR = 3;
|
||||
public static final int CS_API_MAJOR = 4;
|
||||
public static final int CS_API_MINOR = 0;
|
||||
|
||||
// architectures
|
||||
|
File diff suppressed because it is too large
Load Diff
@ -18,7 +18,8 @@ type arm_op_mem = {
|
||||
base: int;
|
||||
index: int;
|
||||
scale: int;
|
||||
disp: int
|
||||
disp: int;
|
||||
lshift: int;
|
||||
}
|
||||
|
||||
type arm_op_value =
|
||||
|
@ -69,6 +69,7 @@ let _ARM_SYSREG_FAULTMASK = 277;;
|
||||
let _ARM_SYSREG_CONTROL = 278;;
|
||||
|
||||
(* The memory barrier constants map directly to the 4-bit encoding of *)
|
||||
|
||||
(* the option field for Memory Barrier operations. *)
|
||||
|
||||
let _ARM_MB_INVALID = 0;;
|
||||
|
@ -147,11 +147,12 @@ CAMLprim value _cs_disasm(cs_arch arch, csh handle, const uint8_t * code, size_t
|
||||
break;
|
||||
case ARM_OP_MEM:
|
||||
tmp = caml_alloc(1, 6);
|
||||
tmp3 = caml_alloc(4, 0);
|
||||
tmp3 = caml_alloc(5, 0);
|
||||
Store_field(tmp3, 0, Val_int(insn[j-1].detail->arm.operands[i].mem.base));
|
||||
Store_field(tmp3, 1, Val_int(insn[j-1].detail->arm.operands[i].mem.index));
|
||||
Store_field(tmp3, 2, Val_int(insn[j-1].detail->arm.operands[i].mem.scale));
|
||||
Store_field(tmp3, 3, Val_int(insn[j-1].detail->arm.operands[i].mem.disp));
|
||||
Store_field(tmp3, 4, Val_int(insn[j-1].detail->arm.operands[i].mem.lshift));
|
||||
Store_field(tmp, 0, tmp3);
|
||||
break;
|
||||
case ARM_OP_SETEND:
|
||||
|
@ -46,6 +46,8 @@ let print_op handle i op =
|
||||
printf "\t\t\toperands[%u].mem.scale: %d\n" i mem.scale;
|
||||
if mem.disp != 0 then
|
||||
printf "\t\t\toperands[%u].mem.disp: 0x%x\n" i mem.disp;
|
||||
if mem.lshift != 0 then
|
||||
printf "\t\t\toperands[%u].mem.lshift: 0x%x\n" i mem.lshift;
|
||||
);
|
||||
| ARM_OP_SETEND sd -> printf "\t\top[%d]: SETEND = %u\n" i sd;
|
||||
);
|
||||
|
File diff suppressed because it is too large
Load Diff
@ -95,7 +95,7 @@ __all__ = [
|
||||
# Capstone C interface
|
||||
|
||||
# API version
|
||||
CS_API_MAJOR = 3
|
||||
CS_API_MAJOR = 4
|
||||
CS_API_MINOR = 0
|
||||
|
||||
# architectures
|
||||
|
@ -10,6 +10,7 @@ class ArmOpMem(ctypes.Structure):
|
||||
('index', ctypes.c_uint),
|
||||
('scale', ctypes.c_int),
|
||||
('disp', ctypes.c_int),
|
||||
('lshift', ctypes.c_int),
|
||||
)
|
||||
|
||||
class ArmOpShift(ctypes.Structure):
|
||||
|
File diff suppressed because it is too large
Load Diff
@ -10,9 +10,13 @@ from distutils.command.build_clib import build_clib
|
||||
from distutils.command.sdist import sdist
|
||||
from distutils.core import setup
|
||||
|
||||
<<<<<<< HEAD
|
||||
|
||||
VERSION = '3.0'
|
||||
SYSTEM = platform.system().lower()
|
||||
=======
|
||||
VERSION = '4.0'
|
||||
>>>>>>> 58fbf2f6272ab2e77152041717e7524ef0b9b036
|
||||
|
||||
class LazyList(list):
|
||||
"""A list which re-evaluates each time.
|
||||
|
@ -3,7 +3,7 @@ from distutils.extension import Extension
|
||||
from distutils.command.install_lib import install_lib as _install
|
||||
from Cython.Distutils import build_ext
|
||||
|
||||
VERSION = '3.0'
|
||||
VERSION = '4.0'
|
||||
|
||||
compile_args = ['-O3', '-fomit-frame-pointer']
|
||||
|
||||
|
@ -10,7 +10,7 @@ from xprint import to_hex, to_x, to_x_32
|
||||
|
||||
ARM_CODE = b"\xED\xFF\xFF\xEB\x04\xe0\x2d\xe5\x00\x00\x00\x00\xe0\x83\x22\xe5\xf1\x02\x03\x0e\x00\x00\xa0\xe3\x02\x30\xc1\xe7\x00\x00\x53\xe3\x00\x02\x01\xf1\x05\x40\xd0\xe8\xf4\x80\x00\x00"
|
||||
ARM_CODE2 = b"\xd1\xe8\x00\xf0\xf0\x24\x04\x07\x1f\x3c\xf2\xc0\x00\x00\x4f\xf0\x00\x01\x46\x6c"
|
||||
THUMB_CODE = b"\x70\x47\xeb\x46\x83\xb0\xc9\x68\x1f\xb1\x30\xbf\xaf\xf3\x20\x84"
|
||||
THUMB_CODE = b"\x70\x47\xeb\x46\x83\xb0\xc9\x68\x1f\xb1\x30\xbf\xaf\xf3\x20\x84\x52\xf8\x23\xf0"
|
||||
THUMB_CODE2 = b"\x4f\xf0\x00\x01\xbd\xe8\x00\x88\xd1\xe8\x00\xf0\x18\xbf\xad\xbf\xf3\xff\x0b\x0c\x86\xf3\x00\x89\x80\xf3\x00\x8c\x4f\xfa\x99\xf6\xd0\xff\xa2\x01"
|
||||
THUMB_MCLASS = b"\xef\xf3\x02\x80"
|
||||
ARMV8 = b"\xe0\x3b\xb2\xee\x42\x00\x01\xe1\x51\xf0\x7f\xf5"
|
||||
@ -68,6 +68,9 @@ def print_insn_detail(insn):
|
||||
if i.mem.disp != 0:
|
||||
print("\t\t\toperands[%u].mem.disp: 0x%s" \
|
||||
% (c, to_x_32(i.mem.disp)))
|
||||
if i.mem.lshift != 0:
|
||||
print("\t\t\toperands[%u].mem.lshift: 0x%s" \
|
||||
% (c, to_x_32(i.mem.lshift)))
|
||||
|
||||
if i.shift.type != ARM_SFT_INVALID and i.shift.value:
|
||||
print("\t\t\tShift: %u = %u" \
|
||||
@ -116,7 +119,6 @@ def test_class():
|
||||
for insn in md.disasm(code, 0x1000):
|
||||
print_insn_detail(insn)
|
||||
print ()
|
||||
print ("0x%x:\n" % (insn.address + insn.size))
|
||||
except CsError as e:
|
||||
print("ERROR: %s" % e)
|
||||
|
||||
|
@ -217,6 +217,7 @@ typedef struct arm_op_mem {
|
||||
unsigned int index; // index register
|
||||
int scale; // scale for index register (can be 1, or -1)
|
||||
int disp; // displacement/offset value
|
||||
int lshift; // left-shift on index register, or 0 if irrelevant.
|
||||
} arm_op_mem;
|
||||
|
||||
// Instruction operand
|
||||
|
@ -37,7 +37,7 @@ extern "C" {
|
||||
#endif
|
||||
|
||||
// Capstone API version
|
||||
#define CS_API_MAJOR 3
|
||||
#define CS_API_MAJOR 4
|
||||
#define CS_API_MINOR 0
|
||||
|
||||
// Macro to create combined version which can be compared to
|
||||
|
@ -30,8 +30,10 @@ typedef enum x86_reg {
|
||||
X86_REG_CR6, X86_REG_CR7, X86_REG_CR8, X86_REG_CR9, X86_REG_CR10,
|
||||
X86_REG_CR11, X86_REG_CR12, X86_REG_CR13, X86_REG_CR14, X86_REG_CR15,
|
||||
X86_REG_DR0, X86_REG_DR1, X86_REG_DR2, X86_REG_DR3, X86_REG_DR4,
|
||||
X86_REG_DR5, X86_REG_DR6, X86_REG_DR7, X86_REG_FP0, X86_REG_FP1,
|
||||
X86_REG_FP2, X86_REG_FP3, X86_REG_FP4, X86_REG_FP5, X86_REG_FP6, X86_REG_FP7,
|
||||
X86_REG_DR5, X86_REG_DR6, X86_REG_DR7, X86_REG_DR8, X86_REG_DR9,
|
||||
X86_REG_DR10, X86_REG_DR11, X86_REG_DR12, X86_REG_DR13, X86_REG_DR14,
|
||||
X86_REG_DR15, X86_REG_FP0, X86_REG_FP1, X86_REG_FP2, X86_REG_FP3,
|
||||
X86_REG_FP4, X86_REG_FP5, X86_REG_FP6, X86_REG_FP7,
|
||||
X86_REG_K0, X86_REG_K1, X86_REG_K2, X86_REG_K3, X86_REG_K4,
|
||||
X86_REG_K5, X86_REG_K6, X86_REG_K7, X86_REG_MM0, X86_REG_MM1,
|
||||
X86_REG_MM2, X86_REG_MM3, X86_REG_MM4, X86_REG_MM5, X86_REG_MM6,
|
||||
@ -96,14 +98,6 @@ typedef enum x86_sse_cc {
|
||||
X86_SSE_CC_NLT,
|
||||
X86_SSE_CC_NLE,
|
||||
X86_SSE_CC_ORD,
|
||||
X86_SSE_CC_EQ_UQ,
|
||||
X86_SSE_CC_NGE,
|
||||
X86_SSE_CC_NGT,
|
||||
X86_SSE_CC_FALSE,
|
||||
X86_SSE_CC_NEQ_OQ,
|
||||
X86_SSE_CC_GE,
|
||||
X86_SSE_CC_GT,
|
||||
X86_SSE_CC_TRUE,
|
||||
} x86_sse_cc;
|
||||
|
||||
//> AVX Code Condition type
|
||||
@ -156,7 +150,8 @@ typedef enum x86_avx_rm {
|
||||
typedef enum x86_prefix {
|
||||
X86_PREFIX_LOCK = 0xf0, // lock (cs_x86.prefix[0]
|
||||
X86_PREFIX_REP = 0xf3, // rep (cs_x86.prefix[0]
|
||||
X86_PREFIX_REPNE = 0xf2, // repne (cs_x86.prefix[0]
|
||||
X86_PREFIX_REPE = 0xf3, // repe/repz (cs_x86.prefix[0]
|
||||
X86_PREFIX_REPNE = 0xf2, // repne/repnz (cs_x86.prefix[0]
|
||||
|
||||
X86_PREFIX_CS = 0x2e, // segment override CS (cs_x86.prefix[1]
|
||||
X86_PREFIX_SS = 0x36, // segment override SS (cs_x86.prefix[1]
|
||||
@ -443,6 +438,7 @@ typedef enum x86_insn {
|
||||
X86_INS_FPREM,
|
||||
X86_INS_FPREM1,
|
||||
X86_INS_FPTAN,
|
||||
X86_INS_FFREEP,
|
||||
X86_INS_FRNDINT,
|
||||
X86_INS_FRSTOR,
|
||||
X86_INS_FNSAVE,
|
||||
@ -935,6 +931,7 @@ typedef enum x86_insn {
|
||||
X86_INS_FST,
|
||||
X86_INS_FSTP,
|
||||
X86_INS_FSTPNCE,
|
||||
X86_INS_FXCH,
|
||||
X86_INS_SUBPD,
|
||||
X86_INS_SUBPS,
|
||||
X86_INS_FSUBR,
|
||||
@ -1534,7 +1531,6 @@ typedef enum x86_insn {
|
||||
X86_INS_XACQUIRE,
|
||||
X86_INS_XBEGIN,
|
||||
X86_INS_XCHG,
|
||||
X86_INS_FXCH,
|
||||
X86_INS_XCRYPTCBC,
|
||||
X86_INS_XCRYPTCFB,
|
||||
X86_INS_XCRYPTCTR,
|
||||
@ -1555,8 +1551,10 @@ typedef enum x86_insn {
|
||||
X86_INS_XSHA256,
|
||||
X86_INS_XSTORE,
|
||||
X86_INS_XTEST,
|
||||
X86_INS_FDISI8087_NOP,
|
||||
X86_INS_FENI8087_NOP,
|
||||
|
||||
X86_INS_ENDING, // mark the end of the list of insn
|
||||
X86_INS_ENDING, // mark the end of the list of insn
|
||||
} x86_insn;
|
||||
|
||||
//> Group of X86 instructions
|
||||
|
@ -2,8 +2,8 @@
|
||||
# To be used to generate capstone.pc for pkg-config
|
||||
|
||||
# version major & minor
|
||||
PKG_MAJOR = 3
|
||||
PKG_MAJOR = 4
|
||||
PKG_MINOR = 0
|
||||
|
||||
# version bugfix level. Example: PKG_EXTRA = 1
|
||||
PKG_EXTRA = 1
|
||||
PKG_EXTRA =
|
||||
|
1
suite/x86/README
Normal file
1
suite/x86/README
Normal file
@ -0,0 +1 @@
|
||||
This directory contains some tools to test X86 engine.
|
2
suite/x86/verify/README
Normal file
2
suite/x86/verify/README
Normal file
@ -0,0 +1,2 @@
|
||||
This directory contains some tools to verify Capstone output,
|
||||
as well as semantics of X86 machine code.
|
@ -70,6 +70,8 @@ static void print_insn_detail(cs_insn *ins)
|
||||
printf("\t\t\toperands[%u].mem.scale: %u\n", i, op->mem.scale);
|
||||
if (op->mem.disp != 0)
|
||||
printf("\t\t\toperands[%u].mem.disp: 0x%x\n", i, op->mem.disp);
|
||||
if (op->mem.lshift != 0)
|
||||
printf("\t\t\toperands[%u].mem.lshift: 0x%x\n", i, op->mem.lshift);
|
||||
|
||||
break;
|
||||
case ARM_OP_PIMM:
|
||||
@ -192,7 +194,7 @@ static void test()
|
||||
//#define THUMB_CODE "\x01\x47" // bx r0
|
||||
//#define THUMB_CODE "\x02\x47" // bx r0
|
||||
//#define THUMB_CODE "\x0a\xbf" // itet eq
|
||||
#define THUMB_CODE "\x70\x47\xeb\x46\x83\xb0\xc9\x68\x1f\xb1\x30\xbf\xaf\xf3\x20\x84"
|
||||
#define THUMB_CODE "\x70\x47\xeb\x46\x83\xb0\xc9\x68\x1f\xb1\x30\xbf\xaf\xf3\x20\x84\x52\xf8\x23\xf0"
|
||||
#define THUMB_CODE2 "\x4f\xf0\x00\x01\xbd\xe8\x00\x88\xd1\xe8\x00\xf0\x18\xbf\xad\xbf\xf3\xff\x0b\x0c\x86\xf3\x00\x89\x80\xf3\x00\x8c\x4f\xfa\x99\xf6\xd0\xff\xa2\x01"
|
||||
#define THUMB_MCLASS "\xef\xf3\x02\x80"
|
||||
#define ARMV8 "\xe0\x3b\xb2\xee\x42\x00\x01\xe1\x51\xf0\x7f\xf5"
|
||||
|
Loading…
Reference in New Issue
Block a user