]> git.ipfire.org Git - thirdparty/glibc.git/commitdiff
Update.
authorUlrich Drepper <drepper@redhat.com>
Mon, 3 May 2004 21:40:12 +0000 (21:40 +0000)
committerUlrich Drepper <drepper@redhat.com>
Mon, 3 May 2004 21:40:12 +0000 (21:40 +0000)
2004-05-03  Jakub Jelinek  <jakub@redhat.com>

* sysdeps/unix/bsd/bits/fcntl.h (F_SETOWN, F_GETOWN): Define if
__USE_BSD or __USE_UNIX98.
* sysdeps/unix/bsd/ultrix4/bits/fcntl.h (F_SETOWN, F_GETOWN): Likewise.
* sysdeps/unix/bsd/bsd4.4/bits/fcntl.h (F_SETOWN, F_GETOWN): Likewise.
* sysdeps/unix/bsd/sun/sunos4/bits/fcntl.h (F_SETOWN, F_GETOWN):
Likewise.
* sysdeps/unix/common/bits/fcntl.h (F_SETOWN, F_GETOWN): Likewise.
* sysdeps/unix/sysv/aix/bits/fcntl.h (F_SETOWN, F_GETOWN): Likewise.
* sysdeps/unix/sysv/irix4/bits/fcntl.h (F_SETOWN, F_GETOWN): Likewise.
* sysdeps/unix/sysv/linux/alpha/bits/fcntl.h (F_SETOWN, F_GETOWN):
Likewise.
* sysdeps/unix/sysv/linux/s390/bits/fcntl.h (F_SETOWN, F_GETOWN):
Likewise.
* sysdeps/unix/sysv/linux/cris/bits/fcntl.h (F_SETOWN, F_GETOWN):
Likewise.
*sysdeps/unix/sysv/linux/powerpc/bits/fcntl.h (F_SETOWN, F_GETOWN):
Likewise.
* sysdeps/unix/sysv/linux/sparc/bits/fcntl.h (F_SETOWN, F_GETOWN):
Likewise.
* sysdeps/unix/sysv/linux/mips/bits/fcntl.h (F_SETOWN, F_GETOWN):
Likewise.
* sysdeps/unix/sysv/linux/sh/bits/fcntl.h (F_SETOWN, F_GETOWN):
Likewise.
* sysdeps/unix/sysv/linux/i386/bits/fcntl.h (F_SETOWN, F_GETOWN):
Likewise.
* sysdeps/unix/sysv/linux/m68k/bits/fcntl.h (F_SETOWN, F_GETOWN):
Likewise.
* sysdeps/unix/sysv/linux/ia64/bits/fcntl.h (F_SETOWN, F_GETOWN):
Likewise.
* sysdeps/unix/sysv/linux/arm/bits/fcntl.h (F_SETOWN, F_GETOWN):
Likewise.
* sysdeps/unix/sysv/linux/hppa/bits/fcntl.h (F_SETOWN, F_GETOWN):
Likewise.
* sysdeps/unix/sysv/linux/x86_64/bits/fcntl.h (F_SETOWN, F_GETOWN):
Likewise.
* sysdeps/generic/bits/fcntl.h (F_SETOWN, F_GETOWN): Likewise.
* sysdeps/mach/hurd/bits/fcntl.h (F_SETOWN, F_GETOWN): Likewise.
* io/sys/stat.h (S_ISSOCK, S_IFSOCK): Likewise.

2004-05-01  Jakub Jelinek  <jakub@redhat.com>

* posix/Versions (libc): Remove __libc_wait, __libc_waitpid,
__libc_pause, __libc_nanosleep, __libc_pread, __libc_pread64,
__libc_pwrite64, __waitid and __pselect @@GLIBC_PRIVATE.
* stdlib/Versions (libc): Remove __on_exit@@GLIBC_PRIVATE.
* sysdeps/unix/sysv/linux/Versions (libc): Remove
__libc_sigaction@@GLIBC_PRIVATE.
* sysdeps/unix/sysv/linux/x86_64/Versions (libc): Remove
__modify_ldt@@GLIBC_PRIVATE.
* socket/Versions (libc): Remove __libc_accept, __libc_send,
__libc_recvfrom, __libc_recvmsg, __libc_sendmsg, __libc_recv,
__libc_sendto and __libc_connect @@GLIBC_PRIVATE.
* stdio-common/Versions (libc): Remove
_itoa_upper_digits@@GLIBC_PRIVATE.
* resolv/Versions (libresolv): Remove __ns_samename@@GLIBC_PRIVATE.
* misc/Versions (libc): Remove __libc_fsync, __libc_msync,
__libc_readv and __libc_writev @@GLIBC_PRIVATE.
* termios/Versions (libc): Remove __libc_tcdrain@@GLIBC_PRIVATE.
* io/Versions (libc): Remove __libc_open, __libc_close, __libc_read,
__libc_write, __libc_lseek, __libc_fcntl, __libc_open64 and
__libc_lseek64 @@GLIBC_PRIVATE.

2004-04-30  Jakub Jelinek  <jakub@redhat.com>

* elf/dl-load.c (open_verify): Move e_phentsize check after e_type
check.

2004-04-29  Steven Munroe  <sjmunroe@us.ibm.com>

* sysdeps/powerpc/powerpc64/fpu/s_ceil.S: New file.
* sysdeps/powerpc/powerpc64/fpu/s_ceilf.S: New file.
* sysdeps/powerpc/powerpc64/fpu/s_floor.S: New file.
* sysdeps/powerpc/powerpc64/fpu/s_floorf.S: New file.
* sysdeps/powerpc/powerpc64/fpu/s_llrint.c: Removed.
* sysdeps/powerpc/powerpc64/fpu/s_llrint.S: New file.
* sysdeps/powerpc/powerpc64/fpu/s_llrintf.c: Removed.
* sysdeps/powerpc/powerpc64/fpu/s_llrintf.S: New file.
* sysdeps/powerpc/powerpc64/fpu/s_llround.S: New file.
* sysdeps/powerpc/powerpc64/fpu/s_llroundf.S: New file.
* sysdeps/powerpc/powerpc64/fpu/s_lround.S: New file.
* sysdeps/powerpc/powerpc64/fpu/s_lroundf.S: New file.
* sysdeps/powerpc/powerpc64/fpu/s_rint.S: New file.
* sysdeps/powerpc/powerpc64/fpu/s_rintf.S: New file.
* sysdeps/powerpc/powerpc64/fpu/s_round.S: New file.
* sysdeps/powerpc/powerpc64/fpu/s_roundf.S: New file.
* sysdeps/powerpc/powerpc64/fpu/s_trunc.S: New file.
* sysdeps/powerpc/powerpc64/fpu/s_truncf.S: New file.

* math/test-misc.c [LDBL_MANT_DIG == 106](main): Correct LDBL_MAX
mantissa for AIX long double format.
* misc/qefgcvt.c [LDBL_MANT_DIG == 106] (NDIGIT_MAX): Define for AIX
long double format.
* misc/qefgcvt_r.c [LDBL_MANT_DIG == 106] (NDIGIT_MAX): Likewise.
* stdlib/fpioconst.c [!__NO_LONG_DOUBLE_MATH && __LDBL_MAX_EXP__>1024]
(_fpioconst_pow10): AIX long double format has same exponent range as
double.
* stdlib/fpioconst.h [!__NO_LONG_DOUBLE_MATH && __LDBL_MAX_EXP__>1024]
(LDBL_MAX_10_EXP_LOG): AIX long double format has same exponent range
as double.

2004-04-23  Art Haas  <ahaas@airmail.net>

* sysdeps/unix/sysv/linux/kernel-features.h: Add 'defined'.

65 files changed:
ChangeLog
bits/fcntl.h
elf/dl-load.c
io/Versions
io/sys/stat.h
linuxthreads/Versions
linuxthreads_db/thread_dbP.h
localedata/ChangeLog
localedata/locales/nn_NO
localedata/locales/sid_ET
localedata/locales/wal_ET [new file with mode: 0644]
math/test-misc.c
misc/Versions
misc/qefgcvt.c
misc/qefgcvt_r.c
nptl/Versions
nptl_db/thread_dbP.h
posix/Versions
resolv/Versions
socket/Versions
stdio-common/Versions
stdlib/Versions
stdlib/fpioconst.c
stdlib/fpioconst.h
sysdeps/generic/bits/fcntl.h
sysdeps/mach/hurd/bits/fcntl.h
sysdeps/powerpc/powerpc64/fpu/s_ceil.S [new file with mode: 0644]
sysdeps/powerpc/powerpc64/fpu/s_ceilf.S [new file with mode: 0644]
sysdeps/powerpc/powerpc64/fpu/s_floor.S [new file with mode: 0644]
sysdeps/powerpc/powerpc64/fpu/s_floorf.S [new file with mode: 0644]
sysdeps/powerpc/powerpc64/fpu/s_llrint.S [moved from sysdeps/powerpc/powerpc64/fpu/s_llrint.c with 69% similarity]
sysdeps/powerpc/powerpc64/fpu/s_llrintf.S [moved from sysdeps/powerpc/powerpc64/fpu/s_llrintf.c with 70% similarity]
sysdeps/powerpc/powerpc64/fpu/s_llround.S [new file with mode: 0644]
sysdeps/powerpc/powerpc64/fpu/s_llroundf.S [new file with mode: 0644]
sysdeps/powerpc/powerpc64/fpu/s_lround.S [new file with mode: 0644]
sysdeps/powerpc/powerpc64/fpu/s_lroundf.S [new file with mode: 0644]
sysdeps/powerpc/powerpc64/fpu/s_rint.S [new file with mode: 0644]
sysdeps/powerpc/powerpc64/fpu/s_rintf.S [new file with mode: 0644]
sysdeps/powerpc/powerpc64/fpu/s_round.S [new file with mode: 0644]
sysdeps/powerpc/powerpc64/fpu/s_roundf.S [new file with mode: 0644]
sysdeps/powerpc/powerpc64/fpu/s_trunc.S [new file with mode: 0644]
sysdeps/powerpc/powerpc64/fpu/s_truncf.S [new file with mode: 0644]
sysdeps/unix/bsd/bits/fcntl.h
sysdeps/unix/bsd/bsd4.4/bits/fcntl.h
sysdeps/unix/bsd/sun/sunos4/bits/fcntl.h
sysdeps/unix/bsd/ultrix4/bits/fcntl.h
sysdeps/unix/common/bits/fcntl.h
sysdeps/unix/sysv/aix/bits/fcntl.h
sysdeps/unix/sysv/irix4/bits/fcntl.h
sysdeps/unix/sysv/linux/Versions
sysdeps/unix/sysv/linux/alpha/bits/fcntl.h
sysdeps/unix/sysv/linux/arm/bits/fcntl.h
sysdeps/unix/sysv/linux/cris/bits/fcntl.h
sysdeps/unix/sysv/linux/hppa/bits/fcntl.h
sysdeps/unix/sysv/linux/i386/bits/fcntl.h
sysdeps/unix/sysv/linux/ia64/bits/fcntl.h
sysdeps/unix/sysv/linux/m68k/bits/fcntl.h
sysdeps/unix/sysv/linux/mips/bits/fcntl.h
sysdeps/unix/sysv/linux/powerpc/bits/fcntl.h
sysdeps/unix/sysv/linux/s390/bits/fcntl.h
sysdeps/unix/sysv/linux/sh/bits/fcntl.h
sysdeps/unix/sysv/linux/sparc/bits/fcntl.h
sysdeps/unix/sysv/linux/x86_64/Versions
sysdeps/unix/sysv/linux/x86_64/bits/fcntl.h
termios/Versions

index ddf470644c3c2ab984efcdb0bab08451d41b7b4e..d0a485d5027caac0dd1eeee7a1f9a6ee00c9c0cf 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,109 @@
+2004-05-03  Jakub Jelinek  <jakub@redhat.com>
+
+       * sysdeps/unix/bsd/bits/fcntl.h (F_SETOWN, F_GETOWN): Define if
+       __USE_BSD or __USE_UNIX98.
+       * sysdeps/unix/bsd/ultrix4/bits/fcntl.h (F_SETOWN, F_GETOWN): Likewise.
+       * sysdeps/unix/bsd/bsd4.4/bits/fcntl.h (F_SETOWN, F_GETOWN): Likewise.
+       * sysdeps/unix/bsd/sun/sunos4/bits/fcntl.h (F_SETOWN, F_GETOWN):
+       Likewise.
+       * sysdeps/unix/common/bits/fcntl.h (F_SETOWN, F_GETOWN): Likewise.
+       * sysdeps/unix/sysv/aix/bits/fcntl.h (F_SETOWN, F_GETOWN): Likewise.
+       * sysdeps/unix/sysv/irix4/bits/fcntl.h (F_SETOWN, F_GETOWN): Likewise.
+       * sysdeps/unix/sysv/linux/alpha/bits/fcntl.h (F_SETOWN, F_GETOWN):
+       Likewise.
+       * sysdeps/unix/sysv/linux/s390/bits/fcntl.h (F_SETOWN, F_GETOWN):
+       Likewise.
+       * sysdeps/unix/sysv/linux/cris/bits/fcntl.h (F_SETOWN, F_GETOWN):
+       Likewise.
+       *sysdeps/unix/sysv/linux/powerpc/bits/fcntl.h (F_SETOWN, F_GETOWN):
+       Likewise.
+       * sysdeps/unix/sysv/linux/sparc/bits/fcntl.h (F_SETOWN, F_GETOWN):
+       Likewise.
+       * sysdeps/unix/sysv/linux/mips/bits/fcntl.h (F_SETOWN, F_GETOWN):
+       Likewise.
+       * sysdeps/unix/sysv/linux/sh/bits/fcntl.h (F_SETOWN, F_GETOWN):
+       Likewise.
+       * sysdeps/unix/sysv/linux/i386/bits/fcntl.h (F_SETOWN, F_GETOWN):
+       Likewise.
+       * sysdeps/unix/sysv/linux/m68k/bits/fcntl.h (F_SETOWN, F_GETOWN):
+       Likewise.
+       * sysdeps/unix/sysv/linux/ia64/bits/fcntl.h (F_SETOWN, F_GETOWN):
+       Likewise.
+       * sysdeps/unix/sysv/linux/arm/bits/fcntl.h (F_SETOWN, F_GETOWN):
+       Likewise.
+       * sysdeps/unix/sysv/linux/hppa/bits/fcntl.h (F_SETOWN, F_GETOWN):
+       Likewise.
+       * sysdeps/unix/sysv/linux/x86_64/bits/fcntl.h (F_SETOWN, F_GETOWN):
+       Likewise.
+       * sysdeps/generic/bits/fcntl.h (F_SETOWN, F_GETOWN): Likewise.
+       * sysdeps/mach/hurd/bits/fcntl.h (F_SETOWN, F_GETOWN): Likewise.
+       * io/sys/stat.h (S_ISSOCK, S_IFSOCK): Likewise.
+
+2004-05-01  Jakub Jelinek  <jakub@redhat.com>
+
+       * posix/Versions (libc): Remove __libc_wait, __libc_waitpid,
+       __libc_pause, __libc_nanosleep, __libc_pread, __libc_pread64,
+       __libc_pwrite64, __waitid and __pselect @@GLIBC_PRIVATE.
+       * stdlib/Versions (libc): Remove __on_exit@@GLIBC_PRIVATE.
+       * sysdeps/unix/sysv/linux/Versions (libc): Remove
+       __libc_sigaction@@GLIBC_PRIVATE.
+       * sysdeps/unix/sysv/linux/x86_64/Versions (libc): Remove
+       __modify_ldt@@GLIBC_PRIVATE.
+       * socket/Versions (libc): Remove __libc_accept, __libc_send,
+       __libc_recvfrom, __libc_recvmsg, __libc_sendmsg, __libc_recv,
+       __libc_sendto and __libc_connect @@GLIBC_PRIVATE.
+       * stdio-common/Versions (libc): Remove
+       _itoa_upper_digits@@GLIBC_PRIVATE.
+       * resolv/Versions (libresolv): Remove __ns_samename@@GLIBC_PRIVATE.
+       * misc/Versions (libc): Remove __libc_fsync, __libc_msync,
+       __libc_readv and __libc_writev @@GLIBC_PRIVATE.
+       * termios/Versions (libc): Remove __libc_tcdrain@@GLIBC_PRIVATE.
+       * io/Versions (libc): Remove __libc_open, __libc_close, __libc_read,
+       __libc_write, __libc_lseek, __libc_fcntl, __libc_open64 and
+       __libc_lseek64 @@GLIBC_PRIVATE.
+
+2004-04-30  Jakub Jelinek  <jakub@redhat.com>
+
+       * elf/dl-load.c (open_verify): Move e_phentsize check after e_type
+       check.
+
+2004-04-29  Steven Munroe  <sjmunroe@us.ibm.com>
+
+       * sysdeps/powerpc/powerpc64/fpu/s_ceil.S: New file.
+       * sysdeps/powerpc/powerpc64/fpu/s_ceilf.S: New file.
+       * sysdeps/powerpc/powerpc64/fpu/s_floor.S: New file.
+       * sysdeps/powerpc/powerpc64/fpu/s_floorf.S: New file.
+       * sysdeps/powerpc/powerpc64/fpu/s_llrint.c: Removed.
+       * sysdeps/powerpc/powerpc64/fpu/s_llrint.S: New file.
+       * sysdeps/powerpc/powerpc64/fpu/s_llrintf.c: Removed.
+       * sysdeps/powerpc/powerpc64/fpu/s_llrintf.S: New file.
+       * sysdeps/powerpc/powerpc64/fpu/s_llround.S: New file.
+       * sysdeps/powerpc/powerpc64/fpu/s_llroundf.S: New file.
+       * sysdeps/powerpc/powerpc64/fpu/s_lround.S: New file.
+       * sysdeps/powerpc/powerpc64/fpu/s_lroundf.S: New file.
+       * sysdeps/powerpc/powerpc64/fpu/s_rint.S: New file.
+       * sysdeps/powerpc/powerpc64/fpu/s_rintf.S: New file.
+       * sysdeps/powerpc/powerpc64/fpu/s_round.S: New file.
+       * sysdeps/powerpc/powerpc64/fpu/s_roundf.S: New file.
+       * sysdeps/powerpc/powerpc64/fpu/s_trunc.S: New file.
+       * sysdeps/powerpc/powerpc64/fpu/s_truncf.S: New file.
+
+       * math/test-misc.c [LDBL_MANT_DIG == 106](main): Correct LDBL_MAX
+       mantissa for AIX long double format.
+       * misc/qefgcvt.c [LDBL_MANT_DIG == 106] (NDIGIT_MAX): Define for AIX
+       long double format.
+       * misc/qefgcvt_r.c [LDBL_MANT_DIG == 106] (NDIGIT_MAX): Likewise.
+       * stdlib/fpioconst.c [!__NO_LONG_DOUBLE_MATH && __LDBL_MAX_EXP__>1024]
+       (_fpioconst_pow10): AIX long double format has same exponent range as
+       double.
+       * stdlib/fpioconst.h [!__NO_LONG_DOUBLE_MATH && __LDBL_MAX_EXP__>1024]
+       (LDBL_MAX_10_EXP_LOG): AIX long double format has same exponent range
+       as double.
+
+2004-04-23  Art Haas  <ahaas@airmail.net>
+
+       * sysdeps/unix/sysv/linux/kernel-features.h: Add 'defined'.
+
 2004-04-28  Carlos O'Donell  <carlos@baldric.uwo.ca>
 
        * sysdeps/unix/sysv/linux/mq_getattr.c: Include <stddef.h>.
index f23667eb95f1cb9ba34b71429d491d7f3569033b..b397f812f161680206a9f813f1e7d838c324469a 100644 (file)
@@ -1,5 +1,5 @@
 /* O_*, F_*, FD_* bit values for stub configuration.
-   Copyright (C) 1991, 1992, 1997, 2000 Free Software Foundation, Inc.
+   Copyright (C) 1991, 1992, 1997, 2000, 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
@@ -54,7 +54,7 @@
 #define        F_SETFD         2       /* Set file descriptor flags.  */
 #define        F_GETFL         3       /* Get file status flags.  */
 #define        F_SETFL         4       /* Set file status flags.  */
-#if defined __USE_BSD || defined __USE_XOPEN2K
+#if defined __USE_BSD || defined __USE_UNIX98
 # define F_GETOWN      5       /* Get owner (receiver of SIGIO).  */
 # define F_SETOWN      6       /* Set owner (receiver of SIGIO).  */
 #endif
index 162fb30af34e9a49ac3b72bbf8c60d489d5784b1..5ff472a46ba0ec12e624fc483e6f8d593e403d32 100644 (file)
@@ -1520,18 +1520,18 @@ open_verify (const char *name, struct filebuf *fbp)
        }
       if (! __builtin_expect (elf_machine_matches_host (ehdr), 1))
        goto close_and_out;
-      else if (__builtin_expect (ehdr->e_phentsize, sizeof (ElfW(Phdr)))
-              != sizeof (ElfW(Phdr)))
-       {
-         errstring = N_("ELF file's phentsize not the expected size");
-         goto call_lose;
-       }
       else if (__builtin_expect (ehdr->e_type, ET_DYN) != ET_DYN
               && __builtin_expect (ehdr->e_type, ET_EXEC) != ET_EXEC)
        {
          errstring = N_("only ET_DYN and ET_EXEC can be loaded");
          goto call_lose;
        }
+      else if (__builtin_expect (ehdr->e_phentsize, sizeof (ElfW(Phdr)))
+              != sizeof (ElfW(Phdr)))
+       {
+         errstring = N_("ELF file's phentsize not the expected size");
+         goto call_lose;
+       }
 
       maplength = ehdr->e_phnum * sizeof (ElfW(Phdr));
       if (ehdr->e_phoff + maplength <= (size_t) fbp->len)
index 9e650d482acfdef0f4806006def44e7958df9674..5b311ee03b3e4e436ff0817bcd940ee1a8eaecbd 100644 (file)
@@ -97,10 +97,4 @@ libc {
     # n*
     nftw; nftw64;
   }
-  GLIBC_PRIVATE {
-    # functions which have an additional interface since they are
-    # cancelable.
-    __libc_open; __libc_close; __libc_read; __libc_write;
-    __libc_lseek; __libc_fcntl; __libc_open64; __libc_lseek64;
-  }
 }
index 24e7fe309f6ca0a2369cb978567f63becdac52dc..29e9e625ffa2525adff12d28f7059fb4717bb6d4 100644 (file)
@@ -1,4 +1,4 @@
-/* Copyright (C) 1991,1992,1995-2002,2003 Free Software Foundation, Inc.
+/* Copyright (C) 1991,1992,1995-2002,2003,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
@@ -116,7 +116,7 @@ __BEGIN_DECLS
 # ifdef __S_IFLNK
 #  define S_IFLNK      __S_IFLNK
 # endif
-# if (defined __USE_BSD || defined __USE_MISC || defined __USE_XOPEN2K) \
+# if (defined __USE_BSD || defined __USE_MISC || defined __USE_UNIX98) \
      && defined __S_IFSOCK
 #  define S_IFSOCK     __S_IFSOCK
 # endif
@@ -137,13 +137,13 @@ __BEGIN_DECLS
 # define S_ISLNK(mode)  __S_ISTYPE((mode), __S_IFLNK)
 #endif
 
-#ifdef __USE_BSD
-# ifndef __S_IFLNK
-#  define S_ISLNK(mode)  0
-# endif
-# ifdef __S_IFSOCK
-#  define S_ISSOCK(mode) __S_ISTYPE((mode), __S_IFSOCK)
-# endif
+#if defined __USE_BSD && !defined __S_IFLNK
+# define S_ISLNK(mode)  0
+#endif
+
+#if (defined __USE_BSD || defined __USE_UNIX98) \
+    && defined __S_IFSOCK
+# define S_ISSOCK(mode) __S_ISTYPE((mode), __S_IFSOCK)
 #endif
 
 /* These are from POSIX.1b.  If the objects are not implemented using separate
index 423b5ecedb49bcd77d8d63afc5653a4a54776f8d..b9de1612c323826a71d85fa10f324c4c48a351fc 100644 (file)
@@ -34,6 +34,8 @@ libc {
     __libc_sigpause; __libc_sigsuspend; __libc_sigwait; __libc_sigwaitinfo;
     __libc_waitid; __libc___xpg_sigpause; __librt_enable_asynccancel;
     __librt_disable_asynccancel; __librt_multiple_threads;
+
+    __libc_sigaction; __on_exit;
   }
 }
 
index 8e0a78a3ac2af88a3747e508ef69f546af2a44d9..63b408afc164bec66b5d0e6370bc6680747d696e 100644 (file)
@@ -31,7 +31,7 @@ enum
 
 /* Comment out the following for less verbose output.  */
 #ifndef NDEBUG
-# define LOG(c) if (__td_debug) __libc_write (2, c "\n", strlen (c "\n"))
+# define LOG(c) if (__td_debug) write (2, c "\n", strlen (c "\n"))
 extern int __td_debug;
 #else
 # define LOG(c)
index af25a9ba709cb1ccb12f7383e0ca7e3ab4f178d6..000f9d35c68bd5bb9a6e54283c0da8719f08c49d 100644 (file)
@@ -1,3 +1,12 @@
+2004-05-03  Ulrich Drepper  <drepper@redhat.com>
+
+       * locales/wal_ET: New file.  Contributed by Daniel Yacob.
+
+2004-05-02  Petter Reinholdtsen  <pere@hungry.com>
+
+       * locales/sid_ET: Correct lang_ab and source information.
+       Patch from Daniel Yacob.
+
 2004-04-17  Petter Reinholdtsen  <pere@hungry.com>
 
        * locales/et_EE: Change default charset for et_EE locale from
index e1664582e177bb41019caf9804dde64166c5d2ac..ec48206bc18671fc6f2aa44b81125c2d0f8160bc 100644 (file)
@@ -36,10 +36,7 @@ copy "i18n"
 END LC_CTYPE
 
 LC_COLLATE
-
-% Copy the template from ISO/IEC 14651
-copy "iso14651_t1"
-
+copy "nb_NO"
 END LC_COLLATE
 
 
index 81d4f0659642c13a8a9fa194bf0b8eb31008d12b..03727ab1b9316635cad4b924a0f04b3d8aebe896 100644 (file)
@@ -24,7 +24,7 @@ escape_char     /
 LC_IDENTIFICATION
 %
 title      "Sidama language locale for Ethiopia."
-source     "Ge'ez Frontier Foundation & Sagalee Sidamao Publishing Co. Inc."
+source     "Ge'ez Frontier Foundation"
 address    "7802 Solomon Seal Dr., Springfield, VA 22152, USA"
 contact    ""
 email      "locales@geez.org"
@@ -113,7 +113,7 @@ country_num   231   % 210 found in at least one ISO 3166 doc
 % country_car   unknown
 % country_isbn  unknown, Need ISO 2108
 lang_name     "<U0053><U0069><U0064><U0061><U0061><U006D><U0075><U0020><U0041><U0066><U006F>"
-lang_ab       ""
+lang_ab       "<U0073><U0069><U0064>"
 lang_term     "<U0073><U0069><U0064>"
 lang_lib      "<U0073><U0069><U0064>"
 %
diff --git a/localedata/locales/wal_ET b/localedata/locales/wal_ET
new file mode 100644 (file)
index 0000000..33953cd
--- /dev/null
@@ -0,0 +1,237 @@
+comment_char    %
+escape_char     /
+
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%
+% Sidama language locale for Ethiopia.
+%
+% Charset: UTF-8
+%
+% Prepared and contributed to glibc by Daniel Yacob <locales@geez.org>.
+%
+% This locale data has been developed under the Yeha Project:
+%      http://yeha.sourceforge.net/
+%
+% build with: localedef -f UTF-8 -i wal_ET wal_ET
+%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+
+LC_IDENTIFICATION
+%
+title      "Walaita language locale for Ethiopia."
+source     "Ge'ez Frontier Foundation"
+address    "7802 Solomon Seal Dr., Springfield, VA 22152, USA"
+contact    ""
+email      "locales@geez.org"
+tel        ""
+fax        ""
+language   "wal"
+territory  "ET"
+revision   "0.10"
+date       "2004-04-25"
+%
+category  "i18n:2000";LC_IDENTIFICATION
+category  "i18n:2000";LC_COLLATE
+category  "i18n:2000";LC_CTYPE
+category  "i18n:2000";LC_MEASUREMENT
+category  "i18n:2000";LC_MONETARY
+category  "posix:1993";LC_NUMERIC
+category  "i18n:2000";LC_PAPER
+category  "i18n:2000";LC_TELEPHONE
+category  "i18n:2000";LC_ADDRESS
+category  "i18n:2000";LC_MESSAGES
+category  "i18n:2000";LC_NAME
+category  "i18n:2000";LC_TIME
+%
+END LC_IDENTIFICATION
+
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%
+%  Ethiopic Specifc Data:
+%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+LC_COLLATE
+copy "am_ET"
+END LC_COLLATE
+
+LC_CTYPE
+copy "ti_ET"
+END LC_CTYPE
+
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%
+%  Ethiopia Specifc and Shared Data:
+%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+LC_MEASUREMENT
+copy "ti_ET"
+END LC_MEASUREMENT
+
+LC_MONETARY
+copy "ti_ET"
+END LC_MONETARY
+
+LC_NUMERIC
+copy "ti_ET"
+END LC_NUMERIC
+
+LC_PAPER
+copy "ti_ET"
+END LC_PAPER
+
+LC_TELEPHONE
+copy "ti_ET"
+END LC_TELEPHONE
+
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%
+%  Sidama Specific Data:
+%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+LC_ADDRESS
+%
+% This is the ISO_IEC TR14652 Locale definition for the LC_ADDRESS category.
+%
+postal_fmt    "<U0025><U007A><U0025><U0063><U0025><U0054><U0025><U0073>/
+<U0025><U0062><U0025><U0065><U0025><U0072>"
+country_name  "<U12A2><U1275><U12EE><U1335><U12EB>"
+country_post  "<U0045><U0054><U0048>"
+country_ab2   "<U0045><U0054>"
+country_ab3   "<U0045><U0054><U0048>"
+country_num   231   % 210 found in at least one ISO 3166 doc
+% country_car   unknown
+% country_isbn  unknown, Need ISO 2108
+lang_name     "<U12C8><U120B><U12ED><U1273><U1271>"
+lang_ab       "<U0077><U0061><U006C>"
+lang_term     "<U0077><U0061><U006C>"
+lang_lib      "<U0077><U0061><U006C>"
+
+
+%
+END LC_ADDRESS
+
+
+LC_MESSAGES
+copy "ti_ET"
+END LC_MESSAGES
+
+
+LC_NAME
+%
+% This is the ISO_IEC TR14652 Locale definition for the LC_NAME category.
+%
+name_fmt    "<U0025><U0064><U0025><U0074><U0025><U0067><U0025><U0074>/
+<U0025><U006D><U0025><U0074><U0025><U0066>"
+name_gen    ""
+name_mr     "<U121A><U1232><U12EB>"
+name_mrs    "<U12AC><U1273><U12CB>"
+name_miss   "<U12AC><U1273><U12E9>"
+name_ms     "<U12AC><U1273><U12E9>"
+%
+END LC_NAME
+
+
+LC_TIME
+%
+% Abbreviated weekday names (%a)
+%
+abday   "<U12C8><U130B> ";/
+        "<U1233><U12ED><U1296>";/
+        "<U121B><U1246><U1233>";/
+        "<U12A0><U1229><U12CB>";/
+        "<U1203><U1219><U1233>";/
+        "<U12A0><U122D><U1263>";/
+        "<U1244><U122B> "
+%
+% Full weekday names (%A)
+%
+% mon  also <U1230><U129E>
+% tues also <U121B><U1230><U12A8><U129E>
+% wed  also <U122E><U12CB>
+% thru also <U1210><U1219><U1233>
+%
+day     "<U12C8><U130B>";/
+       "<U1233><U12ED><U1296>";/
+       "<U121B><U1246><U1233><U129B>";/
+       "<U12A0><U1229><U12CB>";/
+       "<U1203><U1219><U1233>";/
+       "<U12A0><U122D><U1263>";/
+       "<U1244><U122B>"
+%
+% Abbreviated month names (%b)
+%
+abmon    "<U1303><U1295><U12E9>";/
+         "<U134C><U1265><U1229>";/
+         "<U121B><U122D><U127D>";/
+         "<U12A4><U1355><U1228>";/
+         "<U121C><U12ED><U0020>";/
+         "<U1301><U1295><U0020>";/
+         "<U1301><U120B><U12ED>";/
+         "<U12A6><U1308><U1235>";/
+         "<U1234><U1355><U1274>";/
+         "<U12A6><U12AD><U1270>";/
+         "<U1296><U126C><U121D>";/
+         "<U12F2><U1234><U121D>"
+%
+% Full month names (%B)
+%
+mon      "<U1303><U1295><U12E9><U12C8><U122A>";/
+         "<U134C><U1265><U1229><U12C8><U122A>";/
+         "<U121B><U122D><U127D>";/
+         "<U12A4><U1355><U1228><U120D>";/
+         "<U121C><U12ED>";/
+         "<U1301><U1295>";/
+         "<U1301><U120B><U12ED>";/
+         "<U12A6><U1308><U1235><U1275>";/
+         "<U1234><U1355><U1274><U121D><U1260><U122D>";/
+         "<U12A6><U12AD><U1270><U12CD><U1260><U122D>";/
+         "<U1296><U126C><U121D><U1260><U122D>";/
+         "<U12F2><U1234><U121D><U1260><U122D>"
+%
+% Equivalent of AM PM
+%
+% also <U130B><U120B><U1233>
+% also <U12A1><U1218><U122D><U1232>
+%
+am_pm    "<U121B><U1208><U12F6>";/
+         "<U1243><U121B>"
+%
+% Appropriate date representation (%x)
+%      "%d/%m/%Y"
+%
+d_fmt   "<U0025><U0064><U002F><U0025><U006D><U002F><U0025><U0059>"
+%
+% Appropriate time representation (%X)
+%      "%l:%M:%S"
+%
+t_fmt "<U0025><U006C><U003A><U0025><U004D><U003A><U0025><U0053>"
+%
+% Appropriate AM/PM time representation (%r)
+%      "%X %p"
+%
+t_fmt_ampm "<U0025><U0058><U0020><U0025><U0070>"
+%
+% Appropriate date and time representation (%c)
+%      "%A፣ %B %e ጋላሳ  %Y %r %Z
+%
+d_t_fmt    "<U0025><U0041><U1363><U0020><U0025><U0042><U0020><U0025><U0065>/
+<U0020><U130B><U120B><U1233>/
+<U0020><U0025><U0059><U0020><U0025><U0072><U0020><U0025><U005A>"
+%
+% Appropriate date representation (date(1))
+%      "%A፣ %B %e ጋላሳ %r %Z %Y ግ/ላ
+%
+date_fmt    "<U0025><U0041><U1363><U0020><U0025><U0042><U0020><U0025><U0065>/
+<U0020><U130B><U120B><U1233>/
+<U0020><U0025><U0072><U0020><U0025><U005A><U0020><U0025><U0059>/
+<U0020><U130D><U002F><U120B>"
+END LC_TIME
+%
index 17ef1d3a58d973bb3ad53d90b85e4e8e3dc5a5bd..fa958d486c1eb894f874b60cd9b6b94fffb86198 100644 (file)
@@ -54,6 +54,10 @@ main (void)
 
 #  if LDBL_MANT_DIG == 64
     m = 0xf.fffffffffffffffp-4L;
+#  elif LDBL_MANT_DIG == 106
+    /* This has to match the mantissa of LDBL_MAX which actually does have a
+       missing bit in the middle.  */
+    m = 0x1.fffffffffffff7ffffffffffff8p-1L;
 #  elif LDBL_MANT_DIG == 113
     m = 0x1.ffffffffffffffffffffffffffffp-1L;
 #  else
index 95310b7fb457727d40afb9bfea2d4b8902fcb974..13b38eec722b5df171265eb3b65587312468c9ec 100644 (file)
@@ -130,10 +130,4 @@ libc {
   GLIBC_2.3.3 {
     remap_file_pages;
   }
-  GLIBC_PRIVATE {
-    # functions which have an additional interface since they are
-    # cancelable.
-    __libc_fsync; __libc_msync;
-    __libc_readv; __libc_writev;
-  }
 }
index 6944e8df39f1bb43f336a2e358c401047a8a3244..d11ac588bf03bc0d396e8454a4dbbcce0a203662 100644 (file)
@@ -33,6 +33,8 @@
 # define NDIGIT_MAX 17
 #elif LDBL_MANT_DIG == 113
 # define NDIGIT_MAX 36
+#elif LDBL_MANT_DIG == 106
+# define NDIGIT_MAX 34
 #elif LDBL_MANT_DIG == 56
 # define NDIGIT_MAX 18
 #else
index 8a52cb699bd356ac0f8b372beeae3c2a5e268ca8..66cc049ec8df206c60b88f8617177b074f7af6ef 100644 (file)
@@ -30,6 +30,8 @@
 # define NDIGIT_MAX 17
 #elif LDBL_MANT_DIG == 113
 # define NDIGIT_MAX 36
+#elif LDBL_MANT_DIG == 106
+# define NDIGIT_MAX 34
 #elif LDBL_MANT_DIG == 56
 # define NDIGIT_MAX 18
 #else
index b96a1d82330190df984e96a374b2f86a5a167645..7e8ac9e2719b68eab2c35440e216826d4555cae2 100644 (file)
@@ -231,7 +231,7 @@ libpthread {
   }
 
   GLIBC_PRIVATE {
-    __pthread_initialize_minimal; __pthread_cleanup_upto;
+    __pthread_initialize_minimal;
     __pthread_clock_gettime; __pthread_clock_settime;
     __pthread_unwind;
   }
index 5504dd070f1df0a3a6a58722e208886d38be1d1b..c53d1ed94047c761cb2ee2e950314a4f9e718fda 100644 (file)
@@ -57,7 +57,7 @@ enum
 
 /* Comment out the following for less verbose output.  */
 #ifndef NDEBUG
-# define LOG(c) if (__td_debug) __libc_write (2, c "\n", strlen (c "\n"))
+# define LOG(c) if (__td_debug) write (2, c "\n", strlen (c "\n"))
 extern int __td_debug attribute_hidden;
 #else
 # define LOG(c)
index 4e6f200aa0fdc31576ce8090211f7f6156e83a85..f529ee9d8e1c803471dd80f150c43bd55e4e688a 100644 (file)
@@ -123,10 +123,6 @@ libc {
     regexec;
   }
   GLIBC_PRIVATE {
-    # functions which have an additional interface since they are
-    # are cancelable.
-    __libc_wait; __libc_waitpid; __libc_pause; __libc_nanosleep; __libc_fork;
-    __libc_pread; __libc_pread64; __libc_pwrite; __libc_pwrite64;
-    __waitid; __pselect;
+    __libc_fork; __libc_pwrite;
   }
 }
index b18c7d78dc74387dd6fdfae7b332abb0d716a02a..1a24d30e966aac97383152cea02c30132d7ecccb 100644 (file)
@@ -75,7 +75,7 @@ libresolv {
   GLIBC_PRIVATE {
     # Needed in libnss_dns.
     __ns_name_unpack; __ns_name_ntop;
-    __ns_get16; __ns_samename;
+    __ns_get16;
     __libc_res_nquery; __libc_res_nsearch;
   }
 }
index b469e1932f508b45237b212bf42a6539d7fb116e..d282eff79e7344b66f949b89b8f666490bcd94c1 100644 (file)
@@ -31,10 +31,4 @@ libc {
     # Addition from P1003.1-200x
     sockatmark;
   }
-  GLIBC_PRIVATE {
-    # functions which have an additional interface since they are
-    # cancelable.
-    __libc_accept; __libc_send; __libc_recvfrom;
-    __libc_recvmsg; __libc_sendmsg; __libc_recv; __libc_sendto; __libc_connect;
-  }
 }
index 1afb73481fea4d40720c67bebf666ce5c88da12d..1dbce1a12411b44a52986c72fae08f9c0fbda8dc 100644 (file)
@@ -48,5 +48,5 @@ libc {
   }
   GLIBC_PRIVATE {
     # global variables
-    _itoa_lower_digits; _itoa_upper_digits;
+    _itoa_lower_digits;
 }
index fc1e5a1004b1deff4791a0c27a5facfbfaa9ef34..9cc3b6d023ad5e887bbfd2db4a2fcc5b018a08d4 100644 (file)
@@ -98,8 +98,5 @@ libc {
     # functions which have an additional interface since they are
     # are cancelable.
     __libc_system;
-
-    # functions used in other libraries.
-    __on_exit;
   }
 }
index 931386db06584f509bae9b06167a0b2949d144ff..59a5e43a821eb622a9f2057691aaa4de154a4703 100644 (file)
@@ -278,7 +278,7 @@ const mp_limb_t __tens[] =
   0x26b2716ed595d80full, 0x1d153624adc666b0ull, 0x63ff540e3c42d35aull,
   0x65f9ef17cc5573c0ull, 0x80dcc7f755bc28f2ull, 0x5fdcefcef46eeddcull,
   0x00000000000553f7ull,
-#ifndef __NO_LONG_DOUBLE_MATH
+#if!defined __NO_LONG_DOUBLE_MATH && __LDBL_MAX_EXP__ > 1024
 # define TENS_P9_IDX   (TENS_P8_IDX + TENS_P8_SIZE)
 # define TENS_P9_SIZE  28
   [TENS_P9_IDX] = 0x0000000000000000ull, 0x0000000000000000ull,
@@ -449,7 +449,7 @@ const struct mp_power _fpioconst_pow10[LDBL_MAX_10_EXP_LOG + 1] =
   { TENS_P6_IDX, TENS_P6_SIZE,         213,     210 },
   { TENS_P7_IDX, TENS_P7_SIZE,         426,     422 },
   { TENS_P8_IDX, TENS_P8_SIZE,         851,     848 },
-#ifndef __NO_LONG_DOUBLE_MATH
+#if !defined __NO_LONG_DOUBLE_MATH && __LDBL_MAX_EXP__ > 1024
   { TENS_P9_IDX, TENS_P9_SIZE,         1701,   1698 },
   { TENS_P10_IDX, TENS_P10_SIZE,       3402,   3399 },
   { TENS_P11_IDX, TENS_P11_SIZE,       6804,   6800 },
index c7f87ba5a8b5df497c432cf130bced0e4cc60c92..84685bc2ef0700c2f0af5ce06dafbdf5f1d94024 100644 (file)
@@ -34,7 +34,7 @@
    XXX These should be defined in <float.h>.  For the time being, we have the
    IEEE754 values here.  */
 
-#ifndef __NO_LONG_DOUBLE_MATH
+#if !defined __NO_LONG_DOUBLE_MATH && __LDBL_MAX_EXP__ > 1024
 # define LDBL_MAX_10_EXP_LOG   12 /* = floor(log_2(LDBL_MAX_10_EXP)) */
 #else
 # define LDBL_MAX_10_EXP_LOG   8 /* = floor(log_2(LDBL_MAX_10_EXP)) */
index f23667eb95f1cb9ba34b71429d491d7f3569033b..b397f812f161680206a9f813f1e7d838c324469a 100644 (file)
@@ -1,5 +1,5 @@
 /* O_*, F_*, FD_* bit values for stub configuration.
-   Copyright (C) 1991, 1992, 1997, 2000 Free Software Foundation, Inc.
+   Copyright (C) 1991, 1992, 1997, 2000, 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
@@ -54,7 +54,7 @@
 #define        F_SETFD         2       /* Set file descriptor flags.  */
 #define        F_GETFL         3       /* Get file status flags.  */
 #define        F_SETFL         4       /* Set file status flags.  */
-#if defined __USE_BSD || defined __USE_XOPEN2K
+#if defined __USE_BSD || defined __USE_UNIX98
 # define F_GETOWN      5       /* Get owner (receiver of SIGIO).  */
 # define F_SETOWN      6       /* Set owner (receiver of SIGIO).  */
 #endif
index 09da177e69a4eba6dc2dfa2c437ed49b1f359387..e709cc6fb1a971f2f5de80fd7b40c4af1c405f32 100644 (file)
@@ -1,5 +1,5 @@
 /* O_*, F_*, FD_* bit values for GNU.
-   Copyright (C) 1993,94,96,97,98,99,2000,01 Free Software Foundation, Inc.
+   Copyright (C) 1993,94,96,97,98,99,2000,01,04 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
 #define        F_SETFD         2       /* Set file descriptor flags.  */
 #define        F_GETFL         3       /* Get file status flags.  */
 #define        F_SETFL         4       /* Set file status flags.  */
-#if defined __USE_BSD || defined __USE_XOPEN2K
+#if defined __USE_BSD || defined __USE_UNIX98
 # define F_GETOWN      5       /* Get owner (receiver of SIGIO).  */
 # define F_SETOWN      6       /* Set owner (receiver of SIGIO).  */
 #endif
diff --git a/sysdeps/powerpc/powerpc64/fpu/s_ceil.S b/sysdeps/powerpc/powerpc64/fpu/s_ceil.S
new file mode 100644 (file)
index 0000000..127f302
--- /dev/null
@@ -0,0 +1,60 @@
+/* ceil function.  PowerPC64 version.
+   Copyright (C) 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
+   modify it under the terms of the GNU Lesser General Public
+   License as published by the Free Software Foundation; either
+   version 2.1 of the License, or (at your option) any later version.
+
+   The GNU C Library is distributed in the hope that it will be useful,
+   but WITHOUT ANY WARRANTY; without even the implied warranty of
+   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+   Lesser General Public License for more details.
+
+   You should have received a copy of the GNU Lesser General Public
+   License along with the GNU C Library; if not, write to the Free
+   Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
+   02111-1307 USA.  */
+
+#include <sysdep.h>
+
+       .section        ".toc","aw"
+.LC0:  /* 2**52 */
+       .tc FD_43300000_0[TC],0x4330000000000000
+.LC1:  /* -0.0 */
+       .tc FD_80000000_0[TC],0x8000000000000000
+       .section        ".text"
+
+ENTRY (__ceil)
+       mffs    fp11            /* Save current FPU rounding mode.  */
+       lfd     fp13,.LC0@toc(2)
+       fabs    fp0,fp1
+       fsub    fp12,fp13,fp13  /* generate 0.0  */
+       fcmpu   cr7,fp0,fp13    /* if (fabs(x) > TWO52)  */
+       fcmpu   cr6,fp1,fp12    /* if (x > 0.0)  */
+       bnllr-  cr7
+       mtfsfi  7,2             /* Set rounding mode toward +inf.  */
+       ble-    cr6,.L4
+       fadd    fp1,fp1,fp13    /* x+= TWO52;  */
+       fsub    fp1,fp1,fp13    /* x-= TWO52;  */
+.L9:   
+       mtfsf   0x01,fp11       /* restore previous rounding mode.  */
+       blr
+.L4:
+       bge-    cr6,.L9         /* if (x < 0.0)  */
+       fsub    fp1,fp1,fp13    /* x-= TWO52;  */
+       fadd    fp1,fp1,fp13    /* x+= TWO52;  */
+       fcmpu   cr5,fp1,fp12    /* if (x > 0.0)  */
+       mtfsf   0x01,fp11       /* restore previous rounding mode.  */
+       bnelr+  cr5
+       lfd     fp1,.LC1@toc(2) /* x must be -0.0 for the 0.0 case.  */ 
+       blr
+       END (__ceil)
+
+weak_alias (__ceil, ceil)
+
+#ifdef NO_LONG_DOUBLE
+weak_alias (__ceil, ceill)
+strong_alias (__ceil, __ceill)
+#endif
diff --git a/sysdeps/powerpc/powerpc64/fpu/s_ceilf.S b/sysdeps/powerpc/powerpc64/fpu/s_ceilf.S
new file mode 100644 (file)
index 0000000..34f6142
--- /dev/null
@@ -0,0 +1,56 @@
+/* float ceil function.  PowerPC64 version.
+   Copyright (C) 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
+   modify it under the terms of the GNU Lesser General Public
+   License as published by the Free Software Foundation; either
+   version 2.1 of the License, or (at your option) any later version.
+
+   The GNU C Library is distributed in the hope that it will be useful,
+   but WITHOUT ANY WARRANTY; without even the implied warranty of
+   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+   Lesser General Public License for more details.
+
+   You should have received a copy of the GNU Lesser General Public
+   License along with the GNU C Library; if not, write to the Free
+   Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
+   02111-1307 USA.  */
+
+#include <sysdep.h>
+
+       .section        ".toc","aw"
+.LC0:  /* 2**23 */
+       .tc FD_41600000_0[TC],0x4160000000000000
+.LC1:  /* -0.0 */
+       .tc FD_80000000_0[TC],0x8000000000000000
+       .section        ".text"
+
+ENTRY (__ceilf)
+       mffs    fp11            /* Save current FPU rounding mode.  */
+       lfd     fp13,.LC0@toc(2)
+       fabs    fp0,fp1
+       fsubs   fp12,fp13,fp13  /* generate 0.0  */
+       fcmpu   cr7,fp0,fp13    /* if (fabs(x) > TWO23)  */
+       fcmpu   cr6,fp1,fp12    /* if (x > 0.0)  */
+       bnllr-  cr7
+       mtfsfi  7,2             /* Set rounding mode toward +inf.  */
+       ble-    cr6,.L4
+       fadds   fp1,fp1,fp13    /* x+= TWO23;  */
+       fsubs   fp1,fp1,fp13    /* x-= TWO23;  */
+.L9:   
+       mtfsf   0x01,fp11       /* restore previous rounding mode.  */
+       blr
+.L4:
+       bge-    cr6,.L9         /* if (x < 0.0)  */
+       fsubs   fp1,fp1,fp13    /* x-= TWO23;  */
+       fadds   fp1,fp1,fp13    /* x+= TWO23;  */
+       fcmpu   cr5,fp1,fp12    /* if (x > 0.0)  */
+       mtfsf   0x01,fp11       /* restore previous rounding mode.  */
+       bnelr+  cr5
+       lfd     fp1,.LC1@toc(2) /* x must be -0.0 for the 0.0 case.  */ 
+       blr
+       END (__ceilf)
+
+weak_alias (__ceilf, ceilf)
+
diff --git a/sysdeps/powerpc/powerpc64/fpu/s_floor.S b/sysdeps/powerpc/powerpc64/fpu/s_floor.S
new file mode 100644 (file)
index 0000000..57fd63c
--- /dev/null
@@ -0,0 +1,58 @@
+/* Floor function.  PowerPC64 version.
+   Copyright (C) 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
+   modify it under the terms of the GNU Lesser General Public
+   License as published by the Free Software Foundation; either
+   version 2.1 of the License, or (at your option) any later version.
+
+   The GNU C Library is distributed in the hope that it will be useful,
+   but WITHOUT ANY WARRANTY; without even the implied warranty of
+   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+   Lesser General Public License for more details.
+
+   You should have received a copy of the GNU Lesser General Public
+   License along with the GNU C Library; if not, write to the Free
+   Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
+   02111-1307 USA.  */
+
+#include <sysdep.h>
+
+       .section        ".toc","aw"
+.LC0:  /* 2**52 */
+       .tc FD_43300000_0[TC],0x4330000000000000
+       .section        ".text"
+
+ENTRY (__floor)
+       mffs    fp11            /* Save current FPU rounding mode.  */
+       lfd     fp13,.LC0@toc(2)
+       fabs    fp0,fp1
+       fsub    fp12,fp13,fp13  /* generate 0.0  */
+       fcmpu   cr7,fp0,fp13    /* if (fabs(x) > TWO52)  */
+       fcmpu   cr6,fp1,fp12    /* if (x > 0.0)  */
+       bnllr-  cr7
+       mtfsfi  7,3             /* Set rounding mode toward -inf.  */
+       ble-    cr6,.L4
+       fadd    fp1,fp1,fp13    /* x+= TWO52;  */
+       fsub    fp1,fp1,fp13    /* x-= TWO52;  */
+       fcmpu   cr5,fp1,fp12    /* if (x > 0.0)  */
+       mtfsf   0x01,fp11       /* restore previous rounding mode.  */
+       bnelr+  cr5
+       fmr     fp1,fp12        /* x must be +0.0 for the 0.0 case.  */
+       blr
+.L4:
+       bge-    cr6,.L9         /* if (x < 0.0)  */
+       fsub    fp1,fp1,fp13    /* x-= TWO52;  */
+       fadd    fp1,fp1,fp13    /* x+= TWO52;  */
+.L9:
+       mtfsf   0x01,fp11       /* restore previous rounding mode.  */  
+       blr
+       END (__floor)
+
+weak_alias (__floor, floor)
+
+#ifdef NO_LONG_DOUBLE
+weak_alias (__floor, floorl)
+strong_alias (__floor, __floorl)
+#endif
diff --git a/sysdeps/powerpc/powerpc64/fpu/s_floorf.S b/sysdeps/powerpc/powerpc64/fpu/s_floorf.S
new file mode 100644 (file)
index 0000000..cde92b9
--- /dev/null
@@ -0,0 +1,54 @@
+/* float Floor function.  PowerPC64 version.
+   Copyright (C) 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
+   modify it under the terms of the GNU Lesser General Public
+   License as published by the Free Software Foundation; either
+   version 2.1 of the License, or (at your option) any later version.
+
+   The GNU C Library is distributed in the hope that it will be useful,
+   but WITHOUT ANY WARRANTY; without even the implied warranty of
+   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+   Lesser General Public License for more details.
+
+   You should have received a copy of the GNU Lesser General Public
+   License along with the GNU C Library; if not, write to the Free
+   Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
+   02111-1307 USA.  */
+
+#include <sysdep.h>
+
+       .section        ".toc","aw"
+.LC0:  /* 2**23 */
+       .tc FD_41600000_0[TC],0x4160000000000000
+       .section        ".text"
+
+ENTRY (__floorf)
+       mffs    fp11            /* Save current FPU rounding mode.  */
+       lfd     fp13,.LC0@toc(2)
+       fabs    fp0,fp1
+       fsubs   fp12,fp13,fp13  /* generate 0.0  */
+       fcmpu   cr7,fp0,fp13    /* if (fabs(x) > TWO23)  */
+       fcmpu   cr6,fp1,fp12    /* if (x > 0.0)  */
+       bnllr-  cr7
+       mtfsfi  7,3             /* Set rounding mode toward -inf.  */
+       ble-    cr6,.L4
+       fadds   fp1,fp1,fp13    /* x+= TWO23;  */
+       fsubs   fp1,fp1,fp13    /* x-= TWO23;  */
+       fcmpu   cr5,fp1,fp12    /* if (x > 0.0)  */
+       mtfsf   0x01,fp11       /* restore previous rounding mode.  */
+       bnelr+  cr5
+       fmr     fp1,fp12        /* x must be +0.0 for the 0.0 case.  */
+       blr
+.L4:
+       bge-    cr6,.L9         /* if (x < 0.0)  */
+       fsubs   fp1,fp1,fp13    /* x-= TWO23;  */
+       fadds   fp1,fp1,fp13    /* x+= TWO23;  */
+.L9:
+       mtfsf   0x01,fp11       /* restore previous rounding mode.  */  
+       blr
+       END (__floorf)
+
+weak_alias (__floorf, floorf)
+
similarity index 69%
rename from sysdeps/powerpc/powerpc64/fpu/s_llrint.c
rename to sysdeps/powerpc/powerpc64/fpu/s_llrint.S
index f6ea3f4e0f849251a96eeb0f77479e7e50c7a0e4..bc976a7edbb559fbdc564e22b624cc18b247d67a 100644 (file)
@@ -1,5 +1,5 @@
-/* Round a double value to a long long in the current rounding mode.
-   Copyright (C) 1997, 2004 Free Software Foundation, Inc.
+/* Round double to long int.  PowerPC64 version.
+   Copyright (C) 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
    Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
    02111-1307 USA.  */
 
-/* Kludge to avoid decls that will confuse strong_alias below.  */
-#define __lrint XXX__lrint
-#define __lrintl XXX__lrintl
-#define lrint XXXlrint
-#define lrintl XXXlrintl
+#include <sysdep.h>
 
-#include "math.h"
+/* long long int[r3] __llrint (double x[fp1])  */
+ENTRY (__llrint)       
+       fctid   fp13,fp1
+       stfd    fp13,-16(r1)
+       nop     /* Insure the following load is in a different dispatch group */
+       nop     /* to avoid pipe stall on POWER4&5.  */
+       nop
+       ld      r3,-16(r1)      
+       blr
+       END (__llrint)
 
-#undef __lrint
-#undef __lrintl
-#undef lrint
-#undef lrintl
-
-long long int
-__llrint (double x)
-{
-  return (long long int) __rint (x);
-}
 strong_alias (__llrint, __lrint)
 weak_alias (__llrint, llrint)
 weak_alias (__lrint, lrint)
+
 #ifdef NO_LONG_DOUBLE
 strong_alias (__llrint, __llrintl)
 weak_alias (__llrint, llrintl)
similarity index 70%
rename from sysdeps/powerpc/powerpc64/fpu/s_llrintf.c
rename to sysdeps/powerpc/powerpc64/fpu/s_llrintf.S
index 7d8e22a7002f05947210cb98199c3ea274451ae2..aef84de8317f0863146e272f647ccf05d0d1f875 100644 (file)
@@ -1,5 +1,5 @@
-/* Round a float value to a long long in the current rounding mode.
-   Copyright (C) 1997, 2004 Free Software Foundation, Inc.
+/* Round double to long int.  PowerPC64 version.
+   Copyright (C) 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
    Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
    02111-1307 USA.  */
 
-/* Kludge to avoid decls that will confuse strong_alias below.  */
-#define __lrintf XXX__lrintf
-#define lrintf XXXlrintf
+#include <sysdep.h>
 
-#include "math.h"
+/* long long int[r3] __llrintf (float x[fp1])  */
+ENTRY (__llrintf)      
+       fctid   fp13,fp1
+       stfd    fp13,-16(r1)
+       nop     /* Insure the following load is in a different dispatch group */
+       nop     /* to avoid pipe stall on POWER4&5.  */
+       nop
+       ld      r3,-16(r1)      
+       blr
+       END (__llrintf)
 
-#undef __lrintf
-#undef lrintf
-
-long long int
-__llrintf (float x)
-{
-  return (long long int) __rintf (x);
-}
 strong_alias (__llrintf, __lrintf)
 weak_alias (__llrintf, llrintf)
 weak_alias (__lrintf, lrintf)
+
diff --git a/sysdeps/powerpc/powerpc64/fpu/s_llround.S b/sysdeps/powerpc/powerpc64/fpu/s_llround.S
new file mode 100644 (file)
index 0000000..320ef0f
--- /dev/null
@@ -0,0 +1,67 @@
+/* llround function.  PowerPC64 version.
+   Copyright (C) 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
+   modify it under the terms of the GNU Lesser General Public
+   License as published by the Free Software Foundation; either
+   version 2.1 of the License, or (at your option) any later version.
+
+   The GNU C Library is distributed in the hope that it will be useful,
+   but WITHOUT ANY WARRANTY; without even the implied warranty of
+   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+   Lesser General Public License for more details.
+
+   You should have received a copy of the GNU Lesser General Public
+   License along with the GNU C Library; if not, write to the Free
+   Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
+   02111-1307 USA.  */
+
+#include <sysdep.h>
+
+       .section        ".toc","aw"
+.LC0:  /* -0.0 */
+       .tc FD_00000000_0[TC],0x0000000000000000
+.LC1:  /* 0.5 */
+       .tc FD_3fe00000_0[TC],0x3fe0000000000000
+       .section        ".text"
+       
+/* long long [r3] llround (float x [fp1])
+   IEEE 1003.1 llround function.  IEEE specifies "round to the nearest 
+   integer value, rounding halfway cases away from zero, regardless of
+   the current rounding mode."  However PowerPC Architecture defines
+   "round to Nearest" as "Choose the best approximation. In case of a 
+   tie, choose the one that is even (least significant bit o).". 
+   So we can't use the PowerPC "round to Nearest" mode. Instead we set
+   "round toward Zero" mode and round by adding +-0.5 before rounding
+   to the integer value.  */
+
+ENTRY (__llround)
+       lfd     fp12,.LC0@toc(2)
+       lfd     fp10,.LC1@toc(2)
+       fcmpu   cr6,fp1,fp12    /* if (x > 0.0)  */
+       ble-    cr6,.L4
+       fadd    fp1,fp1,fp10    /* x+= 0.5;  */
+.L9:
+       fctidz  fp2,fp1         /* Convert To Integer DW llround toward 0.  */
+       stfd    fp2,-16(r1)
+       nop     /* Insure the following load is in a different dispatch group */
+       nop     /* to avoid pipe stall on POWER4&5.  */
+       nop
+       ld      r3,-16(r1)
+       blr
+.L4:
+       fsub    fp1,fp1,fp10    /* x-= 0.5;  */
+       b       .L9
+       END (__llround)
+
+strong_alias (__llround, __lround)
+weak_alias (__llround, llround)
+weak_alias (__lround, lround)
+
+#ifdef NO_LONG_DOUBLE
+weak_alias (__llround, llroundl)
+strong_alias (__llround, __llroundl)
+weak_alias (__lround, lroundl)
+strong_alias (__lround, __lroundl)
+#endif
diff --git a/sysdeps/powerpc/powerpc64/fpu/s_llroundf.S b/sysdeps/powerpc/powerpc64/fpu/s_llroundf.S
new file mode 100644 (file)
index 0000000..ff92305
--- /dev/null
@@ -0,0 +1,59 @@
+/* llroundf function.  PowerPC64 version.
+   Copyright (C) 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
+   modify it under the terms of the GNU Lesser General Public
+   License as published by the Free Software Foundation; either
+   version 2.1 of the License, or (at your option) any later version.
+
+   The GNU C Library is distributed in the hope that it will be useful,
+   but WITHOUT ANY WARRANTY; without even the implied warranty of
+   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+   Lesser General Public License for more details.
+
+   You should have received a copy of the GNU Lesser General Public
+   License along with the GNU C Library; if not, write to the Free
+   Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
+   02111-1307 USA.  */
+
+#include <sysdep.h>
+
+       .section        ".toc","aw"
+.LC0:  /* -0.0 */
+       .tc FD_00000000_0[TC],0x0000000000000000
+.LC1:  /* 0.5 */
+       .tc FD_3fe00000_0[TC],0x3fe0000000000000
+       .section        ".text"
+       
+/* long long [r3] llroundf (float x [fp1])
+   IEEE 1003.1 llroundf function.  IEEE specifies "roundf to the nearest 
+   integer value, roundfing halfway cases away from zero, regardless of
+   the current roundfing mode."  However PowerPC Architecture defines
+   "roundf to Nearest" as "Choose the best approximation. In case of a 
+   tie, choose the one that is even (least significant bit o).". 
+   So we can't use the PowerPC "round to Nearest" mode. Instead we set
+   "round toward Zero" mode and round by adding +-0.5 before rounding
+   to the integer value.  */
+
+ENTRY (__llroundf)
+       lfd     fp12,.LC0@toc(2)
+       lfd     fp10,.LC1@toc(2)
+       fcmpu   cr6,fp1,fp12    /* if (x < 0.0)  */
+       fsubs   fp3,fp1,fp10    /* x-= 0.5;  */
+       ble-    cr6,.L9
+       fadds   fp3,fp1,fp10    /* x+= 0.5;  */
+.L9:
+       fctidz  fp2,fp3         /* Convert To Integer DW round toward 0.  */
+       stfd    fp2,-16(r1)
+       nop     /* Insure the following load is in a different dispatch group */
+       nop     /* to avoid pipe stall on POWER4&5.  */
+       nop
+       ld      r3,-16(r1)
+       blr
+       END (__llroundf)
+
+strong_alias (__llroundf, __lroundf)
+weak_alias (__llroundf, llroundf)
+weak_alias (__lroundf, lroundf)
+
diff --git a/sysdeps/powerpc/powerpc64/fpu/s_lround.S b/sysdeps/powerpc/powerpc64/fpu/s_lround.S
new file mode 100644 (file)
index 0000000..883bba1
--- /dev/null
@@ -0,0 +1,2 @@
+/* __lround is in s_llround.S  */
+/* __lround is in s_llround.S  */
diff --git a/sysdeps/powerpc/powerpc64/fpu/s_lroundf.S b/sysdeps/powerpc/powerpc64/fpu/s_lroundf.S
new file mode 100644 (file)
index 0000000..15506f6
--- /dev/null
@@ -0,0 +1,2 @@
+/* __lroundf is in s_llroundf.S  */
+/* __lroundf is in s_llroundf.S  */
diff --git a/sysdeps/powerpc/powerpc64/fpu/s_rint.S b/sysdeps/powerpc/powerpc64/fpu/s_rint.S
new file mode 100644 (file)
index 0000000..f7db7ff
--- /dev/null
@@ -0,0 +1,54 @@
+/* Round to int floating-point values.  PowerPC64 version.
+   Copyright (C) 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
+   modify it under the terms of the GNU Lesser General Public
+   License as published by the Free Software Foundation; either
+   version 2.1 of the License, or (at your option) any later version.
+
+   The GNU C Library is distributed in the hope that it will be useful,
+   but WITHOUT ANY WARRANTY; without even the implied warranty of
+   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+   Lesser General Public License for more details.
+
+   You should have received a copy of the GNU Lesser General Public
+   License along with the GNU C Library; if not, write to the Free
+   Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
+   02111-1307 USA.  */
+
+/* This has been coded in assembler because GCC makes such a mess of it
+   when it's coded in C.  */
+
+#include <sysdep.h>
+
+       .section        ".toc","aw"
+.LC0:  /* 2**52 */
+       .tc FD_43300000_0[TC],0x4330000000000000
+       .section        ".text"
+
+ENTRY (__rint)
+       lfd     fp13,.LC0@toc(2)
+       fabs    fp0,fp1
+       fsub    fp12,fp13,fp13  /* generate 0.0  */
+       fcmpu   cr7,fp0,fp13    /* if (fabs(x) > TWO52)  */
+       fcmpu   cr6,fp1,fp12    /* if (x > 0.0)  */
+       bnllr-  cr7
+       bng-    cr6,.L4
+       fadd    fp1,fp1,fp13    /* x+= TWO52;  */
+       fsub    fp1,fp1,fp13    /* x-= TWO52;  */
+       blr
+.L4:
+       bnllr-  cr6             /* if (x < 0.0)  */
+       fsub    fp1,fp13,fp1    /* x = TWO52 - x;  */
+       fsub    fp0,fp1,fp13    /* x = - (x - TWO52);  */
+       fneg    fp1,fp0
+       blr
+       END (__rint)
+
+weak_alias (__rint, rint)
+
+#ifdef NO_LONG_DOUBLE
+weak_alias (__rint, rintl)
+strong_alias (__rint, __rintl)
+#endif
diff --git a/sysdeps/powerpc/powerpc64/fpu/s_rintf.S b/sysdeps/powerpc/powerpc64/fpu/s_rintf.S
new file mode 100644 (file)
index 0000000..de6d654
--- /dev/null
@@ -0,0 +1,47 @@
+/* Round float to int floating-point values.  PowerPC64 version.
+   Copyright (C) 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
+   modify it under the terms of the GNU Lesser General Public
+   License as published by the Free Software Foundation; either
+   version 2.1 of the License, or (at your option) any later version.
+
+   The GNU C Library is distributed in the hope that it will be useful,
+   but WITHOUT ANY WARRANTY; without even the implied warranty of
+   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+   Lesser General Public License for more details.
+
+   You should have received a copy of the GNU Lesser General Public
+   License along with the GNU C Library; if not, write to the Free
+   Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
+   02111-1307 USA.  */
+
+#include <sysdep.h>
+
+       .section        ".toc","aw"
+.LC0:  /* 2**23 */
+       .tc FD_41600000_0[TC],0x4160000000000000
+       .section        ".text"
+
+ENTRY (__rintf)
+       lfd     fp13,.LC0@toc(2)
+       fabs    fp0,fp1
+       fsubs   fp12,fp13,fp13  /* generate 0.0  */
+       fcmpu   cr7,fp0,fp13    /* if (fabs(x) > TWO23)  */
+       fcmpu   cr6,fp1,fp12    /* if (x > 0.0)  */
+       bnllr-  cr7
+       bng-    cr6,.L4
+       fadds   fp1,fp1,fp13    /* x+= TWO23;  */
+       fsubs   fp1,fp1,fp13    /* x-= TWO23;  */
+       blr
+.L4:
+       bnllr-  cr6             /* if (x < 0.0)  */
+       fsubs   fp1,fp13,fp1    /* x = TWO23 - x;  */
+       fsubs   fp0,fp1,fp13    /* x = - (x - TWO23);  */
+       fneg    fp1,fp0
+       blr
+       END (__rintf)
+
+weak_alias (__rintf, rintf)
+
diff --git a/sysdeps/powerpc/powerpc64/fpu/s_round.S b/sysdeps/powerpc/powerpc64/fpu/s_round.S
new file mode 100644 (file)
index 0000000..1c2e529
--- /dev/null
@@ -0,0 +1,75 @@
+/* round function.  PowerPC64 version.
+   Copyright (C) 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
+   modify it under the terms of the GNU Lesser General Public
+   License as published by the Free Software Foundation; either
+   version 2.1 of the License, or (at your option) any later version.
+
+   The GNU C Library is distributed in the hope that it will be useful,
+   but WITHOUT ANY WARRANTY; without even the implied warranty of
+   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+   Lesser General Public License for more details.
+
+   You should have received a copy of the GNU Lesser General Public
+   License along with the GNU C Library; if not, write to the Free
+   Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
+   02111-1307 USA.  */
+
+#include <sysdep.h>
+
+       .section        ".toc","aw"
+.LC0:  /* 2**52 */
+       .tc FD_43300000_0[TC],0x4330000000000000
+.LC1:  /* 0.5 */
+       .tc FD_3fe00000_0[TC],0x3fe0000000000000
+.LC2:  /* -0.0 */
+       .tc FD_80000000_0[TC],0x8000000000000000
+       .section        ".text"
+       
+/* double [fp1] round (double x [fp1])
+   IEEE 1003.1 round function.  IEEE specifies "round to the nearest 
+   integer value, rounding halfway cases away from zero, regardless of
+   the current rounding mode."  However PowerPC Architecture defines
+   "Round to Nearest" as "Choose the best approximation. In case of a 
+   tie, choose the one that is even (least significant bit o).". 
+   So we can't use the PowerPC "Round to Nearest" mode. Instead we set
+   "Round toward Zero" mode and round by adding +-0.5 before rounding
+   to the integer value.  */
+
+ENTRY (__round)
+       mffs    fp11            /* Save current FPU rounding mode.  */
+       lfd     fp13,.LC0@toc(2)
+       fabs    fp0,fp1
+       fsub    fp12,fp13,fp13  /* generate 0.0  */
+       fcmpu   cr7,fp0,fp13    /* if (fabs(x) > TWO52)  */
+       fcmpu   cr6,fp1,fp12    /* if (x > 0.0)  */
+       bnllr-  cr7
+       mtfsfi  7,1             /* Set rounding mode toward 0.  */
+       lfd     fp10,.LC1@toc(2)
+       ble-    cr6,.L4
+       fadd    fp1,fp1,fp10    /* x+= 0.5;  */
+       fadd    fp1,fp1,fp13    /* x+= TWO52;  */
+       fsub    fp1,fp1,fp13    /* x-= TWO52;  */
+.L9:   
+       mtfsf   0x01,fp11       /* restore previous rounding mode.  */
+       blr
+.L4:
+       fsub    fp9,fp1,fp10    /* x+= 0.5;  */
+       bge-    cr6,.L9         /* if (x < 0.0)  */
+       fsub    fp1,fp9,fp13    /* x-= TWO52;  */
+       fadd    fp1,fp1,fp13    /* x+= TWO52;  */
+       fcmpu   cr5,fp1,fp12    /* if (x > 0.0)  */
+       mtfsf   0x01,fp11       /* restore previous rounding mode.  */
+       bnelr+  cr5
+       lfd     fp1,.LC2@toc(2) /* x must be -0.0 for the 0.0 case.  */ 
+       blr
+       END (__round)
+
+weak_alias (__round, round)
+
+#ifdef NO_LONG_DOUBLE
+weak_alias (__round, roundl)
+strong_alias (__round, __roundl)
+#endif
diff --git a/sysdeps/powerpc/powerpc64/fpu/s_roundf.S b/sysdeps/powerpc/powerpc64/fpu/s_roundf.S
new file mode 100644 (file)
index 0000000..fd8eb0a
--- /dev/null
@@ -0,0 +1,71 @@
+/* roundf  function.  PowerPC64 version.
+   Copyright (C) 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
+   modify it under the terms of the GNU Lesser General Public
+   License as published by the Free Software Foundation; either
+   version 2.1 of the License, or (at your option) any later version.
+
+   The GNU C Library is distributed in the hope that it will be useful,
+   but WITHOUT ANY WARRANTY; without even the implied warranty of
+   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+   Lesser General Public License for more details.
+
+   You should have received a copy of the GNU Lesser General Public
+   License along with the GNU C Library; if not, write to the Free
+   Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
+   02111-1307 USA.  */
+
+#include <sysdep.h>
+
+       .section        ".toc","aw"
+.LC0:  /* 2**23 */
+       .tc FD_41600000_0[TC],0x4160000000000000
+.LC1:  /* 0.5 */
+       .tc FD_3fe00000_0[TC],0x3fe0000000000000
+.LC2:  /* -0.0 */
+       .tc FD_80000000_0[TC],0x8000000000000000
+       .section        ".text"
+       
+/* float [fp1] roundf  (float x [fp1])
+   IEEE 1003.1 round function.  IEEE specifies "round to the nearest 
+   integer value, rounding halfway cases away from zero, regardless of
+   the current rounding mode."  However PowerPC Architecture defines
+   "Round to Nearest" as "Choose the best approximation. In case of a 
+   tie, choose the one that is even (least significant bit o).". 
+   So we can't use the PowerPC "Round to Nearest" mode. Instead we set
+   "Round toward Zero" mode and round by adding +-0.5 before rounding
+   to the integer value.  */
+
+ENTRY (__roundf )
+       mffs    fp11            /* Save current FPU rounding mode.  */
+       lfd     fp13,.LC0@toc(2)
+       fabs    fp0,fp1
+       fsubs   fp12,fp13,fp13  /* generate 0.0  */
+       fcmpu   cr7,fp0,fp13    /* if (fabs(x) > TWO23)  */
+       fcmpu   cr6,fp1,fp12    /* if (x > 0.0)  */
+       bnllr-  cr7
+       mtfsfi  7,1             /* Set rounding mode toward 0.  */
+       lfd     fp10,.LC1@toc(2)
+       ble-    cr6,.L4
+       fadds   fp1,fp1,fp10    /* x+= 0.5;  */
+       fadds   fp1,fp1,fp13    /* x+= TWO23;  */
+       fsubs   fp1,fp1,fp13    /* x-= TWO23;  */
+.L9:   
+       mtfsf   0x01,fp11       /* restore previous rounding mode.  */
+       blr
+.L4:
+       fsubs   fp9,fp1,fp10    /* x+= 0.5;  */
+       bge-    cr6,.L9         /* if (x < 0.0)  */
+       fsubs   fp1,fp9,fp13    /* x-= TWO23;  */
+       fadds   fp1,fp1,fp13    /* x+= TWO23;  */
+       fcmpu   cr5,fp1,fp12    /* if (x > 0.0)  */
+       mtfsf   0x01,fp11       /* restore previous rounding mode.  */
+       bnelr+  cr5
+       lfd     fp1,.LC2@toc(2) /* x must be -0.0 for the 0.0 case.  */ 
+       blr
+       END (__roundf)
+
+weak_alias (__roundf, roundf)
+
diff --git a/sysdeps/powerpc/powerpc64/fpu/s_trunc.S b/sysdeps/powerpc/powerpc64/fpu/s_trunc.S
new file mode 100644 (file)
index 0000000..dc345ab
--- /dev/null
@@ -0,0 +1,67 @@
+/* trunc function.  PowerPC64 version.
+   Copyright (C) 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
+   modify it under the terms of the GNU Lesser General Public
+   License as published by the Free Software Foundation; either
+   version 2.1 of the License, or (at your option) any later version.
+
+   The GNU C Library is distributed in the hope that it will be useful,
+   but WITHOUT ANY WARRANTY; without even the implied warranty of
+   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+   Lesser General Public License for more details.
+
+   You should have received a copy of the GNU Lesser General Public
+   License along with the GNU C Library; if not, write to the Free
+   Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
+   02111-1307 USA.  */
+
+#include <sysdep.h>
+
+       .section        ".toc","aw"
+.LC0:  /* 2**52 */
+       .tc FD_43300000_0[TC],0x4330000000000000
+.LC2:  /* -0.0 */
+       .tc FD_80000000_0[TC],0x8000000000000000
+       .section        ".text"
+       
+/* double [fp1] trunc (double x [fp1])
+   IEEE 1003.1 trunc function.  IEEE specifies "trunc to the integer
+   value, in floating format, nearest to but no larger in magnitude 
+   then the argument."
+   We set "round toward Zero" mode and trunc by adding +-2**52 then
+   subtracting +-2**52.  */
+
+ENTRY (__trunc)
+       mffs    fp11            /* Save current FPU rounding mode.  */
+       lfd     fp13,.LC0@toc(2)
+       fabs    fp0,fp1
+       fsub    fp12,fp13,fp13  /* generate 0.0  */
+       fcmpu   cr7,fp0,fp13    /* if (fabs(x) > TWO52)  */
+       fcmpu   cr6,fp1,fp12    /* if (x > 0.0)  */
+       bnllr-  cr7
+       mtfsfi  7,1             /* Set rounding toward 0 mode.  */
+       ble-    cr6,.L4
+       fadd    fp1,fp1,fp13    /* x+= TWO52;  */
+       fsub    fp1,fp1,fp13    /* x-= TWO52;  */
+.L9:   
+       mtfsf   0x01,fp11       /* restore previous truncing mode.  */
+       blr
+.L4:
+       bge-    cr6,.L9         /* if (x < 0.0)  */
+       fsub    fp1,fp1,fp13    /* x-= TWO52;  */
+       fadd    fp1,fp1,fp13    /* x+= TWO52;  */
+       fcmpu   cr5,fp1,fp12    /* if (x > 0.0)  */
+       mtfsf   0x01,fp11       /* restore previous rounding mode.  */
+       bnelr+  cr5
+       lfd     fp1,.LC2@toc(2) /* x must be -0.0 for the 0.0 case.  */ 
+       blr
+       END (__trunc)
+
+weak_alias (__trunc, trunc)
+
+#ifdef NO_LONG_DOUBLE
+weak_alias (__trunc, truncl)
+strong_alias (__trunc, __truncl)
+#endif
diff --git a/sysdeps/powerpc/powerpc64/fpu/s_truncf.S b/sysdeps/powerpc/powerpc64/fpu/s_truncf.S
new file mode 100644 (file)
index 0000000..727647f
--- /dev/null
@@ -0,0 +1,63 @@
+/* truncf function.  PowerPC64 version.
+   Copyright (C) 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
+   modify it under the terms of the GNU Lesser General Public
+   License as published by the Free Software Foundation; either
+   version 2.1 of the License, or (at your option) any later version.
+
+   The GNU C Library is distributed in the hope that it will be useful,
+   but WITHOUT ANY WARRANTY; without even the implied warranty of
+   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+   Lesser General Public License for more details.
+
+   You should have received a copy of the GNU Lesser General Public
+   License along with the GNU C Library; if not, write to the Free
+   Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
+   02111-1307 USA.  */
+
+#include <sysdep.h>
+
+       .section        ".toc","aw"
+.LC0:  /* 2**23 */
+       .tc FD_41600000_0[TC],0x4160000000000000
+.LC2:  /* -0.0 */
+       .tc FD_80000000_0[TC],0x8000000000000000
+       .section        ".text"
+       
+/* float [fp1] truncf (float x [fp1])
+   IEEE 1003.1 trunc function.  IEEE specifies "trunc to the integer
+   value, in floating format, nearest to but no larger in magnitude 
+   then the argument."
+   We set "round toward Zero" mode and trunc by adding +-2**23 then
+   subtracting +-2**23.  */
+
+ENTRY (__truncf)
+       mffs    fp11            /* Save current FPU rounding mode.  */
+       lfd     fp13,.LC0@toc(2)
+       fabs    fp0,fp1
+       fsubs   fp12,fp13,fp13  /* generate 0.0  */
+       fcmpu   cr7,fp0,fp13    /* if (fabs(x) > TWO23)  */
+       fcmpu   cr6,fp1,fp12    /* if (x > 0.0)  */
+       bnllr-  cr7
+       mtfsfi  7,1             /* Set rounding toward 0 mode.  */
+       ble-    cr6,.L4
+       fadds   fp1,fp1,fp13    /* x+= TWO23;  */
+       fsubs   fp1,fp1,fp13    /* x-= TWO23;  */
+.L9:   
+       mtfsf   0x01,fp11       /* restore previous truncing mode.  */
+       blr
+.L4:
+       bge-    cr6,.L9         /* if (x < 0.0)  */
+       fsubs   fp1,fp1,fp13    /* x-= TWO23;  */
+       fadds   fp1,fp1,fp13    /* x+= TWO23;  */
+       fcmpu   cr5,fp1,fp12    /* if (x > 0.0)  */
+       mtfsf   0x01,fp11       /* restore previous rounding mode.  */
+       bnelr+  cr5
+       lfd     fp1,.LC2@toc(2) /* x must be -0.0 for the 0.0 case.  */ 
+       blr
+       END (__truncf)
+
+weak_alias (__truncf, truncf)
+
index 4081b4d0dbb1ae6292f11e84f0921706f0ef35fe..c992f93ef8b6c2cdb31eb8f8661ffe67e17702af 100644 (file)
@@ -1,5 +1,5 @@
 /* O_*, F_*, FD_* bit values for 4.3 BSD.
-   Copyright (C) 1991, 1992, 1997 Free Software Foundation, Inc.
+   Copyright (C) 1991, 1992, 1997, 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
@@ -85,7 +85,7 @@
 #define        F_SETFD         2       /* Set file descriptor flags.  */
 #define        F_GETFL         3       /* Get file status flags.  */
 #define        F_SETFL         4       /* Set file status flags.  */
-#ifdef __USE_BSD
+#if defined __USE_BSD || defined __USE_UNIX98
 # define F_GETOWN      5       /* Get owner (receiver of SIGIO).  */
 # define F_SETOWN      6       /* Set owner (receiver of SIGIO).  */
 #endif
index a5bfd7c8258b5a43af921f5ec824554f2fc03b02..47a67e38e45782829af876679b7465aff874e790 100644 (file)
@@ -1,5 +1,5 @@
 /* O_*, F_*, FD_* bit values for 4.4 BSD.
-   Copyright (C) 1991, 1992, 1997 Free Software Foundation, Inc.
+   Copyright (C) 1991, 1992, 1997, 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
@@ -82,7 +82,7 @@
 #define        F_SETFD         2       /* Set file descriptor flags.  */
 #define        F_GETFL         3       /* Get file status flags.  */
 #define        F_SETFL         4       /* Set file status flags.  */
-#ifdef __USE_BSD
+#if defined __USE_BSD || defined __USE_UNIX98
 #define        F_GETOWN        5       /* Get owner (receiver of SIGIO).  */
 #define        F_SETOWN        6       /* Set owner (receiver of SIGIO).  */
 #endif
index e09fa333e502117d822149fe9b0b3ca4ba261c78..a30b352592dca6f3eca7d7d2119e82fb90055a3c 100644 (file)
@@ -1,5 +1,5 @@
 /* O_*, F_*, FD_* bit values for SunOS 4.
-   Copyright (C) 1991, 1992, 1997 Free Software Foundation, Inc.
+   Copyright (C) 1991, 1992, 1997, 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
@@ -86,7 +86,7 @@
 #define        F_SETFD         2       /* Set file descriptor flags.  */
 #define        F_GETFL         3       /* Get file status flags.  */
 #define        F_SETFL         4       /* Set file status flags.  */
-#ifdef __USE_BSD
+#if defined __USE_BSD || defined __USE_UNIX98
 #define        F_GETOWN        5       /* Get owner (receiver of SIGIO).  */
 #define        F_SETOWN        6       /* Set owner (receiver of SIGIO).  */
 #endif
index 9dbd7ba2695246dbc51464cdfb00e8cc133ee557..6392bc34154315e40998acd2f856200fc4fc49c9 100644 (file)
@@ -1,5 +1,5 @@
 /* O_*, F_*, FD_* bit values for Ultrix 4.
-   Copyright (C) 1991, 1992, 1997 Free Software Foundation, Inc.
+   Copyright (C) 1991, 1992, 1997, 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
@@ -87,7 +87,7 @@
 #define        F_SETFD         2       /* Set file descriptor flags.  */
 #define        F_GETFL         3       /* Get file status flags.  */
 #define        F_SETFL         4       /* Set file status flags.  */
-#ifdef __USE_BSD
+#if defined __USE_BSD || defined __USE_UNIX98
 #define        F_GETOWN        5       /* Get owner (receiver of SIGIO).  */
 #define        F_SETOWN        6       /* Set owner (receiver of SIGIO).  */
 #endif
index 2918cea5f2eda97266d56457fc5ec1eea4a3a7cf..5bf6791b54225db40f8e2b3c9edf11f158349696 100644 (file)
@@ -1,5 +1,6 @@
 /* O_*, F_*, FD_* bit values for general Unix system.
-   Copyright (C) 1991, 1992, 1995, 1997, 2000 Free Software Foundation, Inc.
+   Copyright (C) 1991, 1992, 1995, 1997, 2000, 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
@@ -79,7 +80,7 @@
 #define        F_SETFD         2       /* Set file descriptor flags.  */
 #define        F_GETFL         3       /* Get file status flags.  */
 #define        F_SETFL         4       /* Set file status flags.  */
-#if defined __USE_BSD || defined __USE_XOPEN2K
+#if defined __USE_BSD || defined __USE_UNIX98
 # define F_GETOWN      23      /* Get owner (receiver of SIGIO).  */
 # define F_SETOWN      24      /* Set owner (receiver of SIGIO).  */
 #endif
index 28a8fae0f27787e5d66eace036a7877d297b90cd..c65b8beeb4bfcace1085afdfc57e9d83ec4abc51 100644 (file)
@@ -1,5 +1,5 @@
 /* O_*, F_*, FD_* bit values for Linux.
-   Copyright (C) 1995-1999, 2000 Free Software Foundation, Inc.
+   Copyright (C) 1995-1999, 2000, 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
@@ -74,7 +74,7 @@
 # define F_SETLKW64     13     /* Set record locking info (blocking).  */
 #endif
 
-#if defined __USE_BSD || defined __USE_XOPEN2K
+#if defined __USE_BSD || defined __USE_UNIX98
 # define F_SETOWN      8       /* Get owner of socket (receiver of SIGIO).  */
 # define F_GETOWN      9       /* Set owner of socket (receiver of SIGIO).  */
 #endif
index dcba25fbc8bed69c5163325005cc68e81e7a2c56..5eb7c76eb7256eea2ce2eba5d0f21bd069a7bb75 100644 (file)
@@ -1,5 +1,5 @@
 /* O_*, F_*, FD_* bit values for SGI Irix 4.
-   Copyright (C) 1994, 1997 Free Software Foundation, Inc.
+   Copyright (C) 1994, 1997, 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
@@ -67,6 +67,8 @@
 #define F_RGETLK        20      /* Get info on a remote lock.  */
 #define F_RSETLK        21      /* Set or unlock a remote lock.  */
 #define F_RSETLKW       22      /* Set or unlock a remote lock and wait.  */
+#endif
+#if defined __USE_BSD || defined __USE_UNIX98
 #define F_GETOWN        10      /* Get owner; only works on sockets.  */
 #define F_SETOWN        11      /* Set owner; only works on sockets.  */
 #endif
index 0fa782a0d76d0f5faca126fd4b44b3d0509e761e..980724e51911678f31d6c9b87377b702d8fcaf45 100644 (file)
@@ -116,9 +116,6 @@ libc {
     sched_getaffinity; sched_setaffinity;
   }
   GLIBC_PRIVATE {
-    # needed by libpthread.
-    __libc_sigaction;
-
     # functions used in other libraries
     __syscall_rt_sigqueueinfo;
   }
index 7d1197a8eacac8db5ef7e4b028db2a39fba2808e..828cc752256b240ca89d3e388849b0048f8a6177 100644 (file)
@@ -1,5 +1,5 @@
 /* O_*, F_*, FD_* bit values for Linux.
-   Copyright (C) 1995-1999, 2000 Free Software Foundation, Inc.
+   Copyright (C) 1995-1999, 2000, 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
@@ -75,7 +75,7 @@
 #define F_SETLK64      F_SETLK /* Set record locking info (non-blocking).  */
 #define F_SETLKW64     F_SETLKW /* Set record locking info (blocking).  */
 
-#if defined __USE_BSD || defined __USE_XOPEN2K
+#if defined __USE_BSD || defined __USE_UNIX98
 # define F_SETOWN      5       /* Get owner of socket (receiver of SIGIO).  */
 # define F_GETOWN      6       /* Set owner of socket (receiver of SIGIO).  */
 #endif
index ce17d68038ca1d4bcf9bfb9d13ebb105f49ac65a..d050f7fbf7c5e020870f87acb371b20541849535 100644 (file)
@@ -1,5 +1,5 @@
 /* O_*, F_*, FD_* bit values for Linux.
-   Copyright (C) 1995-1998, 2000 Free Software Foundation, Inc.
+   Copyright (C) 1995-1998, 2000, 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
@@ -79,7 +79,7 @@
 #define F_SETLK64      13      /* Set record locking info (non-blocking).  */
 #define F_SETLKW64     14      /* Set record locking info (blocking).  */
 
-#if defined __USE_BSD || defined __USE_XOPEN2K
+#if defined __USE_BSD || defined __USE_UNIX98
 # define F_SETOWN      8       /* Get owner of socket (receiver of SIGIO).  */
 # define F_GETOWN      9       /* Set owner of socket (receiver of SIGIO).  */
 #endif
index 69ce6a506b5af0190d3fddceff414f13c196c103..6abdd1d0b60ad65963e37700e3a94fc2597adb1d 100644 (file)
@@ -1,5 +1,6 @@
 /* O_*, F_*, FD_* bit values for Linux.
-   Copyright (C) 1995, 1996, 1997, 1998, 2000, 2001 Free Software Foundation, Inc.
+   Copyright (C) 1995, 1996, 1997, 1998, 2000, 2001, 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
@@ -78,7 +79,7 @@
 #define F_SETLK64      13      /* Set record locking info (non-blocking).  */
 #define F_SETLKW64     14      /* Set record locking info (blocking).  */
 
-#if defined __USE_BSD || defined __USE_XOPEN2K
+#if defined __USE_BSD || defined __USE_UNIX98
 # define F_SETOWN      8       /* Get owner of socket (receiver of SIGIO).  */
 # define F_GETOWN      9       /* Set owner of socket (receiver of SIGIO).  */
 #endif
index 6f13871d832de2d00a98fe21ceae9fdfb03227ce..6cc96cf665013249701ab4de866852466e966789 100644 (file)
@@ -1,5 +1,5 @@
 /* O_*, F_*, FD_* bit values for Linux/HPPA.
-   Copyright (C) 1995,1996,1997,1998,1999,2000,2002
+   Copyright (C) 1995,1996,1997,1998,1999,2000,2002,2004
        Free Software Foundation, Inc.
    This file is part of the GNU C Library.
 
@@ -78,7 +78,7 @@
 #define F_SETLK64      9       /* Set record locking info (non-blocking).  */
 #define F_SETLKW64     10      /* Set record locking info (blocking).  */
 
-#if defined __USE_BSD || defined __USE_XOPEN2K
+#if defined __USE_BSD || defined __USE_UNIX98
 # define F_GETOWN      11      /* Get owner of socket (receiver of SIGIO).  */
 # define F_SETOWN      12      /* Set owner of socket (receiver of SIGIO).  */
 #endif
index bd27ae54df0590dd30d5f90c4eb693e24f2a3867..8b753c5762c8de219f02b474abb02c766c48e696 100644 (file)
@@ -1,5 +1,6 @@
 /* O_*, F_*, FD_* bit values for Linux.
-   Copyright (C) 1995, 1996, 1997, 1998, 2000 Free Software Foundation, Inc.
+   Copyright (C) 1995, 1996, 1997, 1998, 2000, 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
@@ -78,7 +79,7 @@
 #define F_SETLK64      13      /* Set record locking info (non-blocking).  */
 #define F_SETLKW64     14      /* Set record locking info (blocking).  */
 
-#if defined __USE_BSD || defined __USE_XOPEN2K
+#if defined __USE_BSD || defined __USE_UNIX98
 # define F_SETOWN      8       /* Get owner of socket (receiver of SIGIO).  */
 # define F_GETOWN      9       /* Set owner of socket (receiver of SIGIO).  */
 #endif
index e141e98cb7337cff5614ae7e7fbe1e978ca9664d..97971d3de3d1541ef25105d05f620923e346870d 100644 (file)
@@ -1,5 +1,5 @@
 /* O_*, F_*, FD_* bit values for Linux/IA64.
-   Copyright (C) 1999, 2000 Free Software Foundation, Inc.
+   Copyright (C) 1999, 2000, 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
@@ -75,7 +75,7 @@
 #define F_SETLK64      6       /* Set record locking info (non-blocking).  */
 #define F_SETLKW64     7       /* Set record locking info (blocking).  */
 
-#if defined __USE_BSD || defined __USE_XOPEN2K
+#if defined __USE_BSD || defined __USE_UNIX98
 # define F_SETOWN      8       /* Get owner of socket (receiver of SIGIO).  */
 # define F_GETOWN      9       /* Set owner of socket (receiver of SIGIO).  */
 #endif
index af7c0ea9ac22b8eeff176adcf318adef0beab5cb..2e85d1e89318a0ecf60c5c252d00ca2cc85b90fe 100644 (file)
@@ -1,5 +1,5 @@
 /* O_*, F_*, FD_* bit values for Linux.
-   Copyright (C) 2000 Free Software Foundation, Inc.
+   Copyright (C) 2000, 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
@@ -78,7 +78,7 @@
 #define F_SETLK64      13      /* Set record locking info (non-blocking).  */
 #define F_SETLKW64     14      /* Set record locking info (blocking).  */
 
-#if defined __USE_BSD || defined __USE_XOPEN2K
+#if defined __USE_BSD || defined __USE_UNIX98
 # define F_SETOWN      8       /* Get owner of socket (receiver of SIGIO).  */
 # define F_GETOWN      9       /* Set owner of socket (receiver of SIGIO).  */
 #endif
index 97e18677292350aab589da6cfffd469372044726..720e0a90e053cbe34f732b63d27d4b7299b040a2 100644 (file)
@@ -1,5 +1,5 @@
 /* O_*, F_*, FD_* bit values for Linux.
-   Copyright (C) 1995, 1996, 1997, 1998, 2000, 2002, 2003
+   Copyright (C) 1995, 1996, 1997, 1998, 2000, 2002, 2003, 2004
        Free Software Foundation, Inc.
    This file is part of the GNU C Library.
 
@@ -81,7 +81,7 @@
 #define F_SETLK64      34      /* Set record locking info (non-blocking).  */
 #define F_SETLKW64     35      /* Set record locking info (blocking).  */
 
-#if defined __USE_BSD || defined __USE_XOPEN2K
+#if defined __USE_BSD || defined __USE_UNIX98
 # define F_SETOWN      24      /* Get owner of socket (receiver of SIGIO).  */
 # define F_GETOWN      23      /* Set owner of socket (receiver of SIGIO).  */
 #endif
index dc9c05d29725767a12e3be7426230258dbfcc45b..e1fbb9c5d553cb836d68d95fbb4b23b5b2befce7 100644 (file)
@@ -1,5 +1,6 @@
 /* O_*, F_*, FD_* bit values for Linux/PowerPC.
-   Copyright (C) 1995,1996,1997,1998,2000,2003 Free Software Foundation, Inc.
+   Copyright (C) 1995, 1996, 1997, 1998, 2000, 2003, 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
@@ -78,7 +79,7 @@
 #define F_SETLK64      13      /* Set record locking info (non-blocking).  */
 #define F_SETLKW64     14      /* Set record locking info (blocking).  */
 
-#if defined __USE_BSD || defined __USE_XOPEN2K
+#if defined __USE_BSD || defined __USE_UNIX98
 # define F_SETOWN      8       /* Get owner of socket (receiver of SIGIO).  */
 # define F_GETOWN      9       /* Set owner of socket (receiver of SIGIO).  */
 #endif
index fe04f96279959f8ba1646d2d4228ed9f75df7c41..1cdc487c09395c046eac33e1e76957c64df90252 100644 (file)
@@ -1,5 +1,5 @@
 /* O_*, F_*, FD_* bit values for Linux.
-   Copyright (C) 2000, 2001, 2002 Free Software Foundation, Inc.
+   Copyright (C) 2000, 2001, 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
@@ -93,7 +93,7 @@
 # define F_SETLKW64    14      /* Set record locking info (blocking).  */
 #endif
 
-#if defined __USE_BSD || defined __USE_XOPEN2K
+#if defined __USE_BSD || defined __USE_UNIX98
 # define F_SETOWN      8       /* Get owner of socket (receiver of SIGIO).  */
 # define F_GETOWN      9       /* Set owner of socket (receiver of SIGIO).  */
 #endif
index d3a8d821220e932a6c320f96bdab7b06093c74b5..db1a314ebbe2b2d726fba7da89796d9da3637f53 100644 (file)
@@ -1,5 +1,6 @@
 /* O_*, F_*, FD_* bit values for Linux.
-   Copyright (C) 1995, 1996, 1997, 1998, 2000 Free Software Foundation, Inc.
+   Copyright (C) 1995, 1996, 1997, 1998, 2000, 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
@@ -78,7 +79,7 @@
 #define F_SETLK64      13      /* Set record locking info (non-blocking).  */
 #define F_SETLKW64     14      /* Set record locking info (blocking).  */
 
-#if defined __USE_BSD || defined __USE_XOPEN2K
+#if defined __USE_BSD || defined __USE_UNIX98
 # define F_SETOWN      8       /* Get owner of socket (receiver of SIGIO).  */
 # define F_GETOWN      9       /* Set owner of socket (receiver of SIGIO).  */
 #endif
index 27fc3f839111c7776c57873cf3839640354447f3..967bef1233fd366640102c44914b59fc1ebe3de0 100644 (file)
@@ -1,5 +1,6 @@
 /* O_*, F_*, FD_* bit values for Linux/SPARC.
-   Copyright (C) 1995,1996,1997,1998,2000,2003 Free Software Foundation, Inc.
+   Copyright (C) 1995, 1996, 1997, 1998, 2000, 2003, 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
@@ -76,7 +77,7 @@
 #define F_SETFD                2       /* Set file descriptor flags.  */
 #define F_GETFL                3       /* Get file status flags.  */
 #define F_SETFL                4       /* Set file status flags.  */
-#if defined __USE_BSD || defined __USE_XOPEN2K
+#if defined __USE_BSD || defined __USE_UNIX98
 # define F_GETOWN      5       /* Get owner of socket (receiver of SIGIO).  */
 # define F_SETOWN      6       /* Set owner of socket (receiver of SIGIO).  */
 #endif
index 3735871a24386ad5e131ac697270944c624698a7..fd1b3cc2960e7cb8028dbf68f34427108b4a0ed9 100644 (file)
@@ -6,7 +6,4 @@ libc {
 
     modify_ldt;
   }
-  GLIBC_PRIVATE {
-    __modify_ldt;
-  }
 }
index f41af70f97c61ee15697df055ae64544e1885625..5e11760bf0ed51c6dd98fce5345bc36688618d36 100644 (file)
@@ -1,5 +1,5 @@
 /* O_*, F_*, FD_* bit values for Linux/x86-64.
-   Copyright (C) 2001, 2002 Free Software Foundation, Inc.
+   Copyright (C) 2001, 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
@@ -82,7 +82,7 @@
 #define F_SETLK64      13      /* Set record locking info (non-blocking).  */
 #define F_SETLKW64     14      /* Set record locking info (blocking).  */
 #endif
-#if defined __USE_BSD || defined __USE_XOPEN2K
+#if defined __USE_BSD || defined __USE_UNIX98
 # define F_SETOWN      8       /* Get owner of socket (receiver of SIGIO).  */
 # define F_GETOWN      9       /* Set owner of socket (receiver of SIGIO).  */
 #endif
index ddd270530537e189e21e650f4beaeba2af974c1a..711ed0334b52fe95d20f59c273e7b344d08fc33a 100644 (file)
@@ -11,9 +11,4 @@ libc {
     # t*
     tcgetsid;
   }
-  GLIBC_PRIVATE {
-    # functions which have an additional interface since they are
-    # are cancelable.
-    __libc_tcdrain;
-  }
 }