summaryrefslogtreecommitdiff
path: root/kernel/src/sys/syscall_asm.S
blob: 8287e95b12c62da39f46edaec4d33a2dc9dd24c7 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
.extern syscall_handler

#include "x86_64_regs.S"

.global __syscall
__syscall:
	pushq %rcx
	pushq %r11

	push_caller_saved
	call syscall_handler
	pop_caller_saved

	popfq
	popq %rcx
	sysretq