VirtualBox

Changeset 8299 in vbox for trunk/include/VBox/dis.h


Ignore:
Timestamp:
Apr 22, 2008 3:17:50 PM (17 years ago)
Author:
vboxsync
svn:sync-xref-src-repo-rev:
30054
Message:

Updates for disassembling 64 bits instructions

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/include/VBox/dis.h

    r8234 r8299  
    6060#define PREFIX_NONE                     0
    6161/** non-default address size. */
    62 #define PREFIX_ADDRSIZE                 1
     62#define PREFIX_ADDRSIZE                 RT_BIT(0)
    6363/** non-default operand size. */
    64 #define PREFIX_OPSIZE                   2
     64#define PREFIX_OPSIZE                   RT_BIT(1)
    6565/** lock prefix. */
    66 #define PREFIX_LOCK                     4
     66#define PREFIX_LOCK                     RT_BIT(2)
    6767/** segment prefix. */
    68 #define PREFIX_SEG                      8
     68#define PREFIX_SEG                      RT_BIT(3)
    6969/** rep(e) prefix (not a prefix, but we'll treat is as one). */
    70 #define PREFIX_REP                      16
     70#define PREFIX_REP                      RT_BIT(4)
    7171/** rep(e) prefix (not a prefix, but we'll treat is as one). */
    72 #define PREFIX_REPNE                    32
     72#define PREFIX_REPNE                    RT_BIT(5)
    7373/** REX prefix (64 bits) */
    74 #define PREFIX_REX                      64
     74#define PREFIX_REX                      RT_BIT(6)
    7575/** @} */
    7676
     
    7878 * @{
    7979 */
    80 #define PREFIX_REX_OP_2_FLAGS(a)        (a - OP_REX)
    81 #define PREFIX_REX_FLAGS                PREFIX_REX_OP_2_FLAGS(OP_REX)
    82 #define PREFIX_REX_FLAGS_B              PREFIX_REX_OP_2_FLAGS(OP_REX_B)
    83 #define PREFIX_REX_FLAGS_X              PREFIX_REX_OP_2_FLAGS(OP_REX_X)
    84 #define PREFIX_REX_FLAGS_XB             PREFIX_REX_OP_2_FLAGS(OP_REX_XB)
    85 #define PREFIX_REX_FLAGS_R              PREFIX_REX_OP_2_FLAGS(OP_REX_R)
    86 #define PREFIX_REX_FLAGS_RB             PREFIX_REX_OP_2_FLAGS(OP_REX_RB)
    87 #define PREFIX_REX_FLAGS_RX             PREFIX_REX_OP_2_FLAGS(OP_REX_RX)
    88 #define PREFIX_REX_FLAGS_RXB            PREFIX_REX_OP_2_FLAGS(OP_REX_RXB)
    89 #define PREFIX_REX_FLAGS_W              PREFIX_REX_OP_2_FLAGS(OP_REX_W)
    90 #define PREFIX_REX_FLAGS_WB             PREFIX_REX_OP_2_FLAGS(OP_REX_WB)
    91 #define PREFIX_REX_FLAGS_WX             PREFIX_REX_OP_2_FLAGS(OP_REX_WX)
    92 #define PREFIX_REX_FLAGS_WXB            PREFIX_REX_OP_2_FLAGS(OP_REX_WXB)
    93 #define PREFIX_REX_FLAGS_WR             PREFIX_REX_OP_2_FLAGS(OP_REX_WR)
    94 #define PREFIX_REX_FLAGS_WRB            PREFIX_REX_OP_2_FLAGS(OP_REX_WRB)
    95 #define PREFIX_REX_FLAGS_WRX            PREFIX_REX_OP_2_FLAGS(OP_REX_WRX)
    96 #define PREFIX_REX_FLAGS_WRXB           PREFIX_REX_OP_2_FLAGS(OP_REX_WRXB)
     80#define PREFIX_REX_OP_2_FLAGS(a)        (a - OP_PARM_REX_START)
     81#define PREFIX_REX_FLAGS                PREFIX_REX_OP_2_FLAGS(OP_PARM_REX)
     82#define PREFIX_REX_FLAGS_B              PREFIX_REX_OP_2_FLAGS(OP_PARM_REX_B)
     83#define PREFIX_REX_FLAGS_X              PREFIX_REX_OP_2_FLAGS(OP_PARM_REX_X)
     84#define PREFIX_REX_FLAGS_XB             PREFIX_REX_OP_2_FLAGS(OP_PARM_REX_XB)
     85#define PREFIX_REX_FLAGS_R              PREFIX_REX_OP_2_FLAGS(OP_PARM_REX_R)
     86#define PREFIX_REX_FLAGS_RB             PREFIX_REX_OP_2_FLAGS(OP_PARM_REX_RB)
     87#define PREFIX_REX_FLAGS_RX             PREFIX_REX_OP_2_FLAGS(OP_PARM_REX_RX)
     88#define PREFIX_REX_FLAGS_RXB            PREFIX_REX_OP_2_FLAGS(OP_PARM_REX_RXB)
     89#define PREFIX_REX_FLAGS_W              PREFIX_REX_OP_2_FLAGS(OP_PARM_REX_W)
     90#define PREFIX_REX_FLAGS_WB             PREFIX_REX_OP_2_FLAGS(OP_PARM_REX_WB)
     91#define PREFIX_REX_FLAGS_WX             PREFIX_REX_OP_2_FLAGS(OP_PARM_REX_WX)
     92#define PREFIX_REX_FLAGS_WXB            PREFIX_REX_OP_2_FLAGS(OP_PARM_REX_WXB)
     93#define PREFIX_REX_FLAGS_WR             PREFIX_REX_OP_2_FLAGS(OP_PARM_REX_WR)
     94#define PREFIX_REX_FLAGS_WRB            PREFIX_REX_OP_2_FLAGS(OP_PARM_REX_WRB)
     95#define PREFIX_REX_FLAGS_WRX            PREFIX_REX_OP_2_FLAGS(OP_PARM_REX_WRX)
     96#define PREFIX_REX_FLAGS_WRXB           PREFIX_REX_OP_2_FLAGS(OP_PARM_REX_WRXB)
    9797/** @} */
    9898
Note: See TracChangeset for help on using the changeset viewer.

© 2025 Oracle Support Privacy / Do Not Sell My Info Terms of Use Trademark Policy Automated Access Etiquette