Files
mop3/kernel/amd64/syscallentry.S
kamkow1 d1d772cb42
All checks were successful
Build documentation / build-and-deploy (push) Successful in 23s
Fix user apps randomly crashing (APIC, GDT layout, syscall entry)
2026-01-14 19:51:18 +01:00

48 lines
584 B
ArmAsm

#include <amd64/regsasm.h>
.extern amd64_syscall_dispatch
.global amd64_syscall_entry
amd64_syscall_entry:
movq %rsp, %gs:0
movq %gs:8, %rsp
pushq $0x1b
pushq %gs:0
pushq %r11
pushq $0x23
pushq %rcx
pushq $0
pushq $0
push_regs
movw $0x10, %ax
movw %ax, %ds
movw %ax, %es
movw %ax, %ss
cld
movq %rsp, %rdi
movq %cr3, %rax; pushq %rax
movq %rsp, %rbp
subq $8, %rsp
andq $-16, %rsp
callq amd64_syscall_dispatch
movq %rbp, %rsp
popq %rax; movq %rax, %cr3
pop_regs_skip_rax
addq $56, %rsp
movq %gs:0, %rsp
sysretq