Struct tartan_arch::aarch64::interrupt::Class
source · pub struct Class(/* private fields */);
Expand description
Classifies different exception causes.
Note that the Arm documentation defines more variants than are defined in this type. This only includes exception classes that can be triggered from Aarch64 state and taken to EL1.
Implementations§
source§impl Class
impl Class
sourcepub const Unknown: Self = _
pub const Unknown: Self = _
Tried to execute an undefined/unsupported opcode, or for any other reason that does not fall under another exception class.
sourcepub const IllegalState: Self = _
pub const IllegalState: Self = _
Tried to execute instructions after an illegal return.
sourcepub const SupervisorCall: Self = _
pub const SupervisorCall: Self = _
Triggered a system call via the SVC
instruction.
sourcepub const SystemInstruction: Self = _
pub const SystemInstruction: Self = _
Trapped access to a system register or instruction.
sourcepub const VectorAccess: Self = _
pub const VectorAccess: Self = _
Trapped access to a vector register or instruction.
sourcepub const PointerAuthFailure: Self = _
pub const PointerAuthFailure: Self = _
Improperly authenticated pointer detected. Requires FEAT_FPAC
.
sourcepub const InstructionAbortFromLower: Self = _
pub const InstructionAbortFromLower: Self = _
Instruction abort triggered at lower exception level.
sourcepub const InstructionAbortFromCurrent: Self = _
pub const InstructionAbortFromCurrent: Self = _
Instruction abort triggered at current exception level.
sourcepub const PCAlignment: Self = _
pub const PCAlignment: Self = _
Program counter not properly aligned.
sourcepub const DataAbortFromLower: Self = _
pub const DataAbortFromLower: Self = _
Data abort triggered at lower exception level.
sourcepub const DataAbortFromCurrent: Self = _
pub const DataAbortFromCurrent: Self = _
Data abort triggered at current exception level.
sourcepub const SPAlignment: Self = _
pub const SPAlignment: Self = _
Stack pointer not properly aligned.
sourcepub const FloatException: Self = _
pub const FloatException: Self = _
Trapped floating point exception.
sourcepub const SystemError: Self = _
pub const SystemError: Self = _
System error (SError).
sourcepub const BreakpointFromLower: Self = _
pub const BreakpointFromLower: Self = _
Breakpoint triggered at lower exception level.
sourcepub const BreakpointFromCurrent: Self = _
pub const BreakpointFromCurrent: Self = _
Breakpoint triggered at current exception level.
sourcepub const StepFromLower: Self = _
pub const StepFromLower: Self = _
Software step at lower exception level.
sourcepub const StepFromCurrent: Self = _
pub const StepFromCurrent: Self = _
Software step at current exception level.
sourcepub const WatchpointFromLower: Self = _
pub const WatchpointFromLower: Self = _
Watchpoint triggered at lower exception level.
sourcepub const WatchpointFromCurrent: Self = _
pub const WatchpointFromCurrent: Self = _
Watchpoint triggered at current exception level.
sourcepub const BreakpointInstruction: Self = _
pub const BreakpointInstruction: Self = _
Executed a BRK
breakpoint instruction.
Trait Implementations§
source§impl Ord for Class
impl Ord for Class
source§impl PartialOrd for Class
impl PartialOrd for Class
impl Copy for Class
impl Eq for Class
impl StructuralPartialEq for Class
Auto Trait Implementations§
impl Freeze for Class
impl RefUnwindSafe for Class
impl Send for Class
impl Sync for Class
impl Unpin for Class
impl UnwindSafe for Class
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
source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
source§default unsafe fn clone_to_uninit(&self, dst: *mut T)
default unsafe fn clone_to_uninit(&self, dst: *mut T)
clone_to_uninit
)source§impl<T> CloneToUninit for Twhere
T: Copy,
impl<T> CloneToUninit for Twhere
T: Copy,
source§unsafe fn clone_to_uninit(&self, dst: *mut T)
unsafe fn clone_to_uninit(&self, dst: *mut T)
clone_to_uninit
)