pub enum OpAccess {
None = 0,
Read = 1,
CondRead = 2,
Write = 3,
CondWrite = 4,
ReadWrite = 5,
ReadCondWrite = 6,
NoMemAccess = 7,
}
Expand description
Operand, register and memory access
Variants§
None = 0
Nothing is read and nothing is written
Read = 1
The value is read
CondRead = 2
The value is sometimes read and sometimes not
Write = 3
The value is completely overwritten
CondWrite = 4
Conditional write, sometimes it’s written and sometimes it’s not modified
ReadWrite = 5
The value is read and written
ReadCondWrite = 6
The value is read and sometimes written
NoMemAccess = 7
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 PartialEq for OpAccess
impl PartialEq for OpAccess
source§impl PartialOrd for OpAccess
impl PartialOrd 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 moreimpl Copy for OpAccess
impl Eq for OpAccess
impl StructuralEq for OpAccess
impl StructuralPartialEq for OpAccess
Auto Trait Implementations§
impl RefUnwindSafe for OpAccess
impl Send for OpAccess
impl Sync for OpAccess
impl Unpin for OpAccess
impl UnwindSafe for OpAccess
Blanket Implementations§
source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more