From 2e79a2e5af3affa7a6a3becdffb1c91d89af90af Mon Sep 17 00:00:00 2001 From: dzwdz Date: Mon, 11 Jul 2022 21:54:51 +0200 Subject: user: reorganize the userland sources --- src/user/lib/syscall.s | 24 ++++++++++++++++++++++++ 1 file changed, 24 insertions(+) create mode 100644 src/user/lib/syscall.s (limited to 'src/user/lib/syscall.s') diff --git a/src/user/lib/syscall.s b/src/user/lib/syscall.s new file mode 100644 index 0000000..0af49f3 --- /dev/null +++ b/src/user/lib/syscall.s @@ -0,0 +1,24 @@ +.section .text +.global _syscall +.type _syscall, @function +_syscall: + push %ebx // preserve registers + push %esi + push %edi + push %ebp + + mov 20(%esp), %eax + mov 24(%esp), %ebx + mov %esp, %ecx + mov $_syscall_ret, %edx + mov 28(%esp), %esi + mov 32(%esp), %edi + mov 36(%esp), %ebp + sysenter + +_syscall_ret: + pop %ebp + pop %edi + pop %esi + pop %ebx + ret -- cgit v1.2.3