From f76d51a1cca1236efc50ee60c0bad3354079b854 Mon Sep 17 00:00:00 2001 From: Rich Felker Date: Wed, 10 Apr 2019 18:07:51 -0400 Subject: [PATCH] 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. --- arch/microblaze/syscall_arch.h | 9 --------- arch/or1k/syscall_arch.h | 9 --------- 2 files changed, 18 deletions(-) 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 -- 2.25.1