summaryrefslogtreecommitdiff
path: root/kernel/src/sys
diff options
context:
space:
mode:
authorAleksa Vuckovic <aleksav013@gmail.com>2022-11-29 16:09:32 +0100
committerAleksa Vuckovic <aleksav013@gmail.com>2022-11-29 19:23:51 +0100
commit9b3dd99abc763f5e2039933eda510ec62d395f8a (patch)
tree8db0b52f5fcb6a4572d8d2612d7eb94c1f4f2fb1 /kernel/src/sys
parentd36487d9fd2c19b54a3b97bdf3562a17184711fe (diff)
pushing all regs in irq_handler
Diffstat (limited to 'kernel/src/sys')
-rw-r--r--kernel/src/sys/syscall_asm.S12
1 files changed, 10 insertions, 2 deletions
diff --git a/kernel/src/sys/syscall_asm.S b/kernel/src/sys/syscall_asm.S
index a9942ca..2e3c0bb 100644
--- a/kernel/src/sys/syscall_asm.S
+++ b/kernel/src/sys/syscall_asm.S
@@ -2,6 +2,7 @@
.macro pushall
push %rax
+ push %rbx
push %rcx
push %rdx
push %rsi
@@ -10,11 +11,17 @@
push %r9
push %r10
push %r11
- pushfq
+ push %r12
+ push %r13
+ push %r14
+ push %r15
.endm
.macro popall
- popfq
+ pop %r15
+ pop %r14
+ pop %r13
+ pop %r12
pop %r11
pop %r10
pop %r9
@@ -23,6 +30,7 @@
pop %rsi
pop %rdx
pop %rcx
+ pop %rbx
pop %rax
.endm