pub struct X86InsnDetail<'a>(/* private fields */);Expand description
Contains X86-specific details for an instruction
Implementations§
Source§impl X86InsnDetail<'_>
impl X86InsnDetail<'_>
Sourcepub fn prefix(&self) -> &[u8; 4]
pub fn prefix(&self) -> &[u8; 4]
Instruction prefix, which can be up to 4 bytes.
A prefix byte gets value 0 when irrelevant.
See X86Prefix for details.
prefix[0] indicates REP/REPNE/LOCK prefix (See X86_PREFIX_REP/REPNE/LOCK)
prefix[1] indicates segment override (irrelevant for x86_64):
See X86_PREFIX_CS/SS/DS/ES/FS/GS.
prefix[2] indicates operand-size override (X86_PREFIX_OPSIZE)
prefix[3] indicates address-size override (X86_PREFIX_ADDRSIZE)
Sourcepub fn opcode(&self) -> &[u8; 4]
pub fn opcode(&self) -> &[u8; 4]
Instruction opcode, which can be from 1 to 4 bytes in size. This contains VEX opcode as well. A trailing opcode byte gets value 0 when irrelevant.
Sourcepub fn encoding(&self) -> X86Encoding
pub fn encoding(&self) -> X86Encoding
Instruction encoding information, e.g. displacement offset, size.
Sourcepub fn sib_index(&self) -> RegId
pub fn sib_index(&self) -> RegId
Scaled Index Byte (SIB) index, or X86_REG_INVALID when irrelevant
Sourcepub fn sib_scale(&self) -> i8
pub fn sib_scale(&self) -> i8
Scaled Index Byte (SIB) scale, or X86_REG_INVALID when irrelevant