about summary refs log tree commit diff
path: root/sysdeps/unix/sysv/linux
diff options
context:
space:
mode:
authorUlrich Drepper <drepper@redhat.com>2003-05-05 18:24:09 +0000
committerUlrich Drepper <drepper@redhat.com>2003-05-05 18:24:09 +0000
commit4661a1534390784e32ce940ad05ebb8ea9cdb62d (patch)
tree386c3329673ecb68f5b957f708bdd3504df76b6e /sysdeps/unix/sysv/linux
parentb2e2aa373936c76e1c5cf119d35b48ae64f9fbec (diff)
downloadglibc-4661a1534390784e32ce940ad05ebb8ea9cdb62d.tar.gz
glibc-4661a1534390784e32ce940ad05ebb8ea9cdb62d.tar.xz
glibc-4661a1534390784e32ce940ad05ebb8ea9cdb62d.zip
Update.
2003-05-05  Jakub Jelinek  <jakub@redhat.com>

	* 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.
Diffstat (limited to 'sysdeps/unix/sysv/linux')
-rw-r--r--sysdeps/unix/sysv/linux/s390/s390-64/sysdep.h10
-rw-r--r--sysdeps/unix/sysv/linux/sh/bits/atomic.h2
2 files changed, 6 insertions, 6 deletions
diff --git a/sysdeps/unix/sysv/linux/s390/s390-64/sysdep.h b/sysdeps/unix/sysv/linux/s390/s390-64/sysdep.h
index 41ec395a32..9abc06e229 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 e692595960..a0e5918f03 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); \