1 /*
2 * syscall() library function
3 *
4 * Licensed under the LGPL v2.1, see the file COPYING.LIB in this tarball.
5 */
6
7 #include <stdarg.h>
8 #include <sys/syscall.h>
9 #include <unistd.h>
10
syscall(long sysnum,...)11 long syscall(long sysnum, ...)
12 {
13
14 unsigned long arg1, arg2, arg3, arg4, arg5, arg6;
15 va_list arg;
16
17 va_start (arg, sysnum);
18 arg1 = va_arg (arg, unsigned long);
19 arg2 = va_arg (arg, unsigned long);
20 arg3 = va_arg (arg, unsigned long);
21 arg4 = va_arg (arg, unsigned long);
22 arg5 = va_arg (arg, unsigned long);
23 arg6 = va_arg (arg, unsigned long);
24 va_end (arg);
25
26 __asm__ volatile ( "" ::: "memory" );
27 return INLINE_SYSCALL_NCS(sysnum, 6, arg1, arg2, arg3, arg4, arg5, arg6);
28 }
29