Struct iced_x86::MemoryOperand [−][src]
pub struct MemoryOperand { pub segment_prefix: Register, pub base: Register, pub index: Register, pub scale: u32, pub displacement: i64, pub displ_size: u32, pub is_broadcast: bool, }
Expand description
Memory operand passed to one of Instruction
’s with_*()
constructor methods
Fields
segment_prefix: Register
Segment override or Register::None
base: Register
Base register or Register::None
index: Register
Index register or Register::None
scale: u32
Index register scale (1, 2, 4, or 8)
displacement: i64
Memory displacement
displ_size: u32
0 (no displ), 1 (16/32/64-bit, but use 2/4/8 if it doesn’t fit in a i8
), 2 (16-bit), 4 (32-bit) or 8 (64-bit)
is_broadcast: bool
true
if it’s broadcasted memory (EVEX instructions)
Implementations
Constructor
Arguments
base
: Base register orRegister::None
index
: Index register orRegister::None
scale
: Index register scale (1, 2, 4, or 8)displacement
: Memory displacementdispl_size
: 0 (no displ), 1 (16/32/64-bit, but use 2/4/8 if it doesn’t fit in ai8
), 2 (16-bit), 4 (32-bit) or 8 (64-bit)is_broadcast
:true
if it’s broadcasted memory (EVEX instructions)segment_prefix
: Segment override orRegister::None
Constructor
Arguments
base
: Base register orRegister::None
index
: Index register orRegister::None
scale
: Index register scale (1, 2, 4, or 8)is_broadcast
:true
if it’s broadcasted memory (EVEX instructions)segment_prefix
: Segment override orRegister::None
Constructor
Arguments
base
: Base register orRegister::None
displacement
: Memory displacementdispl_size
: 0 (no displ), 1 (16/32/64-bit, but use 2/4/8 if it doesn’t fit in ai8
), 2 (16-bit), 4 (32-bit) or 8 (64-bit)is_broadcast
:true
if it’s broadcasted memory (EVEX instructions)segment_prefix
: Segment override orRegister::None
Constructor
Arguments
index
: Index register orRegister::None
scale
: Index register scale (1, 2, 4, or 8)displacement
: Memory displacementdispl_size
: 0 (no displ), 1 (16/32/64-bit, but use 2/4/8 if it doesn’t fit in ai8
), 2 (16-bit), 4 (32-bit) or 8 (64-bit)is_broadcast
:true
if it’s broadcasted memory (EVEX instructions)segment_prefix
: Segment override orRegister::None
Constructor
Arguments
base
: Base register orRegister::None
displacement
: Memory displacementis_broadcast
:true
if it’s broadcasted memory (EVEX instructions)segment_prefix
: Segment override orRegister::None
Constructor
Arguments
base
: Base register orRegister::None
index
: Index register orRegister::None
scale
: Index register scale (1, 2, 4, or 8)displacement
: Memory displacementdispl_size
: 0 (no displ), 1 (16/32/64-bit, but use 2/4/8 if it doesn’t fit in ai8
), 2 (16-bit), 4 (32-bit) or 8 (64-bit)
Constructor
Arguments
base
: Base register orRegister::None
index
: Index register orRegister::None
scale
: Index register scale (1, 2, 4, or 8)
Constructor
Arguments
base
: Base register orRegister::None
displacement
: Memory displacementdispl_size
: 0 (no displ), 1 (16/32/64-bit, but use 2/4/8 if it doesn’t fit in ai8
), 2 (16-bit), 4 (32-bit) or 8 (64-bit)
Constructor
Arguments
index
: Index register orRegister::None
scale
: Index register scale (1, 2, 4, or 8)displacement
: Memory displacementdispl_size
: 0 (no displ), 1 (16/32/64-bit, but use 2/4/8 if it doesn’t fit in ai8
), 2 (16-bit), 4 (32-bit) or 8 (64-bit)
Trait Implementations
Returns the “default value” for a type. Read more
This method tests for self
and other
values to be equal, and is used
by ==
. Read more
This method tests for !=
.
Auto Trait Implementations
impl RefUnwindSafe for MemoryOperand
impl Send for MemoryOperand
impl Sync for MemoryOperand
impl Unpin for MemoryOperand
impl UnwindSafe for MemoryOperand
Blanket Implementations
Mutably borrows from an owned value. Read more