]>
git.proxmox.com Git - wasi-libc.git/blob - 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))
6 static __inline
long __syscall0(long n
)
8 register unsigned long r12
__asm__("r12") = n
;
9 register unsigned long r3
__asm__("r3");
10 __asm__
__volatile__ ("brki r14, 0x8" : "=r"(r3
)
16 static inline long __syscall1(long n
, long a
)
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
)
27 static inline long __syscall2(long n
, long a
, long b
)
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
)
39 static inline long __syscall3(long n
, long a
, long b
, long c
)
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
)
52 static inline long __syscall4(long n
, long a
, long b
, long c
, long d
)
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
)
66 static inline long __syscall5(long n
, long a
, long b
, long c
, long d
, long e
)
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
)
81 static inline long __syscall6(long n
, long a
, long b
, long c
, long d
, long e
, long f
)
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
)
97 #define SYSCALL_IPC_BROKEN_MODE