Kernel: Add exception_code to RegisterDump.

Added the exception_code field to RegisterDump, removing the need
for RegisterDumpWithExceptionCode. To accomplish this, I had to
push a dummy exception code during some interrupt entries to properly
pad out the RegisterDump. Note that we also needed to change some code
in sys$sigreturn to deal with the new RegisterDump layout.
This commit is contained in:
Drew Stratford 2019-10-05 03:31:34 +13:00 committed by Andreas Kling
commit 7fc903b97a
Notes: sideshowbarker 2024-07-19 11:45:52 +09:00
6 changed files with 23 additions and 38 deletions

View file

@ -13,6 +13,7 @@ extern volatile RegisterDump* syscallRegDump;
asm(
".globl syscall_trap_handler \n"
"syscall_trap_handler:\n"
" pushl $0x0\n"
" pusha\n"
" pushw %ds\n"
" pushw %es\n"
@ -35,6 +36,7 @@ asm(
" popw %es\n"
" popw %ds\n"
" popa\n"
" add $0x4, %esp\n"
" iret\n");
namespace Syscall {