pub enum OpAccess {
None,
Read,
CondRead,
Write,
CondWrite,
ReadWrite,
ReadCondWrite,
NoMemAccess,
}
Expand description
Operand, register and memory access
Variants§
None
Nothing is read and nothing is written
Read
The value is read
CondRead
The value is sometimes read and sometimes not
Write
The value is completely overwritten
CondWrite
Conditional write, sometimes it’s written and sometimes it’s not modified
ReadWrite
The value is read and written
ReadCondWrite
The value is read and sometimes written
NoMemAccess
The memory operand doesn’t refer to memory (eg. LEA
instruction) or it’s an instruction that doesn’t read the data to a register or doesn’t write to the memory location, it just prefetches/invalidates it, eg. INVLPG
, PREFETCHNTA
, VGATHERPF0DPS
, etc. Some of those instructions still check if the code can access the memory location.
Implementations§
source§impl OpAccess
impl OpAccess
sourcepub fn values(
) -> impl Iterator<Item = OpAccess> + DoubleEndedIterator + ExactSizeIterator + FusedIterator
pub fn values(
) -> impl Iterator<Item = OpAccess> + DoubleEndedIterator + ExactSizeIterator + FusedIterator
Iterates over all OpAccess
enum values
Trait Implementations§
source§impl<'de> Deserialize<'de> for OpAccess
impl<'de> Deserialize<'de> for OpAccess
source§fn deserialize<D>(deserializer: D) -> Result<Self, D::Error>where
D: Deserializer<'de>,
fn deserialize<D>(deserializer: D) -> Result<Self, D::Error>where
D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
source§impl Ord for OpAccess
impl Ord for OpAccess
source§impl PartialOrd<OpAccess> for OpAccess
impl PartialOrd<OpAccess> for OpAccess
1.0.0 · source§fn le(&self, other: &Rhs) -> bool
fn le(&self, other: &Rhs) -> bool
This method tests less than or equal to (for
self
and other
) and is used by the <=
operator. Read more