#[repr(C)]
pub enum ExceptionCause {
Show 41 variants Illegal, Syscall, InstrError, LoadStoreError, LevelOneInterrupt, Alloca, DivideByZero, NextPCValueIllegal, Privileged, Unaligned, ExternalRegisterPrivilegeError, ExclusiveError, InstrDataError, LoadStoreDataError, InstrAddrError, LoadStoreAddrError, ItlbMiss, ItlbMultiHit, InstrRing, Reserved19, InstrProhibited, Reserved21, Reserved22, Reserved23, DtlbMiss, DtlbMultiHit, LoadStoreRing, Reserved27, LoadProhibited, StoreProhibited, Reserved30, Reserved31, Cp0Disabled, Cp1Disabled, Cp2Disabled, Cp3Disabled, Cp4Disabled, Cp5Disabled, Cp6Disabled, Cp7Disabled, None,
}
Expand description

EXCCAUSE register values

General Exception Causes. (Values of EXCCAUSE special register set by general exceptions, which vector to the user, kernel, or double-exception vectors).

Variants§

§

Illegal

Illegal Instruction

§

Syscall

System Call (Syscall Instruction)

§

InstrError

Instruction Fetch Error

§

LoadStoreError

Load Store Error

§

LevelOneInterrupt

Level 1 Interrupt

§

Alloca

Stack Extension Assist (movsp Instruction) For Alloca

§

DivideByZero

Integer Divide By Zero

§

NextPCValueIllegal

Use Of Failed Speculative Access (Not Implemented)

§

Privileged

Privileged Instruction

§

Unaligned

Unaligned Load Or Store

§

ExternalRegisterPrivilegeError

Reserved

§

ExclusiveError

Reserved

§

InstrDataError

Pif Data Error On Instruction Fetch (Rb-200x And Later)

§

LoadStoreDataError

Pif Data Error On Load Or Store (Rb-200x And Later)

§

InstrAddrError

Pif Address Error On Instruction Fetch (Rb-200x And Later)

§

LoadStoreAddrError

Pif Address Error On Load Or Store (Rb-200x And Later)

§

ItlbMiss

Itlb Miss (No Itlb Entry Matches, Hw Refill Also Missed)

§

ItlbMultiHit

Itlb Multihit (Multiple Itlb Entries Match)

§

InstrRing

Ring Privilege Violation On Instruction Fetch

§

Reserved19

Size Restriction On Ifetch (Not Implemented)

§

InstrProhibited

Cache Attribute Does Not Allow Instruction Fetch

§

Reserved21

Reserved

§

Reserved22

Reserved

§

Reserved23

Reserved

§

DtlbMiss

Dtlb Miss (No Dtlb Entry Matches, Hw Refill Also Missed)

§

DtlbMultiHit

Dtlb Multihit (Multiple Dtlb Entries Match)

§

LoadStoreRing

Ring Privilege Violation On Load Or Store

§

Reserved27

Size Restriction On Load/Store (Not Implemented)

§

LoadProhibited

Cache Attribute Does Not Allow Load

§

StoreProhibited

Cache Attribute Does Not Allow Store

§

Reserved30

Reserved

§

Reserved31

Reserved

§

Cp0Disabled

Access To Coprocessor 0 When Disabled

§

Cp1Disabled

Access To Coprocessor 1 When Disabled

§

Cp2Disabled

Access To Coprocessor 2 When Disabled

§

Cp3Disabled

Access To Coprocessor 3 When Disabled

§

Cp4Disabled

Access To Coprocessor 4 When Disabled

§

Cp5Disabled

Access To Coprocessor 5 When Disabled

§

Cp6Disabled

Access To Coprocessor 6 When Disabled

§

Cp7Disabled

Access To Coprocessor 7 When Disabled

§

None

Trait Implementations§

§

impl Debug for ExceptionCause

§

fn fmt(&self, f: &mut Formatter<'_>) -> Result<(), Error>

Formats the value using the given formatter. Read more

Auto Trait Implementations§

Blanket Implementations§

source§

impl<T> Any for Twhere T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

impl<T> Borrow<T> for Twhere T: ?Sized,

source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

impl<T> BorrowMut<T> for Twhere T: ?Sized,

source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
source§

impl<T> From<T> for T

source§

fn from(t: T) -> T

Returns the argument unchanged.

source§

impl<T, U> Into<U> for Twhere U: From<T>,

source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

source§

impl<T, U> TryFrom<U> for Twhere U: Into<T>,

§

type Error = Infallible

The type returned in the event of a conversion error.
source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
source§

impl<T, U> TryInto<U> for Twhere U: TryFrom<T>,

§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.