Fix a lot of bugs by adding an instruction.

master
WangRunji 7 years ago
parent 0f26f6ffd6
commit c02c82cbd6

@ -342,7 +342,8 @@ macro_rules! interrupt_switch {
// Get reference to stack variables // Get reference to stack variables
let rsp: usize; let rsp: usize;
asm!("" : "={rsp}"(rsp) : : : "intel", "volatile"); asm!("mov rbp, rsp" : "={rsp}"(rsp) : : : "intel", "volatile");
// "mov rbp, rsp" <-- Fix a lot of bugs!
// Call inner rust function // Call inner rust function
let rsp = inner(&mut *(rsp as *mut InterruptStackP)); let rsp = inner(&mut *(rsp as *mut InterruptStackP));

Loading…
Cancel
Save