From: Rich Felker Date: Wed, 10 Apr 2019 22:07:51 +0000 (-0400) Subject: remove cruft for supposedly-buggy clang from or1k & microblaze syscall_arch X-Git-Tag: v1.1.23~73 X-Git-Url: https://git.librecmc.org/?a=commitdiff_plain;h=f76d51a1cca1236efc50ee60c0bad3354079b854;p=oweals%2Fmusl.git remove cruft for supposedly-buggy clang from or1k & microblaze syscall_arch it was never demonstrated to me that this workaround was needed, and seems likely that, if there ever was any clang version for which it was needed, it's old enough to be unusably buggy in other ways. if it turns out some compilers actually can't do the register allocation right, we'll need to replace this with inline shuffling code, since the external __syscall dependency is being removed. --- diff --git a/arch/microblaze/syscall_arch.h b/arch/microblaze/syscall_arch.h index 6cf631ad..942aaa2d 100644 --- a/arch/microblaze/syscall_arch.h +++ b/arch/microblaze/syscall_arch.h @@ -3,8 +3,6 @@ ((union { long long ll; long l[2]; }){ .ll = x }).l[1] #define __SYSCALL_LL_O(x) 0, __SYSCALL_LL_E((x)) -#ifndef __clang__ - static __inline long __syscall0(long n) { register unsigned long r12 __asm__("r12") = n; @@ -96,11 +94,4 @@ static inline long __syscall6(long n, long a, long b, long c, long d, long e, lo return r3; } -#else - -#undef SYSCALL_NO_INLINE -#define SYSCALL_NO_INLINE - -#endif - #define SYSCALL_IPC_BROKEN_MODE diff --git a/arch/or1k/syscall_arch.h b/arch/or1k/syscall_arch.h index caff7ece..5a9b074a 100644 --- a/arch/or1k/syscall_arch.h +++ b/arch/or1k/syscall_arch.h @@ -5,8 +5,6 @@ #define SYSCALL_MMAP2_UNIT 8192ULL -#ifndef __clang__ - static __inline long __syscall0(long n) { register unsigned long r11 __asm__("r11") = n; @@ -113,10 +111,3 @@ static inline long __syscall6(long n, long a, long b, long c, long d, long e, lo "r23", "r25", "r27", "r29", "r31"); return r11; } - -#else - -#undef SYSCALL_NO_INLINE -#define SYSCALL_NO_INLINE - -#endif