1
Fork 0
mirror of https://github.com/RGBCube/serenity synced 2025-05-31 11:48:10 +00:00

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
parent 334e039294
commit 7fc903b97a
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 {