]> git.proxmox.com Git - wasi-libc.git/blob - libc-top-half/musl/arch/microblaze/syscall_arch.h
Update to musl 1.2.2.
[wasi-libc.git] / libc-top-half / musl / arch / microblaze / syscall_arch.h
1 #define __SYSCALL_LL_E(x) \
2 ((union { long long ll; long l[2]; }){ .ll = x }).l[0], \
3 ((union { long long ll; long l[2]; }){ .ll = x }).l[1]
4 #define __SYSCALL_LL_O(x) __SYSCALL_LL_E((x))
5
6 static __inline long __syscall0(long n)
7 {
8 register unsigned long r12 __asm__("r12") = n;
9 register unsigned long r3 __asm__("r3");
10 __asm__ __volatile__ ("brki r14, 0x8" : "=r"(r3)
11 : "r"(r12)
12 : "memory", "r4");
13 return r3;
14 }
15
16 static inline long __syscall1(long n, long a)
17 {
18 register unsigned long r12 __asm__("r12") = n;
19 register unsigned long r3 __asm__("r3");
20 register unsigned long r5 __asm__("r5") = a;
21 __asm__ __volatile__ ("brki r14, 0x8" : "=r"(r3)
22 : "r"(r12), "r"(r5)
23 : "memory", "r4");
24 return r3;
25 }
26
27 static inline long __syscall2(long n, long a, long b)
28 {
29 register unsigned long r12 __asm__("r12") = n;
30 register unsigned long r3 __asm__("r3");
31 register unsigned long r5 __asm__("r5") = a;
32 register unsigned long r6 __asm__("r6") = b;
33 __asm__ __volatile__ ("brki r14, 0x8" : "=r"(r3)
34 : "r"(r12), "r"(r5), "r"(r6)
35 : "memory", "r4");
36 return r3;
37 }
38
39 static inline long __syscall3(long n, long a, long b, long c)
40 {
41 register unsigned long r12 __asm__("r12") = n;
42 register unsigned long r3 __asm__("r3");
43 register unsigned long r5 __asm__("r5") = a;
44 register unsigned long r6 __asm__("r6") = b;
45 register unsigned long r7 __asm__("r7") = c;
46 __asm__ __volatile__ ("brki r14, 0x8" : "=r"(r3)
47 : "r"(r12), "r"(r5), "r"(r6), "r"(r7)
48 : "memory", "r4");
49 return r3;
50 }
51
52 static inline long __syscall4(long n, long a, long b, long c, long d)
53 {
54 register unsigned long r12 __asm__("r12") = n;
55 register unsigned long r3 __asm__("r3");
56 register unsigned long r5 __asm__("r5") = a;
57 register unsigned long r6 __asm__("r6") = b;
58 register unsigned long r7 __asm__("r7") = c;
59 register unsigned long r8 __asm__("r8") = d;
60 __asm__ __volatile__ ("brki r14, 0x8" : "=r"(r3)
61 : "r"(r12), "r"(r5), "r"(r6), "r"(r7), "r"(r8)
62 : "memory", "r4");
63 return r3;
64 }
65
66 static inline long __syscall5(long n, long a, long b, long c, long d, long e)
67 {
68 register unsigned long r12 __asm__("r12") = n;
69 register unsigned long r3 __asm__("r3");
70 register unsigned long r5 __asm__("r5") = a;
71 register unsigned long r6 __asm__("r6") = b;
72 register unsigned long r7 __asm__("r7") = c;
73 register unsigned long r8 __asm__("r8") = d;
74 register unsigned long r9 __asm__("r9") = e;
75 __asm__ __volatile__ ("brki r14, 0x8" : "=r"(r3)
76 : "r"(r12), "r"(r5), "r"(r6), "r"(r7), "r"(r8), "r"(r9)
77 : "memory", "r4");
78 return r3;
79 }
80
81 static inline long __syscall6(long n, long a, long b, long c, long d, long e, long f)
82 {
83 register unsigned long r12 __asm__("r12") = n;
84 register unsigned long r3 __asm__("r3");
85 register unsigned long r5 __asm__("r5") = a;
86 register unsigned long r6 __asm__("r6") = b;
87 register unsigned long r7 __asm__("r7") = c;
88 register unsigned long r8 __asm__("r8") = d;
89 register unsigned long r9 __asm__("r9") = e;
90 register unsigned long r10 __asm__("r10") = f;
91 __asm__ __volatile__ ("brki r14, 0x8" : "=r"(r3)
92 : "r"(r12), "r"(r5), "r"(r6), "r"(r7), "r"(r8), "r"(r9), "r"(r10)
93 : "memory", "r4");
94 return r3;
95 }
96
97 #define SYSCALL_IPC_BROKEN_MODE
98
99 #undef SYS_socketcall