about summary refs log tree commit diff
path: root/sysdeps/mips/bits
diff options
context:
space:
mode:
authorRichard Henderson <rth@redhat.com>2004-03-15 21:44:11 +0000
committerRichard Henderson <rth@redhat.com>2004-03-15 21:44:11 +0000
commita86573f4715e5f9638a8ae5e298203dbed7481b9 (patch)
treec2ebbf0b4002f462bba72a040cf3f4ae343419b5 /sysdeps/mips/bits
parente3b22ad379f53950da7edf8d63d9f44e4d55d51c (diff)
downloadglibc-a86573f4715e5f9638a8ae5e298203dbed7481b9.tar.gz
glibc-a86573f4715e5f9638a8ae5e298203dbed7481b9.tar.xz
glibc-a86573f4715e5f9638a8ae5e298203dbed7481b9.zip
* math/Makefile (headers): Add bits/huge_valf.h, bits/huge_vall.h, and bits/inf.h. * math/math.h: Include them.
        * sysdeps/alpha/fpu/bits/mathdef.h, sysdeps/arm/fpu/bits/mathdef.h,
        sysdeps/generic/bits/mathdef.h, sysdeps/i386/fpu/bits/mathdef.h,
        sysdeps/ia64/fpu/bits/mathdef.h, sysdeps/m68k/fpu/bits/mathdef.h,
        sysdeps/mips/fpu/bits/mathdef.h, sysdeps/powerpc/fpu/bits/mathdef.h,
        sysdeps/sh/sh4/fpu/bits/mathdef.h, sysdeps/sparc/fpu/bits/mathdef.h,
        sysdeps/x86_64/fpu/bits/mathdef.h: Remove INFINITY.

        * sysdeps/arm/bits/huge_val.h (HUGE_VAL): Use __builtin_huge_val.
        (HUGE_VALF, HUGE_VALL): Remove.
        * sysdeps/ieee754/bits/huge_val.h: Likewise.
        * sysdeps/sh/bits/huge_val.h: Likewise.

        * sysdeps/generic/bits/huge_val.h (HUGE_VAL): Use __builtin_huge_val.
        * sysdeps/generic/bits/huge_valf.h: New file.
        * sysdeps/generic/bits/huge_vall.h: New file.
        * sysdeps/generic/bits/inf.h: New file.
        * sysdeps/ieee754/bits/huge_valf.h: New file.
        * sysdeps/ieee754/bits/inf.h: New file.
        * sysdeps/i386/bits/huge_val.h: Remove file.
        * sysdeps/i386/bits/huge_vall.h: New file.
        * sysdeps/ia64/bits/huge_val.h: Remove file.
        * sysdeps/ia64/bits/huge_vall.h: New file.
        * sysdeps/ieee754/ldbl-128/bits/huge_vall.h: New file.
        * sysdeps/m68k/bits/huge_val.h: Remove file.
        * sysdeps/m68k/bits/huge_vall.h: New file.
        * sysdeps/s390/bits/huge_val.h: Remove file.
        * sysdeps/sh/sh4/fpu/bits/huge_val.h: Remove file.
        * sysdeps/sparc/bits/huge_vall.h: New file.
        * sysdeps/sparc/sparc32/fpu/bits/huge_val.h: Remove file.
        * sysdeps/sparc/sparc64/fpu/bits/huge_val.h: Remove file.

        * sysdeps/ieee754/bits/nan.h (NAN): Use __builtin_nanf.
        * sysdeps/mips/bits/nan.h (NAN): Likewise.
2004-03-15  Richard Henderson  <rth@redhat.com>

	* math/Makefile (headers): Add bits/huge_valf.h, bits/huge_vall.h,
	and bits/inf.h.
	* math/math.h: Include them.

	* sysdeps/alpha/fpu/bits/mathdef.h, sysdeps/arm/fpu/bits/mathdef.h,
	sysdeps/generic/bits/mathdef.h, sysdeps/i386/fpu/bits/mathdef.h,
	sysdeps/ia64/fpu/bits/mathdef.h, sysdeps/m68k/fpu/bits/mathdef.h,
	sysdeps/mips/fpu/bits/mathdef.h, sysdeps/powerpc/fpu/bits/mathdef.h,
	sysdeps/sh/sh4/fpu/bits/mathdef.h, sysdeps/sparc/fpu/bits/mathdef.h,
	sysdeps/x86_64/fpu/bits/mathdef.h: Remove INFINITY.

	* sysdeps/arm/bits/huge_val.h (HUGE_VAL): Use __builtin_huge_val.
	(HUGE_VALF, HUGE_VALL): Remove.
	* sysdeps/ieee754/bits/huge_val.h: Likewise.
	* sysdeps/sh/bits/huge_val.h: Likewise.

	* sysdeps/generic/bits/huge_val.h (HUGE_VAL): Use __builtin_huge_val.
	* sysdeps/generic/bits/huge_valf.h: New file.
	* sysdeps/generic/bits/huge_vall.h: New file.
	* sysdeps/generic/bits/inf.h: New file.
	* sysdeps/ieee754/bits/huge_valf.h: New file.
	* sysdeps/ieee754/bits/inf.h: New file.
	* sysdeps/i386/bits/huge_val.h: Remove file.
	* sysdeps/i386/bits/huge_vall.h: New file.
	* sysdeps/ia64/bits/huge_val.h: Remove file.
	* sysdeps/ia64/bits/huge_vall.h: New file.
	* sysdeps/ieee754/ldbl-128/bits/huge_vall.h: New file.
	* sysdeps/m68k/bits/huge_val.h: Remove file.
	* sysdeps/m68k/bits/huge_vall.h: New file.
	* sysdeps/s390/bits/huge_val.h: Remove file.
	* sysdeps/sh/sh4/fpu/bits/huge_val.h: Remove file.
	* sysdeps/sparc/bits/huge_vall.h: New file.
	* sysdeps/sparc/sparc32/fpu/bits/huge_val.h: Remove file.
	* sysdeps/sparc/sparc64/fpu/bits/huge_val.h: Remove file.

	* sysdeps/ieee754/bits/nan.h (NAN): Use __builtin_nanf.
	* sysdeps/mips/bits/nan.h (NAN): Likewise.
Diffstat (limited to 'sysdeps/mips/bits')
-rw-r--r--sysdeps/mips/bits/nan.h9
1 files changed, 7 insertions, 2 deletions
diff --git a/sysdeps/mips/bits/nan.h b/sysdeps/mips/bits/nan.h
index 193ab3ccad..baaaa551fb 100644
--- a/sysdeps/mips/bits/nan.h
+++ b/sysdeps/mips/bits/nan.h
@@ -1,5 +1,6 @@
 /* `NAN' constant for IEEE 754 machines.
-   Copyright (C) 1992, 1996, 1997, 1999, 2002 Free Software Foundation, Inc.
+   Copyright (C) 1992, 1996, 1997, 1999, 2002, 2004
+   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
@@ -27,7 +28,11 @@
    the definition of this open to implementations, and for MIPS the top
    bit of the mantissa must be SET to indicate a SNaN.  */
 
-#ifdef	__GNUC__
+#if __GNUC_PREREQ(3,3)
+
+# define NAN	(__builtin_nanf(""))
+
+#elif defined __GNUC__
 
 # define NAN \
   (__extension__                                                            \