1 #define __SYSCALL_LL_E(x) (x)
2 #define __SYSCALL_LL_O(x) (x)
4 #define SYSCALL_RLIM_INFINITY (-1UL/2)
6 #define SYSCALL_CLOBBERLIST \
7 "$1", "$3", "$10", "$11", "$12", "$13", \
8 "$14", "$15", "$24", "$25", "hi", "lo", "memory"
10 static inline long __syscall0(long n)
12 register long r7 __asm__("$7");
13 register long r2 __asm__("$2") = n;
14 __asm__ __volatile__ (
18 : SYSCALL_CLOBBERLIST);
22 static inline long __syscall1(long n, long a)
24 register long r4 __asm__("$4") = a;
25 register long r7 __asm__("$7");
26 register long r2 __asm__("$2") = n;
27 __asm__ __volatile__ (
31 : SYSCALL_CLOBBERLIST);
35 static inline long __syscall2(long n, long a, long b)
37 register long r4 __asm__("$4") = a;
38 register long r5 __asm__("$5") = b;
39 register long r7 __asm__("$7");
40 register long r2 __asm__("$2") = n;
42 __asm__ __volatile__ (
46 : SYSCALL_CLOBBERLIST);
50 static inline long __syscall3(long n, long a, long b, long c)
52 register long r4 __asm__("$4") = a;
53 register long r5 __asm__("$5") = b;
54 register long r6 __asm__("$6") = c;
55 register long r7 __asm__("$7");
56 register long r2 __asm__("$2") = n;
58 __asm__ __volatile__ (
61 : "r"(r4), "r"(r5), "r"(r6)
62 : SYSCALL_CLOBBERLIST);
66 static inline long __syscall4(long n, long a, long b, long c, long d)
68 register long r4 __asm__("$4") = a;
69 register long r5 __asm__("$5") = b;
70 register long r6 __asm__("$6") = c;
71 register long r7 __asm__("$7") = d;
72 register long r2 __asm__("$2") = n;
74 __asm__ __volatile__ (
77 : "r"(r4), "r"(r5), "r"(r6)
78 : SYSCALL_CLOBBERLIST);
82 static inline long __syscall5(long n, long a, long b, long c, long d, long e)
84 register long r4 __asm__("$4") = a;
85 register long r5 __asm__("$5") = b;
86 register long r6 __asm__("$6") = c;
87 register long r7 __asm__("$7") = d;
88 register long r8 __asm__("$8") = e;
89 register long r2 __asm__("$2") = n;
91 __asm__ __volatile__ (
94 : "r"(r4), "r"(r5), "r"(r6), "r"(r8)
95 : SYSCALL_CLOBBERLIST);
99 static inline long __syscall6(long n, long a, long b, long c, long d, long e, long f)
101 register long r4 __asm__("$4") = a;
102 register long r5 __asm__("$5") = b;
103 register long r6 __asm__("$6") = c;
104 register long r7 __asm__("$7") = d;
105 register long r8 __asm__("$8") = e;
106 register long r9 __asm__("$9") = f;
107 register long r2 __asm__("$2") = n;
109 __asm__ __volatile__ (
111 : "+&r"(r2), "+r"(r7)
112 : "r"(r4), "r"(r5), "r"(r6), "r"(r8), "r"(r9)
113 : SYSCALL_CLOBBERLIST);
114 return r7 ? -r2 : r2;
118 #define VDSO_CGT_SYM "__vdso_clock_gettime"
119 #define VDSO_CGT_VER "LINUX_2.6"