From 83990426c98ed9f75494535b9bb29151f8c3fd08 Mon Sep 17 00:00:00 2001 From: Jakob Kaivo Date: Tue, 14 Nov 2023 14:58:20 -0500 Subject: use "native" syscall function --- src/__sys.x86-64.s | 13 +++++++++++++ src/_syscall.h | 2 ++ 2 files changed, 15 insertions(+) diff --git a/src/__sys.x86-64.s b/src/__sys.x86-64.s index e69de29b..89e691db 100644 --- a/src/__sys.x86-64.s +++ b/src/__sys.x86-64.s @@ -0,0 +1,13 @@ +.global __syscall +.type __syscall, %function +__syscall: + mov %rdi, %rax + mov %rsi, %rdi + mov %rdx, %rsi + mov %rcx, %rdx + mov %r8, %r10 + mov %r9, %r8 + mov 8(%rsp), %r9 + syscall + ret + .size __syscall,.-__syscall diff --git a/src/_syscall.h b/src/_syscall.h index aa97fadf..805e9d1e 100644 --- a/src/_syscall.h +++ b/src/_syscall.h @@ -6,6 +6,8 @@ #include "errno/ENOSYS.h" #endif +#define __syscall syscall + #define SYSCALL(_name, _type, _err, _a1, _a2, _a3, _a4, _a5, _a6) \ static int _scno = -2; \ if (_scno == -2) { \ -- cgit v1.2.1