From 4661a1534390784e32ce940ad05ebb8ea9cdb62d Mon Sep 17 00:00:00 2001 From: Ulrich Drepper Date: Mon, 5 May 2003 18:24:09 +0000 Subject: [PATCH] Update. 2003-05-05 Jakub Jelinek * sysdeps/ia64/bits/atomic.h (__arch_compare_and_exchange_val_8_acq, __arch_compare_and_exchange_val_16_acq): Cast 0 to mem's type. * sysdeps/powerpc/powerpc32/bits/atomic.h (__arch_compare_and_exchange_val_64_acq): Likewise. * sysdeps/sparc/sparc32/sparcv9/bits/atomic.h (__arch_compare_and_exchange_val_8_acq, __arch_compare_and_exchange_val_16_acq, __arch_compare_and_exchange_val_64_acq): Likewise. * sysdeps/sparc/sparc64/bits/atomic.h (__arch_compare_and_exchange_val_8_acq, __arch_compare_and_exchange_val_16_acq): Likewise. * sysdeps/s390/bits/atomic.h (__arch_compare_and_exchange_val_8_acq, __arch_compare_and_exchange_val_16_acq, __arch_compare_and_exchange_val_64_acq): Likewise. * sysdeps/unix/sysv/linux/sh/bits/atomic.h (__arch_compare_and_exchange_val_64_acq): Likewise. * sysdeps/s390/s390-64/backtrace.c (__backtrace): Add cast to shut up warning. * sysdeps/s390/fpu/fegetenv.c (fegetenv): Likewise. * sysdeps/unix/sysv/linux/s390/s390-64/sysdep.h (INLINE_SYSCALL, INTERNAL_SYSCALL_DIRECT, INTERNAL_SYSCALL_SVC0): Return long instead of int. (INTERNAL_SYSCALL_ERROR_P): Cast val to unsigned long, replace 0xfffff001u with -4095UL. --- ChangeLog | 28 +++++++++++++++++++++++++++ localedata/ChangeLog | 5 +++++ sysdeps/ia64/bits/atomic.h | 4 ++-- sysdeps/powerpc/powerpc32/bits/atomic.h | 2 +- sysdeps/s390/bits/atomic.h | 6 +++--- sysdeps/s390/fpu/fegetenv.c | 4 ++-- sysdeps/s390/s390-64/backtrace.c | 2 +- sysdeps/sparc/sparc32/sparcv9/bits/atomic.h | 6 +++--- sysdeps/sparc/sparc64/bits/atomic.h | 4 ++-- sysdeps/unix/sysv/linux/s390/s390-64/sysdep.h | 10 +++++----- sysdeps/unix/sysv/linux/sh/bits/atomic.h | 2 +- 11 files changed, 53 insertions(+), 20 deletions(-) diff --git a/ChangeLog b/ChangeLog index 80771f3..1bfc4ae 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,31 @@ +2003-05-05 Jakub Jelinek + + * sysdeps/ia64/bits/atomic.h (__arch_compare_and_exchange_val_8_acq, + __arch_compare_and_exchange_val_16_acq): Cast 0 to mem's type. + * sysdeps/powerpc/powerpc32/bits/atomic.h + (__arch_compare_and_exchange_val_64_acq): Likewise. + * sysdeps/sparc/sparc32/sparcv9/bits/atomic.h + (__arch_compare_and_exchange_val_8_acq, + __arch_compare_and_exchange_val_16_acq, + __arch_compare_and_exchange_val_64_acq): Likewise. + * sysdeps/sparc/sparc64/bits/atomic.h + (__arch_compare_and_exchange_val_8_acq, + __arch_compare_and_exchange_val_16_acq): Likewise. + * sysdeps/s390/bits/atomic.h (__arch_compare_and_exchange_val_8_acq, + __arch_compare_and_exchange_val_16_acq, + __arch_compare_and_exchange_val_64_acq): Likewise. + * sysdeps/unix/sysv/linux/sh/bits/atomic.h + (__arch_compare_and_exchange_val_64_acq): Likewise. + * sysdeps/s390/s390-64/backtrace.c (__backtrace): Add cast to shut + up warning. + * sysdeps/s390/fpu/fegetenv.c (fegetenv): Likewise. + + * sysdeps/unix/sysv/linux/s390/s390-64/sysdep.h + (INLINE_SYSCALL, INTERNAL_SYSCALL_DIRECT, INTERNAL_SYSCALL_SVC0): + Return long instead of int. + (INTERNAL_SYSCALL_ERROR_P): Cast val to unsigned long, replace + 0xfffff001u with -4095UL. + 2003-05-05 Andreas Jaeger * sysdeps/x86_64/fpu_control.h: New from i386. diff --git a/localedata/ChangeLog b/localedata/ChangeLog index c5306f8..7d6c857 100644 --- a/localedata/ChangeLog +++ b/localedata/ChangeLog @@ -1,3 +1,8 @@ +2003-05-05 Jakub Jelinek + + * tests-mbwc/tst_wcsxfrm.c (tst_wcsxfrm): Use %zu instead of %d + format specifier when printing ret. + 2003-04-30 Petter Reinholdtsen * tst-fmon.c: Report name of locale if setlocale() fails. diff --git a/sysdeps/ia64/bits/atomic.h b/sysdeps/ia64/bits/atomic.h index b6522b3..ccbd4f8 100644 --- a/sysdeps/ia64/bits/atomic.h +++ b/sysdeps/ia64/bits/atomic.h @@ -60,10 +60,10 @@ typedef uintmax_t uatomic_max_t; (long) (newval))) #define __arch_compare_and_exchange_val_8_acq(mem, newval, oldval) \ - (abort (), 0) + (abort (), (__typeof (*mem)) 0) #define __arch_compare_and_exchange_val_16_acq(mem, newval, oldval) \ - (abort (), 0) + (abort (), (__typeof (*mem)) 0) #define __arch_compare_and_exchange_val_32_acq(mem, newval, oldval) \ __sync_val_compare_and_swap_si ((int *) (mem), (int) (long) (oldval), \ diff --git a/sysdeps/powerpc/powerpc32/bits/atomic.h b/sysdeps/powerpc/powerpc32/bits/atomic.h index 9e56184..54caa45 100644 --- a/sysdeps/powerpc/powerpc32/bits/atomic.h +++ b/sysdeps/powerpc/powerpc32/bits/atomic.h @@ -49,7 +49,7 @@ (abort (), 0) # define __arch_compare_and_exchange_val_64_acq(mem, newval, oldval) \ - (abort (), 0) + (abort (), (__typeof (*mem)) 0) # define __arch_atomic_exchange_64(mem, value) \ ({ abort (); (*mem) = (value); }) diff --git a/sysdeps/s390/bits/atomic.h b/sysdeps/s390/bits/atomic.h index 51ad6d2..aa00473 100644 --- a/sysdeps/s390/bits/atomic.h +++ b/sysdeps/s390/bits/atomic.h @@ -46,10 +46,10 @@ typedef uintmax_t uatomic_max_t; #define __arch_compare_and_exchange_val_8_acq(mem, newval, oldval) \ - (abort (), 0) + (abort (), (__typeof (*mem)) 0) #define __arch_compare_and_exchange_val_16_acq(mem, newval, oldval) \ - (abort (), 0) + (abort (), (__typeof (*mem)) 0) #define __arch_compare_and_exchange_val_32_acq(mem, newval, oldval) \ ({ __typeof (mem) __archmem = (mem); \ @@ -72,5 +72,5 @@ typedef uintmax_t uatomic_max_t; implement them by use of the csd instruction. The straightforward implementation causes warnings so we skip the definition for now. */ # define __arch_compare_and_exchange_val_64_acq(mem, newval, oldval) \ - (abort (), 0) + (abort (), (__typeof (*mem)) 0) #endif diff --git a/sysdeps/s390/fpu/fegetenv.c b/sysdeps/s390/fpu/fegetenv.c index 438526a..b35a76a 100644 --- a/sysdeps/s390/fpu/fegetenv.c +++ b/sysdeps/s390/fpu/fegetenv.c @@ -1,5 +1,5 @@ /* Store current floating-point environment. - Copyright (C) 2000 Free Software Foundation, Inc. + Copyright (C) 2000, 2003 Free Software Foundation, Inc. This file is part of the GNU C Library. Contributed by Denis Joseph Barrow (djbarrow@de.ibm.com). @@ -36,7 +36,7 @@ fegetenv (fenv_t *envp) no way to find out the ieee instruction pointer if there was no fault. */ _FPU_GETCW (envp->fpc); envp->ieee_instruction_pointer = - ptrace (PTRACE_PEEKUSER, getpid (), PT_IEEE_IP); + (void *) ptrace (PTRACE_PEEKUSER, getpid (), PT_IEEE_IP); /* Success. */ return 0; diff --git a/sysdeps/s390/s390-64/backtrace.c b/sysdeps/s390/s390-64/backtrace.c index 092144e..1eed72a 100644 --- a/sysdeps/s390/s390-64/backtrace.c +++ b/sysdeps/s390/s390-64/backtrace.c @@ -70,7 +70,7 @@ __backtrace (array, size) out of range. */ break; - array[cnt++] = stack->save_grps[8]; + array[cnt++] = (void *) stack->save_grps[8]; stack = (struct layout *) stack->back_chain; } diff --git a/sysdeps/sparc/sparc32/sparcv9/bits/atomic.h b/sysdeps/sparc/sparc32/sparcv9/bits/atomic.h index edab3bc..bb4e2db 100644 --- a/sysdeps/sparc/sparc32/sparcv9/bits/atomic.h +++ b/sysdeps/sparc/sparc32/sparcv9/bits/atomic.h @@ -47,10 +47,10 @@ typedef uintmax_t uatomic_max_t; #define __arch_compare_and_exchange_val_8_acq(mem, newval, oldval) \ - (abort (), 0) + (abort (), (__typeof (*mem)) 0) #define __arch_compare_and_exchange_val_16_acq(mem, newval, oldval) \ - (abort (), 0) + (abort (), (__typeof (*mem)) 0) #define __arch_compare_and_exchange_val_32_acq(mem, newval, oldval) \ ({ \ @@ -64,7 +64,7 @@ typedef uintmax_t uatomic_max_t; /* This can be implemented if needed. */ #define __arch_compare_and_exchange_val_64_acq(mem, newval, oldval) \ - (abort (), 0) + (abort (), (__typeof (*mem)) 0) #define atomic_exchange(mem, newvalue) \ ({ __typeof (*(mem)) __oldval; \ diff --git a/sysdeps/sparc/sparc64/bits/atomic.h b/sysdeps/sparc/sparc64/bits/atomic.h index bb3c91d..4df3b25 100644 --- a/sysdeps/sparc/sparc64/bits/atomic.h +++ b/sysdeps/sparc/sparc64/bits/atomic.h @@ -47,10 +47,10 @@ typedef uintmax_t uatomic_max_t; #define __arch_compare_and_exchange_val_8_acq(mem, newval, oldval) \ - (abort (), 0) + (abort (), (__typeof (*mem)) 0) #define __arch_compare_and_exchange_val_16_acq(mem, newval, oldval) \ - (abort (), 0) + (abort (), (__typeof (*mem)) 0) #define __arch_compare_and_exchange_val_32_acq(mem, newval, oldval) \ ({ \ diff --git a/sysdeps/unix/sysv/linux/s390/s390-64/sysdep.h b/sysdeps/unix/sysv/linux/s390/s390-64/sysdep.h index 41ec395..9abc06e 100644 --- a/sysdeps/unix/sysv/linux/s390/s390-64/sysdep.h +++ b/sysdeps/unix/sysv/linux/s390/s390-64/sysdep.h @@ -163,13 +163,13 @@ #undef INLINE_SYSCALL #define INLINE_SYSCALL(name, nr, args...) \ ({ \ - unsigned int _ret = INTERNAL_SYSCALL (name, , nr, args); \ + long _ret = INTERNAL_SYSCALL (name, , nr, args); \ if (__builtin_expect (INTERNAL_SYSCALL_ERROR_P (_ret, ), 0)) \ { \ __set_errno (INTERNAL_SYSCALL_ERRNO (_ret, )); \ _ret = -1; \ } \ - (int) _ret; }) + _ret; }) #undef INTERNAL_SYSCALL_DECL #define INTERNAL_SYSCALL_DECL(err) do { } while (0) @@ -178,7 +178,7 @@ #define INTERNAL_SYSCALL_DIRECT(name, err, nr, args...) \ ({ \ DECLARGS_##nr(args) \ - register int _ret asm("2"); \ + register long _ret asm("2"); \ asm volatile ( \ "svc %b1\n\t" \ : "=d" (_ret) \ @@ -191,7 +191,7 @@ ({ \ DECLARGS_##nr(args) \ register unsigned long _nr asm("1") = (unsigned long)(__NR_##name); \ - register int _ret asm("2"); \ + register long _ret asm("2"); \ asm volatile ( \ "svc 0\n\t" \ : "=d" (_ret) \ @@ -207,7 +207,7 @@ #undef INTERNAL_SYSCALL_ERROR_P #define INTERNAL_SYSCALL_ERROR_P(val, err) \ - ((unsigned int) (val) >= 0xfffff001u) + ((unsigned long) (val) >= -4095UL) #undef INTERNAL_SYSCALL_ERRNO #define INTERNAL_SYSCALL_ERRNO(val, err) (-(val)) diff --git a/sysdeps/unix/sysv/linux/sh/bits/atomic.h b/sysdeps/unix/sysv/linux/sh/bits/atomic.h index e692595..a0e5918 100644 --- a/sysdeps/unix/sysv/linux/sh/bits/atomic.h +++ b/sysdeps/unix/sysv/linux/sh/bits/atomic.h @@ -122,7 +122,7 @@ typedef uintmax_t uatomic_max_t; such an operation. So don't define any code for now. */ # define __arch_compare_and_exchange_val_64_acq(mem, newval, oldval) \ - (abort (), 0) + (abort (), (__typeof (*mem)) 0) #define atomic_exchange_and_add(mem, value) \ ({ __typeof (*(mem)) __result, __tmp, __value = (value); \ -- 2.7.4