diff options
65 files changed, 1205 insertions, 143 deletions
@@ -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>. diff --git a/bits/fcntl.h b/bits/fcntl.h index f23667e..b397f81 100644 --- a/bits/fcntl.h +++ b/bits/fcntl.h @@ -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 diff --git a/elf/dl-load.c b/elf/dl-load.c index 162fb30..5ff472a 100644 --- a/elf/dl-load.c +++ b/elf/dl-load.c @@ -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) diff --git a/io/Versions b/io/Versions index 9e650d4..5b311ee 100644 --- a/io/Versions +++ b/io/Versions @@ -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; - } } diff --git a/io/sys/stat.h b/io/sys/stat.h index 24e7fe3..29e9e625 100644 --- a/io/sys/stat.h +++ b/io/sys/stat.h @@ -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 diff --git a/linuxthreads/Versions b/linuxthreads/Versions index 423b5ec..b9de161 100644 --- a/linuxthreads/Versions +++ b/linuxthreads/Versions @@ -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; } } diff --git a/linuxthreads_db/thread_dbP.h b/linuxthreads_db/thread_dbP.h index 8e0a78a..63b408a 100644 --- a/linuxthreads_db/thread_dbP.h +++ b/linuxthreads_db/thread_dbP.h @@ -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) diff --git a/localedata/ChangeLog b/localedata/ChangeLog index af25a9b..000f9d3 100644 --- a/localedata/ChangeLog +++ b/localedata/ChangeLog @@ -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 diff --git a/localedata/locales/nn_NO b/localedata/locales/nn_NO index e166458..ec48206 100644 --- a/localedata/locales/nn_NO +++ b/localedata/locales/nn_NO @@ -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 diff --git a/localedata/locales/sid_ET b/localedata/locales/sid_ET index 81d4f06..03727ab 100644 --- a/localedata/locales/sid_ET +++ b/localedata/locales/sid_ET @@ -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 index 0000000..33953cd --- /dev/null +++ b/localedata/locales/wal_ET @@ -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 +% diff --git a/math/test-misc.c b/math/test-misc.c index 17ef1d3..fa958d4 100644 --- a/math/test-misc.c +++ b/math/test-misc.c @@ -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 diff --git a/misc/Versions b/misc/Versions index 95310b7..13b38ee 100644 --- a/misc/Versions +++ b/misc/Versions @@ -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; - } } diff --git a/misc/qefgcvt.c b/misc/qefgcvt.c index 6944e8d..d11ac58 100644 --- a/misc/qefgcvt.c +++ b/misc/qefgcvt.c @@ -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 diff --git a/misc/qefgcvt_r.c b/misc/qefgcvt_r.c index 8a52cb6..66cc049 100644 --- a/misc/qefgcvt_r.c +++ b/misc/qefgcvt_r.c @@ -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 diff --git a/nptl/Versions b/nptl/Versions index b96a1d8..7e8ac9e 100644 --- a/nptl/Versions +++ b/nptl/Versions @@ -231,7 +231,7 @@ libpthread { } GLIBC_PRIVATE { - __pthread_initialize_minimal; __pthread_cleanup_upto; + __pthread_initialize_minimal; __pthread_clock_gettime; __pthread_clock_settime; __pthread_unwind; } diff --git a/nptl_db/thread_dbP.h b/nptl_db/thread_dbP.h index 5504dd0..c53d1ed 100644 --- a/nptl_db/thread_dbP.h +++ b/nptl_db/thread_dbP.h @@ -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) diff --git a/posix/Versions b/posix/Versions index 4e6f200..f529ee9 100644 --- a/posix/Versions +++ b/posix/Versions @@ -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; } } diff --git a/resolv/Versions b/resolv/Versions index b18c7d7..1a24d30 100644 --- a/resolv/Versions +++ b/resolv/Versions @@ -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; } } diff --git a/socket/Versions b/socket/Versions index b469e19..d282eff 100644 --- a/socket/Versions +++ b/socket/Versions @@ -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; - } } diff --git a/stdio-common/Versions b/stdio-common/Versions index 1afb734..1dbce1a 100644 --- a/stdio-common/Versions +++ b/stdio-common/Versions @@ -48,5 +48,5 @@ libc { } GLIBC_PRIVATE { # global variables - _itoa_lower_digits; _itoa_upper_digits; + _itoa_lower_digits; } diff --git a/stdlib/Versions b/stdlib/Versions index fc1e5a1..9cc3b6d 100644 --- a/stdlib/Versions +++ b/stdlib/Versions @@ -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; } } diff --git a/stdlib/fpioconst.c b/stdlib/fpioconst.c index 931386d..59a5e43 100644 --- a/stdlib/fpioconst.c +++ b/stdlib/fpioconst.c @@ -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 }, diff --git a/stdlib/fpioconst.h b/stdlib/fpioconst.h index c7f87ba..84685bc 100644 --- a/stdlib/fpioconst.h +++ b/stdlib/fpioconst.h @@ -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)) */ diff --git a/sysdeps/generic/bits/fcntl.h b/sysdeps/generic/bits/fcntl.h index f23667e..b397f81 100644 --- a/sysdeps/generic/bits/fcntl.h +++ b/sysdeps/generic/bits/fcntl.h @@ -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 diff --git a/sysdeps/mach/hurd/bits/fcntl.h b/sysdeps/mach/hurd/bits/fcntl.h index 09da177..e709cc6 100644 --- a/sysdeps/mach/hurd/bits/fcntl.h +++ b/sysdeps/mach/hurd/bits/fcntl.h @@ -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 @@ -153,7 +153,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 diff --git a/sysdeps/powerpc/powerpc64/fpu/s_ceil.S b/sysdeps/powerpc/powerpc64/fpu/s_ceil.S new file mode 100644 index 0000000..127f302 --- /dev/null +++ b/sysdeps/powerpc/powerpc64/fpu/s_ceil.S @@ -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 index 0000000..34f6142 --- /dev/null +++ b/sysdeps/powerpc/powerpc64/fpu/s_ceilf.S @@ -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 index 0000000..57fd63c --- /dev/null +++ b/sysdeps/powerpc/powerpc64/fpu/s_floor.S @@ -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 index 0000000..cde92b9 --- /dev/null +++ b/sysdeps/powerpc/powerpc64/fpu/s_floorf.S @@ -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) + diff --git a/sysdeps/powerpc/powerpc64/fpu/s_llrint.c b/sysdeps/powerpc/powerpc64/fpu/s_llrint.S index f6ea3f4..bc976a7 100644 --- a/sysdeps/powerpc/powerpc64/fpu/s_llrint.c +++ b/sysdeps/powerpc/powerpc64/fpu/s_llrint.S @@ -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 @@ -17,27 +17,23 @@ 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) diff --git a/sysdeps/powerpc/powerpc64/fpu/s_llrintf.c b/sysdeps/powerpc/powerpc64/fpu/s_llrintf.S index 7d8e22a..aef84de 100644 --- a/sysdeps/powerpc/powerpc64/fpu/s_llrintf.c +++ b/sysdeps/powerpc/powerpc64/fpu/s_llrintf.S @@ -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 @@ -17,20 +17,20 @@ 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 index 0000000..320ef0f --- /dev/null +++ b/sysdeps/powerpc/powerpc64/fpu/s_llround.S @@ -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 index 0000000..ff92305 --- /dev/null +++ b/sysdeps/powerpc/powerpc64/fpu/s_llroundf.S @@ -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 index 0000000..883bba1 --- /dev/null +++ b/sysdeps/powerpc/powerpc64/fpu/s_lround.S @@ -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 index 0000000..15506f6 --- /dev/null +++ b/sysdeps/powerpc/powerpc64/fpu/s_lroundf.S @@ -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 index 0000000..f7db7ff --- /dev/null +++ b/sysdeps/powerpc/powerpc64/fpu/s_rint.S @@ -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 index 0000000..de6d654 --- /dev/null +++ b/sysdeps/powerpc/powerpc64/fpu/s_rintf.S @@ -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 index 0000000..1c2e529 --- /dev/null +++ b/sysdeps/powerpc/powerpc64/fpu/s_round.S @@ -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 index 0000000..fd8eb0a --- /dev/null +++ b/sysdeps/powerpc/powerpc64/fpu/s_roundf.S @@ -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 index 0000000..dc345ab --- /dev/null +++ b/sysdeps/powerpc/powerpc64/fpu/s_trunc.S @@ -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 index 0000000..727647f --- /dev/null +++ b/sysdeps/powerpc/powerpc64/fpu/s_truncf.S @@ -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) + diff --git a/sysdeps/unix/bsd/bits/fcntl.h b/sysdeps/unix/bsd/bits/fcntl.h index 4081b4d..c992f93 100644 --- a/sysdeps/unix/bsd/bits/fcntl.h +++ b/sysdeps/unix/bsd/bits/fcntl.h @@ -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 diff --git a/sysdeps/unix/bsd/bsd4.4/bits/fcntl.h b/sysdeps/unix/bsd/bsd4.4/bits/fcntl.h index a5bfd7c..47a67e3 100644 --- a/sysdeps/unix/bsd/bsd4.4/bits/fcntl.h +++ b/sysdeps/unix/bsd/bsd4.4/bits/fcntl.h @@ -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 diff --git a/sysdeps/unix/bsd/sun/sunos4/bits/fcntl.h b/sysdeps/unix/bsd/sun/sunos4/bits/fcntl.h index e09fa33..a30b352 100644 --- a/sysdeps/unix/bsd/sun/sunos4/bits/fcntl.h +++ b/sysdeps/unix/bsd/sun/sunos4/bits/fcntl.h @@ -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 diff --git a/sysdeps/unix/bsd/ultrix4/bits/fcntl.h b/sysdeps/unix/bsd/ultrix4/bits/fcntl.h index 9dbd7ba..6392bc3 100644 --- a/sysdeps/unix/bsd/ultrix4/bits/fcntl.h +++ b/sysdeps/unix/bsd/ultrix4/bits/fcntl.h @@ -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 diff --git a/sysdeps/unix/common/bits/fcntl.h b/sysdeps/unix/common/bits/fcntl.h index 2918cea..5bf6791 100644 --- a/sysdeps/unix/common/bits/fcntl.h +++ b/sysdeps/unix/common/bits/fcntl.h @@ -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 diff --git a/sysdeps/unix/sysv/aix/bits/fcntl.h b/sysdeps/unix/sysv/aix/bits/fcntl.h index 28a8fae..c65b8be 100644 --- a/sysdeps/unix/sysv/aix/bits/fcntl.h +++ b/sysdeps/unix/sysv/aix/bits/fcntl.h @@ -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 diff --git a/sysdeps/unix/sysv/irix4/bits/fcntl.h b/sysdeps/unix/sysv/irix4/bits/fcntl.h index dcba25f..5eb7c76 100644 --- a/sysdeps/unix/sysv/irix4/bits/fcntl.h +++ b/sysdeps/unix/sysv/irix4/bits/fcntl.h @@ -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 diff --git a/sysdeps/unix/sysv/linux/Versions b/sysdeps/unix/sysv/linux/Versions index 0fa782a..980724e 100644 --- a/sysdeps/unix/sysv/linux/Versions +++ b/sysdeps/unix/sysv/linux/Versions @@ -116,9 +116,6 @@ libc { sched_getaffinity; sched_setaffinity; } GLIBC_PRIVATE { - # needed by libpthread. - __libc_sigaction; - # functions used in other libraries __syscall_rt_sigqueueinfo; } diff --git a/sysdeps/unix/sysv/linux/alpha/bits/fcntl.h b/sysdeps/unix/sysv/linux/alpha/bits/fcntl.h index 7d1197a..828cc75 100644 --- a/sysdeps/unix/sysv/linux/alpha/bits/fcntl.h +++ b/sysdeps/unix/sysv/linux/alpha/bits/fcntl.h @@ -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 diff --git a/sysdeps/unix/sysv/linux/arm/bits/fcntl.h b/sysdeps/unix/sysv/linux/arm/bits/fcntl.h index ce17d68..d050f7f 100644 --- a/sysdeps/unix/sysv/linux/arm/bits/fcntl.h +++ b/sysdeps/unix/sysv/linux/arm/bits/fcntl.h @@ -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 diff --git a/sysdeps/unix/sysv/linux/cris/bits/fcntl.h b/sysdeps/unix/sysv/linux/cris/bits/fcntl.h index 69ce6a5..6abdd1d 100644 --- a/sysdeps/unix/sysv/linux/cris/bits/fcntl.h +++ b/sysdeps/unix/sysv/linux/cris/bits/fcntl.h @@ -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 diff --git a/sysdeps/unix/sysv/linux/hppa/bits/fcntl.h b/sysdeps/unix/sysv/linux/hppa/bits/fcntl.h index 6f13871..6cc96cf 100644 --- a/sysdeps/unix/sysv/linux/hppa/bits/fcntl.h +++ b/sysdeps/unix/sysv/linux/hppa/bits/fcntl.h @@ -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 diff --git a/sysdeps/unix/sysv/linux/i386/bits/fcntl.h b/sysdeps/unix/sysv/linux/i386/bits/fcntl.h index bd27ae5..8b753c5 100644 --- a/sysdeps/unix/sysv/linux/i386/bits/fcntl.h +++ b/sysdeps/unix/sysv/linux/i386/bits/fcntl.h @@ -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 diff --git a/sysdeps/unix/sysv/linux/ia64/bits/fcntl.h b/sysdeps/unix/sysv/linux/ia64/bits/fcntl.h index e141e98..97971d3 100644 --- a/sysdeps/unix/sysv/linux/ia64/bits/fcntl.h +++ b/sysdeps/unix/sysv/linux/ia64/bits/fcntl.h @@ -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 diff --git a/sysdeps/unix/sysv/linux/m68k/bits/fcntl.h b/sysdeps/unix/sysv/linux/m68k/bits/fcntl.h index af7c0ea..2e85d1e 100644 --- a/sysdeps/unix/sysv/linux/m68k/bits/fcntl.h +++ b/sysdeps/unix/sysv/linux/m68k/bits/fcntl.h @@ -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 diff --git a/sysdeps/unix/sysv/linux/mips/bits/fcntl.h b/sysdeps/unix/sysv/linux/mips/bits/fcntl.h index 97e1867..720e0a9 100644 --- a/sysdeps/unix/sysv/linux/mips/bits/fcntl.h +++ b/sysdeps/unix/sysv/linux/mips/bits/fcntl.h @@ -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 diff --git a/sysdeps/unix/sysv/linux/powerpc/bits/fcntl.h b/sysdeps/unix/sysv/linux/powerpc/bits/fcntl.h index dc9c05d..e1fbb9c 100644 --- a/sysdeps/unix/sysv/linux/powerpc/bits/fcntl.h +++ b/sysdeps/unix/sysv/linux/powerpc/bits/fcntl.h @@ -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 diff --git a/sysdeps/unix/sysv/linux/s390/bits/fcntl.h b/sysdeps/unix/sysv/linux/s390/bits/fcntl.h index fe04f96..1cdc487 100644 --- a/sysdeps/unix/sysv/linux/s390/bits/fcntl.h +++ b/sysdeps/unix/sysv/linux/s390/bits/fcntl.h @@ -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 diff --git a/sysdeps/unix/sysv/linux/sh/bits/fcntl.h b/sysdeps/unix/sysv/linux/sh/bits/fcntl.h index d3a8d82..db1a314 100644 --- a/sysdeps/unix/sysv/linux/sh/bits/fcntl.h +++ b/sysdeps/unix/sysv/linux/sh/bits/fcntl.h @@ -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 diff --git a/sysdeps/unix/sysv/linux/sparc/bits/fcntl.h b/sysdeps/unix/sysv/linux/sparc/bits/fcntl.h index 27fc3f8..967bef1 100644 --- a/sysdeps/unix/sysv/linux/sparc/bits/fcntl.h +++ b/sysdeps/unix/sysv/linux/sparc/bits/fcntl.h @@ -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 diff --git a/sysdeps/unix/sysv/linux/x86_64/Versions b/sysdeps/unix/sysv/linux/x86_64/Versions index 3735871..fd1b3cc 100644 --- a/sysdeps/unix/sysv/linux/x86_64/Versions +++ b/sysdeps/unix/sysv/linux/x86_64/Versions @@ -6,7 +6,4 @@ libc { modify_ldt; } - GLIBC_PRIVATE { - __modify_ldt; - } } diff --git a/sysdeps/unix/sysv/linux/x86_64/bits/fcntl.h b/sysdeps/unix/sysv/linux/x86_64/bits/fcntl.h index f41af70..5e11760 100644 --- a/sysdeps/unix/sysv/linux/x86_64/bits/fcntl.h +++ b/sysdeps/unix/sysv/linux/x86_64/bits/fcntl.h @@ -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 diff --git a/termios/Versions b/termios/Versions index ddd2705..711ed03 100644 --- a/termios/Versions +++ b/termios/Versions @@ -11,9 +11,4 @@ libc { # t* tcgetsid; } - GLIBC_PRIVATE { - # functions which have an additional interface since they are - # are cancelable. - __libc_tcdrain; - } } |