Changeset 7000 in vbox for trunk/include/VBox
- Timestamp:
- Feb 18, 2008 4:49:46 PM (17 years ago)
- svn:sync-xref-src-repo-rev:
- 28198
- Location:
- trunk/include/VBox
- Files:
-
- 2 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/include/VBox/dis.h
r5999 r7000 66 66 /** rep(e) prefix (not a prefix, but we'll treat is as one). */ 67 67 #define PREFIX_REPNE 32 68 /** REX prefix (64 bits) */ 69 #define PREFIX_REX 64 70 /** @} */ 71 72 /** 64 bits prefix byte flags 73 * @{ 74 */ 75 #define PREFIX_REX_OP_2_FLAGS(a) (a - OP_REX) 76 #define PREFIX_REX_FLAGS PREFIX_REX_OP_2_FLAGS(OP_REX) 77 #define PREFIX_REX_FLAGS_B PREFIX_REX_OP_2_FLAGS(OP_REX_B) 78 #define PREFIX_REX_FLAGS_X PREFIX_REX_OP_2_FLAGS(OP_REX_X) 79 #define PREFIX_REX_FLAGS_XB PREFIX_REX_OP_2_FLAGS(OP_REX_XB) 80 #define PREFIX_REX_FLAGS_R PREFIX_REX_OP_2_FLAGS(OP_REX_R) 81 #define PREFIX_REX_FLAGS_RB PREFIX_REX_OP_2_FLAGS(OP_REX_RB) 82 #define PREFIX_REX_FLAGS_RX PREFIX_REX_OP_2_FLAGS(OP_REX_RX) 83 #define PREFIX_REX_FLAGS_RXB PREFIX_REX_OP_2_FLAGS(OP_REX_RXB) 84 #define PREFIX_REX_FLAGS_W PREFIX_REX_OP_2_FLAGS(OP_REX_W) 85 #define PREFIX_REX_FLAGS_WB PREFIX_REX_OP_2_FLAGS(OP_REX_WB) 86 #define PREFIX_REX_FLAGS_WX PREFIX_REX_OP_2_FLAGS(OP_REX_WX) 87 #define PREFIX_REX_FLAGS_WXB PREFIX_REX_OP_2_FLAGS(OP_REX_WXB) 88 #define PREFIX_REX_FLAGS_WR PREFIX_REX_OP_2_FLAGS(OP_REX_WR) 89 #define PREFIX_REX_FLAGS_WRB PREFIX_REX_OP_2_FLAGS(OP_REX_WRB) 90 #define PREFIX_REX_FLAGS_WRX PREFIX_REX_OP_2_FLAGS(OP_REX_WRX) 91 #define PREFIX_REX_FLAGS_WRXB PREFIX_REX_OP_2_FLAGS(OP_REX_WRXB) 68 92 /** @} */ 69 93 … … 71 95 * Operand type. 72 96 */ 73 #define OPTYPE_INVALID RT_BIT(0) 74 #define OPTYPE_HARMLESS RT_BIT(1) 75 #define OPTYPE_CONTROLFLOW RT_BIT(2) 76 #define OPTYPE_POTENTIALLY_DANGEROUS RT_BIT(3) 77 #define OPTYPE_DANGEROUS RT_BIT(4) 78 #define OPTYPE_PORTIO RT_BIT(5) 79 #define OPTYPE_PRIVILEGED RT_BIT(6) 80 #define OPTYPE_PRIVILEGED_NOTRAP RT_BIT(7) 81 #define OPTYPE_UNCOND_CONTROLFLOW RT_BIT(8) 82 #define OPTYPE_RELATIVE_CONTROLFLOW RT_BIT(9) 83 #define OPTYPE_COND_CONTROLFLOW RT_BIT(10) 84 #define OPTYPE_INTERRUPT RT_BIT(11) 85 #define OPTYPE_ILLEGAL RT_BIT(12) 86 #define OPTYPE_RRM_DANGEROUS RT_BIT(14) /**< Some additional dangerouse ones when recompiling raw r0. */ 87 #define OPTYPE_RRM_DANGEROUS_16 RT_BIT(15) /**< Some additional dangerouse ones when recompiling 16-bit raw r0. */ 88 #define OPTYPE_RRM_MASK (OPTYPE_RRM_DANGEROUS | OPTYPE_RRM_DANGEROUS_16) 89 #define OPTYPE_INHIBIT_IRQS RT_BIT(16) /**< Will or can inhibit irqs (sti, pop ss, mov ss) */ 90 #define OPTYPE_PORTIO_READ RT_BIT(17) 91 #define OPTYPE_PORTIO_WRITE RT_BIT(18) 92 #define OPTYPE_ALL (0xffffffff) 97 #define OPTYPE_INVALID RT_BIT(0) 98 #define OPTYPE_HARMLESS RT_BIT(1) 99 #define OPTYPE_CONTROLFLOW RT_BIT(2) 100 #define OPTYPE_POTENTIALLY_DANGEROUS RT_BIT(3) 101 #define OPTYPE_DANGEROUS RT_BIT(4) 102 #define OPTYPE_PORTIO RT_BIT(5) 103 #define OPTYPE_PRIVILEGED RT_BIT(6) 104 #define OPTYPE_PRIVILEGED_NOTRAP RT_BIT(7) 105 #define OPTYPE_UNCOND_CONTROLFLOW RT_BIT(8) 106 #define OPTYPE_RELATIVE_CONTROLFLOW RT_BIT(9) 107 #define OPTYPE_COND_CONTROLFLOW RT_BIT(10) 108 #define OPTYPE_INTERRUPT RT_BIT(11) 109 #define OPTYPE_ILLEGAL RT_BIT(12) 110 #define OPTYPE_RRM_DANGEROUS RT_BIT(14) /**< Some additional dangerouse ones when recompiling raw r0. */ 111 #define OPTYPE_RRM_DANGEROUS_16 RT_BIT(15) /**< Some additional dangerouse ones when recompiling 16-bit raw r0. */ 112 #define OPTYPE_RRM_MASK (OPTYPE_RRM_DANGEROUS | OPTYPE_RRM_DANGEROUS_16) 113 #define OPTYPE_INHIBIT_IRQS RT_BIT(16) /**< Will or can inhibit irqs (sti, pop ss, mov ss) */ 114 #define OPTYPE_PORTIO_READ RT_BIT(17) 115 #define OPTYPE_PORTIO_WRITE RT_BIT(18) 116 #define OPTYPE_INVALID_64 RT_BIT(19) /**< Invalid in 64 bits mode */ 117 #define OPTYPE_ONLY_64 RT_BIT(20) /**< Only valid in 64 bits mode */ 118 #define OPTYPE_DEFAULT_64_OP_SIZE RT_BIT(21) /**< Default 64 bits operand size */ 119 #define OPTYPE_FORCED_64_OP_SIZE RT_BIT(22) /**< Forced 64 bits operand size; regardless of prefix bytes */ 120 #define OPTYPE_ALL (0xffffffff) 93 121 94 122 /** Parameter usage flags. … … 348 376 /** segment prefix value. */ 349 377 uint32_t prefix_seg; 378 /** rex prefix value (64 bits only */ 379 uint32_t prefix_rex; 350 380 /** addressing mode (16 or 32 bits). (CPUMODE_*) */ 351 381 uint32_t addrmode; -
trunk/include/VBox/disopcode.h
r5999 r7000 581 581 #define OP_MOV_TR 601 582 582 583 584 /* 64 bits prefix bytes */ 585 #define OP_REX 0x40 586 #define OP_REX_B 0x41 587 #define OP_REX_X 0x42 588 #define OP_REX_XB 0x43 589 #define OP_REX_R 0x44 590 #define OP_REX_RB 0x45 591 #define OP_REX_RX 0x46 592 #define OP_REX_RXB 0x47 593 #define OP_REX_W 0x48 594 #define OP_REX_WB 0x49 595 #define OP_REX_WX 0x4A 596 #define OP_REX_WXB 0x4B 597 #define OP_REX_WR 0x4C 598 #define OP_REX_WRB 0x4D 599 #define OP_REX_WRX 0x4E 600 #define OP_REX_WRXB 0x4F 601 583 602 /** @} */ 584 603
Note:
See TracChangeset
for help on using the changeset viewer.