struct InternalInstruction

Declaration

struct InternalInstruction { /* full declaration omitted */ };

Description

The x86 internal instruction, which is produced by the decoder.

Declared at: llvm/lib/Target/X86/Disassembler/X86DisassemblerDecoder.h:519

Member Variables

public llvm::ArrayRef<uint8_t> bytes
public uint64_t readerCursor
public llvm::X86Disassembler::DisassemblerMode mode
public uint64_t startLocation
public size_t length
public uint8_t mandatoryPrefix
public uint8_t[4] vectorExtensionPrefix
public llvm::X86Disassembler::VectorExtensionType vectorExtensionType
public uint8_t rexPrefix
public llvm::X86Disassembler::SegmentOverride segmentOverride
public bool xAcquireRelease
public bool hasAdSize
public bool hasOpSize
public bool hasLockPrefix
public uint8_t repeatPrefix
public uint8_t registerSize
public uint8_t addressSize
public uint8_t displacementSize
public uint8_t immediateSize
public uint8_t displacementOffset
public uint8_t immediateOffset
public uint8_t opcode
public llvm::X86Disassembler::OpcodeType opcodeType
public uint16_t instructionID
public const llvm::X86Disassembler::InstructionSpecifier* spec
public llvm::X86Disassembler::Reg vvvv
public llvm::X86Disassembler::Reg writemask
public bool consumedModRM
public uint8_t modRM
public uint8_t sib
public int32_t displacement
public uint8_t numImmediatesConsumed
public uint8_t numImmediatesTranslated
public uint64_t[2] immediates
public llvm::X86Disassembler::Reg opcodeRegister
public llvm::X86Disassembler::EABase eaRegBase
public llvm::X86Disassembler::Reg regBase
public llvm::X86Disassembler::EABase eaBase
public llvm::X86Disassembler::EADisplacement eaDisplacement
public llvm::X86Disassembler::Reg reg
public llvm::X86Disassembler::SIBIndex sibIndexBase
public llvm::X86Disassembler::SIBIndex sibIndex
public uint8_t sibScale
public llvm::X86Disassembler::SIBBase sibBase
public uint8_t RC
public ArrayRef<llvm::X86Disassembler::OperandSpecifier> operands