generic sys_fork / sys_vfork / sys_clone
[cascardo/linux.git] / arch / sparc / include / asm / unistd.h
1 /*
2  * System calls under the Sparc.
3  *
4  * Don't be scared by the ugly clobbers, it is the only way I can
5  * think of right now to force the arguments into fixed registers
6  * before the trap into the system call with gcc 'asm' statements.
7  *
8  * Copyright (C) 1995, 2007 David S. Miller (davem@davemloft.net)
9  *
10  * SunOS compatibility based upon preliminary work which is:
11  *
12  * Copyright (C) 1995 Adrian M. Rodriguez (adrian@remus.rutgers.edu)
13  */
14 #ifndef _SPARC_UNISTD_H
15 #define _SPARC_UNISTD_H
16
17 #include <uapi/asm/unistd.h>
18
19 #ifdef __32bit_syscall_numbers__
20 #else
21 #define __NR_time               231 /* Linux sparc32                               */
22 #endif
23 #define __ARCH_WANT_OLD_READDIR
24 #define __ARCH_WANT_STAT64
25 #define __ARCH_WANT_SYS_ALARM
26 #define __ARCH_WANT_SYS_GETHOSTNAME
27 #define __ARCH_WANT_SYS_PAUSE
28 #define __ARCH_WANT_SYS_SGETMASK
29 #define __ARCH_WANT_SYS_SIGNAL
30 #define __ARCH_WANT_SYS_TIME
31 #define __ARCH_WANT_SYS_UTIME
32 #define __ARCH_WANT_SYS_WAITPID
33 #define __ARCH_WANT_SYS_SOCKETCALL
34 #define __ARCH_WANT_SYS_FADVISE64
35 #define __ARCH_WANT_SYS_GETPGRP
36 #define __ARCH_WANT_SYS_LLSEEK
37 #define __ARCH_WANT_SYS_NICE
38 #define __ARCH_WANT_SYS_OLDUMOUNT
39 #define __ARCH_WANT_SYS_SIGPENDING
40 #define __ARCH_WANT_SYS_SIGPROCMASK
41 #define __ARCH_WANT_SYS_RT_SIGSUSPEND
42 #ifdef __32bit_syscall_numbers__
43 #define __ARCH_WANT_SYS_IPC
44 #else
45 #define __ARCH_WANT_COMPAT_SYS_TIME
46 #define __ARCH_WANT_COMPAT_SYS_RT_SIGSUSPEND
47 #define __ARCH_WANT_COMPAT_SYS_SENDFILE
48 #endif
49
50 /*
51  * "Conditional" syscalls
52  *
53  * What we want is __attribute__((weak,alias("sys_ni_syscall"))),
54  * but it doesn't work on all toolchains, so we just do it by hand
55  */
56 #define cond_syscall(x) asm(".weak\t" #x "\n\t.set\t" #x ",sys_ni_syscall")
57
58 #endif /* _SPARC_UNISTD_H */