From 4134c68dd4dc23ed358c8301da56225d21d655d9 Mon Sep 17 00:00:00 2001 From: Rich Felker Date: Sat, 22 Nov 2014 21:50:13 -0500 Subject: unify non-inline version of syscall code across archs except powerpc, which still lacks inline syscalls simply because nobody has written the code, these are all fallbacks used to work around a clang bug that probably does not exist in versions of clang that can compile musl. however, it's useful to have the generic non-inline code anyway, as it eases the task of porting to new archs: writing inline syscall code is now optional. this approach could also help support compilers which don't understand inline asm or lack support for the needed register constraints. mips could not be unified because it has special fixup code for broken layout of the kernel's struct stat. --- arch/powerpc/syscall_arch.h | 38 ++------------------------------------ 1 file changed, 2 insertions(+), 36 deletions(-) (limited to 'arch/powerpc') diff --git a/arch/powerpc/syscall_arch.h b/arch/powerpc/syscall_arch.h index 7a6b6b7b..e7cb1a26 100644 --- a/arch/powerpc/syscall_arch.h +++ b/arch/powerpc/syscall_arch.h @@ -3,39 +3,5 @@ ((union { long long ll; long l[2]; }){ .ll = x }).l[1] #define __SYSCALL_LL_O(x) 0, __SYSCALL_LL_E((x)) -long (__syscall)(long, ...); - -static inline long __syscall0(long n) -{ - return (__syscall)(n, 0, 0, 0, 0, 0, 0); -} - -static inline long __syscall1(long n, long a) -{ - return (__syscall)(n, a, 0, 0, 0, 0, 0); -} - -static inline long __syscall2(long n, long a, long b) -{ - return (__syscall)(n, a, b, 0, 0, 0, 0); -} - -static inline long __syscall3(long n, long a, long b, long c) -{ - return (__syscall)(n, a, b, c, 0, 0, 0); -} - -static inline long __syscall4(long n, long a, long b, long c, long d) -{ - return (__syscall)(n, a, b, c, d, 0, 0); -} - -static inline long __syscall5(long n, long a, long b, long c, long d, long e) -{ - return (__syscall)(n, a, b, c, d, e, 0); -} - -static inline long __syscall6(long n, long a, long b, long c, long d, long e, long f) -{ - return (__syscall)(n, a, b, c, d, e, f); -} +#undef SYSCALL_NO_INLINE +#define SYSCALL_NO_INLINE -- cgit v1.2.3-70-g09d2