From 7d310ed1d086d9874b7ca40933ff870a8adc75d9 Mon Sep 17 00:00:00 2001 From: Rich Felker Date: Sat, 22 Nov 2014 20:50:01 -0500 Subject: [PATCH] remove old clang workarounds from arm syscall implementation the register constraints in the non-clang case were tested to work on clang back to 3.2, and earlier versions of clang have known bugs that preclude building musl. there may be other reasons to prefer not to use inline syscalls, but if so the function-call-based implementations should be added back in a unified way for all archs. --- arch/arm/syscall_arch.h | 31 ------------------------------- 1 file changed, 31 deletions(-) diff --git a/arch/arm/syscall_arch.h b/arch/arm/syscall_arch.h index e10748a4..845f2e4d 100644 --- a/arch/arm/syscall_arch.h +++ b/arch/arm/syscall_arch.h @@ -5,8 +5,6 @@ long (__syscall)(long, ...); -#ifndef __clang__ - #define __asm_syscall(...) do { \ __asm__ __volatile__ ( "svc 0" \ : "=r"(r0) : __VA_ARGS__ : "memory"); \ @@ -54,35 +52,6 @@ static inline long __syscall4(long n, long a, long b, long c, long d) __asm_syscall("r"(r7), "0"(r0), "r"(r1), "r"(r2), "r"(r3)); } -#else - -static inline long __syscall0(long n) -{ - return (__syscall)(n); -} - -static inline long __syscall1(long n, long a) -{ - return (__syscall)(n, a); -} - -static inline long __syscall2(long n, long a, long b) -{ - return (__syscall)(n, a, b); -} - -static inline long __syscall3(long n, long a, long b, long c) -{ - return (__syscall)(n, a, b, c); -} - -static inline long __syscall4(long n, long a, long b, long c, long d) -{ - return (__syscall)(n, a, b, c, d); -} - -#endif - static inline long __syscall5(long n, long a, long b, long c, long d, long e) { return (__syscall)(n, a, b, c, d, e); -- 2.25.1