Serenity Operating System
at master 36 lines 916 B view raw
1/* 2 * Copyright (c) 2021, Andreas Kling <kling@serenityos.org> 3 * 4 * SPDX-License-Identifier: BSD-2-Clause 5 */ 6 7#include <Kernel/API/Syscall.h> 8#include <LibSystem/syscall.h> 9 10extern "C" { 11 12uintptr_t syscall0(uintptr_t function) 13{ 14 return Syscall::invoke((Syscall::Function)function); 15} 16 17uintptr_t syscall1(uintptr_t function, uintptr_t arg0) 18{ 19 return Syscall::invoke((Syscall::Function)function, arg0); 20} 21 22uintptr_t syscall2(uintptr_t function, uintptr_t arg0, uintptr_t arg1) 23{ 24 return Syscall::invoke((Syscall::Function)function, arg0, arg1); 25} 26 27uintptr_t syscall3(uintptr_t function, uintptr_t arg0, uintptr_t arg1, uintptr_t arg2) 28{ 29 return Syscall::invoke((Syscall::Function)function, arg0, arg1, arg2); 30} 31 32uintptr_t syscall4(uintptr_t function, uintptr_t arg0, uintptr_t arg1, uintptr_t arg2, uintptr_t arg3) 33{ 34 return Syscall::invoke((Syscall::Function)function, arg0, arg1, arg2, arg3); 35} 36}