#[repr(C, packed(1))]pub struct TrapFrame {
pub r11: u64,
pub r10: u64,
pub r9: u64,
pub r8: u64,
pub rsi: u64,
pub rdi: u64,
pub rdx: u64,
pub rcx: u64,
pub rax: u64,
pub err_code: u64,
}
Expand description
TrapFrame
is saved and restored by the interrupt handler assembly code
upon interrupt entry and exit.
Fields§
§r11: u64
§r10: u64
§r9: u64
§r8: u64
§rsi: u64
§rdi: u64
§rdx: u64
§rcx: u64
§rax: u64
§err_code: u64
for some exceptions, the CPU automatically pushes an error code (see
docs/interrupt.txt
) to the stack. For those who don’t have error code,
we manually push a dummy value (0)