TrapFrame

Struct TrapFrame 

Source
#[repr(C)]
pub struct TrapFrame {
Show 16 fields pub ra: usize, pub t0: usize, pub t1: usize, pub t2: usize, pub t3: usize, pub t4: usize, pub t5: usize, pub t6: usize, pub a0: usize, pub a1: usize, pub a2: usize, pub a3: usize, pub a4: usize, pub a5: usize, pub a6: usize, pub a7: usize,
}
Expand description

Registers saved in trap handler

Fields§

§ra: usize

x1: return address, stores the address to return to after a function call or interrupt.

§t0: usize

x5: temporary register t0, used for intermediate values.

§t1: usize

x6: temporary register t1, used for intermediate values.

§t2: usize

x7: temporary register t2, used for intermediate values.

§t3: usize

x28: temporary register t3, used for intermediate values.

§t4: usize

x29: temporary register t4, used for intermediate values.

§t5: usize

x30: temporary register t5, used for intermediate values.

§t6: usize

x31: temporary register t6, used for intermediate values.

§a0: usize

x10: argument register a0. Used to pass the first argument to a function.

§a1: usize

x11: argument register a1. Used to pass the second argument to a function.

§a2: usize

x12: argument register a2. Used to pass the third argument to a function.

§a3: usize

x13: argument register a3. Used to pass the fourth argument to a function.

§a4: usize

x14: argument register a4. Used to pass the fifth argument to a function.

§a5: usize

x15: argument register a5. Used to pass the sixth argument to a function.

§a6: usize

x16: argument register a6. Used to pass the seventh argument to a function.

§a7: usize

x17: argument register a7. Used to pass the eighth argument to a function.

Trait Implementations§

Source§

impl Debug for TrapFrame

Source§

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

Formats the value using the given formatter. Read more

Auto Trait Implementations§

§

impl Freeze for TrapFrame

§

impl RefUnwindSafe for TrapFrame

§

impl Send for TrapFrame

§

impl Sync for TrapFrame

§

impl Unpin for TrapFrame

§

impl UnwindSafe for TrapFrame

Blanket Implementations§

§

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

§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
§

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

§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
§

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

§

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

Mutably borrows from an owned value. Read more
§

impl<T> From<T> for T

§

fn from(t: T) -> T

Returns the argument unchanged.

§

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

§

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> Same for T

Source§

type Output = T

Should always be Self
§

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

§

type Error = Infallible

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

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

Performs the conversion.
§

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

§

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

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

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

Performs the conversion.