LLVM API Documentation

Classes | Namespaces | Defines | Typedefs | Enumerations | Functions
X86DisassemblerDecoder.h File Reference
#include "X86DisassemblerDecoderCommon.h"
#include "llvm/ADT/ArrayRef.h"
Include dependency graph for X86DisassemblerDecoder.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  llvm::X86Disassembler::InstructionSpecifier
struct  llvm::X86Disassembler::InternalInstruction
 The x86 internal instruction, which is produced by the decoder. More...

Namespaces

namespace  llvm
 

List of target independent CodeGen pass IDs.


namespace  llvm::X86Disassembler

Defines

#define modFromModRM(modRM)   (((modRM) & 0xc0) >> 6)
#define regFromModRM(modRM)   (((modRM) & 0x38) >> 3)
#define rmFromModRM(modRM)   ((modRM) & 0x7)
#define scaleFromSIB(sib)   (((sib) & 0xc0) >> 6)
#define indexFromSIB(sib)   (((sib) & 0x38) >> 3)
#define baseFromSIB(sib)   ((sib) & 0x7)
#define wFromREX(rex)   (((rex) & 0x8) >> 3)
#define rFromREX(rex)   (((rex) & 0x4) >> 2)
#define xFromREX(rex)   (((rex) & 0x2) >> 1)
#define bFromREX(rex)   ((rex) & 0x1)
#define rFromEVEX2of4(evex)   (((~(evex)) & 0x80) >> 7)
#define xFromEVEX2of4(evex)   (((~(evex)) & 0x40) >> 6)
#define bFromEVEX2of4(evex)   (((~(evex)) & 0x20) >> 5)
#define r2FromEVEX2of4(evex)   (((~(evex)) & 0x10) >> 4)
#define mmFromEVEX2of4(evex)   ((evex) & 0x3)
#define wFromEVEX3of4(evex)   (((evex) & 0x80) >> 7)
#define vvvvFromEVEX3of4(evex)   (((~(evex)) & 0x78) >> 3)
#define ppFromEVEX3of4(evex)   ((evex) & 0x3)
#define zFromEVEX4of4(evex)   (((evex) & 0x80) >> 7)
#define l2FromEVEX4of4(evex)   (((evex) & 0x40) >> 6)
#define lFromEVEX4of4(evex)   (((evex) & 0x20) >> 5)
#define bFromEVEX4of4(evex)   (((evex) & 0x10) >> 4)
#define v2FromEVEX4of4(evex)   (((~evex) & 0x8) >> 3)
#define aaaFromEVEX4of4(evex)   ((evex) & 0x7)
#define rFromVEX2of3(vex)   (((~(vex)) & 0x80) >> 7)
#define xFromVEX2of3(vex)   (((~(vex)) & 0x40) >> 6)
#define bFromVEX2of3(vex)   (((~(vex)) & 0x20) >> 5)
#define mmmmmFromVEX2of3(vex)   ((vex) & 0x1f)
#define wFromVEX3of3(vex)   (((vex) & 0x80) >> 7)
#define vvvvFromVEX3of3(vex)   (((~(vex)) & 0x78) >> 3)
#define lFromVEX3of3(vex)   (((vex) & 0x4) >> 2)
#define ppFromVEX3of3(vex)   ((vex) & 0x3)
#define rFromVEX2of2(vex)   (((~(vex)) & 0x80) >> 7)
#define vvvvFromVEX2of2(vex)   (((~(vex)) & 0x78) >> 3)
#define lFromVEX2of2(vex)   (((vex) & 0x4) >> 2)
#define ppFromVEX2of2(vex)   ((vex) & 0x3)
#define rFromXOP2of3(xop)   (((~(xop)) & 0x80) >> 7)
#define xFromXOP2of3(xop)   (((~(xop)) & 0x40) >> 6)
#define bFromXOP2of3(xop)   (((~(xop)) & 0x20) >> 5)
#define mmmmmFromXOP2of3(xop)   ((xop) & 0x1f)
#define wFromXOP3of3(xop)   (((xop) & 0x80) >> 7)
#define vvvvFromXOP3of3(vex)   (((~(vex)) & 0x78) >> 3)
#define lFromXOP3of3(xop)   (((xop) & 0x4) >> 2)
#define ppFromXOP3of3(xop)   ((xop) & 0x3)
#define REGS_8BIT
#define EA_BASES_16BIT
#define REGS_16BIT
#define EA_BASES_32BIT
#define REGS_32BIT
#define EA_BASES_64BIT
#define REGS_64BIT
#define REGS_MMX
#define REGS_XMM
#define REGS_YMM
#define REGS_ZMM
#define REGS_MASKS
#define REGS_SEGMENT
#define REGS_DEBUG
#define REGS_CONTROL
#define ALL_EA_BASES
#define ALL_SIB_BASES
#define ALL_REGS
#define ENTRY(x)   EA_BASE_##x,
#define ENTRY(x)   EA_REG_##x,
#define ENTRY(x)   SIB_INDEX_##x,
#define ENTRY(x)   SIB_BASE_##x,
#define ENTRY(x)   MODRM_REG_##x,

Typedefs

typedef int(* llvm::X86Disassembler::byteReader_t )(const void *arg, uint8_t *byte, uint64_t address)
 Type for the byte reader that the consumer must provide to the decoder. Reads a single byte from the instruction's address space.
typedef void(* llvm::X86Disassembler::dlog_t )(void *arg, const char *log)
 Type for the logging function that the consumer can provide to get debugging output from the decoder.

Enumerations

enum  llvm::X86Disassembler::EABase { llvm::X86Disassembler::EA_BASE_NONE }
 All possible values of the base field for effective-address computations, a.k.a. the Mod and R/M fields of the ModR/M byte. We distinguish between bases (EA_BASE_*) and registers that just happen to be referred to when Mod == 0b11 (EA_REG_*). More...
enum  llvm::X86Disassembler::SIBIndex { llvm::X86Disassembler::SIB_INDEX_NONE }
 All possible values of the SIB index field. borrows entries from ALL_EA_BASES with the special case that sib is synonymous with NONE. Vector SIB: index can be XMM or YMM. More...
enum  llvm::X86Disassembler::SIBBase { llvm::X86Disassembler::SIB_BASE_NONE }
 All possible values of the SIB base field. More...
enum  llvm::X86Disassembler::EADisplacement { llvm::X86Disassembler::EA_DISP_NONE, llvm::X86Disassembler::EA_DISP_8, llvm::X86Disassembler::EA_DISP_16, llvm::X86Disassembler::EA_DISP_32 }
 Possible displacement types for effective-address computations. More...
enum  llvm::X86Disassembler::Reg
 All possible values of the reg field in the ModR/M byte. More...
enum  llvm::X86Disassembler::SegmentOverride {
  llvm::X86Disassembler::SEG_OVERRIDE_NONE, llvm::X86Disassembler::SEG_OVERRIDE_CS, llvm::X86Disassembler::SEG_OVERRIDE_SS, llvm::X86Disassembler::SEG_OVERRIDE_DS,
  llvm::X86Disassembler::SEG_OVERRIDE_ES, llvm::X86Disassembler::SEG_OVERRIDE_FS, llvm::X86Disassembler::SEG_OVERRIDE_GS, llvm::X86Disassembler::SEG_OVERRIDE_max
}
 All possible segment overrides. More...
enum  llvm::X86Disassembler::VEXLeadingOpcodeByte { llvm::X86Disassembler::VEX_LOB_0F = 0x1, llvm::X86Disassembler::VEX_LOB_0F38 = 0x2, llvm::X86Disassembler::VEX_LOB_0F3A = 0x3 }
 Possible values for the VEX.m-mmmm field. More...
enum  llvm::X86Disassembler::XOPMapSelect { llvm::X86Disassembler::XOP_MAP_SELECT_8 = 0x8, llvm::X86Disassembler::XOP_MAP_SELECT_9 = 0x9, llvm::X86Disassembler::XOP_MAP_SELECT_A = 0xA }
enum  llvm::X86Disassembler::VEXPrefixCode { llvm::X86Disassembler::VEX_PREFIX_NONE = 0x0, llvm::X86Disassembler::VEX_PREFIX_66 = 0x1, llvm::X86Disassembler::VEX_PREFIX_F3 = 0x2, llvm::X86Disassembler::VEX_PREFIX_F2 = 0x3 }
 Possible values for the VEX.pp/EVEX.pp field. More...
enum  llvm::X86Disassembler::VectorExtensionType {
  llvm::X86Disassembler::TYPE_NO_VEX_XOP = 0x0, llvm::X86Disassembler::TYPE_VEX_2B = 0x1, llvm::X86Disassembler::TYPE_VEX_3B = 0x2, llvm::X86Disassembler::TYPE_EVEX = 0x3,
  llvm::X86Disassembler::TYPE_XOP = 0x4
}

Functions

int llvm::X86Disassembler::decodeInstruction (InternalInstruction *insn, byteReader_t reader, const void *readerArg, dlog_t logger, void *loggerArg, const void *miiArg, uint64_t startLoc, DisassemblerMode mode)
 Decode one instruction and store the decoding results in a buffer provided by the consumer.
void llvm::X86Disassembler::Debug (const char *file, unsigned line, const char *s)
 Print a message to debugs()
const char * llvm::X86Disassembler::GetInstrName (unsigned Opcode, const void *mii)

Define Documentation

#define aaaFromEVEX4of4 (   evex)    ((evex) & 0x7)

Definition at line 50 of file X86DisassemblerDecoder.h.

Referenced by getID(), and readMaskRegister().

#define ALL_EA_BASES
Value:
EA_BASES_16BIT      \
  EA_BASES_32BIT      \
  EA_BASES_64BIT

Definition at line 357 of file X86DisassemblerDecoder.h.

Referenced by translateRMMemory(), and translateRMRegister().

#define ALL_REGS
Value:
REGS_8BIT           \
  REGS_16BIT          \
  REGS_32BIT          \
  REGS_64BIT          \
  REGS_MMX            \
  REGS_XMM            \
  REGS_YMM            \
  REGS_ZMM            \
  REGS_MASKS          \
  REGS_SEGMENT        \
  REGS_DEBUG          \
  REGS_CONTROL        \
  ENTRY(RIP)

Definition at line 366 of file X86DisassemblerDecoder.h.

Referenced by translateRegister(), translateRMMemory(), and translateRMRegister().

#define ALL_SIB_BASES
Value:
REGS_32BIT          \
  REGS_64BIT

Definition at line 362 of file X86DisassemblerDecoder.h.

Referenced by translateRMMemory().

#define baseFromSIB (   sib)    ((sib) & 0x7)

Definition at line 31 of file X86DisassemblerDecoder.h.

Referenced by readSIB().

#define bFromEVEX2of4 (   evex)    (((~(evex)) & 0x20) >> 5)

Definition at line 39 of file X86DisassemblerDecoder.h.

Referenced by readPrefixes().

#define bFromEVEX4of4 (   evex)    (((evex) & 0x10) >> 4)

Definition at line 48 of file X86DisassemblerDecoder.h.

Referenced by getID().

#define bFromREX (   rex)    ((rex) & 0x1)

Definition at line 35 of file X86DisassemblerDecoder.h.

Referenced by readModRM(), readOpcodeRegister(), and readSIB().

#define bFromVEX2of3 (   vex)    (((~(vex)) & 0x20) >> 5)

Definition at line 54 of file X86DisassemblerDecoder.h.

Referenced by readPrefixes().

#define bFromXOP2of3 (   xop)    (((~(xop)) & 0x20) >> 5)

Definition at line 68 of file X86DisassemblerDecoder.h.

Referenced by readPrefixes().

#define EA_BASES_16BIT
Value:
ENTRY(BX_SI)          \
  ENTRY(BX_DI)          \
  ENTRY(BP_SI)          \
  ENTRY(BP_DI)          \
  ENTRY(SI)             \
  ENTRY(DI)             \
  ENTRY(BP)             \
  ENTRY(BX)             \
  ENTRY(R8W)            \
  ENTRY(R9W)            \
  ENTRY(R10W)           \
  ENTRY(R11W)           \
  ENTRY(R12W)           \
  ENTRY(R13W)           \
  ENTRY(R14W)           \
  ENTRY(R15W)

Definition at line 98 of file X86DisassemblerDecoder.h.

#define EA_BASES_32BIT
Value:
ENTRY(EAX)            \
  ENTRY(ECX)            \
  ENTRY(EDX)            \
  ENTRY(EBX)            \
  ENTRY(sib)            \
  ENTRY(EBP)            \
  ENTRY(ESI)            \
  ENTRY(EDI)            \
  ENTRY(R8D)            \
  ENTRY(R9D)            \
  ENTRY(R10D)           \
  ENTRY(R11D)           \
  ENTRY(R12D)           \
  ENTRY(R13D)           \
  ENTRY(R14D)           \
  ENTRY(R15D)

Definition at line 134 of file X86DisassemblerDecoder.h.

Referenced by translateRMMemory().

#define EA_BASES_64BIT
Value:
ENTRY(RAX)            \
  ENTRY(RCX)            \
  ENTRY(RDX)            \
  ENTRY(RBX)            \
  ENTRY(sib64)          \
  ENTRY(RBP)            \
  ENTRY(RSI)            \
  ENTRY(RDI)            \
  ENTRY(R8)             \
  ENTRY(R9)             \
  ENTRY(R10)            \
  ENTRY(R11)            \
  ENTRY(R12)            \
  ENTRY(R13)            \
  ENTRY(R14)            \
  ENTRY(R15)

Definition at line 170 of file X86DisassemblerDecoder.h.

Referenced by translateRMMemory().

#define ENTRY (   x)    EA_BASE_##x,

Definition at line 430 of file X86DisassemblerDecoder.h.

#define ENTRY (   x)    EA_REG_##x,

Definition at line 430 of file X86DisassemblerDecoder.h.

#define ENTRY (   x)    SIB_INDEX_##x,

Definition at line 430 of file X86DisassemblerDecoder.h.

#define ENTRY (   x)    SIB_BASE_##x,

Definition at line 430 of file X86DisassemblerDecoder.h.

#define ENTRY (   x)    MODRM_REG_##x,

Definition at line 430 of file X86DisassemblerDecoder.h.

#define indexFromSIB (   sib)    (((sib) & 0x38) >> 3)

Definition at line 30 of file X86DisassemblerDecoder.h.

Referenced by readSIB().

#define l2FromEVEX4of4 (   evex)    (((evex) & 0x40) >> 6)

Definition at line 46 of file X86DisassemblerDecoder.h.

Referenced by getID().

#define lFromEVEX4of4 (   evex)    (((evex) & 0x20) >> 5)

Definition at line 47 of file X86DisassemblerDecoder.h.

Referenced by getID().

#define lFromVEX2of2 (   vex)    (((vex) & 0x4) >> 2)

Definition at line 63 of file X86DisassemblerDecoder.h.

Referenced by getID().

#define lFromVEX3of3 (   vex)    (((vex) & 0x4) >> 2)

Definition at line 58 of file X86DisassemblerDecoder.h.

Referenced by getID().

#define lFromXOP3of3 (   xop)    (((xop) & 0x4) >> 2)

Definition at line 72 of file X86DisassemblerDecoder.h.

Referenced by getID().

#define mmFromEVEX2of4 (   evex)    ((evex) & 0x3)

Definition at line 41 of file X86DisassemblerDecoder.h.

Referenced by readOpcode().

#define mmmmmFromVEX2of3 (   vex)    ((vex) & 0x1f)

Definition at line 55 of file X86DisassemblerDecoder.h.

Referenced by readOpcode().

#define mmmmmFromXOP2of3 (   xop)    ((xop) & 0x1f)

Definition at line 69 of file X86DisassemblerDecoder.h.

Referenced by readOpcode().

#define modFromModRM (   modRM)    (((modRM) & 0xc0) >> 6)

Definition at line 26 of file X86DisassemblerDecoder.h.

Referenced by decode(), readModRM(), and readSIB().

#define ppFromEVEX3of4 (   evex)    ((evex) & 0x3)

Definition at line 44 of file X86DisassemblerDecoder.h.

Referenced by getID().

#define ppFromVEX2of2 (   vex)    ((vex) & 0x3)

Definition at line 64 of file X86DisassemblerDecoder.h.

Referenced by getID(), and readPrefixes().

#define ppFromVEX3of3 (   vex)    ((vex) & 0x3)

Definition at line 59 of file X86DisassemblerDecoder.h.

Referenced by getID().

#define ppFromXOP3of3 (   xop)    ((xop) & 0x3)

Definition at line 73 of file X86DisassemblerDecoder.h.

Referenced by getID(), and readPrefixes().

#define r2FromEVEX2of4 (   evex)    (((~(evex)) & 0x10) >> 4)

Definition at line 40 of file X86DisassemblerDecoder.h.

Referenced by readModRM().

#define regFromModRM (   modRM)    (((modRM) & 0x38) >> 3)

Definition at line 27 of file X86DisassemblerDecoder.h.

Referenced by readModRM().

#define REGS_16BIT
Value:
ENTRY(AX)           \
  ENTRY(CX)           \
  ENTRY(DX)           \
  ENTRY(BX)           \
  ENTRY(SP)           \
  ENTRY(BP)           \
  ENTRY(SI)           \
  ENTRY(DI)           \
  ENTRY(R8W)          \
  ENTRY(R9W)          \
  ENTRY(R10W)         \
  ENTRY(R11W)         \
  ENTRY(R12W)         \
  ENTRY(R13W)         \
  ENTRY(R14W)         \
  ENTRY(R15W)

Definition at line 116 of file X86DisassemblerDecoder.h.

#define REGS_32BIT
Value:
ENTRY(EAX)        \
  ENTRY(ECX)        \
  ENTRY(EDX)        \
  ENTRY(EBX)        \
  ENTRY(ESP)        \
  ENTRY(EBP)        \
  ENTRY(ESI)        \
  ENTRY(EDI)        \
  ENTRY(R8D)        \
  ENTRY(R9D)        \
  ENTRY(R10D)       \
  ENTRY(R11D)       \
  ENTRY(R12D)       \
  ENTRY(R13D)       \
  ENTRY(R14D)       \
  ENTRY(R15D)

Definition at line 152 of file X86DisassemblerDecoder.h.

#define REGS_64BIT
Value:
ENTRY(RAX)        \
  ENTRY(RCX)        \
  ENTRY(RDX)        \
  ENTRY(RBX)        \
  ENTRY(RSP)        \
  ENTRY(RBP)        \
  ENTRY(RSI)        \
  ENTRY(RDI)        \
  ENTRY(R8)         \
  ENTRY(R9)         \
  ENTRY(R10)        \
  ENTRY(R11)        \
  ENTRY(R12)        \
  ENTRY(R13)        \
  ENTRY(R14)        \
  ENTRY(R15)

Definition at line 188 of file X86DisassemblerDecoder.h.

#define REGS_8BIT
Value:
ENTRY(AL)           \
  ENTRY(CL)           \
  ENTRY(DL)           \
  ENTRY(BL)           \
  ENTRY(AH)           \
  ENTRY(CH)           \
  ENTRY(DH)           \
  ENTRY(BH)           \
  ENTRY(R8B)          \
  ENTRY(R9B)          \
  ENTRY(R10B)         \
  ENTRY(R11B)         \
  ENTRY(R12B)         \
  ENTRY(R13B)         \
  ENTRY(R14B)         \
  ENTRY(R15B)         \
  ENTRY(SPL)          \
  ENTRY(BPL)          \
  ENTRY(SIL)          \
  ENTRY(DIL)

Definition at line 76 of file X86DisassemblerDecoder.h.

#define REGS_CONTROL
Value:
ENTRY(CR0)          \
  ENTRY(CR1)          \
  ENTRY(CR2)          \
  ENTRY(CR3)          \
  ENTRY(CR4)          \
  ENTRY(CR5)          \
  ENTRY(CR6)          \
  ENTRY(CR7)          \
  ENTRY(CR8)

Definition at line 346 of file X86DisassemblerDecoder.h.

#define REGS_DEBUG
Value:
ENTRY(DR0)        \
  ENTRY(DR1)        \
  ENTRY(DR2)        \
  ENTRY(DR3)        \
  ENTRY(DR4)        \
  ENTRY(DR5)        \
  ENTRY(DR6)        \
  ENTRY(DR7)

Definition at line 336 of file X86DisassemblerDecoder.h.

#define REGS_MASKS
Value:
ENTRY(K0)        \
  ENTRY(K1)        \
  ENTRY(K2)        \
  ENTRY(K3)        \
  ENTRY(K4)        \
  ENTRY(K5)        \
  ENTRY(K6)        \
  ENTRY(K7)

Definition at line 318 of file X86DisassemblerDecoder.h.

#define REGS_MMX
Value:
ENTRY(MM0)      \
  ENTRY(MM1)      \
  ENTRY(MM2)      \
  ENTRY(MM3)      \
  ENTRY(MM4)      \
  ENTRY(MM5)      \
  ENTRY(MM6)      \
  ENTRY(MM7)

Definition at line 206 of file X86DisassemblerDecoder.h.

#define REGS_SEGMENT
Value:
ENTRY(ES)          \
  ENTRY(CS)          \
  ENTRY(SS)          \
  ENTRY(DS)          \
  ENTRY(FS)          \
  ENTRY(GS)

Definition at line 328 of file X86DisassemblerDecoder.h.

#define REGS_XMM

Definition at line 216 of file X86DisassemblerDecoder.h.

Referenced by translateRMMemory().

#define REGS_YMM

Definition at line 250 of file X86DisassemblerDecoder.h.

Referenced by translateRMMemory().

#define REGS_ZMM

Definition at line 284 of file X86DisassemblerDecoder.h.

Referenced by translateRMMemory().

#define rFromEVEX2of4 (   evex)    (((~(evex)) & 0x80) >> 7)

Definition at line 37 of file X86DisassemblerDecoder.h.

Referenced by readPrefixes().

#define rFromREX (   rex)    (((rex) & 0x4) >> 2)

Definition at line 33 of file X86DisassemblerDecoder.h.

Referenced by readModRM().

#define rFromVEX2of2 (   vex)    (((~(vex)) & 0x80) >> 7)

Definition at line 61 of file X86DisassemblerDecoder.h.

Referenced by readPrefixes().

#define rFromVEX2of3 (   vex)    (((~(vex)) & 0x80) >> 7)

Definition at line 52 of file X86DisassemblerDecoder.h.

Referenced by readPrefixes().

#define rFromXOP2of3 (   xop)    (((~(xop)) & 0x80) >> 7)

Definition at line 66 of file X86DisassemblerDecoder.h.

Referenced by readPrefixes().

#define rmFromModRM (   modRM)    ((modRM) & 0x7)

Definition at line 28 of file X86DisassemblerDecoder.h.

Referenced by readModRM().

#define scaleFromSIB (   sib)    (((sib) & 0xc0) >> 6)

Definition at line 29 of file X86DisassemblerDecoder.h.

Referenced by readSIB().

#define v2FromEVEX4of4 (   evex)    (((~evex) & 0x8) >> 3)

Definition at line 49 of file X86DisassemblerDecoder.h.

Referenced by readSIB(), and readVVVV().

#define vvvvFromEVEX3of4 (   evex)    (((~(evex)) & 0x78) >> 3)

Definition at line 43 of file X86DisassemblerDecoder.h.

Referenced by readVVVV().

#define vvvvFromVEX2of2 (   vex)    (((~(vex)) & 0x78) >> 3)

Definition at line 62 of file X86DisassemblerDecoder.h.

Referenced by readVVVV().

#define vvvvFromVEX3of3 (   vex)    (((~(vex)) & 0x78) >> 3)

Definition at line 57 of file X86DisassemblerDecoder.h.

Referenced by readVVVV().

#define vvvvFromXOP3of3 (   vex)    (((~(vex)) & 0x78) >> 3)

Definition at line 71 of file X86DisassemblerDecoder.h.

Referenced by readVVVV().

#define wFromEVEX3of4 (   evex)    (((evex) & 0x80) >> 7)

Definition at line 42 of file X86DisassemblerDecoder.h.

Referenced by readPrefixes().

#define wFromREX (   rex)    (((rex) & 0x8) >> 3)

Definition at line 32 of file X86DisassemblerDecoder.h.

Referenced by readPrefixes().

#define wFromVEX3of3 (   vex)    (((vex) & 0x80) >> 7)

Definition at line 56 of file X86DisassemblerDecoder.h.

Referenced by readPrefixes().

#define wFromXOP3of3 (   xop)    (((xop) & 0x80) >> 7)

Definition at line 70 of file X86DisassemblerDecoder.h.

Referenced by readPrefixes().

#define xFromEVEX2of4 (   evex)    (((~(evex)) & 0x40) >> 6)

Definition at line 38 of file X86DisassemblerDecoder.h.

Referenced by readModRM(), and readPrefixes().

#define xFromREX (   rex)    (((rex) & 0x2) >> 1)

Definition at line 34 of file X86DisassemblerDecoder.h.

Referenced by readSIB().

#define xFromVEX2of3 (   vex)    (((~(vex)) & 0x40) >> 6)

Definition at line 53 of file X86DisassemblerDecoder.h.

Referenced by readPrefixes().

#define xFromXOP2of3 (   xop)    (((~(xop)) & 0x40) >> 6)

Definition at line 67 of file X86DisassemblerDecoder.h.

Referenced by readPrefixes().

#define zFromEVEX4of4 (   evex)    (((evex) & 0x80) >> 7)

Definition at line 45 of file X86DisassemblerDecoder.h.

Referenced by getID().