syscall_arch.h (1216B)
1 #define __SYSCALL_LL_E(x) (x) 2 #define __SYSCALL_LL_O(x) (x) 3 4 /* tcc-friendly: avoid GCC register-asm-variable extension and 5 x86 inline-asm constraints by routing every syscall through a 6 pure-asm trampoline (src/internal/x86_64/syscall.s). */ 7 extern long __syscall(long, ...); 8 9 static __inline long __syscall0(long n) 10 { 11 return __syscall(n); 12 } 13 14 static __inline long __syscall1(long n, long a1) 15 { 16 return __syscall(n, a1); 17 } 18 19 static __inline long __syscall2(long n, long a1, long a2) 20 { 21 return __syscall(n, a1, a2); 22 } 23 24 static __inline long __syscall3(long n, long a1, long a2, long a3) 25 { 26 return __syscall(n, a1, a2, a3); 27 } 28 29 static __inline long __syscall4(long n, long a1, long a2, long a3, long a4) 30 { 31 return __syscall(n, a1, a2, a3, a4); 32 } 33 34 static __inline long __syscall5(long n, long a1, long a2, long a3, long a4, long a5) 35 { 36 return __syscall(n, a1, a2, a3, a4, a5); 37 } 38 39 static __inline long __syscall6(long n, long a1, long a2, long a3, long a4, long a5, long a6) 40 { 41 return __syscall(n, a1, a2, a3, a4, a5, a6); 42 } 43 44 #define VDSO_USEFUL 45 #define VDSO_CGT_SYM "__vdso_clock_gettime" 46 #define VDSO_CGT_VER "LINUX_2.6" 47 #define VDSO_GETCPU_SYM "__vdso_getcpu" 48 #define VDSO_GETCPU_VER "LINUX_2.6" 49 50 #define IPC_64 0