1
0
mirror of https://sourceware.org/git/glibc.git synced 2025-07-29 11:41:21 +03:00

hppa: drop __ASSUME_LWS_CAS define

We require recent enough kernels for this now, and we've been hardcoding
it to 1, so drop it entirely now.
This commit is contained in:
Mike Frysinger
2015-08-14 22:09:30 -04:00
parent 43329fe139
commit 8584204806
3 changed files with 9 additions and 11 deletions

View File

@ -1,3 +1,10 @@
2015-08-18 Mike Frysinger <vapier@gentoo.org>
* sysdeps/unix/sysv/linux/hppa/bits/atomic.h: Delete
kernel-features.h include. Delete __ASSUME_LWS_CAS checks.
* sysdeps/unix/sysv/linux/hppa/kernel-features.h
(__ASSUME_LWS_CAS): Delete.
2015-08-18 Mike Frysinger <vapier@gentoo.org> 2015-08-18 Mike Frysinger <vapier@gentoo.org>
* sysdeps/hppa/configure.ac: Delete binutils tls checks. * sysdeps/hppa/configure.ac: Delete binutils tls checks.

View File

@ -18,7 +18,6 @@
#include <stdint.h> /* Required for type definitions e.g. uint8_t. */ #include <stdint.h> /* Required for type definitions e.g. uint8_t. */
#include <abort-instr.h> /* Required for ABORT_INSTRUCTIUON. */ #include <abort-instr.h> /* Required for ABORT_INSTRUCTIUON. */
#include <kernel-features.h> /* Required for __ASSUME_LWS_CAS. */
/* We need EFAULT, ENONSYS */ /* We need EFAULT, ENONSYS */
#if !defined EFAULT && !defined ENOSYS #if !defined EFAULT && !defined ENOSYS
@ -62,10 +61,9 @@ typedef uintmax_t uatomic_max_t;
/* String constant for -EDEADLOCK. */ /* String constant for -EDEADLOCK. */
#define _ASM_EDEADLOCK "-45" #define _ASM_EDEADLOCK "-45"
#if __ASSUME_LWS_CAS
/* The only basic operation needed is compare and exchange. The mem /* The only basic operation needed is compare and exchange. The mem
pointer must be word aligned. */ pointer must be word aligned. */
# define atomic_compare_and_exchange_val_acq(mem, newval, oldval) \ #define atomic_compare_and_exchange_val_acq(mem, newval, oldval) \
({ \ ({ \
register long lws_errno asm("r21"); \ register long lws_errno asm("r21"); \
register unsigned long lws_ret asm("r28"); \ register unsigned long lws_ret asm("r28"); \
@ -93,17 +91,13 @@ typedef uintmax_t uatomic_max_t;
(__typeof (oldval)) lws_ret; \ (__typeof (oldval)) lws_ret; \
}) })
# define atomic_compare_and_exchange_bool_acq(mem, newval, oldval) \ #define atomic_compare_and_exchange_bool_acq(mem, newval, oldval) \
({ \ ({ \
__typeof__ (*mem) ret; \ __typeof__ (*mem) ret; \
ret = atomic_compare_and_exchange_val_acq(mem, newval, oldval); \ ret = atomic_compare_and_exchange_val_acq(mem, newval, oldval); \
/* Return 1 if it was already acquired. */ \ /* Return 1 if it was already acquired. */ \
(ret != oldval); \ (ret != oldval); \
}) })
#else
# error __ASSUME_LWS_CAS is required to build glibc.
#endif
/* __ASSUME_LWS_CAS */
#endif #endif
/* _BITS_ATOMIC_H */ /* _BITS_ATOMIC_H */

View File

@ -18,9 +18,6 @@
<http://www.gnu.org/licenses/>. */ <http://www.gnu.org/licenses/>. */
/* PA-RISC 2.6.9 kernels had the first LWS CAS support */
#define __ASSUME_LWS_CAS 1
/* Support for the accept4 and recvmmsg syscalls was added in 2.6.34. */ /* Support for the accept4 and recvmmsg syscalls was added in 2.6.34. */
#if __LINUX_KERNEL_VERSION >= 0x020622 #if __LINUX_KERNEL_VERSION >= 0x020622
# define __ASSUME_ACCEPT4_SYSCALL 1 # define __ASSUME_ACCEPT4_SYSCALL 1