about summary refs log tree commit diff
diff options
context:
space:
mode:
-rw-r--r--ChangeLog8
-rw-r--r--include/sys/cdefs.h6
-rw-r--r--math/math_private.h6
-rw-r--r--stdlib/tst-strtod.c5
-rw-r--r--sysdeps/i386/i486/bits/atomic.h36
-rw-r--r--sysdeps/x86_64/bits/atomic.h44
6 files changed, 18 insertions, 87 deletions
diff --git a/ChangeLog b/ChangeLog
index 99684f6bc2..57ad49f52c 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,11 @@
+2012-03-03  Marek Polacek  <polacek@redhat.com>
+
+	* include/sys/cdefs.h: Remove __GNUC_PREREQ macro.
+	* math/math_private.h: Likewise.
+	* stdlib/tst-strtod.c: Likewise.
+	* sysdeps/i386/i486/bits/atomic.h: Likewise.
+	* sysdeps/x86_64/bits/atomic.h: Likewise.
+
 2012-03-02  David S. Miller  <davem@davemloft.net>
 
 	* sysdeps/sparc/sparc32/sparcv9/fpu/s_llrint.S: New file.
diff --git a/include/sys/cdefs.h b/include/sys/cdefs.h
index fa93982af9..71baa1a2d2 100644
--- a/include/sys/cdefs.h
+++ b/include/sys/cdefs.h
@@ -14,11 +14,7 @@ libc_hidden_proto (__chk_fail)
 rtld_hidden_proto (__chk_fail)
 
 
-# if __GNUC_PREREQ (4,3)
-#  define __attribute_alloc_size(...) __attribute__ ((alloc_size (__VA_ARGS__)))
-# else
-#  define __attribute_alloc_size(...)
-# endif
+# define __attribute_alloc_size(...) __attribute__ ((alloc_size (__VA_ARGS__)))
 #endif
 
 #endif
diff --git a/math/math_private.h b/math/math_private.h
index e4108d8f23..777762dd33 100644
--- a/math/math_private.h
+++ b/math/math_private.h
@@ -211,10 +211,8 @@ extern int    __kernel_rem_pio2 (double*,double*,int,int,int, const int32_t*);
 /* internal functions.  */
 extern double __copysign (double x, double __y);
 
-#if __GNUC_PREREQ (4, 0)
 extern inline double __copysign (double x, double y)
 { return __builtin_copysign (x, y); }
-#endif
 
 /* ieee style elementary float functions */
 extern float __ieee754_sqrtf (float);
@@ -258,10 +256,8 @@ extern int   __kernel_rem_pio2f (float*,float*,int,int,int, const int32_t*);
 /* internal functions.  */
 extern float __copysignf (float x, float __y);
 
-#if __GNUC_PREREQ (4, 0)
 extern inline float __copysignf (float x, float y)
 { return __builtin_copysignf (x, y); }
-#endif
 
 /* ieee style elementary long double functions */
 extern long double __ieee754_sqrtl (long double);
@@ -326,10 +322,8 @@ extern void __sincosl (long double, long double *, long double *);
 extern long double __logbl (long double x);
 extern long double __significandl (long double x);
 
-#if __GNUC_PREREQ (4, 0)
 extern inline long double __copysignl (long double x, long double y)
 { return __builtin_copysignl (x, y); }
-#endif
 
 #endif
 
diff --git a/stdlib/tst-strtod.c b/stdlib/tst-strtod.c
index 9be7835e7f..25bee78f2e 100644
--- a/stdlib/tst-strtod.c
+++ b/stdlib/tst-strtod.c
@@ -1,4 +1,4 @@
-/* Copyright (C) 1991,1996-2001,2003,2009,2011 Free Software Foundation, Inc.
+/* Copyright (C) 1991-2012 Free Software Foundation, Inc.
    This file is part of the GNU C Library.
 
    The GNU C Library is free software; you can redistribute it and/or
@@ -64,12 +64,9 @@ static const struct ltest tests[] =
     { "0x0.8p-1022",
       1.11253692925360069154511635866620203210960799023116591527666e-308,
       '\0', ERANGE },
-#if __GNUC_PREREQ(2,96)
-    /* For older GCC release HUGE_VAL is not a constant.  */
     { "Inf", HUGE_VAL, '\0', 0 },
     { "-Inf", -HUGE_VAL, '\0', 0 },
     { "+InFiNiTy", HUGE_VAL, '\0', 0 },
-#endif
     { "0x80000Ap-23", 0x80000Ap-23, '\0', 0 },
     { "1e-324", 0, '\0', ERANGE },
     { NULL, 0, '\0', 0 }
diff --git a/sysdeps/i386/i486/bits/atomic.h b/sysdeps/i386/i486/bits/atomic.h
index b633ce984a..b59a556db5 100644
--- a/sysdeps/i386/i486/bits/atomic.h
+++ b/sysdeps/i386/i486/bits/atomic.h
@@ -1,4 +1,4 @@
-/* Copyright (C) 2002-2004,2006,2007,2009,2011 Free Software Foundation, Inc.
+/* Copyright (C) 2002-2012 Free Software Foundation, Inc.
    This file is part of the GNU C Library.
    Contributed by Ulrich Drepper <drepper@redhat.com>, 2002.
 
@@ -55,33 +55,10 @@ typedef uintmax_t uatomic_max_t;
 #endif
 
 
-#if __GNUC_PREREQ (4, 1)
-# define atomic_compare_and_exchange_val_acq(mem, newval, oldval) \
+#define atomic_compare_and_exchange_val_acq(mem, newval, oldval) \
   __sync_val_compare_and_swap (mem, oldval, newval)
-#  define atomic_compare_and_exchange_bool_acq(mem, newval, oldval) \
+#define atomic_compare_and_exchange_bool_acq(mem, newval, oldval) \
   (! __sync_bool_compare_and_swap (mem, oldval, newval))
-#else
-# define __arch_compare_and_exchange_val_8_acq(mem, newval, oldval) \
-  ({ __typeof (*mem) ret;						      \
-     __asm __volatile (LOCK_PREFIX "cmpxchgb %b2, %1"			      \
-		       : "=a" (ret), "=m" (*mem)			      \
-		       : "q" (newval), "m" (*mem), "0" (oldval));	      \
-     ret; })
-
-# define __arch_compare_and_exchange_val_16_acq(mem, newval, oldval) \
-  ({ __typeof (*mem) ret;						      \
-     __asm __volatile (LOCK_PREFIX "cmpxchgw %w2, %1"			      \
-		       : "=a" (ret), "=m" (*mem)			      \
-		       : "r" (newval), "m" (*mem), "0" (oldval));	      \
-     ret; })
-
-# define __arch_compare_and_exchange_val_32_acq(mem, newval, oldval) \
-  ({ __typeof (*mem) ret;						      \
-     __asm __volatile (LOCK_PREFIX "cmpxchgl %2, %1"			      \
-		       : "=a" (ret), "=m" (*mem)			      \
-		       : "r" (newval), "m" (*mem), "0" (oldval));	      \
-     ret; })
-#endif
 
 
 #define __arch_c_compare_and_exchange_val_8_acq(mem, newval, oldval) \
@@ -254,13 +231,8 @@ typedef uintmax_t uatomic_max_t;
        }								      \
      __result; })
 
-#if __GNUC_PREREQ (4, 1)
-# define atomic_exchange_and_add(mem, value) \
+#define atomic_exchange_and_add(mem, value) \
   __sync_fetch_and_add (mem, value)
-#else
-# define atomic_exchange_and_add(mem, value) \
-  __arch_exchange_and_add_body (LOCK_PREFIX, __arch, mem, value)
-#endif
 
 #define __arch_exchange_and_add_cprefix \
   "cmpl $0, %%gs:%P4\n\tje 0f\n\tlock\n0:\t"
diff --git a/sysdeps/x86_64/bits/atomic.h b/sysdeps/x86_64/bits/atomic.h
index 4a0d40b34c..4b8d2ab095 100644
--- a/sysdeps/x86_64/bits/atomic.h
+++ b/sysdeps/x86_64/bits/atomic.h
@@ -1,4 +1,4 @@
-/* Copyright (C) 2002-2004, 2006, 2007, 2009 Free Software Foundation, Inc.
+/* Copyright (C) 2002-2012 Free Software Foundation, Inc.
    This file is part of the GNU C Library.
    Contributed by Ulrich Drepper <drepper@redhat.com>, 2002.
 
@@ -55,41 +55,10 @@ typedef uintmax_t uatomic_max_t;
 #endif
 
 
-#if __GNUC_PREREQ (4, 1)
-# define atomic_compare_and_exchange_val_acq(mem, newval, oldval) \
+#define atomic_compare_and_exchange_val_acq(mem, newval, oldval) \
   __sync_val_compare_and_swap (mem, oldval, newval)
-#  define atomic_compare_and_exchange_bool_acq(mem, newval, oldval) \
+#define atomic_compare_and_exchange_bool_acq(mem, newval, oldval) \
   (! __sync_bool_compare_and_swap (mem, oldval, newval))
-#else
-# define __arch_compare_and_exchange_val_8_acq(mem, newval, oldval) \
-  ({ __typeof (*mem) ret;						      \
-     __asm __volatile (LOCK_PREFIX "cmpxchgb %b2, %1"			      \
-		       : "=a" (ret), "=m" (*mem)			      \
-		       : "q" (newval), "m" (*mem), "0" (oldval));	      \
-     ret; })
-
-# define __arch_compare_and_exchange_val_16_acq(mem, newval, oldval) \
-  ({ __typeof (*mem) ret;						      \
-     __asm __volatile (LOCK_PREFIX "cmpxchgw %w2, %1"			      \
-		       : "=a" (ret), "=m" (*mem)			      \
-		       : "r" (newval), "m" (*mem), "0" (oldval));	      \
-     ret; })
-
-# define __arch_compare_and_exchange_val_32_acq(mem, newval, oldval) \
-  ({ __typeof (*mem) ret;						      \
-     __asm __volatile (LOCK_PREFIX "cmpxchgl %2, %1"			      \
-		       : "=a" (ret), "=m" (*mem)			      \
-		       : "r" (newval), "m" (*mem), "0" (oldval));	      \
-     ret; })
-
-# define __arch_compare_and_exchange_val_64_acq(mem, newval, oldval) \
-  ({ __typeof (*mem) ret;						      \
-     __asm __volatile (LOCK_PREFIX "cmpxchgq %q2, %1"			      \
-		       : "=a" (ret), "=m" (*mem)			      \
-		       : "r" ((long int) (newval)), "m" (*mem),		      \
-			 "0" ((long int) (oldval)));			      \
-     ret; })
-#endif
 
 
 #define __arch_c_compare_and_exchange_val_8_acq(mem, newval, oldval) \
@@ -184,13 +153,8 @@ typedef uintmax_t uatomic_max_t;
 			   "i" (offsetof (tcbhead_t, multiple_threads)));     \
      result; })
 
-#if __GNUC_PREREQ (4, 1)
-# define atomic_exchange_and_add(mem, value) \
+#define atomic_exchange_and_add(mem, value) \
   __sync_fetch_and_add (mem, value)
-#else
-# define atomic_exchange_and_add(mem, value) \
-  __arch_exchange_and_add_body (LOCK_PREFIX, mem, value)
-#endif
 
 #define __arch_exchange_and_add_cprefix \
   "cmpl $0, %%fs:%P4\n\tje 0f\n\tlock\n0:\t"