Struct tartan_arch::aarch64::interrupt::SyndromeRegister
source · pub struct SyndromeRegister(/* private fields */);
Expand description
ESR_ELx
: Holds information about the cause of the exception currently being
handled.
Implementations§
source§impl SyndromeRegister
impl SyndromeRegister
sourcepub fn length_32bit(&self) -> bool
pub fn length_32bit(&self) -> bool
IL
: When set, indicates that the instruction that triggered this exception
was a 32-bit opcode (A64 or classic Arm). Otherwise, the opcode was 16 bits
(Thumb).
sourcepub fn class_data(&self) -> u32
pub fn class_data(&self) -> u32
ISS
: Additional data about the exception in a format that is specific to
the class
value.
sourcepub fn with_class(&self, value: Class) -> Self
pub fn with_class(&self, value: Class) -> Self
EC
: The class of exception that was triggered.
sourcepub fn set_length_32bit(&mut self, value: bool)
pub fn set_length_32bit(&mut self, value: bool)
IL
: When set, indicates that the instruction that triggered this exception
was a 32-bit opcode (A64 or classic Arm). Otherwise, the opcode was 16 bits
(Thumb).
sourcepub fn with_length_32bit(&mut self, value: bool) -> Self
pub fn with_length_32bit(&mut self, value: bool) -> Self
IL
: When set, indicates that the instruction that triggered this exception
was a 32-bit opcode (A64 or classic Arm). Otherwise, the opcode was 16 bits
(Thumb).
sourcepub fn set_class_data(&mut self, value: u32)
pub fn set_class_data(&mut self, value: u32)
ISS
: Additional data about the exception in a format that is specific to
the class
value.
sourcepub fn with_class_data(&self, value: u32) -> Self
pub fn with_class_data(&self, value: u32) -> Self
ISS
: Additional data about the exception in a format that is specific to
the class
value.
source§impl SyndromeRegister
impl SyndromeRegister
sourcepub fn get(level: ExceptionLevel) -> Self
pub fn get(level: ExceptionLevel) -> Self
Retrieve the current value of this register for the specified exception level.
Only defined for exception levels 1–3. The register for a given exception level is only accessible from that level or higher.
sourcepub fn set(level: ExceptionLevel, value: Self)
pub fn set(level: ExceptionLevel, value: Self)
Update the register for the specified exception level with the given value.
Trait Implementations§
source§impl Bitfield<u64> for SyndromeRegister
impl Bitfield<u64> for SyndromeRegister
source§impl Clone for SyndromeRegister
impl Clone for SyndromeRegister
source§fn clone(&self) -> SyndromeRegister
fn clone(&self) -> SyndromeRegister
1.0.0 · source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source
. Read moresource§impl Debug for SyndromeRegister
impl Debug for SyndromeRegister
source§impl Default for SyndromeRegister
impl Default for SyndromeRegister
source§fn default() -> SyndromeRegister
fn default() -> SyndromeRegister
source§impl From<SyndromeRegister> for u64
impl From<SyndromeRegister> for u64
source§fn from(val: SyndromeRegister) -> Self
fn from(val: SyndromeRegister) -> Self
source§impl From<u64> for SyndromeRegister
impl From<u64> for SyndromeRegister
source§impl PartialEq for SyndromeRegister
impl PartialEq for SyndromeRegister
source§fn eq(&self, other: &SyndromeRegister) -> bool
fn eq(&self, other: &SyndromeRegister) -> bool
self
and other
values to be equal, and is used
by ==
.