1 #define __SYSCALL_LL_E(x) (x)
2 #define __SYSCALL_LL_O(x) (x)
4 #define SYSCALL_RLIM_INFINITY (-1UL/2)
6 #if _MIPSEL || __MIPSEL || __MIPSEL__
7 #define __stat_fix(st) ((st),(void)0)
10 static inline void __stat_fix(long p
)
12 struct stat
*st
= (struct stat
*)p
;
18 static inline long __syscall0(long n
)
20 register long r7
__asm__("$7");
21 register long r2
__asm__("$2");
22 __asm__
__volatile__ (
23 "addu $2,$0,%2 ; syscall"
24 : "=&r"(r2
), "=r"(r7
) : "ir"(n
), "0"(r2
), "1"(r7
)
25 : "$1", "$3", "$8", "$9", "$10", "$11", "$12", "$13",
26 "$14", "$15", "$24", "$25", "hi", "lo", "memory");
30 static inline long __syscall1(long n
, long a
)
32 register long r4
__asm__("$4") = a
;
33 register long r7
__asm__("$7");
34 register long r2
__asm__("$2");
35 __asm__
__volatile__ (
36 "addu $2,$0,%2 ; syscall"
37 : "=&r"(r2
), "=r"(r7
) : "ir"(n
), "0"(r2
), "1"(r7
),
39 : "$1", "$3", "$8", "$9", "$10", "$11", "$12", "$13",
40 "$14", "$15", "$24", "$25", "hi", "lo", "memory");
44 static inline long __syscall2(long n
, long a
, long b
)
46 register long r4
__asm__("$4") = a
;
47 register long r5
__asm__("$5") = b
;
48 register long r7
__asm__("$7");
49 register long r2
__asm__("$2");
50 __asm__
__volatile__ (
51 "addu $2,$0,%2 ; syscall"
52 : "=&r"(r2
), "=r"(r7
) : "ir"(n
), "0"(r2
), "1"(r7
),
54 : "$1", "$3", "$8", "$9", "$10", "$11", "$12", "$13",
55 "$14", "$15", "$24", "$25", "hi", "lo", "memory");
58 if (n
== SYS_stat
|| n
== SYS_fstat
|| n
== SYS_lstat
) __stat_fix(b
);
62 static inline long __syscall3(long n
, long a
, long b
, long c
)
64 register long r4
__asm__("$4") = a
;
65 register long r5
__asm__("$5") = b
;
66 register long r6
__asm__("$6") = c
;
67 register long r7
__asm__("$7");
68 register long r2
__asm__("$2");
69 __asm__
__volatile__ (
70 "addu $2,$0,%2 ; syscall"
71 : "=&r"(r2
), "=r"(r7
) : "ir"(n
), "0"(r2
), "1"(r7
),
72 "r"(r4
), "r"(r5
), "r"(r6
)
73 : "$1", "$3", "$8", "$9", "$10", "$11", "$12", "$13",
74 "$14", "$15", "$24", "$25", "hi", "lo", "memory");
77 if (n
== SYS_stat
|| n
== SYS_fstat
|| n
== SYS_lstat
) __stat_fix(b
);
81 static inline long __syscall4(long n
, long a
, long b
, long c
, long d
)
83 register long r4
__asm__("$4") = a
;
84 register long r5
__asm__("$5") = b
;
85 register long r6
__asm__("$6") = c
;
86 register long r7
__asm__("$7") = d
;
87 register long r2
__asm__("$2");
88 __asm__
__volatile__ (
89 "addu $2,$0,%2 ; syscall"
90 : "=&r"(r2
), "=r"(r7
) : "ir"(n
), "0"(r2
), "1"(r7
),
91 "r"(r4
), "r"(r5
), "r"(r6
)
92 : "$1", "$3", "$8", "$9", "$10", "$11", "$12", "$13",
93 "$14", "$15", "$24", "$25", "hi", "lo", "memory");
96 if (n
== SYS_stat
|| n
== SYS_fstat
|| n
== SYS_lstat
) __stat_fix(b
);
97 if (n
== SYS_newfstatat
) __stat_fix(c
);
101 static inline long __syscall5(long n
, long a
, long b
, long c
, long d
, long e
)
103 register long r4
__asm__("$4") = a
;
104 register long r5
__asm__("$5") = b
;
105 register long r6
__asm__("$6") = c
;
106 register long r7
__asm__("$7") = d
;
107 register long r8
__asm__("$8") = e
;
108 register long r2
__asm__("$2");
109 __asm__
__volatile__ (
110 "addu $2,$0,%2 ; syscall"
111 : "=&r"(r2
), "=r"(r7
) : "ir"(n
), "0"(r2
), "1"(r7
),
112 "r"(r4
), "r"(r5
), "r"(r6
), "r"(r8
)
113 : "$1", "$3", "$9", "$10", "$11", "$12", "$13",
114 "$14", "$15", "$24", "$25", "hi", "lo", "memory");
115 if (n
== SYS_stat
|| n
== SYS_fstat
|| n
== SYS_lstat
) __stat_fix(b
);
116 if (n
== SYS_newfstatat
) __stat_fix(c
);
120 static inline long __syscall6(long n
, long a
, long b
, long c
, long d
, long e
, long f
)
122 register long r4
__asm__("$4") = a
;
123 register long r5
__asm__("$5") = b
;
124 register long r6
__asm__("$6") = c
;
125 register long r7
__asm__("$7") = d
;
126 register long r8
__asm__("$8") = e
;
127 register long r8
__asm__("$9") = f
;
128 register long r2
__asm__("$2");
129 __asm__
__volatile__ (
130 "addu $2,$0,%2 ; syscall"
131 : "=&r"(r2
), "=r"(r7
) : "ir"(n
), "0"(r2
), "1"(r7
),
132 "r"(r4
), "r"(r5
), "r"(r6
), "r"(r8
), "r"(r9
)
133 : "$1", "$3", "$10", "$11", "$12", "$13",
134 "$14", "$15", "$24", "$25", "hi", "lo", "memory");
135 if (n
== SYS_stat
|| n
== SYS_fstat
|| n
== SYS_lstat
) __stat_fix(b
);
136 if (n
== SYS_newfstatat
) __stat_fix(c
);
141 #define VDSO_CGT_SYM "__vdso_clock_gettime"
142 #define VDSO_CGT_VER "LINUX_2.6"