The push/pop_gpr routines currently do not work with the (cfg.enable_nested_interrupt) code as the user stack pointer gets overwritten. Change the routines to push the USP to the kernel stack, then pop it back off when restoring program state.
Also see https://github.com/lowRISC/ibex/pull/1875
The
push/pop_gpr
routines currently do not work with the (cfg.enable_nested_interrupt) code as the user stack pointer gets overwritten. Change the routines to push the USP to the kernel stack, then pop it back off when restoring program state. Also see https://github.com/lowRISC/ibex/pull/1875