Rev 2605 | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed
| Rev 2605 | Rev 3485 | ||
|---|---|---|---|
| Line 30... | Line 30... | ||
| 30 | * @{ |
30 | * @{ |
| 31 | */ |
31 | */ |
| 32 | /** |
32 | /** |
| 33 | * @file |
33 | * @file |
| 34 | * @brief Syscall function declaration for architectures that don't |
34 | * @brief Syscall function declaration for architectures that don't |
| - | 35 | * inline syscalls or architectures that handle syscalls |
|
| 35 | * inline syscalls. |
36 | * according to the number of arguments. |
| 36 | */ |
37 | */ |
| 37 | 38 | ||
| 38 | #ifndef LIBC_SYSCALL_H_ |
39 | #ifndef LIBC_SYSCALL_H_ |
| 39 | #define LIBC_SYSCALL_H_ |
40 | #define LIBC_SYSCALL_H_ |
| 40 | 41 | ||
| - | 42 | #ifndef LIBARCH_SYSCALL_GENERIC |
|
| - | 43 | #error "You can't include this file directly." |
|
| - | 44 | #endif |
|
| - | 45 | ||
| 41 | #include <sys/types.h> |
46 | #include <sys/types.h> |
| 42 | #include <kernel/syscall/syscall.h> |
47 | #include <kernel/syscall/syscall.h> |
| 43 | 48 | ||
| - | 49 | #define __syscall0 __syscall |
|
| - | 50 | #define __syscall1 __syscall |
|
| - | 51 | #define __syscall2 __syscall |
|
| - | 52 | #define __syscall3 __syscall |
|
| - | 53 | #define __syscall4 __syscall |
|
| - | 54 | #define __syscall5 __syscall |
|
| - | 55 | #define __syscall6 __syscall |
|
| - | 56 | ||
| 44 | extern sysarg_t __syscall(const sysarg_t p1, const sysarg_t p2, |
57 | extern sysarg_t __syscall(const sysarg_t p1, const sysarg_t p2, |
| 45 | const sysarg_t p3, const sysarg_t p4, const sysarg_t p5, const sysarg_t p6, |
58 | const sysarg_t p3, const sysarg_t p4, const sysarg_t p5, const sysarg_t p6, |
| 46 | const syscall_t id); |
59 | const syscall_t id); |
| 47 | 60 | ||
| 48 | #endif |
61 | #endif |