Fix stack trace, WIP usermode

This commit is contained in:
Jeremy Soller 2016-09-02 12:27:45 -06:00
parent eab03299be
commit f45958f449
5 changed files with 59 additions and 10 deletions

View file

@ -48,7 +48,8 @@ macro_rules! interrupt {
}
// Push scratch registers
asm!("push rax
asm!("xchg bx, bx
push rax
push rcx
push rdx
push rdi
@ -63,7 +64,8 @@ macro_rules! interrupt {
inner();
// Pop scratch registers and return
asm!("pop r11
asm!("xchg bx,bx
pop r11
pop r10
pop r9
pop r8
@ -89,7 +91,8 @@ macro_rules! interrupt_error {
}
// Push scratch registers
asm!("push rax
asm!("xchg bx, bx
push rax
push rcx
push rdx
push rdi
@ -104,7 +107,8 @@ macro_rules! interrupt_error {
inner();
// Pop scratch registers, error code, and return
asm!("pop r11
asm!("xchg bx, bx
pop r11
pop r10
pop r9
pop r8