[glibc] Fix after update from upstream glibc-2.15
Jeffrey Law
law at fedoraproject.org
Mon Jan 2 04:03:06 UTC 2012
commit b37e2e87ad71b4cbd01903766444b9f9219608c7
Author: Jeff Law <law at redhat.com>
Date: Sun Jan 1 21:02:29 2012 -0700
Fix after update from upstream glibc-2.15
glibc-fedora.patch |13219 ++++++++++++++++----------------------------------
glibc-rh769421.patch | 34 +-
2 files changed, 4239 insertions(+), 9014 deletions(-)
---
diff --git a/glibc-fedora.patch b/glibc-fedora.patch
index bfef6cf..25fa067 100644
--- a/glibc-fedora.patch
+++ b/glibc-fedora.patch
@@ -1,6 +1,6 @@
-diff -Nup a/ChangeLog b/ChangeLog
+diff -Nrup a/ChangeLog b/ChangeLog
--- a/ChangeLog 2012-01-01 05:16:32.000000000 -0700
-+++ b/ChangeLog 2012-01-01 13:08:53.281715870 -0700
++++ b/ChangeLog 2012-01-01 20:41:26.621439845 -0700
@@ -2542,6 +2542,11 @@
* sysdeps/mach/hurd/sys/param.h (DEV_BSIZE): New macro.
@@ -208,9 +208,9 @@ diff -Nup a/ChangeLog b/ChangeLog
2010-05-28 Luis Machado <luisgpm at br.ibm.com>
* sysdeps/powerpc/powerpc32/power7/memcpy.S: Exchange srdi for srwi.
-diff -Nup a/ChangeLog.15 b/ChangeLog.15
+diff -Nrup a/ChangeLog.15 b/ChangeLog.15
--- a/ChangeLog.15 2012-01-01 05:16:32.000000000 -0700
-+++ b/ChangeLog.15 2012-01-01 13:08:53.283715875 -0700
++++ b/ChangeLog.15 2012-01-01 20:41:26.623439845 -0700
@@ -477,6 +477,14 @@
2004-11-26 Jakub Jelinek <jakub at redhat.com>
@@ -276,9 +276,9 @@ diff -Nup a/ChangeLog.15 b/ChangeLog.15
2004-08-30 Roland McGrath <roland at frob.com>
* scripts/extract-abilist.awk: If `lastversion' variable defined, omit
-diff -Nup a/ChangeLog.16 b/ChangeLog.16
+diff -Nrup a/ChangeLog.16 b/ChangeLog.16
--- a/ChangeLog.16 2012-01-01 05:16:32.000000000 -0700
-+++ b/ChangeLog.16 2012-01-01 13:08:53.286715876 -0700
++++ b/ChangeLog.16 2012-01-01 20:41:26.626439845 -0700
@@ -2042,6 +2042,9 @@
(__MATHDECL_2): Use __REDIRECT_NTH instead of __REDIRECT
followed by __THROW.
@@ -301,9 +301,9 @@ diff -Nup a/ChangeLog.16 b/ChangeLog.16
2006-01-19 Thomas Schwinge <tschwinge at gnu.org>
* libio/genops.c: Include <stdbool.h>.
-diff -Nup a/ChangeLog.17 b/ChangeLog.17
+diff -Nrup a/ChangeLog.17 b/ChangeLog.17
--- a/ChangeLog.17 2012-01-01 05:16:32.000000000 -0700
-+++ b/ChangeLog.17 2012-01-01 13:08:53.290715873 -0700
++++ b/ChangeLog.17 2012-01-01 20:41:26.629439844 -0700
@@ -256,6 +256,12 @@
* Makerules (libc-abis): Fix search for libc-abis in add-ons.
@@ -368,9061 +368,4294 @@ diff -Nup a/ChangeLog.17 b/ChangeLog.17
2006-12-09 Ulrich Drepper <drepper at redhat.com>
[BZ #3632]
-diff -Nup a/ChangeLog.orig b/ChangeLog.orig
---- a/ChangeLog.orig 1969-12-31 17:00:00.000000000 -0700
-+++ b/ChangeLog.orig 2012-01-01 05:16:32.000000000 -0700
-@@ -0,0 +1,6768 @@
-+2012-01-01 Ulrich Drepper <drepper at gmail.com>
-+
-+ * posix/getconf.c: Update copyright year.
-+ * nss/getent.c: Likewise.
-+ * nss/makedb.c: Likewise.
-+ * iconv/iconvconfig.c: Likewise.
-+ * iconv/iconv_prog.c: Likewise.
-+ * elf/ldconfig.c: Likewise.
-+ * elf/pldd.c: Likewise.
-+ * elf/sotruss.ksh: Likewise.
-+ * catgets/gencat.c: Likewise.
-+ * csu/version.c: Likewise.
-+ * elf/ldd.bash.in: Likewise.
-+ * elf/sprof.c (print_version): Likewise.
-+ * locale/programs/locale.c: Likewise.
-+ * locale/programs/localedef.c: Likewise.
-+ * login/programs/pt_chown.c: Likewise.
-+ * nscd/nscd.c (print_version): Likewise.
-+ * debug/xtrace.sh: Likewise.
-+ * malloc/memusage.sh: Likewise.
-+ * malloc/mtrace.pl: Likewise.
-+ * debug/catchsegv.sh: Likewise.
-+
-+2011-12-30 Jakub Jelinek <jakub at redhat.com>
-+
-+ * posix/regex_internal.c (re_string_fetch_byte_case): Remove
-+ pure attribute.
-+
-+2011-12-23 Ulrich Drepper <drepper at gmail.com>
-+
-+ * version.h (RELEASE): Bump for 2.15 release.
-+ * include/features.h (__GLIBC_MINOR__): Bump to 15.
-+
-+ * sysdeps/x86_64/dl-machine.h: Fix typos in comments.
-+ Patch by Marek Polacek <mpolacek at redhat.com>.
-+
-+ * bits/byteswap.h: Protect long long constants with __extension__.
-+ * sysdeps/i386/bits/byteswap.h: Likewise.
-+ * sysdeps/ia64/bits/byteswap.h: Likewise.
-+ * sysdeps/s390/bits/byteswap.h: Likewise.
-+ * sysdeps/x86_64/bits/byteswap.h: Likewise.
-+
-+2011-12-23 Liubov Dmitrieva <liubov.dmitrieva at gmail.com>
-+
-+ [BZ #13540]
-+ * sysdeps/x86_64/multiarch/strcpy-ssse3.S: Fix overrun in
-+ destination buffer.
-+ * sysdeps/x86_64/multiarch/wcscpy-ssse3.S: Likewise.
-+
-+2011-12-23 Marek Polacek <polacek at redhat.com>
-+
-+ * elf/dl-addr.c (determine_info): Add inline keyword.
-+ * elf/tst-auditmod4b.c (check_avx): Likewise.
-+ * elf/tst-auditmod6b.c (check_avx): Likewise.
-+ * elf/tst-auditmod6c.c (check_avx): Likewise.
-+ * elf/tst-auditmod7b.c (check_avx): Likewise.
-+
-+2011-12-23 Ulrich Drepper <drepper at gmail.com>
-+
-+ * sysdeps/i386/fpu/bits/fenv.h (feraiseexcept): Also enable for
-+ !__SSE_MATH__.
-+
-+2011-12-23 Liubov Dmitrieva <liubov.dmitrieva at gmail.com>
-+
-+ [BZ #13540]
-+ * sysdeps/i386/i686/multiarch/wcscpy-ssse3.S: Fix wrong copying
-+ processing for last bytes.
-+
-+2011-08-06 Bruno Haible <bruno at clisp.org>
-+
-+ [BZ #13061]
-+ * iconvdata/cp1258.c (comp_table_data): Combine U+00A8 U+0301 to
-+ U+0385, not to U+1FEE.
-+
-+ [BZ #13062]
-+ * iconvdata/tcvn5712-1.c (comp_table_data): Remove useless and wrong
-+ entry for U+00A5 U+0301.
-+
-+2011-12-22 Ulrich Drepper <drepper at gmail.com>
-+
-+ [BZ #13166]
-+ * inet/getnameinfo.c (getnameinfo): Return EAI_OVERFLOW if the
-+ buffer for the output is too small.
-+
-+ * sysdeps/i386/fpu/bits/fenv.h [__SSE_MATH__]: Add feraiseexcept
-+ optimization.
-+
-+ [BZ #13185]
-+ * sysdeps/i386/fpu/fgetexcptflg.c (__fegetexceptflag): Also return
-+ SSE flags if possible.
-+
-+2011-12-22 Liubov Dmitrieva <liubov.dmitrieva at gmail.com>
-+
-+ [BZ #13540]
-+ * sysdeps/i386/i686/multiarch/strcpy-ssse3.S: Fix wrong copying
-+ processing for last bytes.
-+
-+2011-12-22 Joseph Myers <joseph at codesourcery.com>
-+
-+ * sysdeps/unix/sysv/linux/Makefile (syscall-list-variants)
-+ (syscall-list-default-options, syscall-list-default-condition)
-+ (syscall-list-includes): Define.
-+ ($(objpfx)syscall-%.h $(objpfx)syscall-%.d): Support arbitrary
-+ list of ABIs and options and #if conditions for each ABI. Do not
-+ handle common syscalls between ABIs specially.
-+ * sysdeps/unix/sysv/linux/powerpc/Makefile (64bit-predefine):
-+ Remove.
-+ (syscall-list-variants, syscall-list-32bit-options)
-+ (syscall-list-32bit-condition, syscall-list-64bit-options)
-+ (syscall-list-64bit-condition): Define.
-+ * sysdeps/unix/sysv/linux/s390/Makefile (64bit-predefine): Remove.
-+ (syscall-list-variants, syscall-list-32bit-options)
-+ (syscall-list-32bit-condition, syscall-list-64bit-options)
-+ (syscall-list-64bit-condition): Define.
-+ * sysdeps/unix/sysv/linux/sparc/Makefile (64bit-predefine):
-+ Remove.
-+ (syscall-list-variants, syscall-list-32bit-options)
-+ (syscall-list-32bit-condition, syscall-list-64bit-options)
-+ (syscall-list-64bit-condition): Define.
-+ * sysdeps/unix/sysv/linux/x86_64/Makefile (64bit-predefine):
-+ Remove.
-+ (syscall-list-variants, syscall-list-32bit-options)
-+ (syscall-list-32bit-condition, syscall-list-64bit-options)
-+ (syscall-list-64bit-condition): Define.
-+
-+2011-12-22 Ulrich Drepper <drepper at gmail.com>
-+
-+ * locale/iso-639.def: Add brx entry.
-+
-+ [BZ #13328]
-+ * malloc/mtrace.c (tr_freehook): Avoid unnecessary unlock/lock.
-+ Proposed by Mariusz_Cukr <marcukr at op.pl>.
-+
-+ * sysdeps/x86_64/fpu/bits/fenv.h: Use __REDIRECT_NTH for
-+ __feraiseexcept_renamed.
-+
-+2011-12-21 Ulrich Drepper <drepper at gmail.com>
-+
-+ [BZ #13538]
-+ * sysdeps/unix/sysv/linux/sys/epoll.h: Initialize EPOLLONESHOT and
-+ EPOLLET with unsigned values.
-+ * sysdeps/unix/sysv/linux/x86_64/sys/epoll.h: Likewise.
-+ * sysdeps/unix/sysv/linux/sparc/sys/epoll.h: Likewise.
-+
-+ * math/s_cacosh.c: Use Kahan's formula if the subtraction could lead
-+ to large cancellation.
-+ * math/s_cacoshf.c: Likewise.
-+ * math/s_cacoshl.c: Likewise.
-+
-+2011-11-18 Richard B. Kreckel <kreckel at ginac.de>
-+
-+ [BZ #13305]
-+ [BZ #12786]
-+ * math/s_cacosh.c: Fix rare miscomputation in cacosh().
-+ * math/s_cacoshf.c: Likewise.
-+ * math/s_cacoshl.c: Likewise.
-+
-+2011-12-21 Ulrich Drepper <drepper at gmail.com>
-+
-+ [BZ #13439]
-+ * iconv/gconv.h: Define __GCONV_SWAP.
-+ * iconvdata/unicode.c: The swap bit must be stored in __flags.
-+ * iconvdata/utf-16.c: Likewise.
-+ * iconvdata/utf-32.c: Likewise.
-+
-+2011-12-21 Andreas Schwab <schwab at linux-m68k.org>
-+
-+ [BZ #13524]
-+ * stdlib/strtod_l.c (____STRTOF_INTERNAL): Clear lowest limb of
-+ numerator after shifting it by one limb.
-+
-+2011-12-19 Rafael Ávila de Espíndola <rafael.espindola at gmail.com>
-+
-+ * sysdeps/x86_64/fpu/bits/fenv.h (feraiseexcept): Define it only
-+ under [__USE_EXTERN_INLINES].
-+
-+2011-12-17 Ulrich Drepper <drepper at gmail.com>
-+
-+ [BZ #13446]
-+ * stdio-common/vfprintf.c (vfprintf): Fix extension of specs array.
-+
-+2011-11-22 Adhemerval Zanella <azanella at linux.vnet.ibm.com>
-+
-+ * sysdeps/powerpc/Makefile: Added locale-defines.sym generation.
-+ * sysdeps/powerpc/locale-defines.sym: Locale definitions for strcasecmp
-+ optimized code.
-+ * sysdeps/powerpc/powerpc32/power7/Makefile: New file.
-+ * sysdeps/powerpc/powerpc32/power7/strcasecmp.S: New file.
-+ * sysdeps/powerpc/powerpc32/power7/strcasecmp_l.S: New file.
-+ * sysdeps/powerpc/powerpc64/power7/Makefile: Added unroll-loop option
-+ for strncasecmp/strncasecmp_l compilation.
-+ * sysdeps/powerpc/powerpc64/power7/strcasecmp.S: New file.
-+ * sysdeps/powerpc/powerpc64/power7/strcasecmp_l.S: New file.
-+
-+2011-12-08 Marek Polacek <mpolacek at redhat.com>
-+
-+ [BZ #13484]
-+ * math/bits/math-finite.h: Use __REDIRECT_NTH and __NTH instead
-+ of __asm__.
-+
-+2011-12-17 Ulrich Drepper <drepper at gmail.com>
-+
-+ [BZ #13506]
-+ * time/tzfile.c (__tzfile_read): Check values from file header.
-+
-+2011-11-21 Will Schmidt <will_schmidt at vnet.ibm.com>
-+
-+ * powerpc/powerpc32/sysdep.h: Define SETUP_GOT_ACCESS() macro.
-+ * powerpc/powerpc32/a2/memcpy.S: Use SETUP_GOT_ACCESS() macro.
-+ * powerpc/powerpc32/dl-start.S: Likewise.
-+ * powerpc/powerpc32/elf/start.S: Likewise.
-+ * powerpc/powerpc32/fpu/__longjmp-common.S: Likewise.
-+ * powerpc/powerpc32/fpu/s_ceil.S: Likewise.
-+ * powerpc/powerpc32/fpu/s_ceilf.S: Likewise.
-+ * powerpc/powerpc32/fpu/s_floor.S: Likewise.
-+ * powerpc/powerpc32/fpu/s_floorf.S: Likewise.
-+ * powerpc/powerpc32/fpu/s_lround.S: Likewise.
-+ * powerpc/powerpc32/fpu/s_rint.S: Likewise.
-+ * powerpc/powerpc32/fpu/s_rintf.S: Likewise.
-+ * powerpc/powerpc32/fpu/s_round.S: Likewise.
-+ * powerpc/powerpc32/fpu/s_roundf.S: Likewise.
-+ * powerpc/powerpc32/fpu/s_trunc.S: Likewise.
-+ * powerpc/powerpc32/fpu/s_truncf.S: Likewise.
-+ * powerpc/powerpc32/fpu/setjmp-common.S: Likewise.
-+ * powerpc/powerpc32/memset.S: Likewise.
-+ * powerpc/powerpc32/power4/fpu/s_llround.S: Likewise.
-+ * powerpc/powerpc32/power4/fpu/w_sqrt.S: Likewise.
-+ * powerpc/powerpc32/power4/fpu/w_sqrtf.S: Likewise.
-+ * powerpc/powerpc32/power5/fpu/w_sqrt.S: Likewise.
-+ * powerpc/powerpc32/power5/fpu/w_sqrtf.S: Likewise.
-+ * powerpc/powerpc32/power7/fpu/s_finite.S: Likewise.
-+ * powerpc/powerpc32/power7/fpu/s_isinf.S: Likewise.
-+ * powerpc/powerpc32/power7/fpu/s_isnan.S: Likewise.
-+ * unix/sysv/linux/powerpc/powerpc32/____longjmp_chk.S: Likewise.
-+ * unix/sysv/linux/powerpc/powerpc32/brk.S: Likewise.
-+ * unix/sysv/linux/powerpc/powerpc32/getcontext-common.S: Likewise.
-+ * unix/sysv/linux/powerpc/powerpc32/setcontext-common.S: Likewise.
-+ * unix/sysv/linux/powerpc/powerpc32/swapcontext-common.S: Likewise.
-+
-+2011-11-18 Adhemerval Zanella <azanella at linux.vnet.ibm.com>
-+
-+ * math/libm-test.inc: Added more nearbyint tests.
-+ * sysdeps/powerpc/powerpc32/fpu/s_nearbyint.S: New file.
-+ * sysdeps/powerpc/powerpc32/fpu/s_nearbyintf.S: New file.
-+ * sysdeps/powerpc/powerpc64/fpu/s_nearbyint.S: New file.
-+ * sysdeps/powerpc/powerpc64/fpu/s_nearbyintf.S: New file.
-+
-+2011-11-21 Ross Lagerwall <rosslagerwall at gmail.com>
-+
-+ * resolv/res_init.c (__res_vinit): Open /etc/resolv.conf with
-+ FD_CLOEXEC.
-+
-+2011-11-14 Liubov Dmitrieva <liubov.dmitrieva at gmail.com>
-+
-+ * sysdeps/x86_64/multiarch/Makefile [subdir=wcsmbs] (sysdep_routines):
-+ Add wcscpy-ssse3 wcscpy-c.
-+ * sysdeps/x86_64/multiarch/wcscpy-ssse3.S: New file.
-+ * sysdeps/x86_64/multiarch/wcscpy-c.c: New file.
-+ * sysdeps/x86_64/multiarch/wcscpy.S: New file.
-+ * sysdeps/x86_64/wcschr.S: New file.
-+ * sysdeps/x86_64/wcsrchr.S: New file.
-+ * string/test-strcmp.c: Remove checking of wcscmp function for
-+ wrong alignments.
-+ * sysdeps/i386/i686/multiarch/Makefile [subdir=wcsmbs]
-+ (sysdep_routines): Add wcscpy-ssse3 wcscpy-c wcschr-sse2 wcschr-c
-+ wcsrchr-sse2 wcsrchr-c.
-+ * sysdeps/i386/i686/multiarch/wcschr.S: New file.
-+ * sysdeps/i386/i686/multiarch/wcschr-c.c: New file.
-+ * sysdeps/i386/i686/multiarch/wcschr-sse2.S: New file.
-+ * sysdeps/i386/i686/multiarch/wcsrchr.S: New file.
-+ * sysdeps/i386/i686/multiarch/wcsrchr-c.c: New file.
-+ * sysdeps/i386/i686/multiarch/wcsrchr-sse2.S: New file.
-+ * sysdeps/i386/i686/multiarch/wcscpy.S: New file.
-+ * sysdeps/i386/i686/multiarch/wcscpy-c.c: New file.
-+ * sysdeps/i386/i686/multiarch/wcscpy-ssse3.S: New file.
-+ * wcsmbc/wcschr.c (WCSCHR): New macro.
-+
-+2011-11-17 Liubov Dmitrieva <liubov.dmitrieva at gmail.com>
-+
-+ * wcsmbs/Makefile (strop-tests): Add wcsrchr wcscpy.
-+ * wcsmbs/test-wcsrchr.c: New file.
-+ * string/test-strrchr.c: Add wcsrchr support.
-+ (WIDE): New macro.
-+ * wcsmbs/test-wcscpy.c: New file.
-+ * string/test-strcpy.c: Add wcscpy support.
-+ (WIDE): New macro.
-+
-+2011-12-10 Ulrich Drepper <drepper at gmail.com>
-+
-+ * sysdeps/generic/dl-hash.h (_dl_elf_hash): Lift one operation out of
-+ the inner loop.
-+
-+2011-12-06 Andreas Schwab <schwab at linux-m68k.org>
-+
-+ [BZ #13472]
-+ * sysdeps/powerpc/fpu/e_hypot.c (twoM600): Correct value.
-+
-+2011-12-04 Ulrich Drepper <drepper at gmail.com>
-+
-+ * sysdeps/generic/dl-hash.h (_dl_elf_hash): Fix attribute.
-+ Minor optimizations.
-+
-+ * sunrpc/clnt_unix.c (clntunix_control): Fix aliasing issues.
-+ * sunrpc/clnt_tcp.c (clnttcp_control): Likewise.
-+ * sunrpc/clnt_udp.c (clntudp_call): Likewise.
-+
-+2011-12-03 Ulrich Drepper <drepper at gmail.com>
-+
-+ * inet/netinet/in.h: Provide versions of IN6_IS_ADDR_UNSPECIFIED,
-+ IN6_IS_ADDR_LOOPBACK, IN6_IS_ADDR_LINKLOCAL, IN6_IS_ADDR_SITELOCAL,
-+ IN6_IS_ADDR_V4MAPPED, IN6_IS_ADDR_V4COMPAT, and IN6_ARE_ADDR_EQUAL
-+ for gcc to avoid warnings.
-+ * inet/Makefile (tests): Add tst-checks.
-+ * inet/tst-checks.c: New file.
-+
-+ * sysdeps/generic/dl-hash.h (_dl_elf_hash): Add attribute to avoid
-+ warning.
-+
-+ * sysdeps/x86_64/multiarch/wmemcmp-c.c: Provide prototype for
-+ __wmemcmp_sse2.
-+
-+ * sysdeps/x86_64/fpu/s_scalbln.c: Removed.
-+ * sysdeps/x86_64/fpu/s_scalbn.c: Removed.
-+
-+ * malloc/mcheck.h: Fix use of incorrect encoding in comment.
-+
-+2011-12-02 Ulrich Drepper <drepper at gmail.com>
-+
-+ * nis/nis_findserv.c (__nis_findfastest_with_timeout): Avoid aliasing
-+ problem.
-+
-+ * nscd/aicache.c (addhstaiX): Avoid unused variable warning.
-+
-+2011-11-29 Joseph Myers <joseph at codesourcery.com>
-+
-+ * sysdeps/unix/sysv/linux/sh/bits/atomic.h (rNOSP): Define
-+ conditional on GCC version.
-+ (__arch_compare_and_exchange_val_8_acq)
-+ (__arch_compare_and_exchange_val_16_acq)
-+ (__arch_compare_and_exchange_val_32_acq, atomic_exchange_and_add)
-+ (atomic_add, atomic_add_negative, atomic_add_zero, atomic_bit_set)
-+ (atomic_bit_test_set): Use rNOSP instead of "r" constraints.
-+
-+2011-12-02 Joseph Myers <joseph at codesourcery.com>
-+
-+ * sysdeps/sh/backtrace.c: New file.
-+
-+2011-12-02 Andreas Schwab <schwab at redhat.com>
-+
-+ * misc/bits/select2.h (__FD_ELT): Mark as extension. Add
-+ parenthesis.
-+
-+2011-12-01 Andreas Schwab <schwab at redhat.com>
-+
-+ * sysdeps/unix/sysv/linux/futimes.c: Truncate time values when
-+ falling back to utime.
-+
-+2011-11-30 Andreas Schwab <schwab at redhat.com>
-+
-+ * sysdeps/s390/fpu/libm-test-ulps: Relax cpow (2 + 3 i, 4 + 0 i)
-+ expectations for float.
-+
-+2011-11-29 Andreas Schwab <schwab at redhat.com>
-+
-+ * locale/weight.h (findidx): Add parameter len.
-+ * locale/weightwc.h (findidx): Likewise.
-+ * posix/fnmatch_loop.c (FCT): Adjust caller.
-+ * posix/regcomp.c (build_equiv_class): Likewise.
-+ * posix/regex_internal.h (re_string_elem_size_at): Likewise.
-+ * posix/regexec.c (check_node_accept_bytes): Likewise.
-+ * string/strcoll_l.c (STRCOLL): Likewise.
-+ * string/strxfrm_l.c (STRXFRM): Likewise.
-+
-+2011-11-17 Ulrich Drepper <drepper at gmail.com>
-+
-+ * Makefile.in: Remove CVSOPT handling.
-+ * configure.in: Remove use of AC_REVISION.
-+ * iconvdata/Makefile (distribute): No need to filter out CVS.
-+ * scripts/list-sources.sh: Remove CVS, subversion and monotone
-+ handling.
-+
-+2011-11-16 Andreas Schwab <schwab at redhat.com>
-+
-+ * sysdeps/i386/i686/multiarch/strcmp-ssse3.S
-+ [USE_AS_STRCASECMP_L]: Fix argument offsets for non-PIC.
-+ [USE_AS_STRNCASECMP_L]: Likewise.
-+ (__strcasecmp_ssse3, __strncasecmp_ssse3): Handle
-+ NO_TLS_DIRECT_SEG_REFS.
-+ * sysdeps/i386/i686/multiarch/strcmp-sse4.S [USE_AS_STRCASECMP_L]:
-+ Fix argument offsets for non-PIC.
-+ [USE_AS_STRNCASECMP_L]: Likewise.
-+ (__strcasecmp_sse4_2, __strncasecmp_sse4_2): Handle
-+ NO_TLS_DIRECT_SEG_REFS.
-+
-+2011-11-15 Ulrich Drepper <drepper at gmail.com>
-+
-+ * locale/loadarchive.c (_nl_load_locale_from_archive): Open files with
-+ O_CLOEXEC.
-+ * locale/loadlocale.c (_nl_load_locale): Likewise.
-+
-+2011-11-15 Andreas Schwab <schwab at redhat.com>
-+
-+ * sysdeps/unix/sysv/linux/clock_gettime.c (SYSDEP_GETTIME_CPU)
-+ [__ASSUME_POSIX_CPU_TIMERS > 0]: Assign to retval and break.
-+ * sysdeps/unix/sysv/linux/x86_64/clock_gettime.c
-+ (SYSCALL_GETTIME): Set errno on error.
-+
-+ * sysdeps/unix/sysv/linux/check_pf.c (make_request): Properly
-+ count references to noai6ai_cached.
-+
-+2011-11-15 Ulrich Drepper <drepper at gmail.com>
-+
-+ * time/getdate.c (__getdate_r): Set FD_CLOEXEC for given file.
-+
-+ * sysdeps/unix/sysv/linux/readonly-area.c (__readonly_area): Set
-+ FD_CLOEXEC for /proc/self/maps.
-+
-+ * sysdeps/unix/sysv/linux/getsysstats.c (phys_pages_info): Set
-+ FD_CLOEXEC for /proc/meminfo.
-+
-+ * sysdeps/posix/getaddrinfo.c (gaiconf_init): Set FD_CLOEXEC for
-+ gai.conf.
-+
-+ * resolv/res_query.c (res_hostalias): Don't allow cancellation and set
-+ FD_CLOEXEC for given file.
-+
-+ * resolv/res_hconf.c (do_init): Set FD_CLOEXEC for host.conf.
-+
-+ * resolv/gethnamaddr.c (_sethtent): Don't allow cancellation and set
-+ FD_CLOEXEC for /etc/hosts.
-+ (_gethtent): Likewise.
-+
-+ * nss/nsswitch.c (nss_parse_file): Set FD_CLOEXEC.
-+
-+ * nss/nss_files/files-netgrp.c (_nss_files_setnetgrent): Don't allow
-+ cancellation and set FD_CLOEXEC for /etc/netgroup.
-+
-+ * nss/nss_files/files-key.c (search): Don't allow cancellation when
-+ reading /etc/publickey.
-+
-+ * nss/nss_files/files-initgroups.c (_nss_files_initgroups_dyn): Don't
-+ allow cancellation when reading /etc/group.
-+
-+ * nss/nss_files/files-alias.c (internal_setent): Don't allow
-+ cancellation.
-+ (get_next_alias): Likewise for included file. Also set FD_CLOEXEC.
-+
-+ * nss/nss_files/files-XXX.c (internal_setent): Don't allow cancellation
-+ when using data file.
-+
-+ * nis/nss-default.c (init): Set FD_CLOEXEC for /etc/default/nss.
-+
-+ * nis/nis_file.c (read_nis_obj): Set FD_CLOEXEC.
-+ (write_nis_obj): Use "c" and "e" in fopen.
-+
-+ * misc/mntent_r.c (__setmntent): Also append e to fopen format.
-+
-+ * misc/getusershell.c (initshells): Set FD_CLOEXEC for /etc/shells.
-+
-+ * misc/getttyent.c (setttyent): Set FD_CLOEXEC.
-+
-+ * misc/getpass.c (getpass): Set FD_CLOEXEC for /dev/tty.
-+
-+ * intl/localealias.c (read_alias_file): Set FD_CLOEXEC for
-+ locale.alias.
-+
-+ * inet/ruserpass.c (ruserpass): Set FD_CLOEXEC for .netrc.
-+
-+ * inet/rcmd.c (iruserfopen): Set FD_CLOEXEC for hosts.equiv.
-+
-+ * iconv/gconv_conf.c (read_conf_file): Set FD_CLOEXEC for config file.
-+
-+ * hesiod/hesiod.c (parse_config_file): Prevent cancellation in config
-+ file parsing and set FD_CLOEXEC.
-+
-+2011-11-14 Ulrich Drepper <drepper at gmail.com>
-+
-+ * time/tzfile.c (__tzfile_read): Use "e" in fopen call.
-+
-+2011-11-14 Andreas Schwab <schwab at redhat.com>
-+
-+ * malloc/arena.c (arena_get2): Don't call reused_arena when
-+ _int_new_arena failed.
-+
-+2011-11-14 Ulrich Drepper <drepper at gmail.com>
-+
-+ * sysdeps/i386/i686/multiarch/Makefile [subdir=string]
-+ (sysdep_routines): Add strcasecmp_l-sse4 and strncase_l-sse4.
-+ * sysdeps/i386/i686/multiarch/strcasecmp.S: Re-enable SSE4.2 code.
-+ * sysdeps/i386/i686/multiarch/strcmp.S: Likewise.
-+ * sysdeps/i386/i686/multiarch/strncase.S: Likewise.
-+ * sysdeps/i386/i686/multiarch/strcmp-sse4.S: Change to allow reuse
-+ to compile strcasecmp and strncasecmp.
-+ * sysdeps/i386/i686/multiarch/strcasecmp_l-sse4.S: New file.
-+ * sysdeps/i386/i686/multiarch/strncase_l-sse4.S: New file.
-+
-+ * sysdeps/i386/i686/multiarch/strcmp-ssse3.S: Use L macro consistently.
-+
-+2011-11-13 Ulrich Drepper <drepper at gmail.com>
-+
-+ * sysdeps/i386/i686/multiarch/Makefile [subdir=string]: Add
-+ locale-defines.sym to gen-as-const-headers.
-+ (sysdep_routines): Add strcasecmp_l-c, strcasecmp-c,
-+ strcasecmp_l-ssse3, strncase_l-c, strncase-c, and strncase_l-ssse3.
-+ * sysdeps/i386/i686/multiarch/strcmp-ssse3.S: Change to allow reuse
-+ to compile strcasecmp and strncasecmp.
-+ * sysdeps/i386/i686/multiarch/strcmp.S: Allow to use for
-+ strcasecmp_l and strncasecmp_l.
-+ * sysdeps/i386/i686/multiarch/locale-defines.sym: New file.
-+ * sysdeps/i386/i686/multiarch/strcasecmp-c.c: New file.
-+ * sysdeps/i386/i686/multiarch/strcasecmp.S: New file.
-+ * sysdeps/i386/i686/multiarch/strcasecmp_l-c.c: New file.
-+ * sysdeps/i386/i686/multiarch/strcasecmp_l-ssse3.S: New file.
-+ * sysdeps/i386/i686/multiarch/strcasecmp_l.S: New file.
-+ * sysdeps/i386/i686/multiarch/strncase-c.c: New file.
-+ * sysdeps/i386/i686/multiarch/strncase.S: New file.
-+ * sysdeps/i386/i686/multiarch/strncase_l-c.c: New file.
-+ * sysdeps/i386/i686/multiarch/strncase_l-ssse3.S: New file.
-+ * sysdeps/i386/i686/multiarch/strncase_l.S: New file.
-+
-+2011-11-12 Ulrich Drepper <drepper at gmail.com>
-+
-+ * sysdeps/unix/clock_gettime.c (clock_gettime): No need to assign
-+ result of SYSDEP_GETTIME_CPU to retval.
-+ * sysdeps/unix/sysv/linux/clock_gettime.c (SYSDEP_GETTIME_CPU): Add
-+ parameter list to macro. Remove trailing semicolon. Adjust users.
-+
-+ * resolv/getaddrinfo_a.c (getaddrinfo_a): Avoid warning about unused
-+ variable.
-+
-+ * sysdeps/ieee754/ldbl-96/e_j0l.c (__ieee754_j0l): Avoid storing
-+ mantissa words.
-+ * sysdeps/ieee754/ldbl-96/e_j1l.c (__ieee754_j1l): Likewise.
-+
-+ * sysdeps/ieee754/ldbl-96/e_hypotl.c (__ieee754_hypotl): Avoid warning
-+ from unused variable.
-+
-+ * sysdeps/generic/sysdep.h: Clean up, pretty print, use dwarf2.h for
-+ DWARF definitions.
-+ * sysdeps/generic/dwarf2.h: Don't define enums when using the file
-+ for assembling.
-+
-+ * elf/dl-iteratephdr.c [!SHARED] (__dl_iterate_phdr): Don't iterate
-+ over namespaces.
-+
-+ * sunrpc/rpc_prot.c (rejected): Fix case value.
-+
-+ * sysdeps/unix/sysv/linux/internal_statvfs.c (INTERNAL_STATVFS): Use
-+ unsigned long long int to avoid warnings in shift.
-+
-+ * posix/regex_internal.c (re_string_reconstruct): Actually use result
-+ of use of trans.
-+ * posix/regex_internal.h (re_string_wchar_at): Remove temporary
-+ variable tmp.
-+
-+ * sysdeps/i386/i686/multiarch/wcscmp-c.c: Avoid warning.
-+ * sysdeps/i386/i686/multiarch/wcslen-c.c: Likewise.
-+ * sysdeps/i386/i686/multiarch/wmemcmp-c.c: Likewise.
-+
-+ * nis/nis_table.c (nis_list): Use variable of correct type for
-+ result of __follow_path call.
-+
-+2011-11-07 Adhemerval Zanella <azanella at linux.vnet.ibm.com>
-+
-+ * sysdeps/powerpc/fpu/math_private.h: Using inline assembly version
-+ of math functions ceil, trunc, floor, round, and sqrt, when
-+ avaliable on the platform.
-+ * sysdeps/powerpc/fpu/e_sqrt.c: Undefine __ieee754_sqrt to avoid
-+ name clash.
-+ * sysdeps/powerpc/fpu/e_sqrtf.c: Likewise.
-+ * sysdeps/powerpc/powerpc64/fpu/e_sqrt.c: Likewise.
-+ * sysdeps/powerpc/powerpc64/fpu/e_sqrtf.c: Likewise.
-+
-+2011-10-30 Marek Polacek <mpolacek at redhat.com>
-+
-+ * libio/wfileops.c (_IO_wfile_underflow_mmap): Remove unused variable.
-+ * sysdeps/ieee754/dbl-64/mpsqrt.c (__mpsqrt): Likewise.
-+
-+2011-11-11 Roland McGrath <roland at hack.frob.com>
-+
-+ * include/unistd.h: Fix __readlink return type.
-+ Reported by Chris Metcalf <cmetcalf at tilera.com>.
-+
-+2011-11-11 Ulrich Drepper <drepper at gmail.com>
-+
-+ * stdlib/ucontext.h: Undo last change for makecontext.
-+
-+2011-11-11 Andreas Schwab <schwab at redhat.com>
-+
-+ * nss/db-Makefile ($(VAR_DB)/group.db): Fix typo in awk script.
-+
-+ * misc/sys/cdefs.h (__REDIRECT_NTHNL): Define.
-+ * setjmp/setjmp.h: Mark functions as non-leaf.
-+ * setjmp/bits/setjmp2.h: Likewise.
-+ * stdlib/ucontext.h: Likewise.
-+
-+2011-11-10 Andreas Schwab <schwab at redhat.com>
-+
-+ * malloc/arena.c (_int_new_arena): Don't increment narenas.
-+ (reused_arena): Don't check arena limit.
-+ (arena_get2): Atomically check arena limit.
-+
-+2011-11-08 Ulrich Drepper <drepper at gmail.com>
-+
-+ * locale/findlocale.c (_nl_find_locale): Use __strcasecmp_l.
-+ * intl/localealias.c (strcasecmp): Define using __strcasecmp_l.
-+
-+ * sysdeps/i386/i686/multiarch/strcmp-ssse3.S: Remove unnecessary
-+ instructions.
-+
-+2011-11-07 Andreas Schwab <schwab at redhat.com>
-+
-+ * libio/genops.c (_IO_flush_all_lockp): Only register cleanup
-+ handler when locking.
-+
-+ * nss/nss_files/files-initgroups.c (_nss_files_initgroups_dyn):
-+ Fix size of allocated buffer.
-+
-+2011-11-04 Andreas Schwab <schwab at redhat.com>
-+
-+ [BZ #10103]
-+ * math/math.h [__NO_LONG_DOUBLE_MATH && !_LIBC]: Provide
-+ declarations for long double functions.
-+ * math/complex.h [__NO_LONG_DOUBLE_MATH && !_LIBC]: Likewise.
-+
-+ * elf/sprof.c (load_shobj): Fix off-by-one when reading link name.
-+
-+2011-11-03 Andreas Schwab <schwab at redhat.com>
-+
-+ * nscd/nscd.c (main): Don't start AVC thread until credentials are
-+ installed.
-+
-+ * nss/makedb.c (set_file_creation_context): Do nothing if SELinux
-+ is disabled.
-+
-+2011-11-02 Samuel Thibault <samuel.thibault at ens-lyon.org>
-+
-+ * bits/ioctl-types.h (_IOT_sgttyb): Set number of chars to 4.
-+
-+2011-11-01 Andreas Schwab <schwab at linux-m68k.org>
-+
-+ * include/alloca.h (stackinfo_alloca_round): Define.
-+ (extend_alloca): Use it.
-+ [_STACK_GROWS_UP]: Correct check for adjacent allocation.
-+ * elf/dl-deps.c (_dl_map_object_deps): Don't round alloca size
-+ here.
-+
-+ * scripts/check-local-headers.sh: Ignore libaudit.h.
-+
-+ * nscd/Makefile (extra-objs): Make recursively expanded.
-+
-+2011-11-01 Ulrich Drepper <drepper at gmail.com>
-+
-+ * sysdeps/x86_64/strcmp.S: Fix test for non-ASCII locales.
-+ * sysdeps/x86_64/multiarch/strcmp-sse42.S: Likewise.
-+
-+ * posix/tst-rfc3484.c: Add missing __free_in6ai dummy function.
-+ * posix/tst-rfc3484-2.c: Likewise.
-+ * posix/tst-rfc3484-3.c: Likewise.
-+
-+ * sysdeps/unix/sysv/linux/bits/uio.h: Declare process_vm_readv and
-+ process_vm_writev.
-+ * sysdeps/unix/sysv/linux/syscalls.list: Add process_vm_readv and
-+ process_vm_writev.
-+ * sysdeps/unix/sysv/linux/Versions: Export process_vm_readv and
-+ process_vm_writev from libc using GLIBC_2.15 version.
-+
-+ * nscd/connections.c: Use kernel headers instead of <netlink/netlink.h>.
-+
-+2011-10-31 Paul Pluzhnikov <ppluzhnikov at google.com>
-+
-+ * elf/dl-deps.c (_dl_map_object_deps): Reuse alloca space to reduce
-+ stack usage.
-+
-+2011-10-31 Ulrich Drepper <drepper at gmail.com>
-+
-+ [BZ #13367]
-+ * nss/getent.c (initgroups_keys): Show error message in case no group
-+ names are given.
-+
-+ * include/ifaddrs.h: Declare __free_in6ai and __bump_nl_timestamp.
-+ * inet/check_pf.c: Provide dummy versions of __free_in6ai and
-+ __bump_nl_timestamp.
-+ * nscd/connections (nscd_init): When host database is served open
-+ netlink socket and request notification about configuration changes.
-+ (main_loop_poll): Track netlink file descriptor and bump timestamp
-+ in case data becomes available.
-+ (main_loop_epoll): Likewise.
-+ * nscd/nscd-client.h (DB_VERSION): Bump to 2.
-+ (database_pers_head): Add extra_data fileds.
-+ Declare __nscd_get_mapping and __nscd_get_nl_timestamp.
-+ * nscd/nscd_gethst_r.c (__nscd_get_nl_timestamp): New function.
-+ * nscd/nscd_helper.c (__nscd_get_mapping): Renamed from get_mapping.
-+ Adjust caller.
-+ * sysdeps/posix/getaddrinfo.c (getaddrinfo): Don't call free on
-+ in6ai data, call __free_in6ai.
-+ * sysdeps/unix/sysv/linux/Makefile [subdir=nscd] (sysdep-CFLAGS):
-+ Add -DHAVE_NETLINK.
-+ * sysdeps/unix/sysv/linux/check_pf.c: Major rewrite. Cache the
-+ interface information. Reuse previous data if netlink timestamp
-+ is not changed.
-+ (__bump_nl_timestamp): New function.
-+ (__free_in6ai): New function.
-+
-+2011-10-30 Ulrich Drepper <drepper at gmail.com>
-+
-+ * sysdeps/unix/sysv/linux/check_pf.c (make_request): Don't call
-+ close_not_cancel_no_status here.
-+ (__check_pf): Reorganize code a bit to not call close twice if OOM.
-+
-+2011-10-29 Ulrich Drepper <drepper at gmail.com>
-+
-+ [BZ #13276]
-+ * malloc/malloc.c (munmap_chunk): Don't use assertion to check munmap
-+ return value.
-+
-+ * posix/sys/wait.h: Mark wait3 and wait4 with __THROWNL.
-+ * libio/stdio.h: Mark sprintf, vsprintf snprintf, vsnprintf, vasprintf,
-+ asprintf, __asprintf, obstack_printf, obstack_vprintf with __THROWNL.
-+
-+2011-07-03 Andreas Jaeger <aj at suse.de>
-+
-+ [BZ #10709]
-+ * sysdeps/ieee754/dbl-64/s_sin.c (__sin): Fix incorrect rounding
-+ of sin. Patch suggested by Paul Zimmermann <zimmerma+gcc at loria.fr>.
-+ * math/libm-test.inc (sin_test): Add test case.
-+
-+2011-10-29 Ulrich Drepper <drepper at gmail.com>
-+
-+ [BZ #13337]
-+ * elf/sprof.c (load_shobj): Correctly NUL-terminate link name.
-+ Patch by Thomas Jarosch <thomas.jarosch at intra2net.com>.
-+
-+ * elf/chroot_canon.c (chroot_canon): Cleanups.
-+
-+ * elf/dl-lookup.c (_dl_setup_hash): Avoid warning.
-+
-+ [BZ #13335]
-+ * elf/chroot_canon.c (chroot_canon): Fix readlink call.
-+ Patch by Thomas Jarosch <thomas.jarosch at intra2net.com>.
-+
-+ * string/test-strchr.c: Make usable for strchrnul testing.
-+ * string/test-strchrnul.c: New file.
-+ * string/Makefile (strop-tests): Add strchrnul.
-+
-+ * po/it.po: Update from translation team.
-+ * po/es.po: Likewise.
-+
-+2011-10-28 Ulrich Drepper <drepper at gmail.com>
-+
-+ * sysdeps/x86_64/multiarch/strstr.c (__m128i_strloadu_tolower): Take
-+ the three constants needed as parameters. Drop the others.
-+ (strcasestr_sse42): Load uclow, uchigh, and lcqword and pass to
-+ __m128i_strloadu_tolower.
-+ Create and initialize variable zero and use it in all the places
-+ where _mm_setzero_si128 was used.
-+
-+ * sysdeps/x86_64/fpu/multiarch/Makefile: Don't build brandred-avx.c,
-+ doasin-avx.c, dosincos-avx.c, e_asin-avx.c, mpatan-avx.c,
-+ mpatan2-avx.c, mpsqrt-avx.c, mptan-avx.c, sincos32-avx.c.
-+ * sysdeps/x86_64/fpu/multiarch/e_asin.c: There are no _avx variants
-+ anymore.
-+ * sysdeps/x86_64/fpu/multiarch/e_atan2-avx.c: Don't redirect __mpatan2.
-+ * sysdeps/x86_64/fpu/multiarch/s_atan-avx.c: Don't redirect __mpatan.
-+ * sysdeps/x86_64/fpu/multiarch/s_sin-avx.c: Don't redirect __branred,
-+ __docos, __dubsin, __mpcos, __mpcos1, __mpsin, __mpsin1.
-+ * sysdeps/x86_64/fpu/multiarch/s_tan-avx.c: Don't redirect __branred,
-+ __mpranred, __mptan.
-+ * sysdeps/x86_64/fpu/multiarch/brandred-avx.c: Removed.
-+ * sysdeps/x86_64/fpu/multiarch/doasin-avx.c: Removed.
-+ * sysdeps/x86_64/fpu/multiarch/dosincos-avx.c: Removed.
-+ * sysdeps/x86_64/fpu/multiarch/e_asin-avx.c: Removed.
-+ * sysdeps/x86_64/fpu/multiarch/mpatan-avx.c: Removed.
-+ * sysdeps/x86_64/fpu/multiarch/mpatan2-avx.c: Removed.
-+ * sysdeps/x86_64/fpu/multiarch/mpsqrt-avx.c: Removed.
-+ * sysdeps/x86_64/fpu/multiarch/mptan-avx.c: Removed.
-+ * sysdeps/x86_64/fpu/multiarch/sincos32-avx.c: Removed.
-+
-+2011-10-28 Andreas Schwab <schwab at redhat.com>
-+
-+ * sysdeps/i386/i686/multiarch/strnlen-c.c (libc_hidden_def): Only
-+ redefine if SHARED.
-+ * sysdeps/i386/i686/multiarch/wcscmp-c.c (libc_hidden_def): Likewise.
-+
-+ * sysdeps/i386/i686/multiarch/Makefile (sysdep_routines): Move
-+ wide char related routines to wcsmbs subdir.
-+
-+2011-10-27 Andreas Schwab <schwab at redhat.com>
-+
-+ [BZ #13344]
-+ * misc/sys/cdefs.h (__THROWNL): Define.
-+ * posix/unistd.h: Use __THREADNL instead of __THREAD
-+ for memory synchronization functions.
-+
-+2011-10-26 Roland McGrath <roland at hack.frob.com>
-+
-+ [BZ #13349]
-+ * libio/Versions (GLIBC_2.0): Remove open_obstack_stream, which
-+ doesn't exist.
-+ * manual/stdio.texi (Obstack Streams): Node removed.
-+
-+2011-10-26 Andreas Schwab <schwab at redhat.com>
-+
-+ * sysdeps/ieee754/flt-32/e_j0f.c: Fix use of math_force_eval.
-+ * sysdeps/ieee754/dbl-64/s_round.c: Likewise.
-+ * sysdeps/ieee754/flt-32/s_roundf.c: Likewise.
-+
-+ * math/math_private.h (math_force_eval): Allow non-addressable
-+ arguments.
-+ * sysdeps/i386/fpu/math_private.h (math_force_eval): Likewise.
-+
-+2011-10-25 Ulrich Drepper <drepper at gmail.com>
-+
-+ * sysdeps/ieee754/dbl-64/e_rem_pio2.c: Comment everything out, the
-+ file is not needed.
-+
-+ * sysdeps/x86_64/fpu/multiarch/e_asin.c: Support AVX variants.
-+ * sysdeps/x86_64/fpu/multiarch/e_atan2.c: Likewise.
-+ * sysdeps/x86_64/fpu/multiarch/e_exp.c: Likewise.
-+ * sysdeps/x86_64/fpu/multiarch/e_log.c: Likewise.
-+ * sysdeps/x86_64/fpu/multiarch/s_atan.c: Likewise.
-+ * sysdeps/x86_64/fpu/multiarch/s_sin.c: Likewise.
-+ * sysdeps/x86_64/fpu/multiarch/s_tan.c: Likewise.
-+ * sysdeps/x86_64/fpu/multiarch/Makefile: Fix some CFLAGS-* variables.
-+ Add AVX variants.
-+ * sysdeps/x86_64/fpu/multiarch/brandred-avx.c: New file.
-+ * sysdeps/x86_64/fpu/multiarch/doasin-avx.c: New file.
-+ * sysdeps/x86_64/fpu/multiarch/dosincos-avx.c: New file.
-+ * sysdeps/x86_64/fpu/multiarch/e_asin-avx.c: New file.
-+ * sysdeps/x86_64/fpu/multiarch/e_atan2-avx.c: New file.
-+ * sysdeps/x86_64/fpu/multiarch/e_exp-avx.c: New file.
-+ * sysdeps/x86_64/fpu/multiarch/e_log-avx.c: New file.
-+ * sysdeps/x86_64/fpu/multiarch/mpa-avx.c: New file.
-+ * sysdeps/x86_64/fpu/multiarch/mpatan-avx.c: New file.
-+ * sysdeps/x86_64/fpu/multiarch/mpatan2-avx.c: New file.
-+ * sysdeps/x86_64/fpu/multiarch/mpexp-avx.c: New file.
-+ * sysdeps/x86_64/fpu/multiarch/mplog-avx.c: New file.
-+ * sysdeps/x86_64/fpu/multiarch/mpsqrt-avx.c: New file.
-+ * sysdeps/x86_64/fpu/multiarch/mptan-avx.c: New file.
-+ * sysdeps/x86_64/fpu/multiarch/s_atan-avx.c: New file.
-+ * sysdeps/x86_64/fpu/multiarch/s_sin-avx.c: New file.
-+ * sysdeps/x86_64/fpu/multiarch/s_tan-avx.c: New file.
-+ * sysdeps/x86_64/fpu/multiarch/sincos32-avx.c: New file.
-+ * sysdeps/x86_64/fpu/multiarch/slowexp-avx.c: New file.
-+
-+ * sysdeps/x86_64/multiarch/init-arch.h: Make bit_* macros available
-+ all the time. Define bit_AVX. Define HAS_* macros using bit_* macros.
-+
-+ * sysdeps/x86_64/multiarch/strcmp-sse42.S: Move common code to earlier
-+ place. Use VEX encoding when compiling for AVX.
-+
-+2011-10-25 Andreas Schwab <schwab at redhat.com>
-+
-+ * wcsmbs/wcscmp.c (WCSCMP): Compare as wchar_t, not wint_t.
-+ * wcsmbs/wmemcmp.c (WMEMCMP): Likewise.
-+
-+ * string/test-strchr.c (do_test): Don't generate NUL bytes.
-+
-+2011-10-25 Ulrich Drepper <drepper at gmail.com>
-+
-+ * sysdeps/ieee754/dbl-64/e_atanh.c: Use math_force_eval instead of a
-+ useless if() expression.
-+ * sysdeps/ieee754/dbl-64/e_j0.c: Likewise.
-+ * sysdeps/ieee754/dbl-64/s_ceil.c: Likewise.
-+ * sysdeps/ieee754/dbl-64/s_expm1.c: Likewise.
-+ * sysdeps/ieee754/dbl-64/s_floor.c: Likewise.
-+ * sysdeps/ieee754/dbl-64/s_log1p.c: Likewise.
-+ * sysdeps/ieee754/dbl-64/s_round.c: Likewise.
-+ * sysdeps/ieee754/dbl-64/wordsize-64/s_ceil.c: Likewise.
-+ * sysdeps/ieee754/dbl-64/wordsize-64/s_floor.c: Likewise.
-+ * sysdeps/ieee754/dbl-64/wordsize-64/s_round.c: Likewise.
-+ * sysdeps/ieee754/flt-32/e_atanhf.c: Likewise.
-+ * sysdeps/ieee754/flt-32/e_j0f.c: Likewise.
-+ * sysdeps/ieee754/flt-32/s_ceilf.c: Likewise.
-+ * sysdeps/ieee754/flt-32/s_expm1f.c: Likewise.
-+ * sysdeps/ieee754/flt-32/s_floorf.c: Likewise.
-+ * sysdeps/ieee754/flt-32/s_log1pf.c: Likewise.
-+ * sysdeps/ieee754/flt-32/s_roundf.c: Likewise.
-+ * sysdeps/ieee754/ldbl-96/e_atanhl.c: Likewise.
-+ * sysdeps/ieee754/ldbl-96/e_j0l.c: Likewise.
-+ * sysdeps/ieee754/ldbl-96/s_roundl.c: Likewise.
-+
-+ * sysdeps/x86_64/fpu/math_private.h: Use VEX encoding when possible.
-+
-+2011-10-25 Andreas Schwab <schwab at redhat.com>
-+
-+ * elf/dl-deps.c (_dl_map_object_deps): Remove always true
-+ condition.
-+ * elf/dl-fini.c (_dl_sort_fini): Likewise.
-+
-+2011-10-25 Ulrich Drepper <drepper at gmail.com>
-+
-+ * sysdeps/ieee754/dbl-64/branred.c: Move FMA4 code into separate
-+ .text section. Avoid duplicate constants.
-+ * sysdeps/ieee754/dbl-64/doasin.c: Likewise.
-+ * sysdeps/ieee754/dbl-64/dosincos.c: Likewise.
-+ * sysdeps/ieee754/dbl-64/e_asin.c: Likewise.
-+ * sysdeps/ieee754/dbl-64/e_atan2.c: Likewise.
-+ * sysdeps/ieee754/dbl-64/e_exp.c: Likewise.
-+ * sysdeps/ieee754/dbl-64/e_log.c: Likewise.
-+ * sysdeps/ieee754/dbl-64/e_pow.c: Likewise.
-+ * sysdeps/ieee754/dbl-64/halfulp.c: Likewise.
-+ * sysdeps/ieee754/dbl-64/mpa.c: Likewise.
-+ * sysdeps/ieee754/dbl-64/mpa.h: Likewise.
-+ * sysdeps/ieee754/dbl-64/mpatan.c: Likewise.
-+ * sysdeps/ieee754/dbl-64/mpatan.h: Likewise.
-+ * sysdeps/ieee754/dbl-64/mpatan2.c: Likewise.
-+ * sysdeps/ieee754/dbl-64/mpexp.c: Likewise.
-+ * sysdeps/ieee754/dbl-64/mpexp.h: Likewise.
-+ * sysdeps/ieee754/dbl-64/mpsqrt.c: Likewise.
-+ * sysdeps/ieee754/dbl-64/mpsqrt.h: Likewise.
-+ * sysdeps/ieee754/dbl-64/mptan.c: Likewise.
-+ * sysdeps/ieee754/dbl-64/s_sin.c: Likewise.
-+ * sysdeps/ieee754/dbl-64/s_tan.c: Likewise.
-+ * sysdeps/ieee754/dbl-64/sincos32.c: Likewise.
-+ * sysdeps/ieee754/dbl-64/slowexp.c: Likewise.
-+ * sysdeps/ieee754/dbl-64/slowpow.c: Likewise.
-+ * sysdeps/x86_64/fpu/multiarch/brandred-fma4.c: Likewise.
-+ * sysdeps/x86_64/fpu/multiarch/doasin-fma4.c: Likewise.
-+ * sysdeps/x86_64/fpu/multiarch/dosincos-fma4.c: Likewise.
-+ * sysdeps/x86_64/fpu/multiarch/e_asin-fma4.c: Likewise.
-+ * sysdeps/x86_64/fpu/multiarch/e_atan2-fma4.c: Likewise.
-+ * sysdeps/x86_64/fpu/multiarch/e_exp-fma4.c: Likewise.
-+ * sysdeps/x86_64/fpu/multiarch/e_log-fma4.c: Likewise.
-+ * sysdeps/x86_64/fpu/multiarch/e_pow-fma4.c: Likewise.
-+ * sysdeps/x86_64/fpu/multiarch/halfulp-fma4.c: Likewise.
-+ * sysdeps/x86_64/fpu/multiarch/mpa-fma4.c: Likewise.
-+ * sysdeps/x86_64/fpu/multiarch/mpatan-fma4.c: Likewise.
-+ * sysdeps/x86_64/fpu/multiarch/mpatan2-fma4.c: Likewise.
-+ * sysdeps/x86_64/fpu/multiarch/mpexp-fma4.c: Likewise.
-+ * sysdeps/x86_64/fpu/multiarch/mplog-fma4.c: Likewise.
-+ * sysdeps/x86_64/fpu/multiarch/mpsqrt-fma4.c: Likewise.
-+ * sysdeps/x86_64/fpu/multiarch/mptan-fma4.c: Likewise.
-+ * sysdeps/x86_64/fpu/multiarch/s_atan-fma4.c: Likewise.
-+ * sysdeps/x86_64/fpu/multiarch/s_sin-fma4.c: Likewise.
-+ * sysdeps/x86_64/fpu/multiarch/s_tan-fma4.c: Likewise.
-+ * sysdeps/x86_64/fpu/multiarch/sincos32-fma4.c: Likewise.
-+ * sysdeps/x86_64/fpu/multiarch/slowexp-fma4.c: Likewise.
-+ * sysdeps/x86_64/fpu/multiarch/slowpow-fma4.c: Likewise.
-+
-+2011-10-24 Ulrich Drepper <drepper at gmail.com>
-+
-+ * sysdeps/x86_64/dla.h: Move to ...
-+ * sysdeps/x86_64/fpu/dla.h: ...here.
-+ (DLA_FMS): Some compilers fail to inline __builtin_fma in some
-+ situations. Use __builtin_fma only for gcc 4.6 and up.
-+
-+ * config.make.in: Add have-mfma4 entry.
-+ * configure.in: Substitute libc_cv_cc_fma4.
-+ * math/Makefile (dbl-only-routines): Add sincostab.
-+ * sysdeps/ieee754/dbl-64/dosincos.c: Don't include sincos.tbl.
-+ Use __sincostab not sincos.
-+ * sysdeps/ieee754/dbl-64/e_asin.c: Don't define aliases when function
-+ name is a macro.
-+ * sysdeps/ieee754/dbl-64/e_exp.c: Likewise.
-+ * sysdeps/ieee754/dbl-64/e_log.c: Likewise.
-+ * sysdeps/ieee754/dbl-64/e_pow.c: Likewise.
-+ * sysdeps/ieee754/dbl-64/e_atan2.c: Likewise. Define singArctan2
-+ using __copysign.
-+ * sysdeps/ieee754/dbl-64/mpa.c: Don't export __acr. Don't define
-+ __cr and __cpymn. Define __cpy unless NO___CPY is defined. Define
-+ norm, denorm, and __mp_dbl unless NO___MP_DBL is defined.
-+ * sysdeps/ieee754/dbl-64/mpa.h: Don't declare __acr, __cr, __cpymn,
-+ and __inv.
-+ * sysdeps/ieee754/dbl-64/mpsqrt.c: Make fastiroot static.
-+ * sysdeps/ieee754/dbl-64/s_atan.c: Define __signArctan using
-+ __copysign.
-+ * sysdeps/ieee754/dbl-64/s_sin.c: Use __sincostab not sincos. Don't
-+ define aliases when function name is a macro.
-+ * sysdeps/ieee754/dbl-64/sincostab.c: Renamed from
-+ sysdeps/ieee754/dbl-64/sincos.tbl.
-+ * sysdeps/x86_64/fpu/multiarch/Makefile: Add entries to build
-+ fma4-enabled routines.
-+ * sysdeps/x86_64/fpu/multiarch/brandred-fma4.c: New file.
-+ * sysdeps/x86_64/fpu/multiarch/doasin-fma4.c: New file.
-+ * sysdeps/x86_64/fpu/multiarch/dosincos-fma4.c: New file.
-+ * sysdeps/x86_64/fpu/multiarch/e_asin-fma4.c: New file.
-+ * sysdeps/x86_64/fpu/multiarch/e_asin.c: New file.
-+ * sysdeps/x86_64/fpu/multiarch/e_atan2-fma4.c: New file.
-+ * sysdeps/x86_64/fpu/multiarch/e_atan2.c: New file.
-+ * sysdeps/x86_64/fpu/multiarch/e_exp-fma4.c: New file.
-+ * sysdeps/x86_64/fpu/multiarch/e_exp.c: New file.
-+ * sysdeps/x86_64/fpu/multiarch/e_log-fma4.c: New file.
-+ * sysdeps/x86_64/fpu/multiarch/e_log.c: New file.
-+ * sysdeps/x86_64/fpu/multiarch/e_pow-fma4.c: New file.
-+ * sysdeps/x86_64/fpu/multiarch/e_pow.c: New file.
-+ * sysdeps/x86_64/fpu/multiarch/halfulp-fma4.c: New file.
-+ * sysdeps/x86_64/fpu/multiarch/mpa-fma4.c: New file.
-+ * sysdeps/x86_64/fpu/multiarch/mpatan-fma4.c: New file.
-+ * sysdeps/x86_64/fpu/multiarch/mpatan2-fma4.c: New file.
-+ * sysdeps/x86_64/fpu/multiarch/mpexp-fma4.c: New file.
-+ * sysdeps/x86_64/fpu/multiarch/mplog-fma4.c: New file.
-+ * sysdeps/x86_64/fpu/multiarch/mpsqrt-fma4.c: New file.
-+ * sysdeps/x86_64/fpu/multiarch/mptan-fma4.c: New file.
-+ * sysdeps/x86_64/fpu/multiarch/s_atan-fma4.c: New file.
-+ * sysdeps/x86_64/fpu/multiarch/s_atan.c: New file.
-+ * sysdeps/x86_64/fpu/multiarch/s_sin-fma4.c: New file.
-+ * sysdeps/x86_64/fpu/multiarch/s_sin.c: New file.
-+ * sysdeps/x86_64/fpu/multiarch/s_tan-fma4.c: New file.
-+ * sysdeps/x86_64/fpu/multiarch/s_tan.c: New file.
-+ * sysdeps/x86_64/fpu/multiarch/sincos32-fma4.c: New file.
-+ * sysdeps/x86_64/fpu/multiarch/slowexp-fma4.c: New file.
-+ * sysdeps/x86_64/fpu/multiarch/slowpow-fma4.c: New file.
-+
-+ * sysdeps/ieee754/dbl-64/doasin.c: Adjust for DLA_FMA -> DLA_FMS
-+ rename.
-+ * sysdeps/ieee754/dbl-64/dosincos.c: Likewise.
-+ * sysdeps/ieee754/dbl-64/dosincos.c: Likewise.
-+ * sysdeps/ieee754/dbl-64/e_atan2.c: Likewise.
-+ * sysdeps/ieee754/dbl-64/e_log.c: Likewise.
-+ * sysdeps/ieee754/dbl-64/e_pow.c: Likewise.
-+ * sysdeps/ieee754/dbl-64/halfulp.c: Likewise.
-+ * sysdeps/ieee754/dbl-64/s_atan.c: Likewise.
-+ * sysdeps/ieee754/dbl-64/s_tan.c: Likewise.
-+
-+2011-10-24 Andreas Schwab <schwab at redhat.com>
-+
-+ * wcsmbs/wcslen.c: Don't define WCSLEN, reverse logic.
-+
-+2011-10-23 Ulrich Drepper <drepper at gmail.com>
-+
-+ * sysdeps/ieee754/dbl-64/wordsize-64/s_remquo.c: New file.
-+
-+ * sysdeps/ieee754/dbl-64/e_fmod.c (__ieee754_fmod): Add some branch
-+ prediction.
-+ * sysdeps/ieee754/dbl-64/wordsize-64/e_fmod.c: New file.
-+
-+ * string/strnlen.c: Don't define STRNLEN, reverse logic.
-+ Remove unused variable magic_bits.
-+ * sysdeps/i386/i686/multiarch/rtld-strnlen.c: New file.
-+
-+ * string/strnlen.c: Define and use STRNLEN macro.
-+ * sysdeps/i386/i686/multiarch/Makefile [string] (sysdep_routines):
-+ Add strnlen-sse2, strnlen-c, wcslen-sse2, and wcslen-c.
-+ * sysdeps/i386/i686/multiarch/strlen-sse2.S: Add support for strnlen.
-+ * wcsmbs/wcslen.c: Define and use WCSLEN.
-+ * sysdeps/i386/i686/multiarch/strnlen-c.c: New file.
-+ * sysdeps/i386/i686/multiarch/strnlen-sse2.S: New file.
-+ * sysdeps/i386/i686/multiarch/strnlen.S: New file.
-+ * sysdeps/i386/i686/multiarch/wcslen-c.c: New file.
-+ * sysdeps/i386/i686/multiarch/wcslen-sse2.S: New file.
-+ * sysdeps/i386/i686/multiarch/wcslen.S: New file.
-+ Patch by Liubov Dmitrieva <liubov.dmitrieva at gmail.com>.
-+
-+2011-10-20 Liubov Dmitrieva <liubov.dmitrieva at gmail.com>
-+
-+ * sysdeps/x86_64/multiarch/Makefile (sysdep_routines): Add
-+ strnlen-sse2-no-bsf.
-+ Rename strlen-no-bsf to strlen-sse2-no-bsf.
-+ * sysdeps/x86_64/multiarch/strlen-no-bsf.S: Rename to
-+ * sysdeps/x86_64/multiarch/strlen-sse2-no-bsf.S:
-+ Add strnlen support.
-+ (USE_AS_STRNLEN): New macro.
-+ * sysdeps/x86_64/multiarch/strnlen-sse2-no-bsf.S: New file.
-+ * sysdeps/x86_64/multiarch/strcat-ssse3.S: Update.
-+ Rename strlen-no-bsf.S to strlen-sse2-no-bsf.S
-+ * sysdeps/x86_64/wcslen.S: New file.
-+
-+2011-10-20 Michael Zolotukhin <michael.v.zolotukhin at gmail.com>
-+
-+ * sysdeps/i386/i686/multiarch/memcpy-ssse3.S: Update.
-+ XMM-moves are used for copying on small sizes.
-+
-+2011-10-19 Liubov Dmitrieva <liubov.dmitrieva at gmail.com>
-+
-+ * wcsmbs/Makefile (strop-tests): Add wcschr.
-+ * wcsmbs/test-wcschr.c: New file.
-+ * string/test-strchr.c: Update.
-+ Add wcschr support.
-+ (WIDE): New macro.
-+
-+2011-10-18 Liubov Dmitrieva <liubov.dmitrieva at gmail.com>
-+
-+ * wcsmbs/Makefile (strop-tests): Add wcslen.
-+ * wcsmbs/test-wcslen.c: New file.
-+ * string/test-strlen.c: Update.
-+ Add wcslen support.
-+ (WIDE): New macro.
-+
-+2011-10-23 Ulrich Drepper <drepper at gmail.com>
-+
-+ * po/it.po: Update from translation team.
-+
-+2011-09-22 Liubov Dmitrieva <liubov.dmitrieva at gmail.com>
-+
-+ * sysdeps/x86_64/wcscmp.S: Update.
-+ Fix wrong comparison semantics.
-+ wcscmp shall use signed comparison not unsigned.
-+ Don't use substraction to avoid overflow bug.
-+ * sysdeps/i386/i686/multiarch/wcscmp-sse2.S: Likewise.
-+ * wcsmbc/wcscmp.c: Likewise.
-+ * string/test-strcmp.c: Likewise.
-+ Add new tests to check cases with negative values.
-+
-+2011-10-23 Ulrich Drepper <drepper at gmail.com>
-+
-+ * sysdeps/ieee754/dbl-64/dla.h: Move DLA_FMA definition to...
-+ * sysdeps/x86_64/dla.h: ...here. New file.
-+ * sysdeps/ieee754/dbl-64/doasin.c: Use <dla.h> not "dla.h".
-+ * sysdeps/ieee754/dbl-64/dosincos.c: Likewise.
-+ * sysdeps/ieee754/dbl-64/e_atan2.c: Likewise.
-+ * sysdeps/ieee754/dbl-64/e_log.c: Likewise.
-+ * sysdeps/ieee754/dbl-64/e_pow.c: Likewise.
-+ * sysdeps/ieee754/dbl-64/e_sqrt.c: Likewise.
-+ * sysdeps/ieee754/dbl-64/halfulp.c: Likewise.
-+ * sysdeps/ieee754/dbl-64/s_atan.c: Likewise.
-+ * sysdeps/ieee754/dbl-64/s_tan.c: Likewise.
-+
-+2011-10-23 Andreas Schwab <schwab at linux-m68k.org>
-+
-+ * sysdeps/ieee754/ldbl-128ibm/e_jnl.c: Add __jnl_finite and
-+ __ynl_finite aliases.
-+
-+2011-10-22 Ulrich Drepper <drepper at gmail.com>
-+
-+ * sysdeps/x86_64/fpu/libm-test-ulps: Update.
-+
-+ * sysdeps/ieee754/dbl-64/dla.h: When compiling with FMA4 support
-+ define DLA_FMA.
-+ [DLA_FMA] (EMULV): Use DLA_FMA.
-+ [DLA_FMA] (MUL12): Use EMULV.
-+ * sysdeps/ieee754/dbl-64/doasin.c [DLA_FMA]: Don't define variables
-+ that are not needed.
-+ * sysdeps/ieee754/dbl-64/dosincos.c: Likewise.
-+ * sysdeps/ieee754/dbl-64/e_atan2.c: Likewise.
-+ * sysdeps/ieee754/dbl-64/e_log.c: Likewise.
-+ * sysdeps/ieee754/dbl-64/e_pow.c: Likewise.
-+ * sysdeps/ieee754/dbl-64/halfulp.c: Likewise.
-+ * sysdeps/ieee754/dbl-64/s_atan.c: Likewise.
-+ * sysdeps/ieee754/dbl-64/s_tan.c: Likewise.
-+
-+2011-10-22 Andreas Schwab <schwab at linux-m68k.org>
-+
-+ * math/s_nan.c: Undef __nan.
-+ * math/s_nanf.c: Undef __nanf.
-+ * math/s_nanl.c: Undef __nanl.
-+ * sysdeps/ieee754/ldbl-128ibm/s_atanl.c: Include <math.h> before
-+ "math_private.h".
-+
-+2011-10-22 Ulrich Drepper <drepper at gmail.com>
-+
-+ * math/s_catan.c: Add branch predictions.
-+ * math/s_catanf.c: Likewise.
-+ * math/s_catanh.c: Likewise.
-+ * math/s_catanhf.c: Likewise.
-+ * math/s_catanhl.c: Likewise.
-+ * math/s_catanl.c: Likewise.
-+ * math/s_cexp.c: Likewise.
-+ * math/s_cexpf.c: Likewise.
-+ * math/s_cexpl.c: Likewise.
-+ * math/s_clog.c: Likewise.
-+ * math/s_clog10.c: Likewise.
-+ * math/s_clog10f.c: Likewise.
-+ * math/s_clog10l.c: Likewise.
-+ * math/s_clogf.c: Likewise.
-+ * math/s_clogl.c: Likewise.
-+ * math/s_csqrt.c: Likewise.
-+ * math/s_csqrtf.c: Likewise.
-+ * math/s_csqrtl.c: Likewise.
-+ * math/s_ctanf.c: Likewise.
-+ * math/s_ctanh.c: Likewise.
-+ * math/s_ctanhf.c: Likewise.
-+ * math/s_ctanhl.c: Likewise.
-+ * math/s_ctanl.c: Likewise.
-+
-+ * math/math_private.h: Define __nan, __nanf, __nanl.
-+ * math/s_cacosh.c: Include <math_private.h>.
-+ * math/s_cacoshl.c: Likewise.
-+ * math/s_casinh.c: Likewise.
-+ * math/s_casinhf.c: Likewise.
-+ * math/s_casinhl.c: Likewise.
-+ * math/s_ccos.c: Rely entire on ccosh.
-+ * math/s_ccosf.c: Rely entire on ccoshf.
-+ * math/s_ccosl.c: Rely entirely on ccoshl.
-+ * math/s_ccosh.c: Add branch predicion helpers. Add branch prediction.
-+ Remove tests for FE_INVALID.
-+ * math/s_ccoshf.c: Likewise.
-+ * math/s_ccoshl.c: Likewise.
-+ * math/s_csin.c: Likewise.
-+ * math/s_csinf.c: Likewise.
-+ * math/s_csinh.c Likewise.
-+ * math/s_csinhf.c: Likewise.
-+ * math/s_csinhl.c: Likewise.
-+ * math/s_csinl.c: Likewise.
-+ * math/s_ctan.c: Likewise.
-+ * sysdeps/ieee754/dbl-64/e_acosh.c: Use __ieee754_sqrt.
-+ * sysdeps/ieee754/flt-32/e_acoshf.c: Use __ieee754_sqrtf.
-+ * sysdeps/ieee754/ldbl-96/e_acoshl.c: Use __ieee754_sqrtl.
-+
-+2011-10-21 Ulrich Drepper <drepper at gmail.com>
-+
-+ * sysdeps/x86_64/multiarch/init-arch.c (__init_cpu_features): Fix
-+ compilation problems.
-+
-+ * sysdeps/ieee754/dbl-64/e_log.c (__ieee754_log): Add a few more
-+ __builtin_expect.
-+
-+2011-10-20 Ulrich Drepper <drepper at gmail.com>
-+
-+ * sysdeps/i386/configure.in: Test for -mfma4 option.
-+ * config.h.in: Add HAVE_FMA4_SUPPORT entry.
-+ * sysdeps/x86_64/multiarch/init-arch.h: Define HAS_FMA4 and
-+ COMMON_CPUID_INDEX_80000001.
-+ * sysdeps/x86_64/multiarch/init-arch.c: Read 80000001 leaf for AMD.
-+ * sysdeps/x86_64/fpu/multiarch/s_fma.c: Test for FMA4 support and
-+ use it if FMA3 is not supported.
-+ * sysdeps/x86_64/fpu/multiarch/s_fmaf.c: Likewise.
-+
-+ * sysdeps/x86_64/multiarch/s_fma.c: Moved to ../fpu/multiarch.
-+ * sysdeps/x86_64/multiarch/s_fmaf.c: Likewise.
-+
-+2011-10-20 Andreas Schwab <schwab at redhat.com>
-+
-+ [BZ #12892]
-+ * elf/dl-fini.c (_dl_sort_fini): Ignore relocation dependency if
-+ it would create a cycle with a link time dependency.
-+
-+2011-10-19 Ulrich Drepper <drepper at gmail.com>
-+
-+ * sysdeps/x86_64/multiarch/rawmemchr.S: Small optimization to safe an
-+ instruction.
-+ * string/Makefile (strop-tests): Add rawmemchr.
-+ * string/test-rawmemchr.c: New file.
-+
-+ * sysdeps/x86_64/multiarch/init-arch.h: Define bit_AVX and index_AVX.
-+ * sysdeps/x86_64/multiarch/strcmp-sse42.S: New file. Split out from...
-+ * sysdeps/x86_64/multiarch/strcmp.S: ...here. Include strcmp-sse42.S
-+ when compiling str{,n}casecmp and when AVX is available. Hook up
-+ new optimized code in initializers.
-+
-+2011-10-19 Andreas Schwab <schwab at redhat.com>
-+
-+ * sysdeps/x86_64/fpu/math_private.h (libc_feupdateenv): Use
-+ __feraiseexcept instead of feraiseexcept.
-+
-+2011-10-18 Ulrich Drepper <drepper at gmail.com>
-+
-+ * math/math_private.h: Define defaults for libc_fetestexcept and
-+ libc_feupdateenv.
-+ * sysdeps/ieee754/dbl-64/s_fma.c: Use libc_fe* interfaces.
-+ * sysdeps/ieee754/dbl-64/s_fmaf.c: Likewise.
-+ * sysdeps/ieee754/flt-32/e_exp2f.c: Likewise.
-+ * sysdeps/ieee754/flt-32/e_expf.c: Likewise.
-+ * sysdeps/ieee754/flt-32/s_nearbyintf.c: Likewise.
-+ * sysdeps/x86_64/fpu/math_private.h: Define special versions of
-+ libc_fetestexcept and libc_feupdateenv.
-+
-+ * math/math_private.h: Define defaults for libc_feholdexcept_setround,
-+ libc_feholdexcept_setroundf, libc_feholdexcept_setroundl.
-+ * sysdeps/ieee754/dbl-64/e_exp2.c: Use libc_feholdexcept_setround.
-+ * sysdeps/x86_64/fpu/math_private.h: Define special version of
-+ libc_feholdexcept_setround.
-+
-+ * sysdeps/x86_64/fpu/multiarch/Makefile [math] (libm-sysdep-routines):
-+ Add s_nearbyint-c and s_nearbyintf-c.
-+ * sysdeps/x86_64/fpu/bits/mathinline.h: Define nearbyint and
-+ nearbyintf inlines.
-+ * sysdeps/x86_64/fpu/multiarch/s_nearbyint-c.c: New file.
-+ * sysdeps/x86_64/fpu/multiarch/s_nearbyint.S: New file.
-+ * sysdeps/x86_64/fpu/multiarch/s_nearbyintf-c.c: New file.
-+ * sysdeps/x86_64/fpu/multiarch/s_nearbyintf.S: New file.
-+
-+ * math/math_private.h: Define defaults for libc_fegetround,
-+ libc_fegetroundf, libc_fegetroundl, libc_fesetround, libc_fesetroundf,
-+ libc_fesetroundl, libc_feholdexcept, libc_feholdexceptf,
-+ libc_feholdexceptl, libc_fesetenv, libc_fesetenvf, libc_fesetenvl.
-+ * sysdeps/ieee754/dbl-64/wordsize-64/s_nearbyint.c: Use
-+ libc_feholdexcept, libc_fesetround, libc_fesetenv instead of the
-+ standard functions.
-+ * sysdeps/ieee754/dbl-64/e_exp2.c: Likewise.
-+ Remove comments and hacks for old compiler versions.
-+ * sysdeps/x86_64/fpu/math_private.h: Define special versions of
-+ libc_fegetround, libc_fesetround, libc_feholdexcept, and
-+ libc_feholdexceptl.
-+
-+2011-10-18 Andreas Schwab <schwab at redhat.com>
-+
-+ * sysdeps/x86_64/fpu/bits/fenv.h: Add C linkage markers.
-+ (__feraiseexcept_renamed): Add __NTH.
-+ (feraiseexcept): Add __NTH. Rename local variables to fix
-+ namespace violations.
-+
-+2011-10-17 Ulrich Drepper <drepper at gmail.com>
-+
-+ * sysdeps/ieee754/dbl-64/e_exp2.c (__ieee754_exp2): Small optimization.
-+
-+ * sysdeps/ieee754/dbl-64/wordsize-64/s_frexp.c: New file.
-+
-+ * sysdeps/x86_64/fpu/math_private.h: Relax asm requirements for
-+ recently added interfaces.
-+ * sysdeps/x86_64/fpu/bits/mathinline.h: Likewise.
-+
-+ * sysdeps/x86_64/fpu/math_private.h: Add some parenthesis to be safe
-+ about macro parameter expansion.
-+
-+ * sysdeps/x86_64/fpu/bits/mathinline.h: Don't define inlines if
-+ __NO_MATH_INLINES is defined. Cleanups.
-+
-+ * sysdeps/x86_64/fpu/math_private.h: Define __rint, __rintf, __floor,
-+ and __floorf is target has SSE4.1.
-+ * sysdeps/x86_64/fpu/multiarch/s_floor-c.c: Undef first.
-+ * sysdeps/x86_64/fpu/multiarch/s_floorf-c.: Likewise.
-+ * sysdeps/x86_64/fpu/multiarch/s_rint-c.c: Likewise.
-+ * sysdeps/x86_64/fpu/multiarch/s_rintf-c.c: Likewise.
-+
-+ * sysdeps/x86_64/fpu/bits/mathinline.h (floor): Use correct function
-+ name.
-+ (floorf): Likewise.
-+
-+ * nscd/netgroupcache.c (addgetnetgrentX): Fix #ifdef nesting.
-+
-+2011-10-17 Andreas Schwab <schwab at redhat.com>
-+
-+ * misc/sys/cdefs.h: Fix last change.
-+
-+ * grp/initgroups.c (internal_getgrouplist): Fix initgroups
-+ database lookup.
-+
-+2011-10-16 Ulrich Drepper <drepper at gmail.com>
-+
-+ * misc/sys/cdefs.h: Use leaf function attribute in __THROW.
-+
-+ * sysdeps/ieee754/dbl-64/s_ceil.c: Avoid alias renamed.
-+ * sysdeps/ieee754/dbl-64/s_floor.c: Likewise.
-+ * sysdeps/ieee754/dbl-64/s_rint.c: Likewise.
-+ * sysdeps/ieee754/dbl-64/wordsize-64/s_ceil.c: Likewise.
-+ * sysdeps/ieee754/dbl-64/wordsize-64/s_floor.c: Likewise.
-+ * sysdeps/ieee754/dbl-64/wordsize-64/s_rint.c: Likewise.
-+ * sysdeps/ieee754/flt-32/s_ceilf.c: Likewise.
-+ * sysdeps/ieee754/flt-32/s_floorf.c: Likewise.
-+ * sysdeps/ieee754/flt-32/s_rintf.c: Likewise.
-+ * sysdeps/x86_64/fpu/multiarch/Makefile: New file.
-+ * sysdeps/x86_64/fpu/multiarch/s_ceil-c.c: New file.
-+ * sysdeps/x86_64/fpu/multiarch/s_ceil.S: New file.
-+ * sysdeps/x86_64/fpu/multiarch/s_ceilf-c.c: New file.
-+ * sysdeps/x86_64/fpu/multiarch/s_ceilf.S: New file.
-+ * sysdeps/x86_64/fpu/multiarch/s_floor-c.c: New file.
-+ * sysdeps/x86_64/fpu/multiarch/s_floor.S: New file.
-+ * sysdeps/x86_64/fpu/multiarch/s_floorf-c.c: New file.
-+ * sysdeps/x86_64/fpu/multiarch/s_floorf.S: New file.
-+ * sysdeps/x86_64/fpu/multiarch/s_rint-c.c: New file.
-+ * sysdeps/x86_64/fpu/multiarch/s_rint.S: New file.
-+ * sysdeps/x86_64/fpu/multiarch/s_rintf-c.c: New file.
-+ * sysdeps/x86_64/fpu/multiarch/s_rintf.S: New file.
-+
-+ * sysdeps/x86_64/fpu/bits/mathinline.h: Add inlines for rint, rintf,
-+ ceil, ceilf, floor, floorf.
-+
-+ * elf/do-rel.h (elf_dynamic_do_Rel): Work around linker problem.
-+ Perform IRELATIVE relocations last.
-+
-+ * elf/do-rel.h: Add another parameter nrelative, replacing the
-+ local variable with the same name. Change name of the function
-+ to end in Rel or Rela (uppercase).
-+ * elf/dynamic-link.h (_ELF_DYNAMIC_DO_RELOC): Add new element
-+ nrelative to ranges. Only nonzero for DT_REL/DT_RELA. Pass to the
-+ elf_dynamic_do_##reloc function.
-+
-+2011-10-15 Ulrich Drepper <drepper at gmail.com>
-+
-+ * sysdeps/i386/i686/fpu/e_log.S: No need for the fyl2xp1 use, fyl2x
-+ is sufficient, at least on modern CPUs.
-+
-+ * sysdeps/ieee754/dbl-64/wordsize-64/s_floor.c: New file.
-+
-+ * sysdeps/ieee754/dbl-64/e_cosh.c: Cleanup.
-+ * sysdeps/ieee754/dbl-64/wordsize-64/e_cosh.c: New file.
-+
-+ * math/Versions [libm] (GLIBC_2.15): Add __exp_finite, __expf_finite,
-+ __expl_finite.
-+ * math/bits/math-finite.h: Add entries for exp.
-+ * math/e_expl.c: Add __*_finite alias.
-+ * sysdeps/i386/fpu/e_exp.S: Likewise.
-+ * sysdeps/i386/fpu/e_expf.S: Likewise.
-+ * sysdeps/i386/fpu/e_expl.c: Likewise.
-+ * sysdeps/ieee754/dbl-64/e_exp.c: Likewise.
-+ * sysdeps/ieee754/flt-32/e_expf.c: Likewise.
-+ * sysdeps/ieee754/ldbl-128/e_expl.c: Likewise.
-+ * sysdeps/ieee754/ldbl-128ibm/e_expl.c: Likewise.
-+ * sysdeps/ieee754/dbl-64/w_exp.c: Complete rewrite.
-+ * sysdeps/ieee754/flt-32/w_expf.c: Likewise.
-+ * sysdeps/ieee754/ldbl-96/w_expl.c: Likewise.
-+
-+ * sysdeps/i386/i686/fpu/e_logf.S: No need for the fyl2xp1 use, fyl2x
-+ is sufficient, at least on modern CPUs.
-+
-+ * ctype/ctype-info.c (__ctype_init): Define.
-+ * include/ctype.h (__ctype_init): Declare.
-+ (__ctype_b_loc): The variable is always initialized.
-+ (__ctype_toupper_loc): Likewise.
-+ (__ctype_tolower_loc): Likewise.
-+ * ctype/Versions: Export __ctype_init for GLIBC_PRIVATE.
-+ * sysdeps/unix/sysv/linux/init-first.c (_init): Call __ctype_init.
-+
-+2011-10-15 Andreas Schwab <schwab at linux-m68k.org>
-+
-+ * wcsmbs/wmemcmp.c (WMEMCMP): Define.
-+
-+ * configure.in: Also look in $cxxmachine/include for C++ system
-+ headers.
-+
-+2011-09-27 Liubov Dmitrieva <liubov.dmitrieva at gmail.com>
-+
-+ * sysdeps/x86_64/multiarch/Makefile: (sysdep_routines): Add
-+ memcmp-ssse3 wmemcmp-sse4 wmemcmp-ssse3 wmemcmp-c
-+ * sysdeps/x86_64/multiarch/memcmp-ssse3: New file.
-+ * sysdeps/x86_64/multiarch/memcmp.S: Update. Add __memcmp_ssse3.
-+ * sysdeps/x86_64/multiarch/memcmp-sse4.S: Update.
-+ (USE_AS_WMEMCMP): New macro.
-+ Fixing indents.
-+ * sysdeps/x86_64/multiarch/wmemcmp.S: New file.
-+ * sysdeps/x86_64/multiarch/wmemcmp-ssse3.S: New file.
-+ * sysdeps/x86_64/multiarch/wmemcmp-sse4.S: New file.
-+ * sysdeps/x86_64/multiarch/wmemcmp-c.S: New file.
-+ * sysdeps/i386/i686/multiarch/Makefile (sysdep_routines): Add
-+ wmemcmp-ssse3 wmemcmp-sse4 wmemcmp-c
-+ * sysdeps/i386/i686/multiarch/wmemcmp.S: New file.
-+ * sysdeps/i386/i686/multiarch/wmemcmp-c.c: New file.
-+ * sysdeps/i386/i686/multiarch/wmemcmp-ssse3.S: New file.
-+ * sysdeps/i386/i686/multiarch/wmemcmp-sse4.S: New file.
-+ * sysdeps/i386/i686/multiarch/memcmp-sse4.S: Update.
-+ (USE_AS_WMEMCMP): New macro.
-+ * sysdeps/i386/i686/multiarch/memcmp-ssse3: Likewise.
-+ * sysdeps/string/test-memcmp.c: Update.
-+ Fix simple_wmemcmp.
-+ Add new tests.
-+ * wcsmbs/wmemcmp.c: Update.
-+ (WMEMCMP): New macro.
-+ Fix overflow bug.
-+
-+2011-10-12 Andreas Jaeger <aj at suse.de>
-+
-+ [BZ #13268]
-+ * math/bits/mathcalls.h: Mark argument 2 of modf as non-null.
-+
-+2011-10-15 Ulrich Drepper <drepper at gmail.com>
-+
-+ * libio/iofwide.c (do_length): Avoid warning.
-+
-+ * ctype/ctype.h (__isctype_f): Add missing __THROW.
-+
-+2011-10-14 Ulrich Drepper <drepper at gmail.com>
-+
-+ * elf/pldd-xx.c (find_maps): Remove leftover debug message.
-+
-+ * sysdeps/i386/fpu/e_log.S: Add real definition of __log_finite.
-+ * sysdeps/i386/fpu/e_logf.S: Add real definition of __logf_finite.
-+ * sysdeps/i386/fpu/e_logl.S: Add real definition of __logl_finite.
-+ * sysdeps/i386/i686/fpu/e_log.S: New file.
-+ * sysdeps/i386/i686/fpu/e_logf.S: New file.
-+ * sysdeps/i386/i686/fpu/e_logl.S: New file.
-+
-+ * ctype/ctype.h: Add support for inlined isXXX functions when
-+ compiling C++ code.
-+
-+2011-10-14 Andreas Schwab <schwab at redhat.com>
-+
-+ * sysdeps/s390/fpu/libm-test-ulps: Adjust ULPs for jn tests.
-+
-+ * sysdeps/x86_64/fpu/fraiseexcpt.c: Fix last change.
-+
-+2011-10-13 Roland McGrath <roland at hack.frob.com>
-+
-+ [BZ #13291]
-+ * manual/string.texi (String/Array Comparison): Typo fix in strverscmp.
-+
-+2011-10-13 Andreas Schwab <schwab at redhat.com>
-+
-+ * sysdeps/x86_64/fpu/fraiseexcpt.c: Add __feraiseexcept alias.
-+ * sysdeps/x86_64/fpu/feupdateenv.c: Use __feraiseexcept instead of
-+ feraiseexcept.
-+
-+ * sysdeps/x86_64/memrchr.S: Check for zero size.
-+
-+ * string/stratcliff.c: Add memrchr tests.
-+
-+2011-10-12 Liubov Dmitrieva <liubov.dmitrieva at gmail.com>
-+
-+ * sysdeps/i386/i686/multiarch/Makefile (sysdep_routines): Add
-+ memchr-sse2 memchr-sse2-bsf memrchr-sse2 memrchr-sse2-bsf memrchr-c
-+ rawmemchr-sse2 rawmemchr-sse2-bsf.
-+ * sysdeps/i386/i686/multiarch/memchr.S: New file.
-+ * sysdeps/i386/i686/multiarch/memchr-sse2.S: New file.
-+ * sysdeps/i386/i686/multiarch/memchr-sse2-bsf.S: New file.
-+ * sysdeps/i386/i686/multiarch/memrchr.S: New file.
-+ * sysdeps/i386/i686/multiarch/memrchr-c.c: New file.
-+ * sysdeps/i386/i686/multiarch/memrchr-sse2.S: New file.
-+ * sysdeps/i386/i686/multiarch/memrchr-sse2-bsf.S: New file.
-+ * sysdeps/i386/i686/multiarch/rawmemchr.S: New file.
-+ * sysdeps/i386/i686/multiarch/rawmemchr-sse2.S: New file.
-+ * sysdeps/i386/i686/multiarch/rawmemchr-sse2-bsf.S: New file.
-+ * string/memrchr.c (MEMRCHR): New macro.
-+
-+2011-10-12 Ulrich Drepper <drepper at gmail.com>
-+
-+ Add integration with gcc's -ffinite-math-only and optimize wrapper
-+ functions in libm.
-+ * Versions.def: Define GLIBC_2.15 version for libm.
-+ * math/Makefile (headers): Add bits/math-finite.h.
-+ * math/bits/math-finite.h: New file.
-+ * sysdeps/ia64/fpu/bits/math-finite.h: New file.
-+ * math/Versions [libm] (GLIBC_2.15): Export __*_finite symbols.
-+ * math/e_acoshl.c: Add __*_finite alias.
-+ * math/e_acosl.c: Likewise.
-+ * math/e_asinl.c: Likewise.
-+ * math/e_atan2l.c: Likewise.
-+ * math/e_atanhl.c: Likewise.
-+ * math/e_coshl.c: Likewise.
-+ * math/e_exp10.c: Likewise.
-+ * math/e_exp10f.c: Likewise.
-+ * math/e_exp10l.c: Likewise.
-+ * math/e_exp2l.c: Likewise.
-+ * math/e_fmodl.c: Likewise.
-+ * math/e_gammal_r.c: Likewise.
-+ * math/e_hypotl.c: Likewise.
-+ * math/e_j0l.c: Likewise.
-+ * math/e_j1l.c: Likewise.
-+ * math/e_jnl.c: Likewise.
-+ * math/e_lgammal_r.c: Likewise.
-+ * math/e_log10l.c: Likewise.
-+ * math/e_log2l.c: Likewise.
-+ * math/e_logl.c: Likewise.
-+ * math/e_powl.c: Likewise.
-+ * math/e_sinhl.c: Likewise.
-+ * math/e_sqrtl.c: Likewise.
-+ * math/e_scalb.c: Completely rewritten and optimized.
-+ * math/e_scalbf.c: Likewise.
-+ * math/e_scalbl.c: Likewise.
-+ * math/w_acos.c: Likewise.
-+ * math/w_acosf.c: Likewise.
-+ * math/w_acosl.c: Likewise.
-+ * math/w_acosh.c: Likewise.
-+ * math/w_acoshf.c: Likewise.
-+ * math/w_acoshl.c: Likewise.
-+ * math/w_asin.c: Likewise.
-+ * math/w_asinf.c: Likewise.
-+ * math/w_asinl.c: Likewise.
-+ * math/w_atan2.c: Likewise.
-+ * math/w_atan2f.c: Likewise.
-+ * math/w_atan2l.c: Likewise.
-+ * math/w_atanh.c: Likewise.
-+ * math/w_atanhf.c: Likewise.
-+ * math/w_atanhl.c: Likewise.
-+ * math/w_exp10.c: Likewise.
-+ * math/w_exp10f.c: Likewise.
-+ * math/w_exp10l.c: Likewise.
-+ * math/w_fmod.c: Likewise.
-+ * math/w_fmodf.c: Likewise.
-+ * math/w_fmodl.c: Likewise.
-+ * math/w_j0.c: Likewise.
-+ * math/w_j0f.c: Likewise.
-+ * math/w_j0l.c: Likewise.
-+ * math/w_j1.c: Likewise.
-+ * math/w_j1f.c: Likewise.
-+ * math/w_j1l.c: Likewise.
-+ * math/w_jn.c: Likewise.
-+ * math/w_jnf.c: Likewise.
-+ * math/w_log.c: Likewise.
-+ * math/w_logf.c: Likewise.
-+ * math/w_logl.c: Likewise.
-+ * math/w_log10.c: Likewise.
-+ * math/w_log10f.c: Likewise.
-+ * math/w_log10l.c: Likewise.
-+ * math/w_log2.c: Likewise.
-+ * math/w_log2f.c: Likewise.
-+ * math/w_log2l.c: Likewise.
-+ * math/w_pow.c: Likewise.
-+ * math/w_powf.c: Likewise.
-+ * math/w_powl.c: Likewise.
-+ * math/w_remainder.c: Likewise.
-+ * math/w_remainderf.c: Likewise.
-+ * math/w_remainderl.c: Likewise.
-+ * math/w_scalb.c: Likewise.
-+ * math/w_scalbf.c: Likewise.
-+ * math/w_scalbl.c: Likewise.
-+ * math/w_sqrt.c: Likewise.
-+ * math/w_sqrtf.c: Likewise.
-+ * math/w_sqrtl.c: Likewise.
-+ * math/math.h: Define __MATH_DECLARE_LDOUBLE if long double functions
-+ are declared. Include <bits/math-finite.h> if -ffinite-math-only is
-+ used.
-+ * math/math_private.h: Declare __kernel_standard_f.
-+ * math/w_cosh.c: Remove cruft and optimize a bit.
-+ * math/w_coshf.c: Likewise.
-+ * math/w_coshl.c: Likewise.
-+ * math/w_exp2.c: Likewise.
-+ * math/w_exp2f.c: Likewise.
-+ * math/w_exp2l.c: Likewise.
-+ * math/w_hypot.c: Likewise.
-+ * math/w_hypotf.c: Likewise.
-+ * math/w_hypotl.c: Likewise.
-+ * math/w_lgamma.c: Likewise.
-+ * math/w_lgamma_r.c: Likewise.
-+ * math/w_lgammaf.c: Likewise.
-+ * math/w_lgammaf_r.c: Likewise.
-+ * math/w_lgammal.c: Likewise.
-+ * math/w_lgammal_r.c: Likewise.
-+ * math/w_sinh.c: Likewise.
-+ * math/w_sinhf.c: Likewise.
-+ * math/w_sinhl.c: Likewise.
-+ * math/w_tgamma.c: Likewise.
-+ * math/w_tgammaf.c: Likewise.
-+ * math/w_tgammal.c: Likewise.
-+ * sysdeps/ieee754/dbl-64/e_atanh.c: Likewise.
-+ * sysdeps/ieee754/flt-32/e_atanhf.c: Likewise.
-+ * sysdeps/i386/fpu/e_acos.S: Add __*_finite alias.
-+ Minor optimizations. Pretty printing. Remove cruft.
-+ * sysdeps/i386/fpu/e_acosf.S: Likewise.
-+ * sysdeps/i386/fpu/e_acosh.S: Likewise.
-+ * sysdeps/i386/fpu/e_acoshf.S: Likewise.
-+ * sysdeps/i386/fpu/e_acoshl.S: Likewise.
-+ * sysdeps/i386/fpu/e_acosl.c: Likewise.
-+ * sysdeps/i386/fpu/e_asin.S: Likewise.
-+ * sysdeps/i386/fpu/e_asinf.S: Likewise.
-+ * sysdeps/i386/fpu/e_atan2.S: Likewise.
-+ * sysdeps/i386/fpu/e_atan2f.S: Likewise.
-+ * sysdeps/i386/fpu/e_atan2l.c: Likewise.
-+ * sysdeps/i386/fpu/e_atanh.S: Likewise.
-+ * sysdeps/i386/fpu/e_atanhf.S: Likewise.
-+ * sysdeps/i386/fpu/e_atanhl.S: Likewise.
-+ * sysdeps/i386/fpu/e_exp10.S: Likewise.
-+ * sysdeps/i386/fpu/e_exp10f.S: Likewise.
-+ * sysdeps/i386/fpu/e_exp10l.S: Likewise.
-+ * sysdeps/i386/fpu/e_exp2.S: Likewise.
-+ * sysdeps/i386/fpu/e_exp2f.S: Likewise.
-+ * sysdeps/i386/fpu/e_exp2l.S: Likewise.
-+ * sysdeps/i386/fpu/e_fmod.S: Likewise.
-+ * sysdeps/i386/fpu/e_fmodf.S: Likewise.
-+ * sysdeps/i386/fpu/e_fmodl.c: Likewise.
-+ * sysdeps/i386/fpu/e_hypot.S: Likewise.
-+ * sysdeps/i386/fpu/e_hypotf.S: Likewise.
-+ * sysdeps/i386/fpu/e_log.S: Likewise.
-+ * sysdeps/i386/fpu/e_log10.S: Likewise.
-+ * sysdeps/i386/fpu/e_log10f.S: Likewise.
-+ * sysdeps/i386/fpu/e_log10l.S: Likewise.
-+ * sysdeps/i386/fpu/e_log2.S: Likewise.
-+ * sysdeps/i386/fpu/e_log2f.S: Likewise.
-+ * sysdeps/i386/fpu/e_log2l.S: Likewise.
-+ * sysdeps/i386/fpu/e_logf.S: Likewise.
-+ * sysdeps/i386/fpu/e_logl.S: Likewise.
-+ * sysdeps/i386/fpu/e_pow.S: Likewise.
-+ * sysdeps/i386/fpu/e_powf.S: Likewise.
-+ * sysdeps/i386/fpu/e_powl.S: Likewise.
-+ * sysdeps/i386/fpu/e_remainder.S: Likewise.
-+ * sysdeps/i386/fpu/e_remainderf.S: Likewise.
-+ * sysdeps/i386/fpu/e_remainderl.S: Likewise.
-+ * sysdeps/i386/fpu/e_scalb.S: Likewise.
-+ * sysdeps/i386/fpu/e_scalbf.S: Likewise.
-+ * sysdeps/i386/fpu/e_scalbl.S: Likewise.
-+ * sysdeps/i386/fpu/e_sqrt.S: Likewise.
-+ * sysdeps/i386/fpu/e_sqrtf.S: Likewise.
-+ * sysdeps/i386/fpu/e_sqrtl.c: Likewise.
-+ * sysdeps/ieee754/dbl-64/e_acosh.c: Likewise.
-+ * sysdeps/ieee754/dbl-64/e_asin.c: Likewise.
-+ * sysdeps/ieee754/dbl-64/e_atan2.c: Likewise.
-+ * sysdeps/ieee754/dbl-64/e_cosh.c: Likewise.
-+ * sysdeps/ieee754/dbl-64/e_exp2.c: Likewise.
-+ * sysdeps/ieee754/dbl-64/e_fmod.c: Likewise.
-+ * sysdeps/ieee754/dbl-64/e_gamma_r.c: Likewise.
-+ * sysdeps/ieee754/dbl-64/e_hypot.c: Likewise.
-+ * sysdeps/ieee754/dbl-64/e_j0.c: Likewise.
-+ * sysdeps/ieee754/dbl-64/e_j1.c: Likewise.
-+ * sysdeps/ieee754/dbl-64/e_jn.c: Likewise.
-+ * sysdeps/ieee754/dbl-64/e_lgamma_r.c: Likewise.
-+ * sysdeps/ieee754/dbl-64/e_log.c: Likewise.
-+ * sysdeps/ieee754/dbl-64/e_log10.c: Likewise.
-+ * sysdeps/ieee754/dbl-64/e_log2.c: Likewise.
-+ * sysdeps/ieee754/dbl-64/e_pow.c: Likewise.
-+ * sysdeps/ieee754/dbl-64/e_remainder.c: Likewise.
-+ * sysdeps/ieee754/dbl-64/e_sinh.c: Likewise.
-+ * sysdeps/ieee754/dbl-64/e_sqrt.c: Likewise.
-+ * sysdeps/ieee754/dbl-64/halfulp.c: Likewise.
-+ * sysdeps/ieee754/dbl-64/s_asinh.c: Likewise.
-+ * sysdeps/ieee754/flt-32/e_acosf.c: Likewise.
-+ * sysdeps/ieee754/flt-32/e_acoshf.c: Likewise.
-+ * sysdeps/ieee754/flt-32/e_asinf.c: Likewise.
-+ * sysdeps/ieee754/flt-32/e_atan2f.c: Likewise.
-+ * sysdeps/ieee754/flt-32/e_coshf.c: Likewise.
-+ * sysdeps/ieee754/flt-32/e_exp2f.c: Likewise.
-+ * sysdeps/ieee754/flt-32/e_fmodf.c: Likewise.
-+ * sysdeps/ieee754/flt-32/e_gammaf_r.c: Likewise.
-+ * sysdeps/ieee754/flt-32/e_hypotf.c: Likewise.
-+ * sysdeps/ieee754/flt-32/e_j0f.c: Likewise.
-+ * sysdeps/ieee754/flt-32/e_j1f.c: Likewise.
-+ * sysdeps/ieee754/flt-32/e_jnf.c: Likewise.
-+ * sysdeps/ieee754/flt-32/e_lgammaf_r.c: Likewise.
-+ * sysdeps/ieee754/flt-32/e_log10f.c: Likewise.
-+ * sysdeps/ieee754/flt-32/e_log2f.c: Likewise.
-+ * sysdeps/ieee754/flt-32/e_logf.c: Likewise.
-+ * sysdeps/ieee754/flt-32/e_powf.c: Likewise.
-+ * sysdeps/ieee754/flt-32/e_remainderf.c: Likewise.
-+ * sysdeps/ieee754/flt-32/e_sinhf.c: Likewise.
-+ * sysdeps/ieee754/flt-32/e_sqrtf.c: Likewise.
-+ * sysdeps/ieee754/flt-32/s_asinhf.c: Likewise.
-+ * sysdeps/ieee754/ldbl-128/e_acoshl.c: Likewise.
-+ * sysdeps/ieee754/ldbl-128/e_acosl.c: Likewise.
-+ * sysdeps/ieee754/ldbl-128/e_asinl.c: Likewise.
-+ * sysdeps/ieee754/ldbl-128/e_atan2l.c: Likewise.
-+ * sysdeps/ieee754/ldbl-128/e_atanhl.c: Likewise.
-+ * sysdeps/ieee754/ldbl-128/e_coshl.c: Likewise.
-+ * sysdeps/ieee754/ldbl-128/e_fmodl.c: Likewise.
-+ * sysdeps/ieee754/ldbl-128/e_gammal_r.c: Likewise.
-+ * sysdeps/ieee754/ldbl-128/e_hypotl.c: Likewise.
-+ * sysdeps/ieee754/ldbl-128/e_j0l.c: Likewise.
-+ * sysdeps/ieee754/ldbl-128/e_j1l.c: Likewise.
-+ * sysdeps/ieee754/ldbl-128/e_jnl.c: Likewise.
-+ * sysdeps/ieee754/ldbl-128/e_lgammal_r.c: Likewise.
-+ * sysdeps/ieee754/ldbl-128/e_log10l.c: Likewise.
-+ * sysdeps/ieee754/ldbl-128/e_log2l.c: Likewise.
-+ * sysdeps/ieee754/ldbl-128/e_logl.c: Likewise.
-+ * sysdeps/ieee754/ldbl-128/e_powl.c: Likewise.
-+ * sysdeps/ieee754/ldbl-128/e_remainderl.c: Likewise.
-+ * sysdeps/ieee754/ldbl-128/e_sinhl.c: Likewise.
-+ * sysdeps/ieee754/ldbl-128ibm/e_acoshl.c: Likewise.
-+ * sysdeps/ieee754/ldbl-128ibm/e_acosl.c: Likewise.
-+ * sysdeps/ieee754/ldbl-128ibm/e_asinl.c: Likewise.
-+ * sysdeps/ieee754/ldbl-128ibm/e_atan2l.c: Likewise.
-+ * sysdeps/ieee754/ldbl-128ibm/e_atanhl.c: Likewise.
-+ * sysdeps/ieee754/ldbl-128ibm/e_coshl.c: Likewise.
-+ * sysdeps/ieee754/ldbl-128ibm/e_fmodl.c: Likewise.
-+ * sysdeps/ieee754/ldbl-128ibm/e_gammal_r.c: Likewise.
-+ * sysdeps/ieee754/ldbl-128ibm/e_hypotl.c: Likewise.
-+ * sysdeps/ieee754/ldbl-128ibm/e_log10l.c: Likewise.
-+ * sysdeps/ieee754/ldbl-128ibm/e_log2l.c: Likewise.
-+ * sysdeps/ieee754/ldbl-128ibm/e_logl.c: Likewise.
-+ * sysdeps/ieee754/ldbl-128ibm/e_powl.c: Likewise.
-+ * sysdeps/ieee754/ldbl-128ibm/e_remainderl.c: Likewise.
-+ * sysdeps/ieee754/ldbl-128ibm/e_sinhl.c: Likewise.
-+ * sysdeps/ieee754/ldbl-128ibm/e_sqrtl.c: Likewise.
-+ * sysdeps/ieee754/ldbl-96/e_acoshl.c: Likewise.
-+ * sysdeps/ieee754/ldbl-96/e_asinl.c: Likewise.
-+ * sysdeps/ieee754/ldbl-96/e_atan2l.c: Likewise.
-+ * sysdeps/ieee754/ldbl-96/e_atanhl.c: Likewise.
-+ * sysdeps/ieee754/ldbl-96/e_coshl.c: Likewise.
-+ * sysdeps/ieee754/ldbl-96/e_gammal_r.c: Likewise.
-+ * sysdeps/ieee754/ldbl-96/e_hypotl.c: Likewise.
-+ * sysdeps/ieee754/ldbl-96/e_j0l.c: Likewise.
-+ * sysdeps/ieee754/ldbl-96/e_j1l.c: Likewise.
-+ * sysdeps/ieee754/ldbl-96/e_jnl.c: Likewise.
-+ * sysdeps/ieee754/ldbl-96/e_lgammal_r.c: Likewise.
-+ * sysdeps/ieee754/ldbl-96/e_remainderl.c: Likewise.
-+ * sysdeps/ieee754/ldbl-96/e_sinhl.c: Likewise.
-+ * sysdeps/ieee754/ldbl-96/s_asinhl.c: Likewise.
-+ * sysdeps/powerpc/fpu/e_hypot.c: Likewise.
-+ * sysdeps/powerpc/fpu/e_hypotf.c: Likewise.
-+ * sysdeps/powerpc/fpu/e_sqrt.c: Likewise.
-+ * sysdeps/powerpc/fpu/e_sqrtf.c: Likewise.
-+ * sysdeps/powerpc/powerpc64/fpu/e_sqrt.c: Likewise.
-+ * sysdeps/powerpc/powerpc64/fpu/e_sqrtf.c: Likewise.
-+ * sysdeps/s390/fpu/e_sqrt.c: Likewise.
-+ * sysdeps/s390/fpu/e_sqrtf.c: Likewise.
-+ * sysdeps/s390/fpu/e_sqrtl.c: Likewise.
-+ * sysdeps/sparc/sparc32/e_sqrt.c: Likewise.
-+ * sysdeps/sparc/sparc64/fpu/e_sqrtl.c: Likewise.
-+ * sysdeps/x86_64/fpu/e_exp2l.S: Likewise.
-+ * sysdeps/x86_64/fpu/e_fmodl.S: Likewise.
-+ * sysdeps/x86_64/fpu/e_log10l.S: Likewise.
-+ * sysdeps/x86_64/fpu/e_log2l.S: Likewise.
-+ * sysdeps/x86_64/fpu/e_logl.S: Likewise.
-+ * sysdeps/x86_64/fpu/e_powl.S: Likewise.
-+ * sysdeps/x86_64/fpu/e_remainderl.S: Likewise.
-+ * sysdeps/x86_64/fpu/e_scalbl.S: Likewise.
-+ * sysdeps/x86_64/fpu/e_sqrt.c: Likewise. Fix parameter order
-+ * sysdeps/x86_64/fpu/e_sqrtf.c: Likewise.
-+ * sysdeps/x86_64/fpu/math_private.h (__isnan): Cast d parameter.
-+ (__isnanf): Likewise.
-+ (__isinf_ns): Likewise.
-+ (__isinf_nsf): Likewise.
-+ (__finite): Likewise.
-+ (__finitef): Likewise.
-+ (__ieee754_sqrt): Define as macro.
-+ (__ieee754_sqrtf): Define as macro.
-+ (__ieee754_sqrtl): Define as macro.
-+ * sysdeps/x86_64/fpu/bits/fenv.h (feraiseexcept): Add partially
-+ inlined copy.
-+ * sysdeps/x86_64/fpu/bits/mathinline.h: Make use of
-+ __FINITE_MATH_ONLY__ consistent.
-+ * sysdeps/ieee754/k_standard.c (__kernel_standard_f): New function.
-+
-+2011-10-10 Andreas Schwab <schwab at linux-m68k.org>
-+
-+ * inet/getnetgrent_r.c (nscd_getnetgrent): Use __rawmemchr instead
-+ of rawmemchr.
-+
-+ * sysdeps/ieee754/ldbl-128ibm/s_isinf_nsl.c: New file.
-+
-+2011-10-09 Ulrich Drepper <drepper at gmail.com>
-+
-+ * po/ja.po: Update from translation team.
-+
-+2011-10-08 Roland McGrath <roland at hack.frob.com>
-+
-+ * locale/programs/locarchive.c (prepare_address_space): New function.
-+ (create_archive, enlarge_archive, open_archive): Use it.
-+
-+ * sysdeps/unix/sysv/linux/x86_64/time.c: Move #include <dl-vdso.h>
-+ inside [SHARED], where it is used.
-+
-+ * nscd/nscd_proto.h: Declare __nscd_setnetgrent.
-+
-+ * nss/getent.c (netgroup_keys): Remove unused variable.
-+ * sysdeps/ieee754/flt-32/s_isinf_nsf.c: Likewise.
-+
-+2011-10-08 Ulrich Drepper <drepper at gmail.com>
-+
-+ * include/math.h: Declare __isinf_ns, __isinf_nsf, __isinf_nsl.
-+ * sysdeps/ieee754/dbl-64/s_isinf_ns.c: New file.
-+ * sysdeps/ieee754/dbl-64/wordsize-64/s_isinf_ns.c: New file.
-+ * sysdeps/ieee754/flt-32/s_isinf_nsf.c: New file.
-+ * sysdeps/ieee754/ldbl-128/s_isinf_nsl.c: New file.
-+ * sysdeps/ieee754/ldbl-96/s_isinf_nsl.c: New file.
-+ * math/Makefile (libm-calls): Add s_isinf_ns.
-+ * math/divtc3.c: Use __isinf_nsl instead of isinf.
-+ * math/multc3.c: Likewise.
-+ * math/s_casin.c: Likewise.
-+ * math/s_casinf.c: Likewise.
-+ * math/s_casinl.c: Likewise.
-+ * math/s_ccos.c: Likewise.
-+ * math/s_ccosf.c: Likewise.
-+ * math/s_ccosl.c: Likewise.
-+ * math/s_ctan.c: Likewise.
-+ * math/s_ctanf.c: Likewise.
-+ * math/s_ctanh.c: Likewise.
-+ * math/s_ctanhf.c: Likewise.
-+ * math/s_ctanhl.c: Likewise.
-+ * math/s_ctanl.c: Likewise.
-+ * math/w_fmod.c: Likewise.
-+ * math/w_fmodf.c: Likewise.
-+ * math/w_fmodl.c: Likewise.
-+ * math/w_remainder.c: Likewise.
-+ * math/w_remainderf.c: Likewise.
-+ * math/w_remainderl.c: Likewise.
-+ * sysdeps/ieee754/dbl-64/s_finite.c: Undefine __finite.
-+ * sysdeps/ieee754/dbl-64/s_isnan.c: Undefine __isnan.
-+ * sysdeps/ieee754/dbl-64/wordsize-64/s_finite.c: Undefine __finite.
-+ * sysdeps/ieee754/dbl-64/wordsize-64/s_isnan.c: Undefine __nan.
-+ * sysdeps/ieee754/flt-32/s_finitef.c: Undefine __finitef.
-+ * sysdeps/ieee754/flt-32/s_isnanf.c: Undefine __nan.
-+ * sysdeps/x86_64/fpu/math_private.h: Add optimized versions of __isnsn,
-+ __isnanf, __isinf_ns, __isinf_nsf, __finite, and __finitef.
-+
-+ * stdio-common/printf_fp.c: Use the fact that isinf returns the sign
-+ of the number.
-+ * stdio-common/printf_fphex.c: Likewise.
-+ * stdio-common/printf_size.c: Likewise.
-+
-+ * math/e_exp10.c: Include math_private.h using <...> not "...".
-+ * math/e_exp10f.c: Likewise.
-+ * math/e_exp10l.c: Likewise.
-+ * math/e_exp2l.c: Likewise.
-+ * math/e_j0l.c: Likewise.
-+ * math/e_j1l.c: Likewise.
-+ * math/e_jnl.c: Likewise.
-+ * math/e_lgammal_r.c: Likewise.
-+ * math/e_rem_pio2l.c: Likewise.
-+ * math/e_scalb.c: Likewise.
-+ * math/e_scalbf.c: Likewise.
-+ * math/e_scalbl.c: Likewise.
-+ * math/k_cosl.c: Likewise.
-+ * math/k_sinl.c: Likewise.
-+ * math/k_tanl.c: Likewise.
-+ * math/s_cacoshf.c: Likewise.
-+ * math/s_catan.c: Likewise.
-+ * math/s_catanf.c: Likewise.
-+ * math/s_catanh.c: Likewise.
-+ * math/s_catanhf.c: Likewise.
-+ * math/s_catanhl.c: Likewise.
-+ * math/s_catanl.c: Likewise.
-+ * math/s_ccosh.c: Likewise.
-+ * math/s_ccoshf.c: Likewise.
-+ * math/s_ccoshl.c: Likewise.
-+ * math/s_cexp.c: Likewise.
-+ * math/s_cexpf.c: Likewise.
-+ * math/s_cexpl.c: Likewise.
-+ * math/s_clog.c: Likewise.
-+ * math/s_clog10.c: Likewise.
-+ * math/s_clog10f.c: Likewise.
-+ * math/s_clog10l.c: Likewise.
-+ * math/s_clogf.c: Likewise.
-+ * math/s_clogl.c: Likewise.
-+ * math/s_csin.c: Likewise.
-+ * math/s_csinf.c: Likewise.
-+ * math/s_csinh.c: Likewise.
-+ * math/s_csinhf.c: Likewise.
-+ * math/s_csinhl.c: Likewise.
-+ * math/s_csinl.c: Likewise.
-+ * math/s_csqrt.c: Likewise.
-+ * math/s_csqrtf.c: Likewise.
-+ * math/s_csqrtl.c: Likewise.
-+ * math/s_ctan.c: Likewise.
-+ * math/s_ctanf.c: Likewise.
-+ * math/s_ctanh.c: Likewise.
-+ * math/s_ctanhf.c: Likewise.
-+ * math/s_ctanhl.c: Likewise.
-+ * math/s_ctanl.c: Likewise.
-+ * math/s_ldexp.c: Likewise.
-+ * math/s_ldexpf.c: Likewise.
-+ * math/s_ldexpl.c: Likewise.
-+ * math/s_significand.c: Likewise.
-+ * math/s_significandf.c: Likewise.
-+ * math/s_significandl.c: Likewise.
-+ * math/w_acos.c: Likewise.
-+ * math/w_acosf.c: Likewise.
-+ * math/w_acosh.c: Likewise.
-+ * math/w_acoshf.c: Likewise.
-+ * math/w_acoshl.c: Likewise.
-+ * math/w_acosl.c: Likewise.
-+ * math/w_asin.c: Likewise.
-+ * math/w_asinf.c: Likewise.
-+ * math/w_asinl.c: Likewise.
-+ * math/w_atan2.c: Likewise.
-+ * math/w_atan2f.c: Likewise.
-+ * math/w_atan2l.c: Likewise.
-+ * math/w_atanh.c: Likewise.
-+ * math/w_atanhf.c: Likewise.
-+ * math/w_atanhl.c: Likewise.
-+ * math/w_cosh.c: Likewise.
-+ * math/w_coshf.c: Likewise.
-+ * math/w_coshl.c: Likewise.
-+ * math/w_dremf.c: Likewise.
-+ * math/w_exp10.c: Likewise.
-+ * math/w_exp10f.c: Likewise.
-+ * math/w_exp10l.c: Likewise.
-+ * math/w_exp2.c: Likewise.
-+ * math/w_exp2f.c: Likewise.
-+ * math/w_fmod.c: Likewise.
-+ * math/w_fmodf.c: Likewise.
-+ * math/w_fmodl.c: Likewise.
-+ * math/w_hypot.c: Likewise.
-+ * math/w_hypotf.c: Likewise.
-+ * math/w_hypotl.c: Likewise.
-+ * math/w_j0.c: Likewise.
-+ * math/w_j0f.c: Likewise.
-+ * math/w_j0l.c: Likewise.
-+ * math/w_j1.c: Likewise.
-+ * math/w_j1f.c: Likewise.
-+ * math/w_j1l.c: Likewise.
-+ * math/w_jn.c: Likewise.
-+ * math/w_jnf.c: Likewise.
-+ * math/w_jnl.c: Likewise.
-+ * math/w_lgamma.c: Likewise.
-+ * math/w_lgamma_r.c: Likewise.
-+ * math/w_lgammaf.c: Likewise.
-+ * math/w_lgammaf_r.c: Likewise.
-+ * math/w_lgammal.c: Likewise.
-+ * math/w_lgammal_r.c: Likewise.
-+ * math/w_log.c: Likewise.
-+ * math/w_log10.c: Likewise.
-+ * math/w_log10f.c: Likewise.
-+ * math/w_log10l.c: Likewise.
-+ * math/w_log2.c: Likewise.
-+ * math/w_log2f.c: Likewise.
-+ * math/w_log2l.c: Likewise.
-+ * math/w_logf.c: Likewise.
-+ * math/w_logl.c: Likewise.
-+ * math/w_pow.c: Likewise.
-+ * math/w_powf.c: Likewise.
-+ * math/w_powl.c: Likewise.
-+ * math/w_remainder.c: Likewise.
-+ * math/w_remainderf.c: Likewise.
-+ * math/w_remainderl.c: Likewise.
-+ * math/w_scalb.c: Likewise.
-+ * math/w_scalbf.c: Likewise.
-+ * math/w_scalbl.c: Likewise.
-+ * math/w_sinh.c: Likewise.
-+ * math/w_sinhf.c: Likewise.
-+ * math/w_sinhl.c: Likewise.
-+ * math/w_sqrt.c: Likewise.
-+ * math/w_sqrtf.c: Likewise.
-+ * math/w_sqrtl.c: Likewise.
-+ * math/w_tgamma.c: Likewise.
-+ * math/w_tgammaf.c: Likewise.
-+ * math/w_tgammal.c: Likewise.
-+
-+ * po/ja.po: Update from translation team.
-+
-+2011-09-29 Andreas Jaeger <aj at suse.de>
-+
-+ [BZ #13179]
-+ * sunrpc/netname.c (netname2host): Fix logic.
-+
-+ [BZ #6779]
-+ [BZ #6783]
-+ * math/w_remainderl.c (__remainderl): Handle (NaN, 0) and (Inf,y)
-+ correctly.
-+ * math/w_remainder.c (__remainder): Likewise.
-+ * math/w_remainderf.c (__remainderf): Likewise.
-+ * math/libm-test.inc (remainder_test): Add test cases.
-+
-+2011-10-04 Andreas Krebbel <Andreas.Krebbel at de.ibm.com>
-+
-+ * stdlib/longlong.h: Update from GCC. Fix zarch smul_ppmm and
-+ sdiv_qrnnd.
-+
-+2011-10-07 Ulrich Drepper <drepper at gmail.com>
-+
-+ * string/test-memcmp.c: Avoid unncessary #defines.
-+ Patch by Liubov Dmitrieva <liubov.dmitrieva at gmail.com>.
-+
-+2011-08-31 Liubov Dmitrieva <liubov.dmitrieva at gmail.com>
-+
-+ * sysdeps/x86_64/multiarch/rawmemchr.S: Update.
-+ Use new sse2 version for core i3 - i7 as it's faster
-+ than sse42 version.
-+ (bit_Prefer_PMINUB_for_stringop): New.
-+ * sysdeps/x86_64/rawmemchr.S: Update.
-+ Replace with faster SSE2 version.
-+ * sysdeps/x86_64/memrchr.S: New file.
-+ * sysdeps/x86_64/memchr.S: Update.
-+ Replace with faster SSE2 version.
-+
-+2011-09-12 Marek Polacek <mpolacek at redhat.com>
-+
-+ * elf/dl-load.c (lose): Add cast to avoid warning.
-+
-+2011-10-07 Ulrich Drepper <drepper at gmail.com>
-+
-+ * po/ca.po: Update from translation team.
-+
-+ * inet/getnetgrent_r.c: Hook up nscd.
-+ * nscd/Makefile (routines): Add nscd_netgroup.
-+ (nscd-modules): Add netgroupcache.
-+ (CFLAGS-netgroupcache.c): Define.
-+ * nscd/cache.c (readdfcts): Add entries for GETNETGRENT and INNETGR.
-+ (cache_search): Add const to second parameter.
-+ * nscd/connections.c (serv2str): Add entries for GETNETGRENT and
-+ INNETGR.
-+ (dbs): Add netgrdb entry.
-+ (reqinfo): Add entries for GETNETGRENT, INNETGR, and GETFDNETGR.
-+ (verify_persistent_db): Handle netgrdb.
-+ (handle_request): Handle GETNETGRENT, INNETGR, and GETFDNETGR.
-+ * nscd/nscd-client.h (request_type): Add GETNETGRENT, INNETGR, and
-+ GETFDNETGR.
-+ (netgroup_response_header): Define.
-+ (innetgroup_response_header): Define.
-+ (datahead): Add netgroup_response_header and innetgroup_response_header
-+ elements.
-+ * nscd/nscd.conf: Add entries for netgroup cache.
-+ * nscd/nscd.h (dbtype): Add netgrdb.
-+ (_PATH_NSCD_NETGROUP_DB): Define.
-+ (netgroup_iov_disabled): Declare.
-+ (xmalloc, xcalloc, xrealloc): Move declarations here.
-+ (cache_search): Adjust prototype.
-+ Add netgroup-related prototypes.
-+ * nscd/nscd_conf.c (dbnames): Add netgrdb entry.
-+ * nscd/nscd_proto.h (__nss_not_use_nscd_netgroup): Declare.
-+ (__nscd_innetgr): Declare.
-+ * nscd/selinux.c (perms): Use access_vector_t as element type and
-+ add netgroup-related initializers.
-+ * nscd/netgroupcache.c: New file.
-+ * nscd/nscd_netgroup.c: New file.
-+ * nss/Versions [libc] (GLIBC_PRIVATE): Export __nss_lookup.
-+ * nss/getent.c (netgroup_keys): Use setnetgrent only for one parameter.
-+ For four parameters use innetgr.
-+ * nss/nss_files/files-init.c: Add definition and callback for netgr.
-+ * nss/nsswitch.c (__nss_lookup): Add libc_hidden_def.
-+ (__nss_disable_nscd): Set __nss_not_use_nscd_netgroup.
-+ * nss/nsswitch.h (__nss_lookup): Add libc_hidden_proto.
-+
-+ * nscd/connections.c (register_traced_file): Don't register file
-+ for disabled databases.
-+
-+2011-10-06 Ulrich Drepper <drepper at gmail.com>
-+
-+ * nscd/grpcache.c (cache_addgr): Initialize written in all cases.
-+
-+ * nss/nsswitch.c (__nss_lookup_function): Fix order of deleting
-+ from tree and freeing node.
-+
-+2011-09-25 Jiri Olsa <jolsa at redhat.com>
-+
-+ * nss/nsswitch.c (__nss_database_lookup): Handle
-+ nss_parse_service_list out of memory case.
-+
-+2011-09-15 Jiri Olsa <jolsa at redhat.com>
-+
-+ * nss/nsswitch.c (__nss_lookup_function): Handle __tsearch
-+ out of memory case.
-+
-+2011-10-04 Andreas Schwab <schwab at redhat.com>
-+
-+ * include/dlfcn.h (__RTLD_NOIFUNC): Define.
-+ * elf/do-rel.h (elf_dynamic_do_rel): Add parameter skip_ifunc and
-+ pass it down.
-+ * elf/dynamic-link.h: Adjust prototypes of elf_machine_rel,
-+ elf_machine_rela, elf_machine_lazy_rel.
-+ (_ELF_DYNAMIC_DO_RELOC): Add parameter skip_ifunc and pass it down.
-+ (ELF_DYNAMIC_DO_REL): Likewise.
-+ (ELF_DYNAMIC_DO_RELA): Likewise.
-+ (ELF_DYNAMIC_RELOCATE): Likewise.
-+ * elf/dl-reloc.c (_dl_relocate_object): Pass __RTLD_NOIFUNC down
-+ to ELF_DYNAMIC_DO_REL.
-+ * elf/rtld.c (_dl_start): Adjust use of ELF_DYNAMIC_RELOCATE.
-+ (dl_main): In trace mode always set __RTLD_NOIFUNC.
-+ * elf/dl-conflict.c (_dl_resolve_conflicts): Adjust call to
-+ elf_machine_rela.
-+ * sysdeps/i386/dl-machine.h (elf_machine_rel): Add parameter
-+ skip_ifunc, don't call ifunc function if non-zero.
-+ (elf_machine_rela): Likewise.
-+ (elf_machine_lazy_rel): Likewise.
-+ (elf_machine_lazy_rela): Likewise.
-+ * sysdeps/ia64/dl-machine.h (elf_machine_rela): Likewise.
-+ (elf_machine_lazy_rel): Likewise.
-+ * sysdeps/powerpc/powerpc32/dl-machine.h (elf_machine_rela):
-+ Likewise.
-+ (elf_machine_lazy_rel): Likewise.
-+ * sysdeps/powerpc/powerpc64/dl-machine.h (elf_machine_rela):
-+ Likewise.
-+ (elf_machine_lazy_rel): Likewise.
-+ * sysdeps/s390/s390-32/dl-machine.h (elf_machine_rela): Likewise.
-+ (elf_machine_lazy_rel): Likewise.
-+ * sysdeps/s390/s390-64/dl-machine.h (elf_machine_rela): Likewise.
-+ (elf_machine_lazy_rel): Likewise.
-+ * sysdeps/sh/dl-machine.h (elf_machine_rela): Likewise.
-+ (elf_machine_lazy_rel): Likewise.
-+ * sysdeps/sparc/sparc32/dl-machine.h (elf_machine_rela): Likewise.
-+ (elf_machine_lazy_rel): Likewise.
-+ * sysdeps/sparc/sparc64/dl-machine.h (elf_machine_rela): Likewise.
-+ (elf_machine_lazy_rel): Likewise.
-+ * sysdeps/x86_64/dl-machine.h (elf_machine_rela): Likewise.
-+ (elf_machine_lazy_rel): Likewise.
-+
-+2011-09-28 Ulrich Drepper <drepper at gmail.com>
-+
-+ * nss/nss_files/files-init.c (_nss_files_init): Use static
-+ initialization for all the *_traced_file variables.
-+
-+2011-09-28 Andreas Schwab <schwab at redhat.com>
-+
-+ * sysdeps/powerpc/fpu/libm-test-ulps: Adjust ULPs for jn tests.
-+
-+2011-09-27 Roland McGrath <roland at hack.frob.com>
-+
-+ [BZ #13226]
-+ * manual/signal.texi (Longjmp in Handler): Grammar fixes.
-+
-+2011-09-27 Andreas Schwab <schwab at redhat.com>
-+
-+ * nss/nss_files/files-initgroups.c (_nss_files_initgroups_dyn):
-+ Reread the line before reparsing it.
-+
-+2011-09-26 Andreas Schwab <schwab at redhat.com>
-+
-+ * sysdeps/x86_64/fpu/bits/mathinline.h: Use __asm instead of asm.
-+
-+2011-09-21 Chung-Lin Tang <cltang at codesourcery.com>
-+ Maxim Kuvyrkov <maxim at codesourcery.com>
-+ Joseph Myers <joseph at codesourcery.com>
-+
-+ * resolv/Makefile (LDLIBS-resolv.so): Link in $(elfobjdir)/ld.so
-+ if needed for __stack_chk_guard.
-+
-+2011-09-19 Roland McGrath <roland at hack.frob.com>
-+
-+ * sysdeps/posix/spawni.c (script_execute): Always define it.
-+ It will be optimized away if unused.
-+ (maybe_script_execute): New function.
-+ (__spawni): Call it.
-+
-+ * Makerules: Don't include tls.make.
-+ (config-tls): Always set to thread.
-+ * tls.make.c: File removed.
-+
-+2011-09-19 Mike Frysinger <vapier at gentoo.org>
-+
-+ * Makeconfig (CPPFLAGS): Prepend $(CPPFLAGS-config).
-+ * config.make.in (CPPFLAGS-config): New substituted variable.
-+
-+2011-09-15 Ulrich Drepper <drepper at gmail.com>
-+
-+ * sysdeps/ieee754/dbl-64/wordsize-64/s_finite.c: New file.
-+
-+ [BZ #13192]
-+ * sysdeps/unix/sysv/linux/bits/in.h (IP_MULTICAST_ALL): Define.
-+ Patch mostly by Neil Horman <nhorman at tuxdriver.com>.
-+
-+2011-09-15 Roland McGrath <roland at hack.frob.com>
-+
-+ * sysdeps/unix/sysv/linux/i386/____longjmp_chk.S
-+ (CALL_FAIL): Use HIDDEN_JUMPTARGET for __fortify_fail.
-+ * sysdeps/unix/sysv/linux/x86_64/____longjmp_chk.S
-+ (CALL_FAIL): Likewise.
-+ * sysdeps/unix/sysv/linux/ia64/____longjmp_chk.S (CHECK_RSP): Likewise.
-+ (CALL_FAIL): Macro removed.
-+ Patch mostly by Mike Frysinger <vapier at gentoo.org>.
-+
-+2011-09-15 Ulrich Drepper <drepper at gmail.com>
-+
-+ * sysdeps/x86_64/fpu/bits/mathinline.h: Add fmax and fmin optimizations
-+ for __FINITE_MATH_ONLY__ == 1.
-+
-+2011-09-15 Andreas Schwab <schwab at redhat.com>
-+
-+ * sysdeps/powerpc/fpu/e_hypot.c (__ieee754_hypot): Use
-+ __ieee754_sqrt instead of sqrt.
-+ * sysdeps/powerpc/fpu/e_hypotf.c (__ieee754_hypotf): Use
-+ __ieee754_sqrtf instead of sqrtf.
-+ * sysdeps/powerpc/fpu/e_rem_pio2f.c (__ieee754_rem_pio2f): Use
-+ __floorf instead of floorf.
-+ * sysdeps/powerpc/fpu/k_rem_pio2f.c (__fp_kernel_rem_pio2f): Use
-+ __floorf, __truncf instead of floorf, truncf.
-+
-+2011-09-14 Ulrich Drepper <drepper at gmail.com>
-+
-+ * sysdeps/x86_64/fpu/s_copysign.S [ELF]: Use correct section.
-+
-+ * sysdeps/x86_64/fpu/bits/mathinline.h (__MATH_INLINE): Use
-+ __extern_always_inline.
-+ Define lrint{f,} and llrint{f,} for 64-bit and in some situations for
-+ 32-bit.
-+
-+2011-09-14 Andreas Schwab <schwab at redhat.com>
-+
-+ * elf/rtld.c (dl_main): Also relocate in dependency order when
-+ doing symbol dependency testing.
-+
-+2011-09-13 Andreas Schwab <schwab at linux-m68k.org>
-+
-+ * sysdeps/powerpc/powerpc64/dl-machine.h (elf_machine_rela):
-+ Always define `refsym'.
-+
-+2011-09-13 Andreas Schwab <schwab at redhat.com>
-+
-+ * misc/sys/select.h (__FD_MASK): Renamed from __FDMASK.
-+ (__FD_ELT): Renamed from __FDELT.
-+ * misc/bits/select2.h (__FD_ELT): Likewise.
-+ * bits/select.h (__FD_SET, __FD_CLR, __FD_ISSET): Use __FD_ELT,
-+ __FD_MASK instead of __FDELT, __FDMASK.
-+ * sysdeps/i386/bits/select.h (__FD_SET, __FD_CLR, __FD_ISSET):
-+ Likewise.
-+ * sysdeps/x86_64/bits/select.h (__FD_SET, __FD_CLR, __FD_ISSET):
-+ Likewise.
-+
-+ * elf/Makefile (gen-ldd): Fix pattern.
-+
-+ * elf/rtld.c (dl_main): Only use USE___THREAD when defined.
-+ (init_tls): Likewise.
-+
-+2011-09-12 Ulrich Drepper <drepper at gmail.com>
-+
-+ * sysdeps/ieee754/dbl-64/wordsize-64/s_logb.c: New file.
-+
-+2011-09-12 Andreas Schwab <schwab at redhat.com>
-+
-+ * sysdeps/unix/sysv/linux/bits/socket.h (__cmsg_nxthdr): Cast to
-+ `struct cmsghdr *' instead of `void *'.
-+ * sysdeps/unix/sysv/linux/sparc/bits/socket.h (__cmsg_nxthdr):
-+ Likewise.
-+
-+2011-09-11 Andreas Schwab <schwab at linux-m68k.org>
-+
-+ * elf/Makefile (gen-ldd): Prepend $(..) to $(ldd-rewrite-script)
-+ if non-absolute.
-+ * sysdeps/unix/sysv/linux/configure.in: Remove leading ../ from
-+ ldd_rewrite_script.
-+
-+2011-09-11 Ulrich Drepper <drepper at gmail.com>
-+
-+ * configure.in: Remove --with-tls option.
-+ * config.h.in: Remove HAVE_TLS_SUPPORT entry.
-+ * sysdeps/i386/elf/configure.in: Always test for TLS support and err
-+ out in case it is missing.
-+ * sysdeps/ia64/elf/configure.in: Likewise.
-+ * sysdeps/powerpc/powerpc32/elf/configure.in: Likewise.
-+ * sysdeps/powerpc/powerpc64/elf/configure.in: Likewise.
-+ * sysdeps/s390/s390-32/elf/configure.in: Likewise.
-+ * sysdeps/s390/s390-64/elf/configure.in: Likewise.
-+ * sysdeps/sh/elf/configure.in: Likewise.
-+ * sysdeps/sparc/sparc32/elf/configure.in: Likewise.
-+ * sysdeps/sparc/sparc64/elf/configure.in: Likewise.
-+ * sysdeps/x86_64/elf/configure.in: Likewise.
-+ * sysdeps/mach/hurd/i386/tls.h: Remove test for HAVE_TLS_SUPPORT.
-+ * sysdeps/mach/hurd/tls.h: Likewise.
-+
-+ [BZ #13067]
-+ * malloc/obstack.h [!GNUC] (obstack_free): Avoid cast to int.
-+
-+ [BZ #13090]
-+ * configure.in: Fix use of AC_INIT.
-+
-+ * elf/dl-support.c (_dl_pagesize): Initialize to EXEC_PAGESIZE.
-+
-+2011-09-10 Ulrich Drepper <drepper at gmail.com>
-+
-+ * malloc/malloc.c: Replace MALLOC_FAILURE_ACTION with use of
-+ __set_errno.
-+ * malloc/hooks.c: Likewise.
-+
-+ * malloc/arena.c (ptmalloc_init_minimal): Removed. Initialize all
-+ variables statically.
-+ (narenas): Initialize.
-+ (list_lock): Initialize.
-+ (ptmalloc_init): Don't call ptmalloc_init_minimal. Remove
-+ initializtion of main_arena and list_lock. Small cleanups.
-+ Replace all uses of malloc_getpagesize with GLRO(dl_pagesize).
-+ * malloc/malloc.c: Remove malloc_getpagesize. Include <ldsodefs.h>.
-+ Add initializers to main_arena and mp_.
-+ (malloc_state): Remove pagesize member. Change all users to use
-+ GLRO(dl_pagesize).
-+
-+ * elf/rtld.c (rtld_global_ro): Initialize _dl_pagesize.
-+ * sysdeps/unix/sysv/linux/getpagesize.c: Simplify. GLRO(dl_pagesize)
-+ is always initialized.
-+
-+ * malloc/malloc.c: Removed unused configurations and dead code.
-+ * malloc/arena.c: Likewise.
-+ * malloc/hooks.c: Likewise.
-+ * malloc/Makefile (CPPFLAGS-malloc.c): Don't add -DATOMIC_FASTBINS.
-+
-+ * include/tls.h: Removed. USE___THREAD must always be defined.
-+ * bits/libc-tsd.h: Don't handle !USE___THREAD.
-+ * elf/dl-libc.c: Likewise.
-+ * elf/dl-tsd.c: Likewise.
-+ * include/errno.h: Likewise.
-+ * include/netdb.h: Likewise.
-+ * include/resolv.h: Likewise.
-+ * inet/herrno-loc.c: Likewise.
-+ * inet/herrno.c: Likewise.
-+ * malloc/arena.c: Likewise.
-+ * malloc/hooks.c: Likewise.
-+ * malloc/malloc.c: Likewise.
-+ * resolv/res-state.c: Likewise.
-+ * resolv/res_libc.c: Likewise.
-+ * sysdeps/i386/dl-machine.h: Likewise.
-+ * sysdeps/ia64/dl-machine.h: Likewise.
-+ * sysdeps/powerpc/powerpc32/dl-machine.h: Likewise.
-+ * sysdeps/powerpc/powerpc64/dl-machine.h: Likewise.
-+ * sysdeps/s390/s390-32/dl-machine.h: Likewise.
-+ * sysdeps/s390/s390-64/dl-machine.h: Likewise.
-+ * sysdeps/sh/dl-machine.h: Likewise.
-+ * sysdeps/sparc/sparc32/dl-machine.h: Likewise.
-+ * sysdeps/sparc/sparc64/dl-machine.h: Likewise.
-+ * sysdeps/unix/i386/sysdep.S: Likewise.
-+ * sysdeps/unix/sysv/linux/i386/sysdep.h: Likewise.
-+ * sysdeps/unix/sysv/linux/ia64/sysdep.S: Likewise.
-+ * sysdeps/unix/sysv/linux/s390/s390-32/sysdep.S: Likewise.
-+ * sysdeps/unix/sysv/linux/s390/s390-32/sysdep.h: Likewise.
-+ * sysdeps/unix/sysv/linux/s390/s390-64/sysdep.S: Likewise.
-+ * sysdeps/unix/sysv/linux/s390/s390-64/sysdep.h: Likewise.
-+ * sysdeps/unix/sysv/linux/sh/sysdep.h: Likewise.
-+ * sysdeps/unix/sysv/linux/sparc/sparc32/sysdep.h: Likewise.
-+ * sysdeps/unix/sysv/linux/sparc/sparc64/sysdep.h: Likewise.
-+ * sysdeps/unix/sysv/linux/x86_64/sysdep.h: Likewise.
-+ * sysdeps/unix/x86_64/sysdep.S: Likewise.
-+ * sysdeps/x86_64/dl-machine.h: Likewise.
-+ * tls.make.c: Likewise.
-+
-+ * configure.in: Remove --with-__thread option. Make tests for
-+ --no-whole-archive, __builtin_expect, symbol redirection, __thread,
-+ tls_model attribute fail if no support is available. Remove
-+ USE_IN_LIBIO.
-+ * Makeconfig: Adjust for dropped configure option. All features are
-+ now mandatory.
-+ * Makerules: Likewise.
-+ * Versions.def: Likewise.
-+ * argp/argp-fmtstream.c: Likewise.
-+ * argp/argp-fmtstream.h: Likewise.
-+ * argp/argp-help.c: Likewise.
-+ * assert/assert.c: Likewise.
-+ * config.h.in: Likewise.
-+ * config.make.in: Likewise.
-+ * configure: Likewise.
-+ * configure.in: Likewise.
-+ * csu/Versions: Likewise.
-+ * csu/init.c: Likewise.
-+ * elf/tst-audit2.c: Likewise.
-+ * elf/tst-tls10.c: Likewise.
-+ * elf/tst-tls10.h: Likewise.
-+ * elf/tst-tls11.c: Likewise.
-+ * elf/tst-tls12.c: Likewise.
-+ * elf/tst-tls14.c: Likewise.
-+ * elf/tst-tlsmod11.c: Likewise.
-+ * elf/tst-tlsmod12.c: Likewise.
-+ * elf/tst-tlsmod13.c: Likewise.
-+ * elf/tst-tlsmod13a.c: Likewise.
-+ * elf/tst-tlsmod14a.c: Likewise.
-+ * elf/tst-tlsmod15b.c: Likewise.
-+ * elf/tst-tlsmod16a.c: Likewise.
-+ * elf/tst-tlsmod16b.c: Likewise.
-+ * elf/tst-tlsmod7.c: Likewise.
-+ * elf/tst-tlsmod8.c: Likewise.
-+ * elf/tst-tlsmod9.c: Likewise.
-+ * gmon/gmon.c: Likewise.
-+ * grp/fgetgrent_r.c: Likewise.
-+ * grp/putgrent.c: Likewise.
-+ * hurd/fopenport.c: Likewise.
-+ * include/libc-symbols.h: Likewise.
-+ * include/tls.h: Likewise.
-+ * intl/gettextP.h: Likewise.
-+ * intl/loadinfo.h: Likewise.
-+ * locale/global-locale.c: Likewise.
-+ * locale/localeinfo.h: Likewise.
-+ * mach/devstream.c: Likewise.
-+ * malloc/arena.c: Likewise.
-+ * malloc/set-freeres.c: Likewise.
-+ * misc/err.c: Likewise.
-+ * misc/getttyent.c: Likewise.
-+ * misc/mntent_r.c: Likewise.
-+ * posix/getopt.c: Likewise.
-+ * posix/wordexp.c: Likewise.
-+ * pwd/fgetpwent_r.c: Likewise.
-+ * resolv/Versions: Likewise.
-+ * resolv/res_hconf.c: Likewise.
-+ * shadow/fgetspent_r.c: Likewise.
-+ * shadow/putspent.c: Likewise.
-+ * stdio-common/printf_fphex.c: Likewise.
-+ * stdio-common/tmpfile.c: Likewise.
-+ * stdlib/abort.c: Likewise.
-+ * stdlib/fmtmsg.c: Likewise.
-+ * sunrpc/auth_unix.c: Likewise.
-+ * sunrpc/clnt_perr.c: Likewise.
-+ * sunrpc/clnt_tcp.c: Likewise.
-+ * sunrpc/clnt_udp.c: Likewise.
-+ * sunrpc/clnt_unix.c: Likewise.
-+ * sunrpc/openchild.c: Likewise.
-+ * sunrpc/svc_simple.c: Likewise.
-+ * sunrpc/svc_tcp.c: Likewise.
-+ * sunrpc/svc_udp.c: Likewise.
-+ * sunrpc/svc_unix.c: Likewise.
-+ * sunrpc/xdr.c: Likewise.
-+ * sunrpc/xdr_array.c: Likewise.
-+ * sunrpc/xdr_rec.c: Likewise.
-+ * sunrpc/xdr_ref.c: Likewise.
-+ * sunrpc/xdr_stdio.c: Likewise.
-+
-+2011-09-09 Ulrich Drepper <drepper at gmail.com>
-+
-+ * sysdeps/i386/fpu/libm-test-ulps: Adjust ULPs for jn tests.
-+
-+2011-07-03 Andreas Jaeger <aj at suse.de>
-+
-+ * math/libm-test.inc (jn_test): Add tests for BZ#11589.
-+ * sysdeps/x86_64/fpu/libm-test-ulps: Add new ULPs for jn_test,
-+ regenerate with gen-libm-tests.pl.
-+
-+2010-05-12 Petr Baudis <pasky at suse.cz>
-+
-+ [BZ #11589]
-+ * sysdeps/ieee754/dbl-64/e_jn.c: Compensate major precision loss
-+ around j0() zero points by switching to j1().
-+ * sysdeps/ieee754/flt-32/e_jnf.c: Likewise.
-+ * sysdeps/ieee754/ldbl-128/e_jnl.c: Likewise.
-+ * sysdeps/ieee754/ldbl-128ibm/e_jnl.c: Likewise.
-+ * sysdeps/ieee754/ldbl-96/e_jnl.c: Likewise.
-+
-+2011-09-09 Ulrich Drepper <drepper at gmail.com>
-+
-+ * sysdeps/unix/bsd/bsd4.4/bits/socket.h (__cmsg_nxthdr): Use NULL
-+ instead of 0.
-+ * sysdeps/unix/sysv/linux/bits/socket.h (__cmsg_nxthdr): Use (void*)0
-+ instead of 0. .
-+ * sysdeps/unix/sysv/linux/sparc/bits/socket.h: Likewise.
-+ Patch in part by Pavel Roskin <proski at gnu.org>.
-+
-+ [BZ #13138]
-+ * stdio-common/vfscanf.c (ADDW): Allocate large memory block with
-+ realloc.
-+ (_IO_vfscanf_internal): Remove reteof. Use errout after setting done.
-+ Free memory block if necessary.
-+
-+ [BZ #12847]
-+ * libio/genops.c (INTDEF): For string streams the _lock pointer can
-+ be NULL. Don't lock in this case.
-+
-+2011-09-09 Roland McGrath <roland at hack.frob.com>
-+
-+ * elf/elf.h (ELFOSABI_GNU): New macro.
-+ (ELFOSABI_LINUX): Define to that.
-+
-+2011-07-29 Denis Zaitceff <zaitceff at gmail.com>
-+
-+ * string/strncat.c (strncat): Undef the symbol in case it has been
-+ defined in bits/string.h.
-+
-+2011-09-09 Ulrich Drepper <drepper at gmail.com>
-+
-+ * elf/sotruss.ksh: Clean up, fix, and complete help messages.
-+
-+ * elf/dl-iteratephdr.c (__dl_iterate_phdr): Fill in data from the real
-+ link map.
-+
-+2011-08-17 Andreas Jaeger <aj at suse.de>
-+
-+ * elf/sprof.c (load_shobj): Remove unused variable log_hashfraction.
-+
-+2011-08-18 Paul Pluzhnikov <ppluzhnikov at google.com>
-+ Ian Lance Taylor <iant at google.com>
-+
-+ * math/libm-test.inc (lround_test): New testcase.
-+ * sysdeps/ieee754/dbl-64/s_lround.c (__lround): Don't lose precision.
-+
-+2011-09-08 Ulrich Drepper <drepper at gmail.com>
-+
-+ * Makefile: Remove support for automatic cvs check-ins.
-+ * Makerules: Likewise.
-+ * config.make.in: Likewise.
-+ * configure.in: Likewise.
-+ * intl/Makefile: Likewise.
-+ * locale/Makefile: Likewise.
-+ * po/Makefile: Likewise.
-+ * posix/Makefile: Likewise.
-+ * sysdeps/gnu/Makefile: Likewise.
-+ * sysdeps/mach/hurd/Makefile: Likewise.
-+ * sysdeps/sparc/sparc32/Makefile: Likewise.
-+
-+ [BZ #13118]
-+ * posix/Makefile (bug-regex32-ENV): Define.
-+ Patch by John Stanley <jpsinthemix at verizon.net>.
-+
-+ * misc/Makefile (headers): Add bits/select2.h.
-+ * misc/sys/select.h: Include bits/select2.h for _FORTIFY_SOURCE.
-+ * misc/bits/select2.h: New file.
-+ * include/bits/select2.h: New file.
-+ * debug/Makefile (routines): Add fdelt_chk.
-+ * debug/Versions: Export __fdelt_chk and __fdelt_warn for GLIBC_2.15.
-+ * debug/tst-chk1.c (do_test): Add tests for FD_SET, FD_CLR, and
-+ FD_ISSET.
-+ * debug/fdelt_chk.c: New file.
-+
-+ * wcsmbs/test-wcscmp.c: Moved from string/*. Adjust.
-+ * wcsmbs/test-wmemcmp.c: Likewise.
-+ * string/Makefile (strop-tests): Remove wcscmp and wmemcmp.
-+ * wcsmbs/Makefile (strop-tests): Add wcscmp and wmemcmp.
-+
-+2011-09-08 Liubov Dmitrieva <liubov.dmitrieva at gmail.com>
-+
-+ * string/Makefile (strop-tests): Add memcmp.
-+ * string/test-wmemcmp.c: New file.
-+ * string/test-memcmp.c: Add wmemcmp support.
-+
-+2011-09-08 Roland McGrath <roland at hack.frob.com>
-+
-+ [BZ #13153]
-+ * manual/libc.texinfo (EDITION, VERSION, UPDATED): Update for
-+ 2011-07-19 change.
-+
-+ * sysdeps/mach/hurd/fork.c (__fork): Initialize REFS so we don't use a
-+ garbage value in a __mach_port_mod_refs call in the cases of the
-+ task-self and thread-self ports.
-+
-+2011-09-06 Samuel Thibault <samuel.thibault at ens-lyon.org>
-+
-+ * sysdeps/mach/hurd/sys/param.h (DEV_BSIZE): New macro.
-+
-+2011-09-08 Andreas Schwab <schwab at redhat.com>
-+
-+ * elf/dl-load.c (lose): Check for non-null L.
-+
-+2011-09-07 Ulrich Drepper <drepper at gmail.com>
-+
-+ * elf/dl-load.c (open_verify): Use O_CLOEXEC.
-+
-+ * elf/dl-libc.c (dlerror_run): Pass back error code from
-+ dl_catch_error.
-+
-+ [BZ #13123]
-+ * elf/dl-load.c (lose): Free l_origin if it is valid.
-+
-+ * sysdeps/i386/i686/multiarch/strchr-sse2-bsf.S: Fix mixup in section
-+ names.
-+ * sysdeps/i386/i686/multiarch/strchr-sse2.S: Likewise.
-+ * sysdeps/i386/i686/multiarch/strlen-sse2-bsf.S: Likewise.
-+ * sysdeps/i386/i686/multiarch/strlen-sse2.S: Likewise.
-+ * sysdeps/i386/i686/multiarch/strrchr-sse2-bsf.S: Likewise.
-+ * sysdeps/i386/i686/multiarch/strrchr-sse2.S: Likewise.
-+ Patch by Liubov Dmitrieva <liubov.dmitrieva at intel.com>.
-+
-+2011-08-01 Adhemerval Zanella <azanella at linux.vnet.ibm.com>
-+
-+ * sysdeps/powerpc/fpu/e_hypot.c: New file.
-+ * sysdeps/powerpc/fpu/e_hypotf.c: New file.
-+ * sysdeps/powerpc/fpu/e_rem_pio2f.c: New file.
-+ * sysdeps/powerpc/fpu/k_rem_pio2f.c: New file.
-+ * sysdeps/powerpc/fpu/k_cosf.c: New file.
-+ * sysdeps/powerpc/fpu/k_sinf.c: New file.
-+ * sysdeps/powerpc/fpu/s_cosf.c: New file.
-+ * sysdeps/powerpc/fpu/s_sinf.c: New file.
-+ * sysdeps/powerpc/fpu/s_scalbnf.c: New file.
-+ * sysdeps/powerpc/fpu/s_float_bitwise.h: New file.
-+
-+2011-08-15 Alan Modra <amodra at gmail.com>
-+
-+ [BZ #13092]
-+ * sysdeps/powerpc/Makefile (gmon): Move sysdep_routines to..
-+ * sysdeps/powerpc/powerpc64/Makefile (gmon): ..here..
-+ * sysdeps/powerpc/powerpc32/Makefile (gmon): ..and here. Add
-+ ppc_mcount to static-only-routines.
-+ * sysdeps/powerpc/powerpc32/Versions: Export GLIBC_PRIVATE
-+ __mcount_internal.
-+ * sysdeps/powerpc/powerpc32/ppc-mcount.S (_mcount): Call
-+ __mcount_internal with usual JUMPTARGET. Remove useless nop.
-+
-+2011-08-18 David Flaherty <flaherty at linux.vnet.ibm.com>
-+
-+ * sysdeps/ieee754/ldbl-128ibm/s_fmal.c: New file which checks
-+ for finite and infinity parameters.
-+
-+2011-08-04 Will Schmidt <will_schmidt at vnet.ibm.com>
-+
-+ * sysdeps/powerpc/powerpc32/power7/strncmp.S: Adjust the alignment
-+ and add nop instructions for throughput optimization.
-+ * sysdeps/powerpc/powerpc64/power7/strncmp.S: Likewise.
-+
-+2011-07-28 Will Schmidt <will_schmidt at vnet.ibm.com>
-+
-+ * sysdeps/powerpc/powerpc32/power7/memcpy.S: Optimize the
-+ aligned copy for power7 with vector-scalar instructions.
-+ * sysdeps/powerpc/powerpc64/power7/memcpy.S: Likewise.
-+
-+2011-07-24 H.J. Lu <hongjiu.lu at intel.com>
-+
-+ * sysdeps/x86_64/dl-trampoline.S (_dl_runtime_profile): Simplify
-+ AVX check.
-+
-+2011-09-07 Andreas Schwab <schwab at redhat.com>
-+
-+ [BZ #13144]
-+ * sysdeps/unix/sysv/linux/x86_64/bits/sem.h (semdid_ds): Revert
-+ last change.
-+
-+2011-09-07 Ulrich Drepper <drepper at gmail.com>
-+
-+ * sysdeps/unix/sysv/linux/x86_64/init-first.c
-+ (_libc_vdso_platform_setup): If vDSO is not present store pointer to
-+ syscall wrapper around clock_gettime in __vdso_clock_gettime.
-+ * sysdeps/unix/sysv/linux/x86_64/syscalls.list: Add entry for
-+ clock_gettime.
-+
-+2011-09-06 Ulrich Drepper <drepper at gmail.com>
-+
-+ * sysdeps/unix/sysv/linux/x86_64/clock_gettime.c (INTERNAL_GETTIME):
-+ Forgot to demangle the pointer.
-+
-+ * sysdeps/i386/sysdep.h: Define atom_text_section.
-+ * sysdeps/x86_64/sysdep.h: Likewise.
-+ * sysdeps/i386/i686/multiarch/strchr-sse2-bsf.S: Place function in
-+ section with atom_text_section.
-+ * sysdeps/i386/i686/multiarch/strlen-sse2-bsf.S: Likewise.
-+ * sysdeps/i386/i686/multiarch/strrchr-sse2-bsf.S: Likewise.
-+ * sysdeps/x86_64/multiarch/strchr-sse2-no-bsf.S: Likewise.
-+ * sysdeps/x86_64/multiarch/strlen-no-bsf.S: Likewise.
-+ * sysdeps/x86_64/multiarch/strrchr-sse2-no-bsf.S: Likewise.
-+
-+ * sysdeps/unix/sysv/linux/x86_64/clock_gettime.c: New file.
-+ * sysdeps/unix/sysv/linux/clock_gettime.c (SYSCALL_GETTIME): Allow
-+ already be defined. Change to take two parameters and don't assign
-+ result to variable. Adjust all users.
-+ Define INTERNAL_GETTIME if not already defined.
-+ Use INTERNAL_GETTIME instead of INTERNAL_VSYSCALL got clock_gettime
-+ call.
-+ * sysdeps/unix/sysv/linux/x86_64/sysdep.h: Don't define
-+ HAVE_CLOCK_GETTIME_VSYSCALL.
-+ * sysdeps/unix/clock_gettime.c: Adjust use of SYSDEP_GETTIME_CPU.
-+
-+ * sysdeps/unix/sysv/linux/getsysstats.c (__get_nprocs): Don't use
-+ gettimeofday vsyscall, just use time.
-+
-+2011-09-06 Andreas Schwab <schwab at redhat.com>
-+
-+ * sysdeps/unix/sysv/linux/x86_64/gettimeofday.c [!SHARED]: Include
-+ <errno.h>.
-+
-+2011-09-06 Ulrich Drepper <drepper at gmail.com>
-+
-+ * sysdeps/unix/sysv/linux/kernel-features.h: Add entry for getcpu
-+ syscall on x86-64.
-+ * sysdeps/unix/sysv/linux/x86_64/gettimeofday.c [!SHARED]: Use real
-+ syscall.
-+ * sysdeps/unix/sysv/linux/x86_64/time.c: Likewise.
-+ * sysdeps/unix/sysv/linux/x86_64/sched_getcpu.S [!SHARED]: Use real
-+ syscall if possible.
-+
-+2011-09-05 Ulrich Drepper <drepper at gmail.com>
-+
-+ * elf/pldd.c (get_process_info): Don't read whole ELF header, just
-+ e_ident. Don't pass to find_mapsXX.
-+ * elf/pldd-xx.c (find_mapsXX): Remove second parameter.
-+
-+2011-07-20 Liubov Dmitrieva <liubov.dmitrieva at intel.com>
-+
-+ * sysdeps/x86_64/multiarch/Makefile (sysdep_routines): Add
-+ strchr-sse2-no-bsf strrchr-sse2-no-bsf
-+ * sysdeps/x86_64/multiarch/strchr.S: Update.
-+ Check bit_slow_BSF bit.
-+ * sysdeps/x86_64/multiarch/strrchr.S: Likewise.
-+ * sysdeps/x86_64/multiarch/strchr-sse2-no-bsf.S: New file.
-+ * sysdeps/x86_64/multiarch/strrchr-sse2-no-bsf.S: New file.
-+
-+2011-09-05 Ulrich Drepper <drepper at gmail.com>
-+
-+ [BZ #13134]
-+ * sysdeps/posix/spawni.c (script_execute): Define only for compatibility
-+ before glibc 2.15.
-+ (tryshell): Define.
-+ (__spawni): Change last parameter to be flag. Test
-+ SPAWN_XFLAGS_USE_PATH flag to use path or not.
-+ Don't try to use shell unless SPAWN_XFLAGS_TRY_SHELL is set.
-+ * sysdeps/mach/hurd/spawni.c: Change last parameter and adjust user.
-+ * posix/spawni.c: Likewise.
-+ * posix/spawn.c: Add compat version which passed SPAWN_XFLAGS_TRY_SHELL.
-+ * posix/spawnp.c: Likewise. Change normal version to use
-+ SPAWN_XFLAGS_USE_PATH.
-+ * posix/spawn_int.c: Define SPAWN_XFLAGS_USE_PATH and
-+ SPAWN_XFLAGS_TRY_SHELL.
-+
-+ [BZ #13150]
-+ * posix/glob.h: Remove gcc 1.x support.
-+
-+ [BZ #13068]
-+ * elf/dl-misc.c (_dl_sysdep_read_whole_file): Use O_CLOEXEC.
-+
-+2011-07-20 Liubov Dmitrieva <liubov.dmitrieva at intel.com>
-+
-+ * sysdeps/i386/i686/multiarch/Makefile (sysdep_routines): Add
-+ strchr-sse2 strrchr-sse2 strchr-sse2-bsf
-+ strrchr-sse2-bsf
-+ * sysdeps/i386/i686/multiarch/strchr.S: New file.
-+ * sysdeps/i386/i686/multiarch/strrchr.S: New file.
-+ * sysdeps/i386/i686/multiarch/strchr-sse2.S: New file.
-+ * sysdeps/i386/i686/multiarch/strchr-sse2-bsf.S: New file.
-+ * sysdeps/i386/i686/multiarch/strrchr-sse2.S: New file.
-+ * sysdeps/i386/i686/multiarch/strrchr-sse2-bsf.S: New file.
-+
-+2011-08-29 Liubov Dmitrieva <liubov.dmitrieva at gmail.com>
-+
-+ * sysdeps/x86_64/wcscmp.S: New file.
-+
-+ * sysdeps/i386/i686/multiarch/Makefile: (sysdep_routines): Add
-+ wcscmp-c wcscmp-sse2
-+ * sysdeps/i386/i686/multiarch/wcscmp-c.c: New file.
-+ * sysdeps/i386/i686/multiarch/wcscmp.S: New file.
-+ * sysdeps/i386/i686/multiarch/wcscmp-sse2.S: New file.
-+ * wcsmbs/wcscmp.c: Allow renaming.
-+
-+2011-09-05 David S. Miller <davem at davemloft.net>
-+
-+ * sysdeps/sparc/sparc32/fpu/s_fabsf.S: Use first argument
-+ stack slot, rather than the struct return pointer slot.
-+ * sysdeps/sparc/sparc32/fpu/s_fabs.c: Delete.
-+ * sysdeps/sparc/sparc32/fpu/s_fabs.S: New file.
-+ * sysdeps/sparc/sparc32/sparcv9/fpu/s_fabs.S: Likewise.
-+ * sysdeps/unix/sysv/linux/sparc/sparc32/sparcv9/fpu/Implies: Likewise.
-+
-+2011-09-05 Ulrich Drepper <drepper at gmail.com>
-+
-+ * po/ja.po: Update from translation team.
-+
-+ [BZ #13144]
-+ * sysdeps/unix/sysv/linux/x86_64/bits/sem.h (semdid_ds): Fix to match
-+ kernel in 64-bit binaries.
-+
-+2011-09-01 David S. Miller <davem at davemloft.net>
-+
-+ * elf/elf.h (HWCAP_SPARC_*): Move to..
-+ * sysdeps/sparc/sysdep.h: this new file and add new values.
-+ * sysdeps/unix/sparc/sysdep.h: Include sysdeps/sparc/sysdep.h
-+ * sysdeps/sparc/dl-procinfo.h: Include sysdep.h and increase
-+ _DL_HWCAP_COUNT to 24.
-+ * sysdeps/sparc/dl-procinfo.c (_dl_sparc_cap_flags): Add new
-+ entries.
-+ * sysdeps/sparc/sparc32/bits/atomic.h: Don't use magic local
-+ __ATOMIC_HWCAP_SPARC_V9 define, use sysdep.h one instead.
-+ * sysdeps/sparc/sparc32/dl-machine.h: Include sysdep.h
-+ * sysdeps/sparc/sparc64/multiarch/memcpy.S: Use HWCAP_SPARC_*
-+ instead of magic constants.
-+ * sysdeps/sparc/sparc64/multiarch/memset.S: Likewise.
-+
-+2011-08-31 David S. Miller <davem at davemloft.net>
-+
-+ * sysdeps/unix/sparc/sysdep.h (SETUP_PIC_REG): Define.
-+ * sysdeps/unix/sysv/linux/sparc/sparc32/sysdep.h (PSEUDO):
-+ Reimplement to do errno handling inline.
-+ (SYSCALL_ERROR_HANDLER): New macro.
-+ (__SYSCALL_STRING): Do not do errno handling in asm.
-+ (__CLONE_SYSCALL_STRING): Delete.
-+ (__INTERNAL_SYSCALL_STRING): Delete.
-+ * sysdeps/unix/sysv/linux/sparc/sparc64/sysdep.h: Include
-+ sysdeps/unix/sparc/sysdep.h instead of sysdeps/unix/sysdep.h
-+ (PSEUDO): Reimplement to do errno handling inline.
-+ (ret, ret_NOERRNO, ret_ERRVAL, r0, r1, MOVE): Don't redefine.
-+ (SYSCALL_ERROR_HANDLER): New macro.
-+ (__SYSCALL_STRING): Do not do errno handling in asm.
-+ (__CLONE_SYSCALL_STRING): Delete.
-+ (__INTERNAL_SYSCALL_STRING): Delete.
-+ * sysdeps/unix/sysv/linux/sparc/sysdep.h (INLINE_SYSCALL):
-+ Implement in terms of INTERNAL_SYSCALL and __set_errno, just like
-+ i386.
-+ (INTERNAL_SYSCALL_DECL): Declare %g1 var for err state.
-+ (inline_syscall*): Add 'err' argument.
-+ (INTERNAL_SYSCALL, INTERNAL_SYSCALL_NCS,
-+ INTERNAL_SYSCALL_ERROR_P): Likewise and pass it down.
-+ (INLINE_CLONE_SYSCALL): Reimplement in terms of __SYSCALL_STRING,
-+ INTERNAL_SYSCALL_ERRNO, and INTERNAL_SYSCALL_ERROR_P.
-+
-+ * scripts/data/localplt-sparc-linux-gnu.data: Remove 'ffs'.
-+ * scripts/data/localplt-sparc64-linux-gnu.data: Likewise.
-+
-+2011-08-30 Andreas Schwab <schwab at redhat.com>
-+
-+ * elf/rtld.c (dl_main): Relocate objects in dependency order.
-+
-+2011-08-29 Jiri Olsa <jolsa at redhat.com>
-+
-+ * sysdeps/i386/dl-trampoline.S (_dl_runtime_profile): Fix cfi
-+ directive.
-+
-+2011-08-24 David S. Miller <davem at davemloft.net>
-+
-+ * sysdeps/sparc/sparc64/strcmp.S: Rewrite.
-+
-+2011-08-24 Andreas Schwab <schwab at redhat.com>
-+
-+ * elf/Makefile: Add rules to build and run unload8 test.
-+ * elf/unload8.c: New file.
-+ * elf/unload8mod1.c: New file.
-+ * elf/unload8mod1x.c: New file.
-+ * elf/unload8mod2.c: New file.
-+ * elf/unload8mod3.c: New file.
-+
-+ * elf/dl-close.c (_dl_close_worker): Reset private search list if
-+ it wasn't used.
-+
-+2011-08-23 David S. Miller <davem at davemloft.net>
-+
-+ * sysdeps/sparc/sparc64/dl-machine.h (DL_STACK_END): Do not
-+ subtract stack bias.
-+ * sysdeps/sparc/sparc64/jmpbuf-unwind.h (_JMPBUF_UNWINDS): Use
-+ %sp not %fp in calculations.
-+ (_JMPBUF_UNWINDS_ADJ): Likewise.
-+
-+ * sysdeps/pthread/aio_suspend.c (do_aio_misc_wait): New function.
-+ (aio_suspend): Call it to force an exception region around the
-+ AIO_MISC_WAIT() invocation.
-+
-+2011-08-23 Andreas Schwab <schwab at redhat.com>
-+
-+ * sysdeps/i386/i686/multiarch/strspn.S (ENTRY): Add missing
-+ backslash.
-+
-+2011-07-04 Aurelien Jarno <aurelien at aurel32.net>
-+
-+ * sysdeps/powerpc/dl-tls.h: Add _PPC_DL_TLS_H inclusion
-+ protection macro.
-+ * sysdeps/powerpc/powerpc64/dl-irel.h: Include <ldsodefs.h>
-+ and <dl-machine.h>.
-+ (Elf64_FuncDesc): Remove.
-+
-+2011-08-22 David S. Miller <davem at davemloft.net>
-+
-+ * sysdeps/unix/sysv/linux/sparc/sparc32/____longjmp_chk.S: Fix
-+ sigaltstack check, add missing cfi directives.
-+ * sysdeps/unix/sysv/linux/sparc/sparc64/____longjmp_chk.S: Add
-+ missing cfi directives, and sigaltstack handling.
-+
-+2011-08-16 Andreas Schwab <schwab at redhat.com>
-+
-+ [BZ #11724]
-+ * elf/dl-deps.c (_dl_map_object_deps): Only assume cycle when
-+ object is seen twice.
-+ * elf/dl-fini.c (_dl_sort_fini): Likewise.
-+
-+ * elf/Makefile (distribute): Add tst-initorder2.c.
-+ (tests): Add tst-initorder2.
-+ (modules-names): Add tst-initorder2a tst-initorder2b
-+ tst-initorder2c tst-initorder2d. Add rules to build them.
-+ ($(objpfx)tst-initorder2.out): New rule.
-+ * elf/tst-initorder2.c: New file.
-+ * elf/tst-initorder2.exp: New file.
-+
-+2011-08-22 Andreas Schwab <schwab at redhat.com>
-+
-+ * sysdeps/unix/sysv/linux/i386/scandir64.c: Include <string.h>.
-+
-+ * elf/dl-deps.c (_dl_map_object_deps): Move check for missing
-+ dependencies back to end of function.
-+
-+ * dlfcn/Makefile (LDLIBS-bug-atexit3-lib.so): Readd
-+ $(elfobjdir)/ld.so.
-+
-+2011-08-21 Ulrich Drepper <drepper at gmail.com>
-+
-+ * sysdeps/unix/sysv/linux/x86_64/gettimeofday.S: Removed.
-+ * sysdeps/unix/sysv/linux/x86_64/time.S: Removed.
-+ * sysdeps/unix/sysv/linux/x86_64/gettimeofday.c: New file.
-+ * sysdeps/unix/sysv/linux/x86_64/time.c: New file.
-+ * sysdeps/unix/sysv/linux/x86_64/bits/libc-vdso.h: Remove declaration
-+ of __vdso_gettimeofday.
-+ * sysdeps/unix/sysv/linux/x86_64/init-first.c: Remove definition of
-+ __vdso_gettimeofday and __vdso_time. Define __vdso_getcpu with
-+ attribute_hidden.
-+ (_libc_vdso_platform_setup): Remove initialization of
-+ __vdso_gettimeofday and __vdso_time.
-+
-+2011-08-20 Ulrich Drepper <drepper at gmail.com>
-+
-+ * nss/nss_files/files-alias.c (get_next_alias): Use feof_unlocked
-+ and fgetc_unlocked.
-+ * nss/nss_files/files-key.c (search): Use fgets_unlocked and
-+ getc_unlocked.
-+
-+ * elf/dl-open.c (add_to_global): Report additions to the global scope
-+ for LD_DEBUG=scopes.
-+ (dl_open_worker): Also print scope of newly loaded dependencies.
-+ (_dl_show_scope): Indicate if there is no scope.
-+
-+ [BZ #13114]
-+ * stdio-common/Makefile (tests): Add bug24.
-+ * stdio-common/bug24.c: New file.
-+
-+2011-08-19 Andreas Jaeger <aj at suse.de>
-+
-+ [BZ #13114]
-+ * libio/fileops.c (_IO_new_file_fopen): Fix handling of
-+ non-existant file when using close-on-exec mode.
-+
-+2011-08-20 Ulrich Drepper <drepper at gmail.com>
-+
-+ * sysdeps/x86_64/dl-trampoline.S (_dl_runtime_resolve): Fix CFI for
-+ the very first instruction.
-+
-+ * sysdeps/x86_64/dl-trampoline.h: If MORE_CODE is defined, restore
-+ the CFI state in the end.
-+ * sysdeps/x86_64/dl-trampoline.S: Define MORE_CODE before first
-+ inclusion of dl-trampoline.h.
-+ Based on a patch by Jiri Olsa <jolsa at redhat.com>.
-+
-+2011-08-19 Andreas Schwab <schwab at redhat.com>
-+
-+ * sysdeps/powerpc/fpu/libm-test-ulps: Relax ctan (0.75 + 1.25 i)
-+ expectations for long double.
-+
-+ * sysdeps/unix/sysv/linux/powerpc/powerpc32/scandir64.c: Renamed
-+ from sysdeps/unix/sysv/linux/powerpc/scandir64.c.
-+
-+2011-08-14 David S. Miller <davem at davemloft.net>
-+
-+ * sysdeps/unix/sysv/linux/Makefile (CFLAGS-tst-writev.c): The
-+ artificual limit depends upon the system page size.
-+
-+2011-08-17 Ulrich Drepper <drepper at gmail.com>
-+
-+ * Makeconfig (override CFLAGS): Add library-specific CFLAGS.
-+ * resolv/Makefile: Define CFLAGS-libresolv.
-+
-+2011-08-17 Andreas Schwab <schwab at redhat.com>
-+
-+ * nss/makedb.c (compute_tables): Make variables used in nested
-+ function static.
-+
-+2011-08-17 Ulrich Drepper <drepper at gmail.com>
-+
-+ * elf/pldd-xx.c (r_debug): Explicitly add padding when needed.
-+ * elf/pldd.c (get_process_info): Use pread to re-read auxiliary vector
-+ if buffer was too small.
-+
-+ * elf/pldd.c (main): Attach to all threads in the process.
-+ Rewrite /proc handling to use *at functions.
-+
-+2011-08-16 Ulrich Drepper <drepper at gmail.com>
-+
-+ * elf/dl-open.c (_dl_show_scope): Take additional parameter which
-+ specifies first scope to show.
-+ (dl_open_worker): Update callers. Move printing scope of new
-+ object to before the relocation.
-+ * elf/rtld.c (dl_main): Update _dl_show_scope call.
-+ * sysdeps/generic/ldsodefs.h: Update declaration.
-+
-+ * elf/dl-open.c (_dl_show_scope): Use _dl_debug_printf to generate the
-+ string for the scope number.
-+
-+2011-08-14 Ulrich Drepper <drepper at gmail.com>
-+
-+ * nscd/servicescache.c (cache_addserv): Make sure written is always
-+ initialized.
-+
-+2011-08-14 Roland McGrath <roland at hack.frob.com>
-+
-+ * sysdeps/i386/i486/bits/atomic.h
-+ (__arch_compare_and_exchange_val_64_acq): Use RET alone at end of
-+ statement expression, so as to suppress "set but not used" warning.
-+ (__arch_c_compare_and_exchange_val_64_acq): Likewise.
-+
-+ * string/strncat.c (STRNCAT): Use prototype definition.
-+
-+ * locale/Makefile (locale-CPPFLAGS): Renamed CPPFLAGS-locale-programs.
-+ (locale-CPPFLAGS): New variable; put LOCALEDIR, LOCALE_ALIAS_PATH and
-+ -Iprograms here.
-+ (cppflags-iterator.mk sequence): Use locale-programs in place of nonlib.
-+ (localedef-modules): Add localedef.
-+ (locale-modules): Add locale.
-+
-+ * sysdeps/generic/ldsodefs.h (struct unique_sym): Add a const.
-+ * elf/rtld.c (dl_main): Invert order of assignment in last change,
-+ to avoid a warning.
-+
-+2011-08-14 David S. Miller <davem at davemloft.net>
-+
-+ * sysdeps/unix/sysv/linux/sparc/bits/resource.h (RLIM_INFINITY,
-+ RLIM64_INFINITY): Fix 64-bit values for 32-bit sparc.
-+
-+2011-08-13 Ulrich Drepper <drepper at gmail.com>
-+
-+ * elf/dl-open.c: Rename show_scope to _dl_show_scope and export.
-+ (dl_open_worker): Call _dl_show_scope when DL_DEBUG_SCOPES is set.
-+ * elf/rtld.c (dl_main): Set l_name of vDSO.
-+ Call _dl_show_scope when DL_DEBUG_SCOPES.
-+ (process_dl_debug): Recognize scopes flag and also set it for all.
-+ * sysdeps/generic/ldsodefs.h: Define DL_DEBUG_SCOPES.
-+ Declare _dl_show_scope.
-+
-+ * elf/dl-libc.c (do_dlopen_args): Add caller_dlopen.
-+ (do_dlopen): Pass caller_dlopen to dl_open.
-+ (__libc_dlopen_mode): Initialize caller_dlopen.
-+
-+ * intl/l10nflist.c (_nl_normalize_codeset): Make it compile outside
-+ of libc. Make tolower call locale-independent. Optimize a bit by
-+ using isdigit instead of isalnum.
-+ * locale/Makefile (locale-CPPFLAGS): Add -DNOT_IN_libc.
-+
-+2011-08-12 Ulrich Drepper <drepper at gmail.com>
-+
-+ * elf/dl-load.c (_dl_map_object): Show in debug output whether a DSO
-+ was a dependency or dynamically loaded.
-+
-+2011-08-11 Ulrich Drepper <drepper at gmail.com>
-+
-+ * intl/l10nflist.c: Allow architecture-specific pop function.
-+ * sysdeps/x86_64/l10nflist.c: New file.
-+
-+ * intl/l10nflist.c (_nl_make_l10nflist): Use locale-independent
-+ classification.
-+
-+2011-08-10 Andreas Schwab <schwab at redhat.com>
-+
-+ * include/dirent.h: Add libc_hidden_proto for scandirat and
-+ scandirat64. Don't declare __scandirat64.
-+ * dirent/scandirat.c: Add libc_hidden_def.
-+ * dirent/scandirat64.c (SCANDIRAT): Remove underscores.
-+ * sysdeps/unix/sysv/linux/i386/scandir64.c (SCANDIRAT): Likewise.
-+
-+2011-08-10 David S. Miller <davem at davemloft.net>
-+
-+ * sysdeps/unix/sysv/linux/ia64/sys/ptrace.h: Add missing comma in
-+ enum.
-+ * sysdeps/unix/sysv/linux/powerpc/sys/ptrace.h: Likewise.
-+ * sysdeps/unix/sysv/linux/s390/sys/ptrace.h: Likewise.
-+ * sysdeps/unix/sysv/linux/sparc/sys/ptrace.h: Likewise.
-+
-+2011-08-09 Ulrich Drepper <drepper at gmail.com>
-+
-+ * Versions.def [libc]: Add GLIBC_2.15.
-+ * dirent/Makefile (routines): Add scandirat and scandirat64.
-+ * dirent/Versions [libc]: Export scandirat and scandirat64 for
-+ GLIBC_2.15.
-+ * dirent/dirent.h: Declare scandirat and scandirat64.
-+ * dirent/scandirat.c: New file.
-+ * dirent/scandirat64.c: New file.
-+ * sysdeps/wordsize-64/scandirat.c: New file.
-+ * sysdeps/wordsize-64/scandirat64.c: New file.
-+ * dirent/opendir.c: Define opendirat.
-+ * dirent/scandir.c: Move code to scandirat.c. Implement scandir
-+ using scandirat.
-+ * dirent/scandir64.c: Adjust for scandir.c change.
-+ * include/dirent.h: Define scandir_cancel_struct. Declare __opendirat,
-+ __scandirat64, and __scandir_cancel_handler.
-+ * sysdeps/unix/opendir.c: Rename __opendir to __opendirat. Take
-+ additional parameter and use openat instead of open (outside of ld.so).
-+ Add new __opendir as wrapper around __opendirat.
-+ * sysdeps/unix/sysv/linux/i386/scandir64.c: Reimplement __old_scandir64
-+ here without requiring old scandirat implementation.
-+
-+2011-08-08 Ulrich Drepper <drepper at gmail.com>
-+
-+ * dirent/scandir.c (cancel_handler): Renamed to
-+ __scandir_cancel_handler. Do not define if SKIP_SCANDIR_CANCEL is
-+ defined. Adjust users.
-+ * dirent/scandir64.c: Define SKIP_SCANDIR_CANCEL.
-+ * sysdeps/unix/sysv/linux/i386/scandir64.c: Likewise.
-+
-+2011-08-04 Ulrich Drepper <drepper at gmail.com>
-+
-+ * string/test-string.h (IMPL): Use __STRING to expand name and then
-+ stringify it.
-+
-+ * string/test-strcmp.c: Unify most of the WIDE and !WIDE code. Lots
-+ of cleanups.
-+
-+2011-07-22 Liubov Dmitrieva <liubov.dmitrieva at gmail.com>
-+
-+ * string/Makefile: Update.
-+ (strop-tests): Append strncat.
-+ * string/test-wcscmp.c: New file.
-+ New comprehensive test for wcscmp.
-+ * string/test-strcmp.c: Update.
-+ (WIDE): New define.
-+
-+2011-07-22 Andreas Schwab <schwab at redhat.com>
-+
-+ * resolv/res_init.c (__res_vinit): Properly tokenize nameserver
-+ line.
-+
-+2011-07-26 Andreas Schwab <schwab at redhat.com>
-+
-+ * sysdeps/posix/getaddrinfo.c (gaih_inet): Don't discard result of
-+ encoding to ACE if AI_IDN.
-+
-+2011-08-01 Jakub Jelinek <jakub at redhat.com>
-+
-+ * sysdeps/ieee754/dbl-64/k_rem_pio2.c (__kernel_rem_pio2): Fix up fq
-+ to y conversion for prec 3 and __FLT_EVAL_METHOD__ != 0.
-+
-+2011-07-22 Liubov Dmitrieva <liubov.dmitrieva at intel.com>
-+
-+ * sysdeps/i386/i686/multiarch/strcat-sse2.S: Update.
-+ Fix overflow bug in strncat.
-+ * sysdeps/i386/i686/multiarch/strcpy-ssse3.S: Likewise.
-+
-+ * string/test-strncat.c: Update.
-+ Add new tests for checking overflow bugs.
-+
-+2011-07-15 Liubov Dmitrieva <liubov.dmitrieva at intel.com>
-+
-+ * sysdeps/i386/i686/multiarch/Makefile (sysdep_routines): Add
-+ strcat-ssse3 strcat-sse2 strncat-ssse3 strncat-sse2 strncat-c.
-+ * sysdeps/i386/i686/multiarch/strcat.S: New file.
-+ * sysdeps/i386/i686/multiarch/strcat-c.c: New file.
-+ * sysdeps/i386/i686/multiarch/strcat-sse2.S: New file.
-+ * sysdeps/i386/i686/multiarch/strcat-ssse3.S: New file.
-+ * sysdeps/i386/i686/multiarch/strncat.S: New file.
-+ * sysdeps/i386/i686/multiarch/strncat-sse2.S: New file.
-+ * sysdeps/i386/i686/multiarch/strncat-ssse3.S: New file.
-+
-+ * sysdeps/i386/i686/multiarch/strcpy-ssse3.S
-+ (USE_AS_STRCAT): Define.
-+ Add strcat and strncat support.
-+ * sysdeps/i386/i686/multiarch/strlen-sse2.S: Likewise.
-+
-+2011-07-25 Andreas Schwab <schwab at redhat.com>
-+
-+ * sysdeps/i386/i486/bits/string.h (__strncat_g): Correctly handle
-+ __n bigger than INT_MAX+1.
-+ (__strncmp_g): Likewise.
-+
-+2011-07-23 Ulrich Drepper <drepper at gmail.com>
-+
-+ * posix/unistd.h: Define SEEK_DATA and SEEK_HOLE.
-+ * libio/stido.h: Likewise.
-+
-+ * sysdeps/unix/sysv/linux/bits/socket.h (PF_NFC): Define.
-+ (AF_NFC): Define.
-+ * sysdeps/unix/sysv/linux/sparc/bits/socket.h (PF_NFC): Define.
-+ (AF_NFC): Define.
-+
-+ * sysdeps/unix/sysv/linux/sys/ptrace.h: Add new constants.
-+ * sysdeps/unix/sysv/linux/sparc/sys/ptrace.h: Likewise.
-+ * sysdeps/unix/sysv/linux/powerpc/sys/ptrace.h: Likewise.
-+ * sysdeps/unix/sysv/linux/ia64/sys/ptrace.h: Likewise.
-+ * sysdeps/unix/sysv/linux/s390/sys/ptrace.h: Likewise.
-+
-+ [BZ #13021]
-+ * scripts/test-installation.pl: Don't expect libnss_test1 to be
-+ installed.
-+
-+ * sysdeps/x86_64/dl-trampoline.S (_dl_runtime_profile): Fix one more
-+ typo.
-+ (_dl_x86_64_save_sse): Likewise.
-+
-+2011-07-22 Ulrich Drepper <drepper at gmail.com>
-+
-+ * sysdeps/x86_64/dl-trampoline.S (_dl_runtime_profile): Fix test for
-+ OSXSAVE.
-+ (_dl_x86_64_save_sse): Likewise.
-+
-+ * crypt/crypt_util.c (__init_des_r): Optimize memset calls.
-+
-+ * crypt/crypt_util.c (__init_des_r): Add read barrier as well.
-+
-+2011-07-21 Andreas Schwab <schwab at redhat.com>
-+
-+ * sysdeps/x86_64/dl-trampoline.S (_dl_runtime_profile): Fix last
-+ change.
-+ (_dl_x86_64_save_sse): Use correct AVX check.
-+
-+2011-07-21 Liubov Dmitrieva <liubov.dmitrieva at gmail.com>
-+
-+ * sysdeps/x86_64/multiarch/strcpy-sse2-unaligned.S: Fix overfow
-+ bug in strncpy/strncat.
-+ * sysdeps/x86_64/multiarch/strcpy-ssse3.S: Likewise.
-+
-+2011-07-21 Ulrich Drepper <drepper at gmail.com>
-+
-+ * string/tester.c (test_strcat): Add tests for different alignments
-+ of source and destination.
-+ (test_strncat): Likewise.
-+
-+2011-07-20 Ulrich Drepper <drepper at gmail.com>
-+
-+ [BZ #12852]
-+ * posix/glob.c (glob): Check passed in values before using them in
-+ expressions to avoid some overflows.
-+ (glob_in_dir): Likewise.
-+
-+ [BZ #13007]
-+ * sysdeps/x86_64/dl-trampoline.S (_dl_runtime_profile): More complete
-+ check for AVX enablement so that we don't crash with old kernels and
-+ new hardware.
-+ * elf/tst-audit4.c: Add same checks here.
-+ * elf/tst-audit6.c: Likewise.
-+
-+ * sysdeps/x86_64/bits/link.h (La_x86_64_ymm): Force 16-byte alignment.
-+
-+2011-07-09 Andreas Schwab <schwab at linux-m68k.org>
-+
-+ * sysdeps/unix/sysv/linux/pathconf.c: Include <string.h>.
-+
-+2011-07-20 Ulrich Drepper <drepper at gmail.com>
-+
-+ * po/cs.po: Update from translation team.
-+ * po/bg.po: Likewise.
-+
-+2011-07-12 Marek Polacek <mpolacek at redhat.com>
-+
-+ * misc/sys/cdefs.h: Add support for const attribute.
-+ * sysdeps/unix/sysv/linux/sys/sysmacros.h: Add __attribute_const__
-+ to gnu_dev_{major,minor,makedev} functions.
-+
-+2011-07-20 Marek Polacek <mpolacek at redhat.com>
-+
-+ * intl/dcigettext.c (get_output_charset): Add missing bracket.
-+
-+2011-07-20 Andreas Schwab <schwab at redhat.com>
-+
-+ * resolv/res_query.c (__libc_res_nquerydomain): Use size_t for
-+ strlen results.
-+
-+2011-07-13 Andreas Krebbel <Andreas.Krebbel at de.ibm.com>
-+
-+ * sysdeps/unix/sysv/linux/s390/s390-32/sysdep.h
-+ (INTERNAL_VSYSCALL_NCS): Use r10 for backing up the return address
-+ register in order to avoid conflicts with the soft frame pointer
-+ being held in r11 when necessary.
-+ * sysdeps/unix/sysv/linux/s390/s390-64/sysdep.h
-+ (INTERNAL_VSYSCALL_NCS): Likewise.
-+
-+2011-07-14 Marek Polacek <mpolacek at redhat.com>
-+
-+ * elf/dl-fini.c (_dl_sort_fini): Remove unused link_map *l argument,
-+ * elf/dl-fini.c (_dl_fini): Adjust caller.
-+ * elf/dl-close.c (_dl_close_worker): Likewise.
-+ * sysdeps/generic/ldsodefs.h: Adjust declaration.
-+
-+2011-07-15 Marek Polacek <mpolacek at redhat.com>
-+
-+ * elf/cache.c (load_aux_cache): Remove unnecessary condition of
-+ "aux_cache->nlibs < 0".
-+
-+ * nscd/nscd_conf.c (nscd_parse_file): Remove unnecessary condition
-+ in the reload-count case.
-+
-+2011-07-15 Liubov Dmitrieva <liubov.dmitrieva at intel.com>
-+
-+ * sysdeps/x86_64/multiarch/Makefile (sysdep_routines): Add
-+ strcat-ssse3 strcat-sse2-unaligned strncat-ssse3
-+ strncat-sse2-unaligned strncat-c strlen-sse2-pminub
-+ * sysdeps/x86_64/multiarch/strcat-sse2-unaligned.S: New file.
-+ * sysdeps/x86_64/multiarch/strcat.S: New file.
-+ * sysdeps/x86_64/multiarch/strncat.S: New file.
-+ * sysdeps/x86_64/multiarch/strncat-c.c: New file.
-+ * sysdeps/x86_64/multiarch/strcat-ssse3.S: New file.
-+ * sysdeps/x86_64/multiarch/strncat-sse2-unaligned.S: New file.
-+ * sysdeps/x86_64/multiarch/strncat-ssse3.S: New file.
-+ * sysdeps/x86_64/multiarch/strcpy-ssse3.S
-+ (USE_AS_STRCAT): Define.
-+ Add strcat and strncat support.
-+ * sysdeps/x86_64/multiarch/strlen-no-bsf.S: Likewise.
-+ * sysdeps/x86_64/multiarch/strcpy-sse2-unaligned.S: Likewise.
-+ * sysdeps/x86_64/multiarch/strlen-sse2-pminub.S: New file.
-+ * string/strncat.c: Update.
-+ (USE_AS_STRNCAT): Define.
-+ * sysdeps/x86_64/multiarch/init-arch.c (__init_cpu_features):
-+ Turn on bit_Prefer_PMINUB_for_stringop for Intel Core i3, i5
-+ and i7.
-+ * sysdeps/x86_64/multiarch/init-arch.h
-+ (bit_Prefer_PMINUB_for_stringop): New.
-+ (index_Prefer_PMINUB_for_stringop): Likewise.
-+ * sysdeps/x86_64/multiarch/strlen.S (strlen): Check
-+ bit_Prefer_PMINUB_for_stringop.
-+
-+2011-07-19 Ulrich Drepper <drepper at gmail.com>
-+
-+ * crypt/sha512.h (struct sha512_ctx): Move buffer into union and add
-+ buffer64.
-+ * crypt/sha512.c (__sha512_finish_ctx): Use buffer64 for writes instead
-+ of casting of buffer.
-+ * crypt/sha256.h (struct sha256_ctx): Move buffer into union and add
-+ buffer32 and buffer64.
-+ * crypt/sha256.c (__sha256_finish_ctx): Use buffer32 or buffer64 for
-+ writes instead of casting of buffer.
-+ * crypt/md5.h (struct md5_ctx): Move buffer into union and add
-+ buffer32.
-+ * crypt/md5.c (md5_finish_ctx): Use buffer32 for writes instead of
-+ casting of buffer.
-+
-+2011-07-19 Andreas Schwab <schwab at redhat.com>
-+
-+ * string/strxfrm_l.c (STRXFRM): Fix alloca accounting.
-+
-+2011-07-19 Ulrich Drepper <drepper at gmail.com>
-+
-+ * nscd/nscd.c (termination_handler): Don't do anything for a database
-+ if it has not yet been initialized.
-+
-+2011-07-18 Ulrich Drepper <drepper at gmail.com>
-+
-+ * sysdeps/unix/sysv/linux/bits/sched.h (__CPU_EQUAL_S): Fix a typo.
-+
-+2011-07-15 Marek Polacek <mpolacek at redhat.com>
-+
-+ * bits/sched.h (__CPU_EQUAL_S): Fix a typo.
-+
-+2011-07-18 Ulrich Drepper <drepper at gmail.com>
-+
-+ * po/nl.po: Update from translation team.
-+ * po/sv.po: Likewise.
-+
-+2011-07-16 Roland McGrath <roland at hack.frob.com>
-+
-+ * sysdeps/i386/Makefile: Never use -mpreferred-stack-boundary=2,
-+ now disallowed by GCC.
-+
-+ * configure.in (use-default-link): Default to yes if a test -shared
-+ link meets our qualifications.
-+ * configure: Regenerated.
-+
-+ * config.make.in (output-format): New variable.
-+ * configure.in: Check for ld --print-output-format support.
-+ * configure: Regenerated.
-+ * Makerules ($(common-objpfx)format.lds)
-+ [$(output-format) != unknown]: Just use $(output-format),
-+ instead of the linker-script munging.
-+
-+2011-07-14 Roland McGrath <roland at hack.frob.com>
-+
-+ * Makefile ($(common-objpfx)linkobj/libc.so): Use $(shlib-lds) instead
-+ of $(common-objpfx)shlib.lds.
-+ * elf/Makefile ($(objpfx)sotruss-lib.so): Likewise.
-+
-+ * sysdeps/i386/i686/multiarch/strstr-c.c (libc_hidden_builtin_def):
-+ Conditionalize redefinition on [SHARED && DO_VERSIONING && !NO_HIDDEN].
-+
-+ * configure.in (-z relro check): Adjust test code to add a large
-+ writable data section after it.
-+ * configure: Regenerated.
-+
-+2011-07-11 Roland McGrath <roland at hack.frob.com>
-+
-+ * configure.in (-z relro check): Fix test code to make the variable
-+ truly const.
-+ * configure: Regenerated.
-+
-+2011-07-11 Ulrich Drepper <drepper at gmail.com>
-+
-+ * nscd/nscd.h (struct traced_file): Define.
-+ (struct database_dyn): Remove inotify_descr, reset_res, and filename
-+ elements. Add traced_files.
-+ (inotify_fd): Declare.
-+ (register_traced_file): Declare.
-+ * nscd/connections.c (dbs): Remove reset_res and filename initializers.
-+ (inotify_fd): Export.
-+ (resolv_conf_descr): Remove.
-+ (nscd_init): Move inotify descriptor creation to main.
-+ Don't register files for notification here.
-+ (register_traced_file): New function.
-+ (invalidate_cache): Don't use reset_res to determine whether to call
-+ res_init, go through the list of registered files.
-+ (main_loop_poll): The inotify descriptors are now stored in the
-+ structures for the traced files.
-+ (main_loop_epoll): Likewise
-+ * nscd/nscd.c (main): Create inotify socket here. Pass extra argument
-+ to __nss_disable_nscd.
-+ * nscd/cache.c (prune_cache): There is no single inotify descriptor
-+ for a database anymore. Check the records for all the registered
-+ files instead.
-+ * nss/Makefile (libnss_files-routines): Add files-init.
-+ (libnss_db-routines): Add db-init.
-+ * nss/Versions [libnss_files] (GLIBC_PRIVATE): Add _nss_files_init.
-+ [libnss_db] (GLIBC_PRIVATE): Add _nss_db_init.
-+ * nss/nss_db/db-init.c: New file.
-+ * nss/nss_files/files-init.c: New file.
-+ * nss/nsswitch.c (nss_load_library): New function. Broken out of
-+ __nss_lookup_function.
-+ (__nss_lookup_function): Call nss_load_library.
-+ (nss_load_all_libraries): New function.
-+ (__nss_disable_nscd): Take parameter with callback function for files
-+ to register. Set is_nscd. Load all the DSOs for the NSS modules
-+ used for the cached services.
-+ * nss/nsswitch.h (__nss_disable_nscd): Adjust prototype.
-+ * sysdeps/unix/sysv/linux/Makefile [subdir=nscd]: Pass the various -D
-+ options for features to all the files in nscd.
-+
-+ * nss/nsswitch.c (nss_parse_file): Add missing fclose.
-+
-+2011-07-10 Roland McGrath <roland at hack.frob.com>
-+
-+ * csu/elf-init.c (__libc_csu_init): Comment typo.
-+
-+2011-07-09 Ulrich Drepper <drepper at gmail.com>
-+
-+ * po/pl.po: Update from translation team.
-+ * po/ja.po: Likewise.
-+ * po/ru.po: Likewise.
-+ * po/ko.po: Likewise.
-+ * po/fr.po: Likewise.
-+
-+2011-07-09 Roland McGrath <roland at hack.frob.com>
-+
-+ * configure.in (.ctors/.dtors header and trailer check):
-+ Use an empirical test on a built program.
-+ * configure: Regenerated.
-+
-+ * configure.in (-z relro check): Use an empirical test on a built DSO.
-+ Detect, but do not require, on ia64.
-+ * configure: Regenerated.
-+
-+ * configure.in (READELF): Find it with AC_CHECK_TOOL.
-+ Update tests that use readelf to use $READELF instead.
-+ * configure: Regenerated.
-+
-+2011-07-08 Ulrich Drepper <drepper at gmail.com>
-+
-+ * malloc/hooks.c (memalign_check): Avoid using checked_request2size
-+ if the result is not used.
-+
-+2011-07-05 Andreas Jaeger <aj at suse.de>
-+
-+ [BZ#9696]
-+ * stdlib/tst-strtod.c: Add testcase.
-+
-+2011-07-07 Ulrich Drepper <drepper at gmail.com>
-+
-+ * sysdeps/unix/sysv/linux/pathconf.c (distinguish_extX): New function.
-+ (__statfs_link_max): Use it to distinguish between ext2/3 and ext4.
-+ The latter has a higher limit. Take additional parameter to pass to
-+ the new function.
-+ (__pathconf): Pass file to __statfs_link_max.
-+ * sysdeps/unix/sysv/linux/fpathconf.c (__fpathconf): Pass fd to
-+ __statfs_link_max.
-+ * sysdeps/unix/sysv/linux/pathconf.h: Adjust prototype of
-+ __statfs_link_max.
-+
-+ [BZ #12868]
-+ * sysdeps/unix/sysv/linux/linux_fsinfo.h: Define Lustre constants.
-+ * sysdeps/unix/sysv/linux/internal_statvfs.c (__statvfs_getflags):
-+ Handle Lustre.
-+ * sysdeps/unix/sysv/linux/pathconf.c (__statfs_link_max): Likewise.
-+ (__statfs_filesize_max): Likewise.
-+ Patch mostly by Andreas Dilger <adilger at whamcloud.com>.
-+
-+2011-07-05 Andreas Jaeger <aj at suse.de>
-+
-+ * resolv/res_comp.c (dn_skipname): Remove unused variable.
-+
-+2011-07-06 Marek Polacek <mpolacek at redhat.com>
-+
-+ * nis/nss_nisplus/nisplus-spwd.c (_nss_nisplus_setspent): Honour the
-+ `status' variable.
-+ * nis/nss_nisplus/nisplus-ethers.c (_nss_nisplus_setetherent):
-+ Likewise.
-+
-+2011-07-04 H.J. Lu <hongjiu.lu at intel.com>
-+
-+ * Makefile (strop-tests): Add strncat.
-+ * string/test-strncat.c: New file.
-+
-+2011-06-30 Marek Polacek <mpolacek at redhat.com>
-+
-+ * iconvdata/johab.c: Don't inline `johab_sym_hanja_to_ucs' function.
-+
-+2011-06-21 Andreas Jaeger <aj at suse.de>
-+
-+ * sysdeps/s390/s390-64/Makefile ($(inst_gconvdir)/gconv-modules):
-+ Copy rule from iconvdata/Makefile.
-+
-+2011-07-06 Ulrich Drepper <drepper at gmail.com>
-+
-+ [BZ #12922]
-+ * posix/getopt.c (_getopt_internal_r): When "W;" is in short options
-+ but no long options are defined, just return 'W'.
-+
-+2011-06-22 Marek Polacek <mpolacek at redhat.com>
-+
-+ [BZ #9696]
-+ * stdlib/strtod_l.c (round_and_return): Set ERANGE instead of EDOM.
-+
-+2011-07-06 Ulrich Drepper <drepper at gmail.com>
-+
-+ * inet/getnetgrent_r.c (internal_getnetgrent_r): Fix check for known
-+ netgroups to read.
-+ (innetgr): Likewise.
-+
-+2011-07-05 Roland McGrath <roland at hack.frob.com>
-+
-+ * config.make.in (install_root): Default to $(DESTDIR).
-+
-+2011-07-05 Ulrich Drepper <drepper at gmail.com>
-+
-+ * nscd/nscd_getserv_r.c (nscd_getserv_r): Add cast to avoid warning.
-+
-+2011-07-02 Roland McGrath <roland at hack.frob.com>
-+
-+ * Makerules ($(common-objpfx)format.lds): Fail if result is empty.
-+
-+ * Makefile ($(common-objpfx)testrun.sh): Generate to work relative to
-+ containing directory rather than embedding absolute directory names.
-+
-+ * scripts/check-local-headers.sh: Rewritten using awk.
-+ Match by word, not by line. Print error messages for matches.
-+ * Makefile ($(objpfx)check-local-headers.out): Pass AWK in to it.
-+
-+ * Makerules [shlib-lds-flags empty]:
-+ ($(common-objpfx)libc_pic.opts): New target.
-+ ($(common-objpfx)libc_pic.os.clean): New target.
-+ ($(common-objpfx)libc.so): Link it instead of libc_pic.os.
-+
-+ * config.make.in (OBJCOPY): New variable.
-+ * aclocal.m4 (LIBC_PROG_BINUTILS): Substitute OBJCOPY too.
-+ * configure: Regenerated.
-+
-+ * config.make.in (use-default-link): New variable.
-+ * configure.in (use_default_link): Grok --with-default-link to set it.
-+ * configure: Regenerated.
-+ * Makerules [$(elf) = yes] [$(use-default-link) = yes]:
-+ (shlib-lds, shlib-lds-flags): Define to empty.
-+
-+ * Makerules (shlib-lds): New variable.
-+ (shlib-lds-flags): New variable.
-+ (build-shlib, build-moduile, build-module-asneeded): Use it.
-+ ($(common-objpfx)libc.so): Use $(shlib-lds).
-+ ($(extra-modules-build:%=$(objpfx)%.so)): Likewise.
-+ * iconvdata/extra-module.mk ($(objpfx)$(mod).so): Likewise.
-+
-+ * elf/dynamic-link.h (elf_get_dynamic_info): Make asserts accept
-+ DT_FLAGS/DT_FLAGS_1 with zero flags.
-+
-+ * elf/Makefile ($(objpfx)ld.so): Use -defsym=_begin=0 instead of
-+ linker script munging.
-+
-+2011-07-02 Ulrich Drepper <drepper at gmail.com>
-+
-+ * crypt/sha512.h (struct sha512_ctx): Add union to access total also
-+ as 128-bit value.
-+ * crypt/sha512.c (sha512_process_block): Perform total addition using
-+ 128-bit if possible.
-+ (__sha512_finish_ctx): Likewise.
-+ * crypt/sha256.h (struct sha256_ctx): Add union to access total also
-+ as 64-bit value.
-+ * crypt/sha256.c (SWAP64): Define.
-+ (sha256_process_block): Perform total addition using 64-bit if
-+ possible.
-+ (__sha256_finish_ctx): Likewise.
-+
-+2011-07-01 Ulrich Drepper <drepper at gmail.com>
-+
-+ * nscd/pwdcache.c (cache_addpw): Cleanup. Add branch prediction.
-+ * nscd/initgrcache.c (addinitgroupsX): Likewise.
-+ * nscd/hstcache.c (cache_addhst): Likewise.
-+ * nscd/grpcache.c (cache_addgr): Likewise.
-+ * nscd/aicache.c (addhstaiX): Likewise
-+ * nscd/servicescache.c (cache_addserv): Handle zero negtimeout.
-+
-+2011-07-01 Thorsten Kukuk <kukuk at suse.de>
-+
-+ * nscd/pwdcache.c (cache_addpw): Handle zero negtimeout.
-+ * nscd/initgrcache.c (addinitgroupsX): Likewise.
-+ * nscd/hstcache.c (cache_addhst): Likewise.
-+ * nscd/grpcache.c (cache_addgr): Likewise.
-+ * nscd/aicache.c (addhstaiX): Likewise
-+
-+2011-07-01 Andreas Schwab <schwab at redhat.com>
-+
-+ * nis/nss_compat/compat-pwd.c (getpwent_next_nss_netgr): Query NIS
-+ domain only when needed.
-+
-+2011-06-30 Andreas Schwab <schwab at redhat.com>
-+
-+ * sysdeps/posix/getaddrinfo.c (gaih_inet): Make sure RES_USE_INET6
-+ is always restored.
-+
-+2011-06-29 Ulrich Drepper <drepper at gmail.com>
-+
-+ * nscd/grpcache.c (cache_addgr): Don't write notfound reply if we
-+ are re-adding the entry.
-+ * nscd/servicescache.c (cache_addserv): Likewise.
-+
-+2011-06-30 Aurelien Jarno <aurelien at aurel32.net>
-+
-+ * sysdeps/generic/dl-irel.h: fix protection against multiple
-+ inclusions.
-+ * sysdeps/generic/dl-irel.h (elf_ifunc_invoke): New.
-+
-+2011-06-28 Ulrich Drepper <drepper at gmail.com>
-+
-+ [BZ #12935]
-+ * malloc/memusage.sh: Fix quoting in message.
-+ * debug/xtrace.sh: Likewise.
-+
-+ * configure.in: Remove support for --experimental-malloc option, make
-+ it the default.
-+ * config.make.in: Likewise.
-+ * malloc/Makefile: Likewise.
-+
-+2011-06-27 Andreas Schwab <schwab at redhat.com>
-+
-+ * iconvdata/gb18030.c (BODY for TO_LOOP): Fix encoding of non-BMP
-+ two-byte characters.
-+
-+2011-06-27 Roland McGrath <roland at hack.frob.com>
-+
-+ * configure.in (NO_CTORS_DTORS_SECTIONS): Give this check its own
-+ AC_CACHE_CHECK invocation.
-+ * configure: Regenerated.
-+
-+ * elf/soinit.c (__CTOR_LIST__, __DTOR_LIST__): Add used attribute.
-+
-+2011-06-27 Ulrich Drepper <drepper at gmail.com>
-+
-+ [BZ #12350]
-+ * nscd/aicache.c (addhstaiX): Restore only RES_USE_INET6
-+ bit from old_res_options.
-+
-+ * sysdeps/unix/sysv/linux/Makefile (CFLAGS-servicescache.c): Define.
-+
-+ * inet/getnetgrent_r.c (innetgr): Minimal cleanup, use correct return
-+ value type for setfct.
-+
-+2011-06-23 H.J. Lu <hongjiu.lu at intel.com>
-+
-+ * sysdeps/unix/sysv/linux/getsysstats.c (__get_nprocs): Use
-+ __gettimeofday instead of gettimeofday.
-+
-+2011-06-26 Ulrich Drepper <drepper at gmail.com>
-+
-+ * elf/Makefile (all-built-dso): No need to check linkobj/libc.so.
-+
-+2011-06-24 H.J. Lu <hongjiu.lu at intel.com>
-+
-+ * sysdeps/i386/i686/multiarch/strcpy-sse2.S (RETURN): Fix a typo.
-+
-+ * sysdeps/i386/i686/multiarch/strcpy-ssse3.S: Correct unwind
-+ info.
-+
-+2011-06-22 H.J. Lu <hongjiu.lu at intel.com>
-+
-+ * sysdeps/x86_64/multiarch/Makefile (sysdep_routines): Add
-+ strcpy-ssse3 strncpy-ssse3 stpcpy-ssse3 stpncpy-ssse3
-+ strcpy-sse2-unaligned strncpy-sse2-unaligned
-+ stpcpy-sse2-unaligned stpncpy-sse2-unaligned.
-+ * sysdeps/x86_64/multiarch/stpcpy-sse2-unaligned.S: New file.
-+ * sysdeps/x86_64/multiarch/stpcpy-ssse3.S: New file.
-+ * sysdeps/x86_64/multiarch/stpncpy-sse2-unaligned.S: New file.
-+ * sysdeps/x86_64/multiarch/stpncpy-ssse3.S: New file.
-+ * sysdeps/x86_64/multiarch/strcpy-sse2-unaligned.S: New file.
-+ * sysdeps/x86_64/multiarch/strcpy-ssse3.S: New file.
-+ * sysdeps/x86_64/multiarch/strncpy-sse2-unaligned.S: New file.
-+ * sysdeps/x86_64/multiarch/strncpy-ssse3.S: New file.
-+ * sysdeps/x86_64/multiarch/strcpy.S: Remove strcpy with SSSE3.
-+ (STRCPY): Support SSE2 and SSSE3 versions.
-+
-+2011-06-24 Ulrich Drepper <drepper at gmail.com>
-+
-+ [BZ #12874]
-+ * sysdeps/unix/sysv/linux/Makefile (CFLAGS-tst-writev.c): Define.
-+ * sysdeps/wordsize-64/tst-writev.c: Work around problem with 2.6.38+
-+ kernels which artificially limit size of requests.
-+
-+2011-06-22 H.J. Lu <hongjiu.lu at intel.com>
-+
-+ * sysdeps/i386/i686/multiarch/Makefile (sysdep_routines): Add
-+ strncpy-c strcpy-ssse3 strncpy-ssse3 stpcpy-ssse3 stpncpy-ssse3
-+ strcpy-sse2 strncpy-sse2 stpcpy-sse2 stpncpy-sse2.
-+ * sysdeps/i386/i686/multiarch/stpcpy-sse2.S: New file.
-+ * sysdeps/i386/i686/multiarch/stpcpy-ssse3.S: New file.
-+ * sysdeps/i386/i686/multiarch/stpncpy-sse2.S: New file.
-+ * sysdeps/i386/i686/multiarch/stpncpy-ssse3.S: New file.
-+ * sysdeps/i386/i686/multiarch/stpncpy.S : New file.
-+ * sysdeps/i386/i686/multiarch/strcpy-sse2.S : New file.
-+ * sysdeps/i386/i686/multiarch/strcpy-ssse3.S: New file.
-+ * sysdeps/i386/i686/multiarch/strcpy.S: New file.
-+ * sysdeps/i386/i686/multiarch/strncpy-c.c: New file.
-+ * sysdeps/i386/i686/multiarch/strncpy-sse2.S: New file.
-+ * sysdeps/i386/i686/multiarch/strncpy-ssse3.S: New file.
-+ * sysdeps/i386/i686/multiarch/strncpy.S: New file.
-+ * sysdeps/x86_64/multiarch/init-arch.c (__init_cpu_features):
-+ Enable unaligned load optimization for Intel Core i3, i5 and i7
-+ processors.
-+ * sysdeps/x86_64/multiarch/init-arch.h (bit_Fast_Unaligned_Load):
-+ Define.
-+ (index_Fast_Unaligned_Load): Define.
-+ (HAS_FAST_UNALIGNED_LOAD): Define.
-+
-+2011-06-23 Marek Polacek <mpolacek at redhat.com>
-+
-+ * nss/nss_db/db-open.c: Include <unistd.h> for read declaration.
-+
-+2011-06-22 Ulrich Drepper <drepper at gmail.com>
-+
-+ [BZ #12907]
-+ * sysdeps/posix/getaddrinfo.c (getaddrinfo): Avoid calling __check_pf
-+ until it is clear that the information is realy needed.
-+ Patch mostly by David Hanisch <david.hanisch at nsn.com>.
-+
-+2011-06-22 Andreas Schwab <schwab at redhat.com>
-+
-+ * sysdeps/posix/getaddrinfo.c (gaih_inet): Fix last change.
-+
-+2011-06-22 Ulrich Drepper <drepper at gmail.com>
-+
-+ * sysdeps/unix/sysv/linux/getsysstats.c (__get_nprocs): Use
-+ /sys/devices/system/cpu/online if it is usable.
-+
-+ * sysdeps/unix/sysv/linux/getsysstats.c (__get_nprocs): Rate limit
-+ reading the information from the /proc filesystem to once a second.
-+
-+2011-06-21 Andreas Jaeger <aj at suse.de>
-+
-+ * sysdeps/unix/sysv/linux/bits/sigcontext.h: Fix definition of
-+ NULL after inclusion of kernel headers.
-+
-+2011-06-21 Ulrich Drepper <drepper at gmail.com>
-+
-+ * nss/nss_db/db-XXX.c (nss_db_setENT): Only set entidx for successful
-+ calls to internal_setent.
-+
-+ [BZ #12885]
-+ * sysdeps/posix/getaddrinfo.c (gaih_inet): When looking up only IPv6
-+ addresses using gethostbyname4_r ignore IPv4 addresses.
-+
-+ * sysdeps/posix/getaddrinfo.c (gaih_inet): After the last change the
-+ branch using gethostbyname2 is only for AF_INET. Optimize accordingly.
-+
-+ * inet/getnetgrent_r.c: Use DL_CALL_FCT in several places.
-+
-+2011-06-20 David S. Miller <davem at davemloft.net>
-+
-+ * sysdeps/sparc/sparc32/dl-plt.h: Protect against multiple
-+ inclusions.
-+ * sysdeps/sparc/sparc64/dl-plt.h: Likewise.
-+
-+ * sysdeps/i386/dl-irel.h (elf_ifunc_invoke): New.
-+ (elf_irel): Use it.
-+ * sysdeps/powerpc/powerpc32/dl-irel.h: Likewise.
-+ * sysdeps/powerpc/powerpc64/dl-irel.h: Likewise.
-+ * sysdeps/sparc/sparc32/dl-irel.h: Likewise.
-+ * sysdeps/sparc/sparc64/dl-irel.h: Likewise.
-+ * sysdeps/x86_64/dl-irel.h: Likewise.
-+
-+ * elf/dl-runtime.c: Use elf_ifunc_invoke.
-+ * elf/dl-sym.c: Likewise.
-+
-+2011-06-15 Ulrich Drepper <drepper at gmail.com>
-+
-+ * resolv/res_send.c (__libc_res_nsend): Fix typos in last patch. We
-+ need to dereference resplen2.
-+
-+2011-06-14 Andreas Schwab <schwab at redhat.com>
-+
-+ * sysdeps/unix/sysv/linux/wordsize-64/dl-fxstatat64.c: New file.
-+
-+2011-06-15 Ulrich Drepper <drepper at gmail.com>
-+
-+ * Makeconfig: Define vardbdir and inst_vardbdir.
-+ * nss/Makefile: Add rules to install db-Makefile.
-+
-+ * nss/nss_db/db-XXX.c: Cleanup.
-+
-+ * nss/Makefile (libnss_db-dbs): Add db-initgroups.
-+ * nss/Versions [libnss_db]: Add _nss_db_initgroups_dyn for
-+ GLIBC_PRIVATE.
-+ * nss/db-Makefile (groups.db): Emit entries for initgroups lookups.
-+ * nss/makedb.c: Implement -g option to specify that value strings
-+ are generated and should not be added to table iterated over for
-+ get*ent calls.
-+ * nss/nss_db/db-initgroups.c: New file.
-+
-+ * nss/getent.c: Add support for initgroups lookups through getgrouplist
-+ interface.
-+
-+ * grp/initgroups.c (__nss_initgroups_database): Renamed and exported.
-+ (internal_getgrouplist): Adjust to name change.
-+ Update use_initgroups_entry if this is not the first call.
-+ * nss/databases.def: Add initgroups entry.
-+
-+ * nss/makedb.c (compute_tables): Check result of multiple hash table
-+ sizes to minimize maximum chain length.
-+
-+2011-06-14 Ulrich Drepper <drepper at gmail.com>
-+
-+ * Versions.def: Add entry for libnss_db.
-+ * shlib-versions: Likewise.
-+ * nss/Makefile: Add rules to build libnss_db.
-+ * nss/Versions: Add libnss_db information. Organize libnss_files
-+ entries better.
-+ * nss/db-Makefile: Add gshadow support. Change rules for the new
-+ makedb progra. Some minor improvements to generate smaller files.
-+ * nss/nss_db/nss_db.h: Move NSS database header data structures to
-+ here from...
-+ * nss/makedb.c: ...here.
-+ Improve database format to be smaller and require less memory at
-+ runtime.
-+ * nss/nss_db/db-XXX.x: Adjust for new database format. Don't use
-+ db anymore.
-+ * nss/nss_db/db-netgrp.c: Likewise.
-+ * nss/nss_db/db-open.c: Likewise.
-+ * nss/nss_files/flies-XXX.x: Adjust comments.
-+ * nss/nss_files/files-ethers.c: Adjust for new DB_LOOKUP definition.
-+ * nss/nss_files/files-grp.c: Likewise.
-+ * nss/nss_files/files-hosts.c: Likewise.
-+ * nss/nss_files/files-network.c: Likewise.
-+ * nss/nss_files/files-proto.c: Likewise.
-+ * nss/nss_files/files-pwd.c: Likewise.
-+ * nss/nss_files/files-rpc.c: Likewise.
-+ * nss/nss_files/files-service.c: Likewise.
-+ * nss/nss_files/files-sgrp.c: Likewise.
-+ * nss/nss_files/files-spwd.c: Likewise.
-+ * nss/nss_db/db-alias.c: Removed.
-+ * nss/nss_db/dummy-db.h: Removed.
-+
-+2011-06-02 Ulrich Drepper <drepper at gmail.com>
-+
-+ * nss/makedb.c: Rewritten to not use database library.
-+ * nss/Makefile: Update to build new makedb program.
-+
-+2011-06-14 Andreas Jaeger <aj at suse.de>
-+
-+ * sysdeps/unix/sysv/linux/check_native.c: Include <string.h> for
-+ memset declaration.
-+
-+2011-06-10 Andreas Schwab <schwab at redhat.com>
-+
-+ * sysdeps/posix/getaddrinfo.c (gaih_inet): Fix logic allocating
-+ tmpbuf.
-+
-+2011-06-10 Roland McGrath <roland at hack.frob.com>
-+
-+ * Makerules (shlib.lds): Fail if the linker script comes out empty.
-+ * elf/Makefile ($(objpfx)ld.so): Likewise.
-+
-+ * Makefile ($(common-objpfx)linkobj/libc.so): Break long lines with \.
-+ Don't list ld.so twice in dependencies.
-+
-+ * posix/bug-regex31.c: Include <stdlib.h>.
-+
-+ * nscd/hstcache.c (cache_addhst): Remove unused variable.
-+
-+ * nis/nss_compat/compat-spwd.c
-+ (getspent_next_nss_netgr): Remove unused variable.
-+ * nis/nss_compat/compat-pwd.c (getpwent_next_nss_netgr): Likewise.
-+
-+ * nis/nis_print_group_entry.c (nis_print_group_entry): Fix "Implicit
-+ nonmembers" output to use the right array.
-+
-+ * resolv/nss_dns/dns-network.c (getanswer_r): Remove unused variable.
-+
-+ * elf/dl-open.c (_dl_open): Quash warnings when DL_NNS==1.
-+
-+ * locale/programs/ld-ctype.c (ctype_read): Remove unused variable.
-+ * locale/programs/ld-collate.c (add_to_tablewc): Likewise.
-+ * catgets/gencat.c (read_input_file): Likewise.
-+ * locale/programs/locarchive.c (enlarge_archive): Likewise.
-+
-+ * sunrpc/clnt_udp.c (__libc_clntudp_bufcreate): Move DONTBLOCK
-+ variable definition inside #if's controlling its use.
-+
-+ * inet/getnetgrent_r.c (innetgr): Remove unused variable.
-+
-+ * resolv/res_hconf.c (_res_hconf_reorder_addrs): Fix errno restoration.
-+
-+ * misc/syslog.c (__vsyslog_chk): Remove unused variable.
-+
-+ * io/fts.c (fts_build): Use if (0 && ...) rather than #if 0 for
-+ unreachable code.
-+
-+ * stdio-common/printf_fp.c (___printf_fp): Remove unused variable.
-+
-+ * configure.in (nss-crypt check): Use AC_LANG_PROGRAM.
-+ * configure: Regenerated.
-+
-+ * Makerules: Revert last change.
-+ * elf/Makefile: Likewise.
-+
-+2011-06-09 Roland McGrath <roland at hack.frob.com>
-+
-+ * Makerules ($(common-objpfx)libc_pic.os): Use -Wl, before -r.
-+ * elf/Makefile ($(objpfx)librtld.os): Likewise.
-+ (reloc-link): Likewise.
-+
-+2011-06-09 Ulrich Drepper <drepper at gmail.com>
-+
-+ * elf/Makefile: Add rules to build pldd.
-+ * elf/pldd.c: New file.
-+ * elf/pldd-xx.c: New file.
-+
-+2011-06-07 Ulrich Drepper <drepper at gmail.com>
-+
-+ * version.h: Update for 2.15 development version.
-+
-+2011-06-07 David S. Miller <davem at davemloft.net>
-+
-+ * sysdeps/sparc/sparc32/dl-irel.h (elf_irela): Pass dl_hwcap to
-+ ifuncs.
-+ * sysdeps/sparc/sparc32/dl-machine.h (elf_machine_rela,
-+ elf_machine_lazy_rel): Likewise.
-+ * sysdeps/sparc/sparc64/dl-irel.h (elf_irela): Likewise.
-+ * sysdeps/sparc/sparc64/dl-machine.h (elf_machine_rela,
-+ elf_machine_lazy_rel): Likewise.
-+ * sysdeps/sparc/sparc64/multiarch/memcpy.S (memcpy): Fetch
-+ dl_hwcap via passed in argument.
-+ * sysdeps/sparc/sparc64/multiarch/memset.S (memset, bzero):
-+ Likewise.
-+
-+2011-06-06 Andreas Krebbel <Andreas.Krebbel at de.ibm.com>
-+
-+ * stdlib/longlong.h: Update from GCC. Fix smul_ppmm for S/390.
-+
-+2011-06-06 Roland McGrath <roland at hack.frob.com>
-+
-+ [BZ #12849]
-+ * manual/fdl-1.1.texi: New file, verbatim from:
-+ http://www.gnu.org/licenses/old-licenses/fdl-1.1.texi
-+ * manual/lgpl-2.1.texi: New file, verbatim from:
-+ http://www.gnu.org/licenses/old-licenses/lgpl-2.1.texi
-+ * manual/Makefile (licenses): New variable, list those new file names.
-+ (texis): Use it.
-+ (chapters.% top-menu.%): Include $(licenses) with $(appendices).
-+
-+ * manual/fdl.texi: File removed.
-+ * manual/lesser.texi: File removed.
-+ * manual/libc.texinfo (Copying, Documentation License):
-+ Use new @include file names, put @appendix directive before @include.
-+
-+2011-06-04 Jakub Jelinek <jakub at redhat.com>
-+
-+ [BZ #12841]
-+ * rt/bits/mqueue2.h (__mq_open_2): Add __THROW.
-+ (__mq_open_alias): Use __REDIRECT_NTH instead of __REDIRECT.
-+ (mq_open): Add __NTH.
-+
-+2011-06-02 H.J. Lu <hongjiu.lu at intel.com>
-+
-+ * sysdeps/x86_64/multiarch/init-arch.c (__init_cpu_features):
-+ Assume Intel Core i3/i5/i7 processor if AVX is available.
-+
-+2011-05-31 Ulrich Drepper <drepper at gmail.com>
-+
-+ * sysdeps/unix/sysv/linux/dl-osinfo.h (_dl_setup_stack_chk_guard): Fix
-+ typo.
-+
-+2011-05-31 Andreas Schwab <schwab at redhat.com>
-+
-+ * nscd/nscd_getserv_r.c (nscd_getserv_r): Don't free non-malloced
-+ memory. Use alloca_account. Fix memory leak when retrying.
-+
-+2011-05-31 Ulrich Drepper <drepper at gmail.com>
-+
-+ * version.h (RELEASE): Bump for 2.14 release.
-+ * include/features.h (__GLIBC_MINOR__): Bump to 14.
-+
-+ * config.make.in (RANLIB): Remove entry.
-+
-+2011-05-30 Ulrich Drepper <drepper at gmail.com>
-+
-+ * po/Makefile (po-sed-cmd): Add ksh to extensions.
-+ (libc.pot): Work around missing support for .ksh extension in xgettext.
-+
-+ [BZ #12684]
-+ * resolv/res_send.c (__libc_res_nsend): Only go to the next name server
-+ if both request failed.
-+ (send_dg): In case of server errors clear resplen or *resplen2.
-+
-+ [BZ #12454]
-+ * elf/dl-deps.c (_dl_map_object_deps): Run initializer sorting only
-+ when there are multiple maps.
-+ * elf/dl-fini.c (_dl_sort_fini): Check for list of one.
-+ (_dl_fini): Remove test here.
-+
-+ * elf/rtld.c (dl_main): Don't allow the loader to load itself.
-+
-+2011-05-29 Ulrich Drepper <drepper at gmail.com>
-+
-+ [BZ #12350]
-+ * sysdeps/posix/getaddrinfo.c (gethosts): Restore only RES_USE_IENT6
-+ bit from old_res_options.
-+ (gaih_inet): Likewise.
-+
-+ [BZ #11099]
-+ * shadow/sgetspent_r.c (LINE_PARSER): Interpret numeric field values
-+ as signed.
-+
-+ * resolv/res_init.c (res_setoptions): Make the code more compact.
-+
-+ [BZ #11558]
-+ * resolv/res_init.c (res_setoptions): Recognize use-vc option and
-+ set RES_USEVC.
-+
-+ [BZ #11634]
-+ * elf/Makefile (tests): Don't add tst-audit[67] without working -mavx.
-+
-+ * malloc/malloc.h: Mark malloc hook variables as deprecated.
-+
-+ [BZ #11781]
-+ * malloc/malloc.h: Declare malloc hook variables as volatile.
-+
-+ * locale/programs/locarchive.c (add_locale_to_archive): Fix typo
-+ in last patch.
-+
-+ [BZ #11799]
-+ * sysdeps/unix/sysv/linux/bits/siginfo.h (SI_USER): Don't mention
-+ raise in the comment.
-+ * sysdeps/unix/sysv/linux/s390/bits/siginfo.h: Likewise.
-+ * sysdeps/unix/sysv/linux/sparc/bits/siginfo.h: Likewise.
-+ * sysdeps/unix/sysv/linux/ia64/bits/siginfo.h: Likewise.
-+
-+2011-05-28 Ulrich Drepper <drepper at gmail.com>
-+
-+ [BZ #12811]
-+ * posix/regex_internal.c (build_wcs_buffer): Don't signal we have to
-+ grow the buffers more if it already has to be sufficient.
-+ (build_wcs_upper_buffer): Likewise.
-+ * posix/regexec.c (check_matching): Likewise.
-+ (clean_state_log_if_needed): Likewise.
-+ (extend_buffers): Don't enlarge buffers beyond size of the input
-+ buffer.
-+ Patches mostly by Emil Wojak <emil at wojak.eu>.
-+ * posix/bug-regex32.c: New file.
-+ * posix/Makefile (tests): Add bug-regex32.
-+
-+ * locale/findlocale.c (_nl_find_locale): Return right away if
-+ _nl_explode_name failed.
-+ * locale/programs/locarchive.c (add_locale_to_archive): Likewise.
-+
-+ * sysdeps/unix/sysv/linux/socketcall.h (SOCKOP_sendmmsg): Define.
-+
-+ * debug/xtrace.sh: Unify messages.
-+ * malloc/memusage.sh: Likewise.
-+
-+ [BZ #12813]
-+ * sysdeps/unix/sysv/linux/x86_64/init-first.c (__vdso_time): Retrieve
-+ time symbol from vDSO. Substitute with vsyscall if not available.
-+ * sysdeps/unix/sysv/linux/x86_64/time.S [SHARED]: Use
-+ __vdso_time.
-+
-+ * sysdeps/unix/sysv/linux/internal_sendmmsg.S: New file.
-+ * sysdeps/unix/sysv/linux/sendmmsg.c: New file.
-+ * sysdeps/unix/sysv/linux/Makefile [subdir=socket] (sysdep_routines):
-+ Add sendmmsg and internal_sendmmsg.
-+ * sysdeps/unix/sysv/linux/Versions [GLIBC_2.14]: Add sendmmsg.
-+ * sysdeps/unix/sysv/linux/bits/socket.h: Declare sendmmsg.
-+ * sysdeps/unix/sysv/linux/kernel-features.h: Define __ASSUME_SENDMMSG.
-+
-+ * sysdeps/unix/sysv/linux/syscalls.list: Add setns entry.
-+ * sysdeps/unix/sysv/linux/bits/sched.h: Declare setns.
-+ * sysdeps/unix/sysv/linux/Versions [GLIBC_2.14]: Add setns.
-+
-+2011-05-27 Ulrich Drepper <drepper at gmail.com>
-+
-+ [BZ #12813]
-+ * sysdeps/unix/sysv/linux/x86_64/init-first.c (__vdso_getcpu):
-+ Retrieve getcpu symbol from vDSO. Substitute with vsyscall if not
-+ available.
-+ * sysdeps/unix/sysv/linux/x86_64/sched_getcpu.S [SHARED]: Use
-+ __vdso_getcpu.
-+
-+ [BZ #12814]
-+ * iconvdata/Makefile (tests): Add bug-iconv9.
-+ * iconvdata/bug-iconv9.c: New file.
-+
-+2011-05-27 Andreas Schwab <schwab at redhat.com>
-+
-+ [BZ #12814]
-+ * iconvdata/iso-2022-jp.c (BODY): Fix invalid variable shadowing.
-+
-+2011-05-25 Jakub Jelinek <jakub at redhat.com>
-+
-+ * sysdeps/unix/sysv/linux/x86_64/sys/user.h
-+ (struct user_regs_struct): Change intcs field back to cs.
-+
-+2011-05-25 Ulrich Drepper <drepper at gmail.com>
-+
-+ * po/ja.po: Update from translation team.
-+
-+2011-05-23 Ulrich Drepper <drepper at gmail.com>
-+
-+ [BZ #12795]
-+ * sysdeps/unix/sysv/linux/bits/resource.h (RLIMIT_RTTIME): Define.
-+ * sysdeps/unix/sysv/linux/sparc/bits/resource.h: Likewise.
-+
-+2011-05-20 Andreas Schwab <schwab at redhat.com>
-+
-+ * stdlib/longlong.h: Update from GCC.
-+
-+2011-05-23 Andreas Schwab <schwab at redhat.com>
-+
-+ * sysdeps/unix/sysv/linux/ia64/sysconf.c (HAS_CPUCLOCK): Add
-+ parameter name.
-+ * sysdeps/unix/sysv/linux/sysconf.c (has_cpuclock, HAS_CPUCLOCK):
-+ Add parameter name.
-+ (__sysconf): Pass it down.
-+
-+2011-05-22 Ulrich Drepper <drepper at gmail.com>
-+
-+ [BZ #12671]
-+ * nis/nss_nis/nis-alias.c (_nss_nis_getaliasbyname_r): Use malloc in
-+ some situations.
-+ * nscd/nscd_getserv_r.c (nscd_getserv_r): Likewise.
-+ * posix/glob.c (glob_in_dir): Take additional parameter alloca_used.
-+ add in in __libc_use_alloca calls. Adjust callers.
-+ (glob): Use malloc in some situations.
-+
-+ * elf/dl-runtime.c (_dl_profile_fixup): Also store LA_SYMB_NOPLTENTER
-+ and LA_SYMB_NOPLTEXIT in flags which are passed to pltenter and
-+ pltexit.
-+
-+2011-05-21 Ulrich Drepper <drepper at gmail.com>
-+
-+ * sysdeps/unix/sysv/linux/bits/time.h: Define CLOCK_REALTIME_ALARM
-+ and CLOCK_BOOTTIME_ALARM.
-+
-+ [BZ #12782]
-+ * string/xpg-strerror.c (__xpg_strerror_r): Fill buffer even if error
-+ is returned.
-+
-+ * string/_strerror.c (__strerror_r): Print negative errors as signed
-+ numbers.
-+
-+ [BZ #12777]
-+ * iconvdata/cp1258.c (comp_table_data): Remove entry 0x00A5 0xEC.
-+ (decomp_table): Change U0385 entry to emit 0xA5 0xEC.
-+ * iconvdata/CP1258.irreversible: Adjust entry 0xA8EC.
-+
-+ * configure.in: Fix typo in redirection and correct removal of test
-+ files in two cases.
-+
-+ [BZ #12788]
-+ * locale/setlocale.c (new_composite_name): Fix test to check for
-+ identical name of all categories.
-+
-+ [BZ #12792]
-+ * libio/filedoalloc.c (local_isatty): New function.
-+ (_IO_file_doallocate): Use local_isatty.
-+ * stdio-common/perror.c (perror): In case a new stream is used
-+ forward the stream error.
-+ * stdio-common/vfprintf.c (ARGCHECK): For read-only streams also set
-+ error flag.
-+
-+2011-05-20 Ulrich Drepper <drepper at gmail.com>
-+
-+ [BZ #11869]
-+ * sysdeps/posix/getaddrinfo.c (gaih_inet): Don't unconditionally use
-+ alloca.
-+ * include/alloca.h (extend_alloca_account): Define.
-+
-+ [BZ #11857]
-+ * posix/regex.h: Fix comments with documentation of user-accessible
-+ fields after compilation and describe correct free'ing of pattern
-+ after re_compile_pattern.
-+ Patch by Reuben Thomas <rrt at sc3d.org>.
-+
-+2011-05-18 Ryan S. Arnold <rsa at us.ibm.com>
-+
-+ * sysdeps/powerpc/powerpc64/Makefile (no-special-regs): Add -mno-vsx
-+ and -mno-altivec to prevent the compiler from using Altivec and/or
-+ VSX instructions when the corresponding registers are not available.
-+
-+2011-05-19 Andreas Schwab <schwab at redhat.com>
-+
-+ * grp/compat-initgroups.c (__libc_use_alloca): Don't define.
-+
-+2011-05-19 Ulrich Drepper <drepper at gmail.com>
-+
-+ * libio/freopen.c (freopen): Use __dup2, not dup2.
-+ * libio/freopen64.c (freopen64): Likewise.
-+
-+2011-05-17 H.J. Lu <hongjiu.lu at intel.com>
-+
-+ [BZ #12775]
-+ * sysdeps/x86_64/fpu/e_powl.S: Fix a typo.
-+ * math/Makefile (tests): Add test-powl.
-+ (CFLAGS-test-powl.c): Define.
-+ * math/test-powl.c: New file.
-+
-+2011-05-16 H.J. Lu <hongjiu.lu at intel.com>
-+
-+ * fileops.c (_IO_new_file_fopen): Get fd from _IO_fileno.
-+
-+2011-05-17 Ulrich Drepper <drepper at gmail.com>
-+
-+ [BZ #11837]
-+ * iconvdata/gb18030.c: Update to GB18020-2005.
-+
-+2011-05-16 Ulrich Drepper <drepper at gmail.com>
-+
-+ * posix/regex.h (RE_SYNTAX_AWK, RE_SYNTAX_GNU_AWK,
-+ RE_SYNTAX_POSIX_AWK): Update to match recent development.
-+ Patch by Aharon Robbins <arnold at skeeve.com>.
-+
-+ [BZ #11892]
-+ * stdlib/putenv.c (putenv): Don't always create copy of the variable
-+ on the stack.
-+
-+ [BZ #11895]
-+ * misc/pselect.c (__pselect): Handle timeout value errors hidden
-+ through underflows.
-+
-+ [BZ #12766]
-+ * misc/error.c (error_at_line): Ensure file_name and old_file_name
-+ point to strings before performing equality test for error_one_per_line
-+ mode.
-+
-+ [BZ #11697]
-+ * login/programs/pt_chown.c (do_pt_chown): Always call chown.
-+
-+ [BZ #11820]
-+ * sysdeps/unix/sysv/linux/x86_64/sys/user.h
-+ (struct user_fpregs_struct): Avoid __uint*_t types.
-+
-+ [BZ #6420]
-+ * malloc/mtrace.c (tr_where): Add additional parameter to point to
-+ symbol info. Use it instead of calling _dl_addr locally.
-+ (lock_and_info): New function.
-+ (tr_freehook): Call lock_and_info and pass symbol info as additional
-+ parameter to tr_where.
-+ (tr_mallochook): Likewise.
-+ (tr_reallochook): Likewise.
-+ (tr_memalignhook): Likewise.
-+
-+ * malloc/mtrace.c: Remove support for USE_MTRACE_FILE. It is not
-+ used and couldn't be at all thread-safe.
-+
-+2011-05-15 Ulrich Drepper <drepper at gmail.com>
-+
-+ * libio/freopen.c (freopen): Don't close old file descriptor
-+ before the new one is opened. Instead dup the new file descriptor
-+ to the old one after the new stream is created.
-+ * libio/freopen64.c (freopen64): Likewise.
-+ * libio/libio.h: Define _IO_FLAGS2_NOCLOSE and _IO_FLAGS2_CLOEXEC.
-+ * libio/fileops.c (_IO_new_file_close_it): Handle new
-+ _IO_FLAGS2_NOCLOSE flag.
-+ (_IO_new_file_fopen): Set _IO_FLAGS2_CLOEXEC for "e" mode.
-+ If _IO_file_open didn't set FD_CLOEXEC do it after the call.
-+ * libio/oldfileops.c (_IO_old_file_close_it): Handle new
-+ _IO_FLAGS2_NOCLOSE flag.
-+ * include/unistd.h: Add hidden_proto for dup3.
-+ Define __have_dup3.
-+ * io/dup3.c: Define hidden symbol.
-+ * sysdeps/unix/sysv/linux/kernel-features.h: Define __ASSUME_DUP3.
-+
-+ [BZ #7101]
-+ * posix/getopt.c (_getopt_internal_r): List all ambigious possibilities
-+ when an incomplete long option is used.
-+ * posix/tst-getopt_long1.c: New file.
-+ * posix/Makefile (tests): Add tst-getopt_long1.
-+
-+ [BZ #10138]
-+ * scripts/config.guess: Update from autoconf-2.68.
-+ * scripts/config.sub: Likewise.
-+
-+ [BZ #10157]
-+ * sysdeps/unix/sysv/linux/sysconf.c (__sysconf): Split out CPUTIME
-+ tests into ...
-+ (has_cpuclock): ...this. New function.
-+ * sysdeps/unix/sysv/linux/ia64/sysconf.c: Just define HAS_CPUCLOCK
-+ macro here based on has_cpuclock code.
-+
-+ [BZ #10149]
-+ * sysdeps/unix/sysv/linux/dl-osinfo.h (_dl_setup_stack_chk_guard):
-+ First byte (not low byte) is now always NUL.
-+ * sysdeps/generic/dl-osinfo.h (_dl_setup_stack_chk_guard): Likewise.
-+
-+ * sysdeps/unix/sysv/linux/dl-osinfo.h (_dl_setup_stack_chk_guard):
-+ Use non-cancelable interfaces.
-+
-+ [BZ #9809]
-+ * locale/iso-639.def: Add entry for Sorani.
-+
-+ [BZ #11901]
-+ * include/stdlib.h: Move include protection to the right place.
-+ Define abort_msg_s. Declare __abort_msg with it.
-+ * stdlib/abort.c (__abort_msg): Adjust type.
-+ * assert/assert.c (__assert_fail_base): New function. Majority
-+ of code from __assert_fail. Allocate memory for __abort_msg with
-+ mmap.
-+ (__assert_fail): Now call __assert_fail_base.
-+ * assert/assert-perr.c: Remove bulk of implementation. Use
-+ __assert_fail_base.
-+ * include/assert.hL Declare __assert_fail_base.
-+ * sysdeps/posix/libc_fatal.c: Allocate memory for __abort_msg with
-+ mmap.
-+ * sysdeps/unix/sysv/linux/libc_fatal.c: Likewise.
-+
-+2011-05-14 Ulrich Drepper <drepper at gmail.com>
-+
-+ [BZ #11952]
-+ [BZ #12453]
-+ * elf/dl-open.c (dl_open_worker): Delay calls to _dl_update_slotinfo
-+ until all modules are registered in the DTV.
-+ * elf/Makefile: Add rules to build and run tst-tls19.
-+ * elf/tst-tls19.c: New file.
-+ * elf/tst-tls19mod1.c: New file.
-+ * elf/tst-tls19mod2.c: New file.
-+ * elf/tst-tls19mod3.c: New file.
-+ Patch mostly by Martin von Gagern <Martin.vGagern at gmx.net>.
-+
-+ [BZ #12083]
-+ * sysdeps/pthread/aio_misc.c (__aio_init): Compute optim.aio_num
-+ correctly.
-+
-+ [BZ #12601]
-+ * iconvdata/cp932.c (BODY to UCS4): Fix incrementing inptr in case of
-+ two-byte sequence errors.
-+ * iconvdata/Makefile (tests): Add bug-iconv8.
-+ * iconvdata/bug-iconv8.c: New file.
-+
-+ [BZ #12626]
-+ * sysdeps/generic/elf/backtracesymsfd.c (__backtrace_symbols_fd): Move
-+ buf2 definition.
-+
-+ * libio/fileops.c (_IO_new_file_close_it): Initialize write_status.
-+
-+ [BZ #12432]
-+ * sysdeps/ia64/backtrace.c (struct trace_reg): Add cfa element.
-+ (dummy_getcfa): New function.
-+ (init): Get _Unwind_GetCFA address, use dummy if not found.
-+ (backtrace_helper): In recursion check, also check whether CFA changes.
-+ (__backtrace): Completely initialize arg.
-+
-+ * iconv/loop.c (SINGLE) [STORE_REST]: Add input bytes to bytebuf before
-+ storing incomplete byte sequence in state object. Avoid testing for
-+ guaranteed too small input if we know there is enough data available.
-+
-+2011-05-11 Andreas Schwab <schwab at redhat.com>
-+
-+ * Makeconfig (+link-pie): Indent.
-+ * Rules (binaries-pie): Define if $(have-fpie) and
-+ $(build-shared).
-+ (binaries-shared): Also filter out $(binaries-pie).
-+ ($(addprefix $(objpfx),$(binaries-pie))): New rule.
-+ * nscd/Makefile (others-pie): Add nscd.
-+ (LDFLAGS-nscd): Set this instead of relro-LDFLAGS.
-+ ($(objpfx)nscd): Remove command override.
-+ * login/Makefile (others-pie): Add pt_chown.
-+ ($(objpfx)pt_chown): Remove command override.
-+ * elf/Makefile: Add PIE tests to tests and tests-pie variables and
-+ remove command overrides.
-+
-+2011-05-13 Ulrich Drepper <drepper at gmail.com>
-+
-+ * libio/tst_putwc.c: Fix error messages.
-+
-+ [BZ #12724]
-+ * libio/fileops.c (_IO_new_file_close_it): Always flush when
-+ currently writing and seek to current position when not.
-+ * libio/Makefile (tests): Add bug-fclose1.
-+ * libio/bug-fclose1.c: New file.
-+
-+2011-05-12 Ulrich Drepper <drepper at gmail.com>
-+
-+ [BZ #12511]
-+ * elf/dl-lookup.c (enter): Don't test for copy relocation here and
-+ don't set DF_1_NODELETE here.
-+ (do_lookup_x): When entering new entry test for copy relocation
-+ and if necessary set DF_1_NODELETE flag.
-+ * elf/tst-unique4.cc: New file.
-+ * elf/tst-unique4.h: New file.
-+ * elf/tst-unique4lib.cc: New file.
-+ * elf/Makefile: Add rules to build and run tst-unique4.
-+ Patch by Piotr Bury <pbury at goahead.com>.
-+
-+2011-05-11 Ulrich Drepper <drepper at gmail.com>
-+
-+ [BZ #12052]
-+ * sysdeps/posix/spawni.c (__spawni): Fix sched_setscheduler call.
-+
-+ [BZ #12625]
-+ * misc/mntent_r.c (addmntent): Flush the stream after the output
-+
-+ [BZ #12393]
-+ * elf/dl-load.c (is_trusted_path): Remove unnecessary test.
-+ (is_trusted_path_normalize): Skip initial colon. Append slash
-+ to empty buffer. Duplicate is_trusted_path code but allow
-+ constructed patch to be prefix.
-+ (is_dst): Allow $ORIGIN followed by /.
-+ (_dl_dst_substitute): Correct clearing of check_for_trusted.
-+ Correct testing of result of is_trusted_path_normalize
-+ (decompose_rpath): Fix warning.
-+
-+2011-05-10 Ulrich Drepper <drepper at gmail.com>
-+
-+ [BZ #11257]
-+ * grp/initgroups.c (internal_getgrouplist): When we found the service
-+ list through the initgroups entry in nsswitch.conf do not always
-+ continue on a successful lookup. Don't always use the
-+ __nss_group_database value if it is set.
-+ * nss/nsswitch.conf (initgroups): Change action for successful db
-+ lookup to continue for compatibility.
-+
-+2011-05-09 Ulrich Drepper <drepper at gmail.com>
-+
-+ [BZ #11532]
-+ * iconvdata/Makefile: Add rules to build CP770, CP771, CP772, CP773,
-+ and CP774 modules.
-+ * iconvdata/gconv-modules: Add entries for CP770, CP771, CP772, CP773,
-+ and CP774 modules.
-+ * iconvdata/tst-tables.sh: Likewise.
-+ * iconvdata/cp770.c: New file.
-+ * iconvdata/cp771.c: New file.
-+ * iconvdata/cp772.c: New file.
-+ * iconvdata/cp773.c: New file.
-+ * iconvdata/cp774.c: New file.
-+ * iconvdata/testdata/CP770: New file.
-+ * iconvdata/testdata/CP770..UTF8: New file.
-+ * iconvdata/testdata/CP771: New file.
-+ * iconvdata/testdata/CP771..UTF8: New file.
-+ * iconvdata/testdata/CP772: New file.
-+ * iconvdata/testdata/CP772..UTF8: New file.
-+ * iconvdata/testdata/CP773: New file.
-+ * iconvdata/testdata/CP773..UTF8: New file.
-+ * iconvdata/testdata/CP774: New file.
-+ * iconvdata/testdata/CP774..UTF8: New file.
-+
-+ * iconvdata/gen-8bit-gap-1.sh: End reading of charmap file at
-+ END CHARMAP line.
-+ * iconvdata/gen-8bit-gap.sh: Likewise.
-+ * iconvdata/gen-8bit.sh: Likewise.
-+
-+ * locale/iso-639.def: Add ary entry.
-+
-+ [BZ #11258]
-+ * locale/C-translit.h.in: Add U20A1 transliteration.
-+
-+ [BZ #12178]
-+ * locale/iso-639.def: Add wae entry.
-+ Patch by Kevin Bortis <bortis at translate-wae.ch>.
-+
-+ [BZ #12545]
-+ * locale/programs/localedef.c (construct_output_path): Use ssize_t
-+ for n.
-+
-+ [BZ #12711]
-+ * locale/C-translit.h.in: Add entry for U20B9.
-+ Patch by pravin.d.s at gmail.com.
-+
-+2011-05-08 Ulrich Drepper <drepper at gmail.com>
-+
-+ [BZ #12713]
-+ * sysdeps/unix/sysv/linux/getcwd.c: If getcwd syscall report
-+ ENAMETOOLONG use generic getcwd.
-+ * sysdeps/posix/getcwd.c: Add support to use openat. Make usable
-+ in rtld. Use *stat64.
-+ * sysdeps/unix/sysv/linux/Makefile [subdir=elf] (sysdep-rtld-routines):
-+ Add dl-getcwd, dl-openat64, dl-opendir, dl-fxstatat64.
-+ * sysdeps/unix/sysv/linux/dl-getcwd.c: New file.
-+ * sysdeps/unix/sysv/linux/dl-openat64.c: New file.
-+ * sysdeps/unix/sysv/linux/dl-opendir.c: New file.
-+ * sysdeps/unix/sysv/linux/dl-fxstat64.c: New file.
-+ * include/sys/stat.h: Define __fstatat, __lstat64, __fstat64, and
-+ __fstatat64 macros.
-+ * include/dirent.h: Add libc_hidden_proto for rewinddir.
-+ * dirent/rewinddir.c: Add libc_hidden_def.
-+ * sysdeps/mach/hurd/rewinddir.c: Likewise.
-+ * sysdeps/unix/rewinddir.c: Likewise. Don't do locking outside libc.
-+
-+ * include/dirent.h (__alloc_dir): Add flags parameter.
-+ * sysdeps/unix/fdopendir.c (__fdopendir): Pass flags to __alloc_dir.
-+ * sysdeps/unix/opendir.c (__opendir): Pass 0 in new parameter to
-+ __alloc_dir.
-+ (__alloc_dir): Take new parameter. Don't call fcntl for invocations
-+ from fdopendir if O_CLOEXEC is already set.
-+
-+2011-03-15 Alan Modra <amodra at gmail.com>
-+
-+ * elf/dl-reloc.c (_dl_try_allocate_static_tls <TLS_DTV_AT_TP>): Handle
-+ l_tls_firstbyte_offset non-zero. Save padding offset in
-+ l_tls_firstbyte_offset for later use.
-+ * elf/dl-close.c (_dl_close_worker <TLS_DTV_AT_TP>): Correct code
-+ freeing static tls block.
-+
-+2011-03-05 Jonathan Nieder <jrnieder at gmail.com>
-+
-+ * sysdeps/unix/sysv/linux/sys/param.h: Fix an #ifndef __undef_ARG_MAX
-+ where #ifdef was intended. The intent is to prevent ARG_MAX from
-+ being defined by the kernel headers.
-+
-+2011-05-07 Ulrich Drepper <drepper at gmail.com>
-+
-+ [BZ #12734]
-+ * resolv/resolv.h: Define RES_NOTLDQUERY.
-+ * resolv/res_init.c (res_setoptions): Recognize no_tld_query and
-+ no-tld-query and set RES_NOTLDQUERY.
-+ * resolv/res_debug.c (p_option): Handle RES_NOTLDQUERY.
-+ * resolv/res_query.c (__libc_res_nsearch): Backport changes from
-+ modern BIND to search name as TLD unless forbidden.
-+
-+2011-05-07 Petr Baudis <pasky at suse.cz>
-+ Ulrich Drepper <drepper at gmail.com>
-+
-+ [BZ #12393]
-+ * elf/dl-load.c (fillin_rpath): Move trusted path check...
-+ (is_trusted_path): ...to here.
-+ (is_trusted_path_normalize): Wrapper for /../ and /./ normalization.
-+ (_dl_dst_substitute): Verify expanded $ORIGIN path elements
-+ using is_trusted_path_normalize() in setuid scripts.
-+
-+2011-05-06 Paul Pluzhnikov <ppluzhnikov at google.com>
-+
-+ * sysdeps/unix/sysv/linux/sys/sysmacros.h: Add missing
-+ __BEGIN/__END_DECLS.
-+
-+2011-05-06 Ulrich Drepper <drepper at gmail.com>
-+
-+ * nss/nss_files/files-initgroups.c (_nss_files_initgroups_dyn): Return
-+ NSS_STATUS_NOTFOUND if no record was found.
-+
-+2011-05-05 Andreas Schwab <schwab at redhat.com>
-+
-+ * sunrpc/Makefile (headers): Add rpc/netdb.h.
-+ (headers-not-in-tirpc): Remove rpc/netdb.h
-+ * resolv/netdb.h: Revert last change.
-+
-+2011-05-05 Paul Pluzhnikov <ppluzhnikov at google.com>
-+
-+ * Makeconfig (link-libc-static): Use --{start,end}-group to handle
-+ circular dependency between libgcc.a and libc.a.
-+
-+2011-05-05 Andreas Schwab <schwab at redhat.com>
-+
-+ * resolv/netdb.h: Don't include <rpc/netdb.h>.
-+ * nis/Makefile: Don't install rpcsvc/*.
-+ * inet/protocols/timed.h: Include <sys/types.h> and <sys/time.h>
-+ instead of <rpc/types.h>.
-+ (MAXHOSTNAMELEN): Define.
-+
-+2011-05-03 Andreas Schwab <schwab at redhat.com>
-+
-+ * elf/ldconfig.c (add_dir): Don't crash on empty path.
-+
-+2011-04-28 Maciej Babinski <mbabinski at google.com>
-+
-+ [BZ #12714]
-+ * sysdeps/posix/getaddrinfo.c (gaih_inet): Don't bypass
-+ gethostbyname4_r when IPv6 results are possible.
-+
-+2011-05-02 Ulrich Drepper <drepper at gmail.com>
-+
-+ [BZ #12723]
-+ * sysdeps/unix/sysv/linux/pathconf.c (__pathconf): Implement
-+ _PC_PIPE_BUF handling.
-+
-+2011-04-30 Bruno Haible <bruno at clisp.org>
-+
-+ [BZ #12717]
-+ * conform/data/netdb.h-data (getnameinfo): Make POSIX compliant.
-+ * resolv/netdb.h (getnameinfo): Change type of flags parameter
-+ to 'int'.
-+ * inet/getnameinfo.c (getnameinfo): Likewise.
-+
-+2011-04-29 Ulrich Drepper <drepper at gmail.com>
-+
-+ * grp/initgroups.c (internal_getgrouplist): Prefer initgroups setting
-+ to groups setting in database lookup.
-+ * nss/nsswitch.conf: Add initgroups entry.
-+
-+2011-04-22 Ulrich Drepper <drepper at gmail.com>
-+
-+ [BZ #12685]
-+ * libio/fileops.c (_IO_new_file_fopen): Scan up to 7 bytes of the
-+ mode string.
-+ Patch by Eric Blake <eblake at redhat.com>.
-+
-+2011-04-20 H.J. Lu <hongjiu.lu at intel.com>
-+
-+ * sunrpc/Makefile (need-export-routines): Add svc_run.
-+ (routines): Remove svc_run.
-+ ($(objpfx)thrsvc): Add $(common-objpfx)linkobj/libc.so.
-+ * sunrpc/clnt_perr.c (clnt_perrno): Export.
-+ * sunrpc/svc_run.c (svc_run): Likewise.
-+ * sunrpc/svc_udp.c (svcudp_create): Likewise.
-+
-+2011-04-21 Ulrich Drepper <drepper at gmail.com>
-+
-+ * nss/nss_files/files-initgroups.c (_nss_files_initgroups_dyn): Fix
-+ problem in reallocation in last patch.
-+
-+2011-04-20 Ulrich Drepper <drepper at gmail.com>
-+
-+ * sunrpc/Makefile: Move inclusion of Rules.
-+
-+2011-04-19 Ulrich Drepper <drepper at gmail.com>
-+
-+ * nss/nss_files/files-initgroups.c: New file.
-+ * nss/Makefile (libnss_files-routines): Add files-initgroups.
-+ * nss/Versions (libnss_files) [GLIBC_PRIVATE]: Export
-+ _nss_files_initgroups_dyn.
-+
-+2011-03-31 Richard Sandiford <richard.sandiford at linaro.org>
-+
-+ * elf/elf.h (R_ARM_IRELATIVE): Define.
-+
-+2011-04-19 Ulrich Drepper <drepper at gmail.com>
-+
-+ * po/ru.po: Update from translation team.
-+
-+2011-04-17 Ulrich Drepper <drepper at gmail.com>
-+
-+ * sunrpc/Makefile ($(rpc-compat-routines.os)): Add before-compile to
-+ dependencies.
-+
-+2011-02-06 Mike Frysinger <vapier at gentoo.org>
-+
-+ [BZ #12653]
-+ * sysdeps/i386/i686/multiarch/memcpy-ssse3-rep.S: Only protect
-+ MEMCPY_CHK with USE_AS_BCOPY ifdef check.
-+ * sysdeps/i386/i686/multiarch/memcpy-ssse3.S: Likewise.
-+ * sysdeps/x86_64/multiarch/memcpy-ssse3.S: Likewise.
-+ * sysdeps/x86_64/multiarch/memcpy-ssse3-back.S: Likewise.
-+
-+2011-03-28 Andreas Schwab <schwab at linux-m68k.org>
-+
-+ * sysdeps/powerpc/powerpc32/power4/strncmp.S: Don't read past
-+ differing bytes.
-+ * sysdeps/powerpc/powerpc64/power4/strncmp.S: Likewise.
-+ * sysdeps/powerpc/powerpc32/power7/strncmp.S: Likewise.
-+ * sysdeps/powerpc/powerpc64/power7/strncmp.S: Likewise.
-+
-+2011-04-17 Ulrich Drepper <drepper at gmail.com>
-+
-+ [BZ #12420]
-+ * sysdeps/unix/sysv/linux/x86_64/getcontext.S: Reload context after
-+ storing it.
-+ * stdlib/bug-getcontext.c: New file.
-+ * stdlib/Makefile: Add rules to build and run bug-getcontext.
-+
-+2011-04-13 Andreas Krebbel <Andreas.Krebbel at de.ibm.com>
-+
-+ * sysdeps/s390/s390-64/utf16-utf32-z9.c: Wrap the z9-109
-+ instructions into .machine "z9-109".
-+ * sysdeps/s390/s390-64/utf8-utf16-z9.c: Likewise.
-+ * sysdeps/s390/s390-64/utf8-utf32-z9.c: Likewise.
-+
-+2011-04-11 Andreas Krebbel <Andreas.Krebbel at de.ibm.com>
-+
-+ * sysdeps/s390/s390-32/elf/start.S (_start): Skip extra zeroes
-+ between environment variables and auxiliary vector.
-+
-+2011-04-16 Ulrich Drepper <drepper at gmail.com>
-+
-+ * Makefile: Add rules to build linkobj/libc.so.
-+ * include/libc-symbols.h: Define libc_hidden_nolink.
-+ * include/rpc/auth.h: Mark functions which are to be hidden.
-+ * include/rpc/auth_des.h: Likewise.
-+ * include/rpc/auth_unix.h: Likewise.
-+ * include/rpc/clnt.h: Likewise.
-+ * include/rpc/des_crypt.h: Likewise.
-+ * include/rpc/key_prot.h: Likewise.
-+ * include/rpc/pmap_clnt.h: Likewise.
-+ * include/rpc/pmap_prot.h: Likewise.
-+ * include/rpc/pmap_rmt.h: Likewise.
-+ * include/rpc/rpc_msg.h: Likewise.
-+ * include/rpc/svc.h: Likewise.
-+ * include/rpc/svc_auth.h: Likewise.
-+ * include/rpc/xdr.h: Likewise.
-+ * nis/Makefile: Link all DSOs against linkobj/libc.so.
-+ * nss/Makefile: Likewise.
-+ * sunrpc/Makefile: Don't install headers. Build library with normal
-+ entry points. Don't build rpcinfo. Link RPC tests appropriately.
-+ * sunrpc/auth_des.c: Hide exported symbols by default, export some
-+ for the compat linking library. Remove use of INTDEF/INTUSE.
-+ * sunrpc/auth_none.c: Likewise.
-+ * sunrpc/auth_unix.c: Likewise.
-+ * sunrpc/authdes_prot.c: Likewise.
-+ * sunrpc/authuxprot.c: Likewise.
-+ * sunrpc/clnt_gen.c: Likewise.
-+ * sunrpc/clnt_perr.c: Likewise.
-+ * sunrpc/clnt_raw.c: Likewise.
-+ * sunrpc/clnt_simp.c: Likewise.
-+ * sunrpc/clnt_tcp.c: Likewise.
-+ * sunrpc/clnt_udp.c: Likewise.
-+ * sunrpc/clnt_unix.c: Likewise.
-+ * sunrpc/des_crypt.c: Likewise.
-+ * sunrpc/des_soft.c: Likewise.
-+ * sunrpc/get_myaddr.c: Likewise.
-+ * sunrpc/key_call.c: Likewise.
-+ * sunrpc/key_prot.c: Likewise.
-+ * sunrpc/netname.c: Likewise.
-+ * sunrpc/pm_getmaps.c: Likewise.
-+ * sunrpc/pm_getport.c: Likewise.
-+ * sunrpc/pmap_clnt.c: Likewise.
-+ * sunrpc/pmap_prot.c: Likewise.
-+ * sunrpc/pmap_prot2.c: Likewise.
-+ * sunrpc/pmap_rmt.c: Likewise.
-+ * sunrpc/publickey.c: Likewise.
-+ * sunrpc/rpc_cmsg.c: Likewise.
-+ * sunrpc/rpc_common.c: Likewise.
-+ * sunrpc/rpc_dtable.c: Likewise.
-+ * sunrpc/rpc_prot.c: Likewise.
-+ * sunrpc/rpc_thread.c: Likewise.
-+ * sunrpc/rtime.c: Likewise.
-+ * sunrpc/svc.c: Likewise.
-+ * sunrpc/svc_auth.c: Likewise.
-+ * sunrpc/svc_authux.c: Likewise.
-+ * sunrpc/svc_raw.c: Likewise.
-+ * sunrpc/svc_run.c: Likewise.
-+ * sunrpc/svc_simple.c: Likewise.
-+ * sunrpc/svc_tcp.c: Likewise.
-+ * sunrpc/svc_udp.c: Likewise.
-+ * sunrpc/svc_unix.c: Likewise.
-+ * sunrpc/svcauth_des.c: Likewise.
-+ * sunrpc/xcrypt.c: Likewise.
-+ * sunrpc/xdr.c: Likewise.
-+ * sunrpc/xdr_array.c: Likewise.
-+ * sunrpc/xdr_float.c: Likewise.
-+ * sunrpc/xdr_intXX_t.c: Likewise.
-+ * sunrpc/xdr_mem.c: Likewise.
-+ * sunrpc/xdr_rec.c: Likewise.
-+ * sunrpc/xdr_ref.c: Likewise.
-+ * sunrpc/xdr_sizeof.c: Likewise.
-+ * sunrpc/xdr_stdio.c: Likewise.
-+
-+2011-04-10 Ulrich Drepper <drepper at gmail.com>
-+
-+ [BZ #12650]
-+ * sysdeps/i386/dl-tls.h: Define TLS_DTV_UNALLOCATED.
-+ * sysdeps/ia64/dl-tls.h: Likewise.
-+ * sysdeps/powerpc/dl-tls.h: Likewise.
-+ * sysdeps/s390/dl-tls.h: Likewise.
-+ * sysdeps/sh/dl-tls.h: Likewise.
-+ * sysdeps/sparc/dl-tls.h: Likewise.
-+ * sysdeps/x86_64/dl-tls.h: Likewise.
-+ * elf/dl-tls.c: Don't define TLS_DTV_UNALLOCATED here.
-+
-+2011-03-14 Andreas Schwab <schwab at redhat.com>
-+
-+ * elf/dl-load.c (_dl_dst_substitute): When skipping the first
-+ rpath element also skip the following colon.
-+ (expand_dynamic_string_token): Add is_path parameter and pass
-+ down to DL_DST_REQUIRED and _dl_dst_substitute.
-+ (decompose_rpath): Call expand_dynamic_string_token with
-+ non-zero is_path. Ignore empty rpaths.
-+ (_dl_map_object_from_fd): Call expand_dynamic_string_token
-+ with zero is_path.
-+
-+2011-04-08 Andreas Schwab <schwab at linux-m68k.org>
-+
-+ * sysdeps/unix/sysv/linux/powerpc/powerpc64/sync_file_range.c:
-+ Make cancelable.
-+
-+2011-04-09 Ulrich Drepper <drepper at gmail.com>
-+
-+ [BZ #12655]
-+ * sysdeps/unix/sysv/linux/sys/syscall.h: Fix comment.
-+ Patch by Filipe David Manana <fdmanana at apache.org>.
-+
-+2011-04-07 Andreas Schwab <schwab at redhat.com>
-+
-+ * sysdeps/unix/sysv/linux/x86_64/____longjmp_chk.S (CALL_FAIL):
-+ Maintain aligned stack.
-+ (CHECK_RSP): Remove unused macro.
-+
-+2011-04-03 Ulrich Drepper <drepper at gmail.com>
-+
-+ * sysdeps/x86_64/cacheinfo.c (intel_02_known): Fix typo in table.
-+ * sysdeps/unix/sysv/linux/i386/sysconf.c (intel_02_known): Likewise.
-+
-+2011-04-02 Ulrich Drepper <drepper at gmail.com>
-+
-+ * sysdeps/unix/sysv/linux/bits/time.h (CLOCK_BOOTTIME): Define.
-+
-+ * include/features.h: Mention __USE_XOPEN2K8 in comment.
-+
-+2011-03-26 H.J. Lu <hongjiu.lu at intel.com>
-+
-+ [BZ #12518]
-+ * sysdeps/x86_64/Versions: Add memcpy to GLIBC_2.14.
-+ * sysdeps/x86_64/memcpy.S: Provide GLIBC_2_14 memcpy.
-+ * sysdeps/x86_64/memmove.c: New file.
-+ * sysdeps/x86_64/multiarch/memcpy.S: Include <shlib-compat.h>.
-+ (memcpy): Renamed to ...
-+ (__new_memcpy): This.
-+ (memcpy): Provide GLIBC_2_14 memcpy.
-+ * sysdeps/x86_64/multiarch/memmove.c: Include <shlib-compat.h>.
-+ (memcpy): Provide GLIBC_2_2_5 memcpy.
-+
-+2011-04-01 Ulrich Drepper <drepper at gmail.com>
-+
-+ [BZ #12631]
-+ * wcsmbs/wchar.h: Make wcpcpy and wcpncpy visible for __USE_XOPEN2K8.
-+
-+2011-03-30 Andreas Schwab <schwab at redhat.com>
-+
-+ * misc/syncfs.c: New file.
-+ * misc/Makefile (routines): Add syncfs.
-+ * posix/unistd.h: Declare syncfs.
-+ * sysdeps/unix/syscalls.list: Add syncfs.
-+
-+2011-04-01 Andreas Schwab <schwab at redhat.com>
-+
-+ * sysdeps/unix/sysv/linux/Versions: Rename open_by_handle to
-+ open_by_handle_at.
-+ * sysdeps/unix/sysv/linux/i386/bits/fcntl.h: Likewise.
-+ * sysdeps/unix/sysv/linux/ia64/bits/fcntl.h: Likewise.
-+ * sysdeps/unix/sysv/linux/s390/bits/fcntl.h: Likewise.
-+ * sysdeps/unix/sysv/linux/sh/bits/fcntl.h: Likewise.
-+ * sysdeps/unix/sysv/linux/sparc/bits/fcntl.h: Likewise.
-+ * sysdeps/unix/sysv/linux/syscalls.list: Likewise.
-+ * sysdeps/unix/sysv/linux/x86_64/bits/fcntl.h: Likewise.
-+
-+2011-04-01 Ulrich Drepper <drepper at gmail.com>
-+
-+ * sysdeps/unix/sysv/linux/i386/bits/fcntl.h: Define O_PATH.
-+ * sysdeps/unix/sysv/linux/ia64/bits/fcntl.h: Likewise.
-+ * sysdeps/unix/sysv/linux/powerpc/bits/fcntl.h: Likewise.
-+ * sysdeps/unix/sysv/linux/s390/bits/fcntl.h: Likewise.
-+ * sysdeps/unix/sysv/linux/sh/bits/fcntl.h: Likewise.
-+ * sysdeps/unix/sysv/linux/sparc/bits/fcntl.h: Likewise.
-+ * sysdeps/unix/sysv/linux/x86_64/bits/fcntl.h: Likewise.
-+
-+ * io/Makefile: Compile fallocate.c, fallocate64.c, and
-+ sync_file_range.c with -fexceptions.
-+ * sysdeps/unix/sysv/linux/fallocate.c: Make cancelable.
-+ * sysdeps/unix/sysv/linux/fallocate64.c: Likewise.
-+ * sysdeps/unix/sysv/linux/i386/fallocate.c: Likewise.
-+ * sysdeps/unix/sysv/linux/i386/fallocate64.c: Likewise.
-+ * sysdeps/unix/sysv/linux/wordsize-64/fallocate.c: Likewise.
-+ * sysdeps/unix/sysv/linux/sync_file_range.c: Likewise.
-+ * sysdeps/unix/sysv/linux/wordsize-64/syscalls.list: Mark
-+ sync_file_range as cancellation point
-+ * sysdeps/unix/sysv/linux/i386/sync_file_range.c: New file. This is
-+ now a wrapper around __call_sync_file_range with cancellation handling.
-+ * sysdeps/unix/sysv/linux/i386/sync_file_range.S: Renamed to ...
-+ * sysdeps/unix/sysv/linux/i386/call_sync_file_range.S: ...this. Change
-+ function name to __call_sync_file_range.
-+ * sysdeps/unix/sysv/linux/i386/Makefile [subdir=io] (sysdep_routines):
-+ Add call_sync_file_range.
-+
-+2011-04-01 Andreas Schwab <schwab at redhat.com>
-+
-+ * sysdeps/unix/sysv/linux/Makefile (sysdep_headers): Add
-+ bits/timex.h.
-+
-+2011-04-01 Ulrich Drepper <drepper at gmail.com>
-+
-+ * iconv/iconv.h: Fix typo in comment.
-+ * io/fcntl.h: Likewise.
-+ * libio/stdio.h: Likewise.
-+ * posix/spawn.h: Likewise.
-+ * posix/unistd.h: Likewise.
-+ * stdlib/stdlib.h: Likewise.
-+ * time/time.h: Likewise.
-+ * wcsmbs/wchar.h: Likewise.
-+
-+ * sysdeps/unix/sysv/linux/Versions [GLIBC_2.14] (name_to_handle_at,
-+ open_by_handle): Add.
-+ * sysdeps/unix/sysv/linux/i386/bits/fcntl.h: Define struct file_handle
-+ and MAX_HANDLE_SZ. Declare name_to_handle_at and open_by_handle.
-+ Augment a few comments.
-+ * sysdeps/unix/sysv/linux/ia64/bits/fcntl.h: Likewise.
-+ * sysdeps/unix/sysv/linux/s390/bits/fcntl.h: Likewise.
-+ * sysdeps/unix/sysv/linux/sh/bits/fcntl.h: Likewise.
-+ * sysdeps/unix/sysv/linux/sparc/bits/fcntl.h: Likewise.
-+ * sysdeps/unix/sysv/linux/x86_64/bits/fcntl.h: Likewise.
-+ * sysdeps/unix/sysv/linux/syscalls.list: Add name_to_handle_at and
-+ open_by_handle.
-+
-+ * io/fcntl.h (AT_EMPTY_PATH): Define.
-+
-+2011-03-30 Ulrich Drepper <drepper at gmail.com>
-+
-+ * sysdeps/unix/sysv/linux/syscalls.list: Add clock_adjtime.
-+ * sysdeps/unix/sysv/linux/bits/time.h: New file.
-+ * sysdeps/unix/sysv/linux/sys/timex.h: Move struct timex definition
-+ to...
-+ * sysdeps/unix/sysv/linux/bits/timex.h: ...here. New file.
-+ * Versions.def: Add GLIBC_2.14.
-+ * sysdeps/unix/sysv/linux/Versions [GLIBC_2.14] (clock_adjtime):
-+ Export.
-+
-+2011-03-22 Ulrich Drepper <drepper at gmail.com>
-+
-+ * sysdeps/unix/sysv/linux/i386/sysconf.c (intel_check_word): Increment
-+ round counter.
-+ * sysdeps/x86_64/cacheinfo.c (intel_check_word): Likewise.
-+
-+2011-03-20 H.J. Lu <hongjiu.lu at intel.com>
-+
-+ [BZ #12597]
-+ * string/test-strncmp.c (do_page_test): New function.
-+ (check2): Likewise.
-+ (test_main): Call check2.
-+ * sysdeps/x86_64/multiarch/strcmp.S: Properly cross page boundary.
-+
-+2011-03-20 Ulrich Drepper <drepper at gmail.com>
-+
-+ [BZ #12587]
-+ * sysdeps/unix/sysv/linux/i386/sysconf.c (intel_check_word):
-+ Handle cache information in CPU leaf 4.
-+ * sysdeps/x86_64/cacheinfo.c (intel_check_word): Likewise.
-+
-+2011-03-18 Ulrich Drepper <drepper at gmail.com>
-+
-+ [BZ #12583]
-+ * posix/fnmatch.c (fnmatch): Check size of pattern in wide
-+ character representation.
-+ Partly based on a patch by Tomas Hoger <thoger at redhat.com>.
-+
-+2011-03-16 Ryan S. Arnold <rsa at us.ibm.com>
-+
-+ * sysdeps/powerpc/powerpc32/power6/fpu/s_isnanf.S (isnanf): Fix
-+ END(__isnan) to END(__isnanf) to match function entry point/label
-+ EALIGN(__isnanf,...).
-+
-+2011-03-10 Jakub Jelinek <jakub at redhat.com>
-+
-+ * wcsmbs/wchar.h (wmemcmp): Remove __restrict qualifiers.
-+
-+2011-03-10 Ulrich Drepper <drepper at gmail.com>
-+
-+ [BZ #12510]
-+ * elf/dl-lookup.c (do_lookup_x): For copy relocations of unique objects
-+ copy from the symbol referenced in the relocation to initialize the
-+ used variable.
-+ Patch by Piotr Bury <pbury at goahead.com>.
-+ * elf/Makefile: Add rules to build and tst-unique3.
-+ * include/bits/dlfcn.h: Remove _dl_mcount_wrapper_check declaration.
-+ * elf/tst-unique3.cc: New file.
-+ * elf/tst-unique3.h: New file.
-+ * elf/tst-unique3lib.cc: New file.
-+ * elf/tst-unique3lib2.cc: New file.
-+
-+ * elf/Makefile: Don't run tst-execstack* tests of SELinux is enabled.
-+
-+2011-03-10 Mike Frysinger <vapier at gentoo.org>
-+
-+ * sysdeps/sparc/sparc64/elf/configure.in (libc_cv_sparc64_tls): Add
-+ $LDFLAGS and -nostdlib -nostartfiles to linking step. Change main
-+ to _start.
-+
-+2011-03-06 Ulrich Drepper <drepper at gmail.com>
-+
-+ * elf/dl-load.c (_dl_map_object): If we are looking for the first
-+ to-be-loaded object along a path to loader is ld.so.
-+
-+2011-03-02 Harsha Jagasia <harsha.jagasia at amd.com>
-+ Ulrich Drepper <drepper at gmail.com>
-+
-+ * sysdeps/x86_64/memset.S: After aligning destination, code
-+ branches to different locations depending on the value of
-+ misalignment, when multiarch is enabled. Fix this.
-+
-+2011-03-02 Harsha Jagasia <harsha.jagasia at amd.com>
-+
-+ * sysdeps/x86_64/cacheinfo.c (init_cacheinfo):
-+ Set _x86_64_preferred_memory_instruction for AMD processsors.
-+ * sysdeps/x86_64/multiarch/init-arch.c (__init_cpu_features):
-+ Set bit_Prefer_SSE_for_memop for AMD processors.
-+
-+2011-03-04 Ulrich Drepper <drepper at gmail.com>
-+
-+ * libio/fmemopen.c (fmemopen): Optimize a bit.
-+
-+2011-03-03 Andreas Schwab <schwab at redhat.com>
-+
-+ * libio/fmemopen.c (fmemopen): Don't read past end of buffer.
-+
-+2011-03-03 Roland McGrath <roland at redhat.com>
-+
-+ * setjmp/bits/setjmp2.h: Canonicalize comment formatting.
-+
-+2011-02-28 Aurelien Jarno <aurelien at aurel32.net>
-+
-+ * sysdeps/sparc/sparc64/multiarch/memset.S(__bzero): Call
-+ __bzero_ultra1 instead of __memset_ultra1.
-+
-+2011-02-23 Andreas Schwab <schwab at redhat.com>
-+ Ulrich Drepper <drepper at gmail.com>
-+
-+ [BZ #12509]
-+ * include/link.h (struct link_map): Add l_orig_initfini.
-+ * elf/dl-load.c (_dl_map_object_from_fd): Free realname before
-+ returning unsuccessfully.
-+ * elf/dl-close.c (_dl_close_worker): If this is the last explicit
-+ close of a file loaded at startup, restore the original l_initfini
-+ list.
-+ * elf/dl-deps.c (_dl_map_object_deps): Don't free old l_initfini
-+ list, store the pointer.
-+ * elf/Makefile ($(objpfx)noload-mem): New rule.
-+ (noload-ENV): Define.
-+ (tests): Add $(objpfx)noload-mem.
-+ * elf/noload.c: Include <memcheck.h>.
-+ (main): Call mtrace. Close all opened handles.
-+
-+2011-02-17 Andreas Schwab <schwab at redhat.com>
-+
-+ [BZ #12454]
-+ * elf/dl-deps.c (_dl_map_object_deps): Signal error early when
-+ dependencies are missing.
-+
-+2011-02-22 Samuel Thibault <samuel.thibault at ens-lyon.org>
-+
-+ Fix __if_freereq crash: Unlike the generic version which uses free,
-+ Hurd needs munmap.
-+ * sysdeps/mach/hurd/ifreq.h: New file.
-+
-+2011-01-27 Petr Baudis <pasky at suse.cz>
-+ Ulrich Drepper <drepper at gmail.com>
-+
-+ [BZ 12445]#
-+ * stdio-common/vfprintf.c (vfprintf): Pass correct newlen
-+ to extend_alloca().
-+ * stdio-common/bug23.c: New file.
-+ * stdio-common/Makefile (tests): Add bug23.
-+
-+2010-09-28 Andreas Schwab <schwab at redhat.com>
-+ Ulrich Drepper <drepper at gmail.com>
-+
-+ [BZ #12489]
-+ * elf/rtld.c (dl_main): Move setting of GLRO(dl_init_all_dirs)
-+ before performing relro protection. At old place add assertion
-+ to make sure nothing changed.
-+
-+2011-02-17 Nathan Sidwell <nathan at codesourcery.com>
-+ Glauber de Oliveira Costa <glommer at gmail.com>
-+
-+ * elf/elf.h: Add new ARM TLS relocs.
-+
-+2011-02-16 Ryan S. Arnold <rsa at us.ibm.com>
-+
-+ * sysdeps/unix/sysv/linux/powerpc/powerpc64/sysdep.h:
-+ (INTERNAL_VSYSCALL_NCS INTERNAL_SYSCALL_NCS): Remove erroneous (int)
-+ cast from r3.
-+ * sysdeps/wordsize-64/Makefile: New file. Add tst-writev to
-+ 'tests' variable.
-+ * sysdeps/wordsize-64/tst-writev.c: New file.
-+
-+2011-02-15 Ryan S. Arnold <rsa at us.ibm.com>
-+
-+ * sysdeps/powerpc/powerpc64/power7/Makefile: New file which adds
-+ -mno-vsx to the CFLAGS-rtld.c variable to avoid using VSX registers and
-+ insns in _dl_start to prevent a TOC reference before relocs are
-+ resolved.
-+
-+2011-02-15 Ulrich Drepper <drepper at gmail.com>
-+
-+ [BZ #12469]
-+ * Makeconfig: Remove RANLIB definition.
-+ * Makerules: Don't use RANLIB.
-+ * aclocal.m4: Remove ranlib test.
-+ * configure.in: No need to check for ranlib.
-+ * elf/rtld-Rules: Don't use RANLIB.
-+
-+2011-02-16 Samuel Thibault <samuel.thibault at ens-lyon.org>
-+
-+ * sysdeps/mach/i386/sysdep.h: Add _MACH_I386_SYSDEP_H inclusion
-+ protection macro.
-+ * sysdeps/mach/i386/thread_state.h: Add _MACH_I386_THREAD_STATE_H
-+ inclusion protection macro.
-+
-+ * stdio-common/psiginfo.c (psiginfo): Check pinfo->si_signo against
-+ SIGRTMIN and SIGRTMAX and print information in that case only when
-+ SIGRTMIN is defined.
-+
-+2011-02-11 Jakub Jelinek <jakub at redhat.com>
-+
-+ * stdio-common/printf-parsemb.c (__parse_one_specmb): Handle
-+ arginfo fn returning -1.
-+
-+ * stdio-common/_i18n_number.h (_i18n_number_rewrite): Ensure decimal
-+ and thousands string is zero terminated.
-+
-+2011-02-03 Andreas Schwab <schwab at redhat.com>
-+
-+ * sysdeps/unix/sysv/linux/sparc/bits/socket.h: Sync with
-+ sysdeps/unix/sysv/linux/bits/socket.h.
-+
-+2011-01-30 Samuel Thibault <samuel.thibault at ens-lyon.org>
-+
-+ * bits/sched.h (__CPU_ZERO, __CPU_SET, __CPU_CLR, __CPU_ISSET)
-+ (__CPU_COUNT): Remove old macros.
-+ (__CPU_ZERO_S, __CPU_SET_S, __CPU_CLR_S, __CPU_ISSET_S)
-+ (__CPU_COUNT, __CPU_EQUAL_S, __CPU_OP_S, __CPU_ALLOC_SIZE)
-+ (__CPU_ALLOC, __CPU_FREE): Add macros.
-+ (__sched_cpualloc, __sched_cpufree): Add declarations.
-+
-+2011-02-05 Ulrich Drepper <drepper at gmail.com>
-+
-+ * nscd/nscd-client.h: Define MAX_TIMEOUT_VALUE.
-+ (struct datahead): Reuse 32 bits of the alignment for a TTL field.
-+ * nscd/aicache.c (addhstaiX): Return timeout of added value.
-+ (readdhstai): Return value of addhstaiX call.
-+ * nscd/grpcache.c (cache_addgr): Return timeout of added value.
-+ (addgrbyX): Return value returned by cache_addgr.
-+ (readdgrbyname): Return value returned by addgrbyX.
-+ (readdgrbygid): Likewise.
-+ * nscd/pwdcache.c (cache_addpw): Return timeout of added value.
-+ (addpwbyX): Return value returned by cache_addpw.
-+ (readdpwbyname): Return value returned by addhstbyX.
-+ (readdpwbyuid): Likewise.
-+ * nscd/servicescache.c (cache_addserv): Return timeout of added value.
-+ (addservbyX): Return value returned by cache_addserv.
-+ (readdservbyname): Return value returned by addservbyX:
-+ (readdservbyport): Likewise.
-+ * nscd/hstcache.c (cache_addhst): Return timeout of added value.
-+ (addhstbyX): Return value returned by cache_addhst.
-+ (readdhstbyname): Return value returned by addhstbyX.
-+ (readdhstbyaddr): Likewise.
-+ (readdhstbynamev6): Likewise.
-+ (readdhstbyaddrv6): Likewise.
-+ * nscd/initgrcache.c (addinitgroupsX): Return timeout of added value.
-+ (readdinitgroups): Return value returned by addinitgroupsX.
-+ * nscd/cache.c (readdfcts): Change return value of functions to time_t.
-+ (prune_cache): Keep track of timeout value of re-added entries.
-+ * nscd/connections.c (nscd_run_prune): Use MAX_TIMEOUT_VALUE.
-+ * nscd/nscd.h: Adjust prototypes of readd* functions.
-+
-+2011-02-04 Roland McGrath <roland at redhat.com>
-+
-+ * nis/nis_server.c (nis_servstate): Use the right name for 0.
-+ (nis_stats): Likewise.
-+ * nis/nis_modify.c (nis_modify): Likewise.
-+ * nis/nis_remove.c (nis_remove): Likewise.
-+ * nis/nis_add.c (nis_add): Likewise.
-+
-+ * elf/dl-object.c (_dl_new_object): Remove unused variable L.
-+
-+ * posix/fnmatch_loop.c: Add some consts.
-+
-+ * sysdeps/x86_64/multiarch/memset-x86-64.S: Add an #undef.
-+
-+2011-02-02 H.J. Lu <hongjiu.lu at intel.com>
-+
-+ [BZ #12460]
-+ * config.make.in (config-cflags-novzeroupper): Define.
-+ * configure.in: Substitute libc_cv_cc_novzeroupper.
-+ * elf/Makefile (AVX-CFLAGS): Define.
-+ (CFLAGS-tst-audit4.c): Replace -mavx with $(AVX-CFLAGS).
-+ (CFLAGS-tst-auditmod4a.c): Likewise.
-+ (CFLAGS-tst-auditmod4b.c): Likewise.
-+ (CFLAGS-tst-auditmod6b.c): Likewise.
-+ (CFLAGS-tst-auditmod6c.c): Likewise.
-+ (CFLAGS-tst-auditmod7b.c): Likewise.
-+ * sysdeps/i386/configure.in: Check -mno-vzeroupper.
-+
-+2011-02-02 Ulrich Drepper <drepper at gmail.com>
-+
-+ * elf/dl-runtime.c (_dl_call_pltexit): Pass correct address of the
-+ function to the callback.
-+ Patch partly by Jiri Olsa <jolsa at redhat.com>.
-+
-+2011-02-02 Andreas Schwab <schwab at redhat.com>
-+
-+ * shadow/sgetspent.c: Check return value of __sgetspent_r instead
-+ of errno.
-+
-+2011-01-19 Ulrich Drepper <drepper at gmail.com>
-+
-+ [BZ #11724]
-+ * elf/dl-deps.c (_dl_map_object_deps): Rewrite sorting determining order
-+ of constructors.
-+ * elf/dl-fini.c (_dl_sort_fini): Rewrite sorting determining order
-+ of destructors.
-+ (_dl_fini): Don't call _dl_sort_fini if there is only one object.
-+
-+ [BZ #11724]
-+ * elf/Makefile: Add rules to build and run new test.
-+ * elf/tst-initorder.c: New file.
-+ * elf/tst-initorder.exp: New file.
-+ * elf/tst-initordera1.c: New file.
-+ * elf/tst-initordera2.c: New file.
-+ * elf/tst-initordera3.c: New file.
-+ * elf/tst-initordera4.c: New file.
-+ * elf/tst-initorderb1.c: New file.
-+ * elf/tst-initorderb2.c: New file.
-+ * elf/tst-order-a1.c: New file.
-+ * elf/tst-order-a2.c: New file.
-+ * elf/tst-order-a3.c: New file.
-+ * elf/tst-order-a4.c: New file.
-+ * elf/tst-order-b1.c: New file.
-+ * elf/tst-order-b2.c: New file.
-+ * elf/tst-order-main.c: New file.
-+ New test case by George Gensure <werkt0 at gmail.com>.
-+
-+2010-10-01 Andreas Schwab <schwab at redhat.com>
-+
-+ * sysdeps/posix/getaddrinfo.c (gaih_inet): Don't discard result of
-+ decoding ACE if AI_CANONIDN.
-+
-+2011-01-18 Ulrich Drepper <drepper at gmail.com>
-+
-+ * elf/Makefile: Build IFUNC tests unless multi-arch = no.
-+
-+2011-01-17 Ulrich Drepper <drepper at gmail.com>
-+
-+ * version.h (RELEASE): Bump for 2.13 release.
-+ * include/features.h: (__GLIBC_MINOR__): Bump to 13.
-+
-+ * io/fcntl.h: Define AT_NO_AUTOMOUNT.
-+
-+ * sysdeps/unix/sysv/linux/i386/bits/mman.h: Define MADV_HUGEPAGE and
-+ MADV_NOHUGEPAGE.
-+ * sysdeps/unix/sysv/linux/ia64/bits/mman.h: Likewise.
-+ * sysdeps/unix/sysv/linux/powerpc/bits/mman.h: Likewise.
-+ * sysdeps/unix/sysv/linux/s390/bits/mman.h: Likewise.
-+ * sysdeps/unix/sysv/linux/sh/bits/mman.h: Likewise.
-+ * sysdeps/unix/sysv/linux/sparc/bits/mman.h: Likewise.
-+ * sysdeps/unix/sysv/linux/x86_64/bits/mman.h: Likewise.
-+
-+ * posix/getconf.c: Update copyright year.
-+ * catgets/gencat.c: Likewise.
-+ * csu/version.c: Likewise.
-+ * debug/catchsegv.sh: Likewise.
-+ * debug/xtrace.sh: Likewise.
-+ * elf/ldconfig.c: Likewise.
-+ * elf/ldd.bash.in: Likewise.
-+ * elf/sprof.c (print_version): Likewise.
-+ * iconv/iconv_prog.c: Likewise.
-+ * iconv/iconvconfig.c: Likewise.
-+ * locale/programs/locale.c: Likewise.
-+ * locale/programs/localedef.c: Likewise.
-+ * malloc/memusage.sh: Likewise.
-+ * malloc/mtrace.pl: Likewise.
-+ * nscd/nscd.c (print_version): Likewise.
-+ * nss/getent.c: Likewise.
-+
-+ * sysdeps/unix/sysv/linux/bits/socket.h: Define AF_CAIF, AF_ALG,
-+ PF_CAIF, and PF_ALG.
-+ * sysdeps/unix/sysv/linux/sparc/bits/socket.h: Likewise.
-+
-+2011-01-16 Andreas Schwab <schwab at linux-m68k.org>
-+
-+ * elf/Makefile (tlsmod17a-modules, tlsmod18a-modules): Define.
-+ (modules-names): Use them.
-+ (ifunc-test-modules, ifunc-pie-tests): Define.
-+ (extra-test-objs): Add tlsmod17a-modules, tlsmod18a-modules,
-+ tst-pie1, ifunc-test-modules and ifunc-pie-tests objects.
-+ (test-extras): Likewise.
-+ ($(patsubst %,$(objpfx)%.os,$(tlsmod17a-modules))): Use
-+ $(compile-command.c).
-+ ($(patsubst %,$(objpfx)%.os,$(tlsmod18a-modules))): Likewise.
-+ (all-built-dso): Define.
-+ (check-textrel.out, check-execstack.out): Depend on it.
-+
-+ * configure.in: Don't override --enable-multi-arch.
-+
-+2011-01-15 Ulrich Drepper <drepper at gmail.com>
-+
-+ [BZ #6812]
-+ * nscd/hstcache.c (tryagain): Define.
-+ (cache_addhst): Return tryagain not notfound for temporary errors.
-+ (addhstbyX): Also set h_errno to TRY_AGAIN when memory allocation
-+ failed.
-+
-+2011-01-14 Ulrich Drepper <drepper at gmail.com>
-+
-+ [BZ #10563]
-+ * sysdeps/unix/sysv/linux/i386/setgroups.c: Use INLINE_SETXID_SYSCALL
-+ to make the syscall.
-+ * sysdeps/unix/sysv/linux/setgroups.c: New file.
-+
-+ [BZ #12378]
-+ * posix/fnmatch_loop.c (FCT): When matching '[' keep track of beginning
-+ and fall back to matching as normal character if the string ends before
-+ the matching ']' is found. This is what POSIX requires.
-+ * posix/testfnm.c: Adjust test result.
-+ * posix/globtest.sh: Adjust test result. Add new test.
-+ * posix/tst-fnmatch.input: Likewise.
-+ * posix/tst-fnmatch2.c: Add new test.
-+
-+2010-12-28 Andreas Schwab <schwab at linux-m68k.org>
-+
-+ * elf/Makefile (check-execstack): Revert last change. Depend on
-+ check-execstack.h.
-+ (check-execstack.h): New target.
-+ (generated): Add check-execstack.h.
-+ * elf/check-execstack.c: Include "check-execstack.h".
-+ (main): Revert last change.
-+ (handle_file): Return zero if GNU_STACK is absent and
-+ DEFAULT_STACK_PERMS doesn't include PF_X.
-+
-+2011-01-13 Ulrich Drepper <drepper at gmail.com>
-+
-+ * sysdeps/posix/spawni.c (__spawni): Don't fail if close file action
-+ in child fails because the descriptor is already closed.
-+ * include/sys/resource.h: Add libc_hidden_proto for getrlimit64.
-+ * sysdeps/unix/sysv/linux/getrlimit64.c: Add libc_hidden_def.
-+ * sysdeps/unix/sysv/linux/i386/getrlimit64.c: Likewise.
-+
-+ [BZ #12397]
-+ * sysdeps/unix/sysv/linux/mkdirat.c (mkdirat): Fix handling of missing
-+ syscall.
-+
-+ [BZ #10484]
-+ * nss/nss_files/files-hosts.c (HOST_DB_LOOKUP): Handle overflows of
-+ temporary buffer used to handle multi lookups locally.
-+ * include/alloca.h: Add libc_hidden_proto for __libc_alloca_cutoff.
-+
-+2011-01-12 Ulrich Drepper <drepper at gmail.com>
-+
-+ * elf/dl-dst.h (DL_DST_REQUIRED): Allow l_origin to be NULL when
-+ loader is ld.so.
-+
-+2011-01-10 Paul Pluzhnikov <ppluzhnikov at google.com>
-+
-+ * sysdeps/i386/Makefile: stdlib/cxa_finalize.c needs 16-byte stack
-+ alignment for SSE2.
-+
-+2011-01-12 Ulrich Drepper <drepper at gmail.com>
-+
-+ [BZ #12394]
-+ * stdio-common/printf_fp.c (__printf_fp): Add more room for grouping
-+ characters. When rounding increased number of integer digits recompute
-+ number of groups.
-+ * stdio-common/tst-grouping.c: New file.
-+ * stdio-common/Makefile: Add rules to build and run tst-grouping.
-+
-+2011-01-09 Ulrich Drepper <drepper at gmail.com>
-+
-+ * sysdeps/i386/bits/select.h: Don't use asm code for __FD_SET,
-+ __FD_CLR, and __FS_ISSET. gcc generates better code on its own.
-+
-+ * sysdeps/x86_64/bits/select.h: Mark value of __FD_SET and __FD_CLR as
-+ void.
-+ * bits/select.h: Likewise.
-+
-+2011-01-08 Ulrich Drepper <drepper at gmail.com>
-+
-+ * po/ja.po: Update from translation team.
-+
-+2011-01-04 David S. Miller <davem at sunset.davemloft.net>
-+
-+ [BZ #11155]
-+ * sysdeps/unix/sysv/linux/sparc/sparc64/fxstat.c: Use i386's
-+ implementation just like for lxstat, fxstatat, et al.
-+
-+2010-12-27 Jim Meyering <meyering at redhat.com>
-+
-+ [BZ #12348]
-+ * posix/regexec.c (build_trtable): Return failure indication upon
-+ calloc failure. Otherwise, re_search_internal could infloop on OOM.
-+
-+2010-12-25 Ulrich Drepper <drepper at gmail.com>
-+
-+ [BZ #12201]
-+ * sysdeps/unix/sysv/linux/getrlimit64.c: New file.
-+ * sysdeps/unix/sysv/linux/setrlimit64.c: New file.
-+ * sysdeps/unix/sysv/linux/i386/getrlimit64.c: Use ../getrlimit64.c.
-+ * sysdeps/unix/sysv/linux/kernel-features.h: Define __ASSUME_PRLIMIT64.
-+
-+ [BZ #12207]
-+ * malloc/malloc.c (do_check_malloc_state): Use fastbin macro.
-+
-+ [BZ #12204]
-+ * string/xpg-strerror.c (__xpg_strerror_r): Return error code, not -1.
-+ * sysdeps/mach/xpg-strerror.c (__xpg_strerror_r): Likewise.
-+
-+2010-12-15 H.J. Lu <hongjiu.lu at intel.com>
-+
-+ * config.h.in (NO_CTORS_DTORS_SECTIONS): Define.
-+ * configure.in: Define NO_CTORS_DTORS_SECTIONS if linker
-+ script has SORT_BY_INIT_PRIORITY.
-+ * elf/sofini.c: Remove `.ctors' and `.dtors' sections if
-+ NO_CTORS_DTORS_SECTIONS is defined.
-+ * elf/soinit.c: Likewise.
-+ * sysdeps/i386/init-first.c: Don't call __libc_global_ctors if
-+ NO_CTORS_DTORS_SECTIONS is defined.
-+ * sysdeps/mach/hurd/i386/init-first.c: Likewise.
-+ * sysdeps/mach/hurd/powerpc/init-first.c: Likewise.
-+ * sysdeps/sh/init-first.c: Likewise.
-+ * sysdeps/unix/sysv/linux/init-first.c: Likewise.
-+
-+2010-12-24 Ulrich Drepper <drepper at gmail.com>
-+
-+ * stdio-common/vfprintf.c (vfprintf): If printf handlers are installed
-+ always use the slow path.
-+
-+2010-12-15 Ryan S. Arnold <rsa at us.ibm.com>
-+
-+ * elf/Makefile: (check-execstack): Replace $(native-compile) with a
-+ similar rule which adds the sysdep directories to the header search in
-+ order to pick up the correct platform stackinfo.h.
-+ * elf/check-execstack.c (main): Check DEFAULT_STACK_PERMS for PF_X and
-+ perform test if it is, otherwise return successfully without testing.
-+ * elf/dl-load.c (_dl_map_object_from_fd): Source stack_flags from
-+ DEFAULT_STACK_PERMS define in stackinfo.h.
-+ * elf/dl-support.c (_dl_stack_flags): Source from DEFAULT_STACK_PERMS
-+ defined in stackinfo.h.
-+ * elf/rtld.c (_dl_starting_up): Source ._dl_stack_flags from
-+ DEFAULT_STACK_PERMS defined in stackinfo.h.
-+ * sysdeps/i386/stackinfo.h: Define DEFAULT_STACK_PERMS with PF_X.
-+ * sysdeps/ia64/stackinfo.h: Likewise.
-+ * sysdeps/s390/stackinfo.h: Likewise.
-+ * sysdeps/sh/stackinfo.h: Likewise.
-+ * sysdeps/sparc/stackinfo.h: Likewise.
-+ * sysdeps/x86_64/stackinfo.h: Likewise.
-+ * sysdeps/powerpc/stackinfo.h: Define DEFAULT_STACK_PERMS without
-+ PF_X for powerpc64. Retain PF_X for powerpc32.
-+
-+2010-12-19 Ulrich Drepper <drepper at gmail.com>
-+
-+ * sysdeps/unix/readdir_r.c (__READDIR_R): Compute reclen more
-+ accurately.
-+ * sysdeps/unix/sysv/linux/wordsize-64/readdir_r.c: Define
-+ GETDENTS_64BIT_ALIGNED.
-+
-+2010-12-14 Ulrich Drepper <dreper at gmail.com>
-+
-+ * sysdeps/i386/i686/multiarch/strcmp.S: Undo accidental checkin.
-+
-+2010-12-10 Andreas Schwab <schwab at redhat.com>
-+
-+ * wcsmbs/wchar.h (wcpcpy, wcpncpy): Only declare under
-+ _GNU_SOURCE.
-+
-+ * wcsmbs/wchar.h (wcpcpy, wcpncpy): Add __restrict.
-+ * wcsmbs/bits/wchar2.h (__wmemmove_chk_warn, wmemmove, wmemset):
-+ Remove __restrict.
-+ (wcscpy, __wcpcpy_chk, __wcpcpy_alias, wcpcpy, wcsncpy, wcpncpy)
-+ (wcscat, wcsncat, __wcrtomb_chk, wcrtomb): Add __restrict.
-+
-+2010-12-09 Ulrich Drepper <drepper at gmail.com>
-+
-+ [BZ #11655]
-+ * stdlib/msort.c (qsort_r): Make sure both phys_pages and pagesize
-+ are initialized.
-+
-+2010-12-09 Jakub Jelinek <jakub at redhat.com>
-+
-+ * string/bits/string3.h (memmove, bcopy): Remove __restrict.
-+
-+2010-12-03 Ulrich Drepper <drepper at gmail.com>
-+
-+ * po/it.po: Update from translation team.
-+
-+2010-12-01 H.J. Lu <hongjiu.lu at intel.com>
-+
-+ * sysdeps/i386/i686/multiarch/strcmp-ssse3.S (STRCMP): Remove
-+ unused codes.
-+
-+2010-11-30 Ulrich Drepper <drepper at gmail.com>
-+
-+ * sysdeps/i386/fpu/libm-test-ulps: Relax ynf(10,0.75) test expectations.
-+
-+2010-11-24 Andreas Schwab <schwab at redhat.com>
-+
-+ * resolv/nss_dns/dns-host.c (getanswer_r): Don't handle ttl == 0
-+ specially.
-+ (gaih_getanswer_slice): Likewise.
-+
-+2010-10-20 Jakub Jelinek <jakub at redhat.com>
-+
-+ * sysdeps/ieee754/ldbl-128/s_fmal.c (__fmal): Fix up inline asm.
-+
-+2010-05-31 Petr Baudis <pasky at suse.cz>
-+
-+ [BZ #11149]
-+ * elf/ldconfig.c (main): Allow aux_cache_file open()ing to fail
-+ silently even in the chroot mode.
-+
-+2010-11-22 Ulrich Drepper <drepper at gmail.com>
-+
-+ * nis/nss_compat/compat-initgroups.c (internal_getgrent_r): Optimize
-+ last patch a bit. Pretty printing
-+
-+2010-05-31 Petr Baudis <pasky at suse.cz>
-+
-+ [BZ #10085]
-+ * nis/nss_compat/compat-initgroups.c (internal_getgrent_r): Fix
-+ initialization of skip_initgroups_dyn.
-+
-+2010-11-19 Ulrich Drepper <drepper at gmail.com>
-+
-+ * sysdeps/unix/sysv/linux/i386/bits/mman.h: Define MAP_HUGETLB.
-+ * sysdeps/unix/sysv/linux/x86_64/bits/mman.h: Likewise.
-+
-+2010-11-16 Ulrich Drepper <drepper at gmail.com>
-+
-+ * sysdeps/unix/sysv/linux/sys/swap.h (SWAP_FLAG_DISCARD): Define.
-+
-+2010-11-11 Andreas Schwab <schwab at redhat.com>
-+
-+ * posix/fnmatch_loop.c (NEW_PATTERN): Fix use of alloca.
-+ * posix/Makefile (tests): Add $(objpfx)tst-fnmatch-mem.
-+ (tst-fnmatch-ENV): Set MALLOC_TRACE.
-+ ($(objpfx)tst-fnmatch-mem): New rule.
-+ (generated): Add tst-fnmatch-mem and tst-fnmatch.mtrace.
-+ * posix/tst-fnmatch.c (main): Call mtrace.
-+
-+2010-11-11 H.J. Lu <hongjiu.lu at intel.com>
-+
-+ * sysdeps/x86_64/multiarch/init-arch.c (__init_cpu_features):
-+ Support Intel processor model 6 and model 0x2c.
-+
-+2010-11-10 Luis Machado <luisgpm at br.ibm.com>
-+
-+ * sysdeps/ieee754/ldbl-128ibm/e_sqrtl.c (__ieee754_sqrtl): Force
-+ signed comparison.
-+
-+2010-11-09 H.J. Lu <hongjiu.lu at intel.com>
-+
-+ [BZ #12205]
-+ * string/test-strncasecmp.c (check_result): New function.
-+ (do_one_test): Use it.
-+ (check1): New function.
-+ (test_main): Use it.
-+ * sysdeps/i386/i686/multiarch/strcmp.S (nibble_ashr_use_sse4_2_exit):
-+ Support strcasecmp and strncasecmp.
-+
-+2010-11-08 Ulrich Drepper <drepper at gmail.com>
-+
-+ [BZ #12194]
-+ * sysdeps/i386/bits/byteswap.h: Avoid warning in __bswap_16.
-+ * sysdeps/x86_64/bits/byteswap.h: Likewise.
-+
-+2010-11-07 H.J. Lu <hongjiu.lu at intel.com>
-+
-+ * sysdeps/x86_64/memset.S: Check USE_MULTIARCH and USE_SSE2 for
-+ IFUNC support.
-+ * sysdeps/x86_64/multiarch/Makefile (sysdep_routines): Add
-+ memset-x86-64.
-+ * sysdeps/x86_64/multiarch/bzero.S: New file.
-+ * sysdeps/x86_64/multiarch/cacheinfo.c: New file.
-+ * sysdeps/x86_64/multiarch/memset-x86-64.S: New file.
-+ * sysdeps/x86_64/multiarch/memset.S: New file.
-+ * sysdeps/x86_64/multiarch/memset_chk.S: New file.
-+ * sysdeps/x86_64/multiarch/init-arch.c (__init_cpu_features):
-+ Set bit_Prefer_SSE_for_memop for Intel processors.
-+ * sysdeps/x86_64/multiarch/init-arch.h (bit_Prefer_SSE_for_memop):
-+ Define.
-+ (index_Prefer_SSE_for_memop): Define.
-+ (HAS_PREFER_SSE_FOR_MEMOP): Define.
-+
-+2010-11-04 Luis Machado <luisgpm at br.ibm.com>
-+
-+ * sysdeps/powerpc/powerpc32/power7/mempcpy.S: New file.
-+ * sysdeps/powerpc/powerpc64/power7/mempcpy.S: New file.
-+
-+2010-11-03 H.J. Lu <hongjiu.lu at intel.com>
-+
-+ [BZ #12191]
-+ * sysdeps/i386/i686/cacheinfo.c (__x86_64_raw_data_cache_size): New.
-+ (__x86_64_raw_data_cache_size_half): Likewise.
-+ (__x86_64_raw_shared_cache_size): Likewise.
-+ (__x86_64_raw_shared_cache_size_half): Likewise.
-+
-+ * sysdeps/x86_64/cacheinfo.c (__x86_64_raw_data_cache_size): New.
-+ (__x86_64_raw_data_cache_size_half): Likewise.
-+ (__x86_64_raw_shared_cache_size): Likewise.
-+ (__x86_64_raw_shared_cache_size_half): Likewise.
-+ (init_cacheinfo): Set __x86_64_raw_data_cache_size,
-+ __x86_64_raw_data_cache_size_half, __x86_64_raw_shared_cache_size
-+ and __x86_64_raw_shared_cache_size_half. Round
-+ __x86_64_data_cache_size_half, __x86_64_data_cache_size
-+ __x86_64_shared_cache_size_half and __x86_64_shared_cache_size,
-+ to multiple of 256 bytes.
-+
-+2010-11-03 Ulrich Drepper <drepper at gmail.com>
-+
-+ [BZ #12167]
-+ * sysdeps/unix/sysv/linux/ttyname.c (ttyname): Recognize new mangling
-+ of inacessible symlinks. Verify result of symlink before returning it.
-+ * sysdeps/unix/sysv/linux/ttyname_r.c (__ttyname_r): Likewise.
-+ Patch mostly by Miklos Szeredi <miklos at szeredi.hu>.
-+
-+2010-10-28 Erich Ritz <erichritz at gmail.com>
-+
-+ * math/math.h (isinf): Fix typo in comment.
-+
-+2010-11-01 Ulrich Drepper <drepper at gmail.com>
-+
-+ * po/da.po: Update from translation team.
-+
-+2010-10-26 Ulrich Drepper <drepper at gmail.com>
-+
-+ * elf/rtld.c (dl_main): Move assertion after the point where rtld map
-+ is added to the list.
-+
-+2010-10-20 Andreas Krebbel <Andreas.Krebbel at de.ibm.com>
-+ Ulrich Drepper <drepper at gmail.com>
-+
-+ * elf/dl-object.c (_dl_new_object): Don't append the new object to
-+ the global list here. Move code to...
-+ (_dl_add_to_namespace_list): ...here. New function.
-+ * elf/rtld.c (dl_main): Invoke _dl_add_to_namespace_list.
-+ * sysdeps/generic/ldsodefs.h (_dl_add_to_namespace_list): Declare.
-+ * elf/dl-load.c (lose): Don't remove the element from the list.
-+ (_dl_map_object_from_fd): Invoke _dl_add_to_namespace_list.
-+ (_dl_map_object): Likewise.
-+
-+2010-10-25 Ulrich Drepper <drepper at gmail.com>
-+
-+ [BZ #12159]
-+ * sysdeps/x86_64/multiarch/strchr.S: Fix propagation of search byte
-+ into all bytes of SSE register.
-+ Patch by Richard Li <richardpku at gmail.com>.
-+
-+2010-10-24 Ulrich Drepper <drepper at gmail.com>
-+
-+ [BZ #12140]
-+ * malloc/malloc.c (_int_free): Fill correct number of bytes when
-+ perturbing.
-+
-+2010-10-20 Michael B. Brutman <brutman at us.ibm.com>
-+
-+ * sysdeps/powerpc/dl-procinfo.c: Add support for ppca2 platform
-+ * sysdeps/powerpc/dl-procinfo.h: Add support for ppca2 platform
-+ * sysdeps/powerpc/powerpc32/a2/memcpy.S: New file.
-+ * sysdeps/powerpc/powerpc64/a2/memcpy.S: Likewise.
-+ * sysdeps/unix/sysv/linux/powerpc/powerpc32/a2/Implies: New
-+ submachine.
-+ * sysdeps/unix/sysv/linux/powerpc/powerpc64/a2/Implies: Likewise.
-+
-+2010-10-22 Andreas Schwab <schwab at redhat.com>
-+
-+ * include/dlfcn.h (__RTLD_SECURE): Define.
-+ * elf/dl-load.c (_dl_map_object): Remove preloaded parameter. Use
-+ mode & __RTLD_SECURE instead.
-+ (open_path): Rename preloaded parameter to secure.
-+ * sysdeps/generic/ldsodefs.h (_dl_map_object): Adjust declaration.
-+ * elf/dl-open.c (dl_open_worker): Adjust call to _dl_map_object.
-+ * elf/dl-deps.c (openaux): Likewise.
-+ * elf/rtld.c (struct map_args): Remove is_preloaded.
-+ (map_doit): Don't use it.
-+ (dl_main): Likewise.
-+ (do_preload): Use __RTLD_SECURE instead of is_preloaded.
-+ (dlmopen_doit): Add __RTLD_SECURE to mode bits.
-+
-+2010-09-09 Andreas Schwab <schwab at redhat.com>
-+
-+ * Makeconfig (sysd-rules-patterns): Add rtld-%:rtld-%.
-+ (sysd-rules-targets): Remove duplicates.
-+ * elf/rtld-Rules ($(objpfx)rtld-%.os): Add pattern rules with
-+ rtld-%.$o dependency.
-+
-+2010-10-18 Andreas Schwab <schwab at redhat.com>
-+
-+ * elf/dl-open.c (dl_open_worker): Don't expand DST here, let
-+ _dl_map_object do it.
-+
-+2010-10-19 Ulrich Drepper <drepper at gmail.com>
-+
-+ * sysdeps/i386/bits/mathdef.h (FP_FAST_FMA): If the GCC 4.6 port has
-+ fast fma builtins, define the macros in the C99 standard.
-+ (FP_FAST_FMAF): Likewise.
-+ (FP_FAST_FMAL): Likewise.
-+ * sysdeps/x86_64/bits/mathdef.h: Likewise.
-+
-+ * bits/mathdef.h: Update copyright year.
-+ * sysdeps/powerpc/bits/mathdef.h: Likewise.
-+
-+2010-10-19 Michael Meissner <meissner at linux.vnet.ibm.com>
-+
-+ * bits/mathdef.h (FP_FAST_FMA): If the GCC 4.6 port has fast fma
-+ builtins, define the macros in the C99 standard.
-+ (FP_FAST_FMAF): Likewise.
-+ (FP_FAST_FMAL): Likewise.
-+ * sysdeps/powerpc/bits/mathdef.h (FP_FAST_FMA): Define, ppc as
-+ multiply/add.
-+ (FP_FAST_FMAF): Likewise.
-+
-+2010-10-15 Jakub Jelinek <jakub at redhat.com>
-+
-+ [BZ #3268]
-+ * math/libm-test.inc (fma_test): Some new testcases.
-+ * sysdeps/ieee754/ldbl-128/s_fmal.c: New file.
-+ * sysdeps/ieee754/ldbl-96/s_fma.c (__fma): Fix fma with finite x and
-+ y and infinite z. Do multiplication by C already in long double.
-+ * sysdeps/ieee754/ldbl-96/s_fmal.c: New file.
-+ * sysdeps/ieee754/dbl-64/s_fma.c (__fma): Fix fma with finite x and
-+ y and infinite z. Do bitwise or of inexact bit into u.d.
-+ * sysdeps/ieee754/ldbl-64-128/s_fmal.c: New file.
-+ * sysdeps/i386/fpu/s_fmaf.S: Removed.
-+ * sysdeps/i386/fpu/s_fma.S: Removed.
-+ * sysdeps/i386/fpu/s_fmal.S: Removed.
-+
-+2010-10-16 Jakub Jelinek <jakub at redhat.com>
-+
-+ [BZ #3268]
-+ * math/libm-test.inc (fma_test): Add IEEE quad long double fmal tests.
-+ * sysdeps/ieee754/ldbl-128/s_fmal.c (__fmal): Ensure a1 + u.d
-+ computation is not scheduled after fetestexcept. Fix value
-+ of minimum denormal long double.
-+
-+2010-10-14 Jakub Jelinek <jakub at redhat.com>
-+
-+ [BZ #3268]
-+ * math/libm-test.inc (fma_test): Add some more tests.
-+ * sysdeps/ieee754/dbl-64/s_fma.c (__fma): Handle underflows
-+ correctly.
-+
-+2010-10-15 Andreas Schwab <schwab at redhat.com>
-+
-+ * scripts/data/localplt-s390-linux-gnu.data: New file.
-+ * scripts/data/localplt-s390x-linux-gnu.data: New file.
-+
-+2010-10-13 Jakub Jelinek <jakub at redhat.com>
-+
-+ [BZ #3268]
-+ * math/libm-test.inc (fma_test): Some more fmaf and fma tests.
-+ * sysdeps/i386/i686/multiarch/s_fma.c: Include ldbl-96 version
-+ instead of dbl-64.
-+ * sysdeps/i386/fpu/bits/mathinline.h (fma, fmaf, fmal): Remove
-+ inlines.
-+ * sysdeps/ieee754/ldbl-96/s_fma.c: New file.
-+ * sysdeps/ieee754/dbl-64/s_fma.c (__fma): Fix exponent adjustment
-+ if one of x and y is very large and the other is subnormal.
-+ * sysdeps/s390/fpu/s_fmaf.c: New file.
-+ * sysdeps/s390/fpu/s_fma.c: New file.
-+ * sysdeps/powerpc/fpu/s_fmaf.S: New file.
-+ * sysdeps/powerpc/fpu/s_fma.S: New file.
-+ * sysdeps/powerpc/powerpc32/fpu/s_fma.S: New file.
-+ * sysdeps/powerpc/powerpc64/fpu/s_fma.S: New file.
-+ * sysdeps/unix/sysv/linux/s390/fpu/s_fma.c: New file.
-+
-+2010-10-12 Jakub Jelinek <jakub at redhat.com>
-+
-+ [BZ #3268]
-+ * math/libm-test.inc (fma_test): Add some more fmaf tests, add
-+ fma tests.
-+ * sysdeps/ieee754/dbl-64/s_fmaf.c (__fmaf): Fix Inf/Nan check.
-+ * sysdeps/ieee754/dbl-64/s_fma.c: New file.
-+ * sysdeps/i386/i686/multiarch/s_fma.c: Include
-+ sysdeps/ieee754/dbl-64/s_fma.c instead of math/s_fma.c.
-+ * sysdeps/x86_64/multiarch/s_fma.c: Likewise.
-+ * sysdeps/ieee754/ldbl-opt/s_fma.c: Likewise.
-+ * sysdeps/ieee754/ldbl-128/s_fma.c: New file.
-+
-+2010-10-12 Ulrich Drepper <drepper at redhat.com>
-+
-+ [BZ #12078]
-+ * posix/regcomp.c (parse_branch): One more memory leak plugged.
-+ * posix/bug-regex31.input: Add test case.
-+
-+2010-10-11 Ulrich Drepper <drepper at gmail.com>
-+
-+ * posix/bug-regex31.c: Rewrite to run multiple tests from stdin.
-+ * posix/bug-regex31.input: New file.
-+
-+ [BZ #12078]
-+ * posix/regcomp.c (parse_branch): Free memory when allocation failed.
-+ (parse_sub_exp): Fix last change, use postorder.
-+
-+ * posix/bug-regex31.c: New file.
-+ * posix/Makefile: Add rules to build and run bug-regex31.
-+
-+ * posix/regcomp.c (parse_bracket_exp): Add missing re_free calls.
-+
-+ [BZ #12078]
-+ * posix/regcomp.c (parse_sub_exp): Free tree data when it is not used.
-+
-+ [BZ #12108]
-+ * stdio-common/psiginfo.c (psiginfo): Don't expext SIGRTMIN..SIGRTMAX
-+ to have entries in sys_siglist.
-+
-+ [BZ #12093]
-+ * sysdeps/unix/sysv/linux/check_pf.c (__check_pf): ->ifa_addr might
-+ be NULL.
-+
-+2010-10-07 Jakub Jelinek <jakub at redhat.com>
-+
-+ [BZ #3268]
-+ * math/libm-test.inc (fma_test): Add 2 fmaf tests.
-+ * sysdeps/ieee754/dbl-64/s_fmaf.c: New file.
-+ * sysdeps/i386/i686/multiarch/s_fmaf.c: Include
-+ sysdeps/ieee754/dbl-64/s_fmaf.c instead of math/s_fmaf.c.
-+ * sysdeps/x86_64/multiarch/s_fmaf.c: Likewise.
-+ * include/fenv.h (feupdateenv, fetestexcept): Add libm_hidden_proto.
-+ * math/feupdateenv.c (feupdateenv): Add libm_hidden_ver.
-+ * sysdeps/i386/fpu/feupdateenv.c (feupdateenv): Likewise.
-+ * sysdeps/powerpc/fpu/feupdateenv.c (feupdateenv): Likewise.
-+ * sysdeps/x86_64/fpu/feupdateenv.c (feupdateenv): Likewise.
-+ * sysdeps/sparc/fpu/feupdateenv.c (feupdateenv): Likewise.
-+ * sysdeps/ia64/fpu/feupdateenv.c (feupdateenv): Add libm_hidden_def.
-+ * sysdeps/s390/fpu/feupdateenv.c (feupdateenv): Likewise.
-+ * math/ftestexcept.c (fetestexcept): Likewise.
-+ * sysdeps/ia64/fpu/ftestexcept.c (fetestexcept): Likewise.
-+ * sysdeps/i386/fpu/ftestexcept.c (fetestexcept): Likewise.
-+ * sysdeps/s390/fpu/ftestexcept.c (fetestexcept): Likewise.
-+ * sysdeps/powerpc/fpu/ftestexcept.c (fetestexcept): Likewise.
-+ * sysdeps/x86_64/fpu/ftestexcept.c (fetestexcept): Likewise.
-+ * sysdeps/sparc/fpu/ftestexcept.c (fetestexcept): Likewise.
-+ * sysdeps/sh/sh4/fpu/ftestexcept.c (fetestexcept): Likewise.
-+
-+2010-10-11 Ulrich Drepper <drepper at gmail.com>
-+
-+ [BZ #12107]
-+ * stdio-common/psiginfo.c (psiginfo): Terminate all strings with
-+ newline.
-+
-+2010-10-06 Ulrich Drepper <drepper at gmail.com>
-+
-+ * string/bug-strstr1.c: New file.
-+ * string/Makefile: Add rules to build and run bug-strstr1.
-+
-+2010-10-05 Eric Blake <eblake at redhat.com>
-+
-+ [BZ #12092]
-+ * string/str-two-way.h (two_way_long_needle): Always clear memory
-+ when skipping input due to the shift table.
-+
-+2010-10-03 Ulrich Drepper <drepper at gmail.com>
-+
-+ [BZ #12005]
-+ * malloc/mcheck.c: Handle large requests.
-+
-+ [BZ #12077]
-+ * sysdeps/x86_64/strcmp.S: Fix handling of remaining bytes in buffer
-+ for strncmp and strncasecmp.
-+ * string/stratcliff.c: Add tests for strcmp and strncmp.
-+ * wcsmbs/wcsatcliff.c: Adjust for stratcliff change.
-+
-+2010-09-28 Nobuhiro Iwamatsu <iwamatsu at nigauri.org>
-+
-+ * sysdeps/sh/sh4/fpu/fpu_control.h: Add 'extern "C"' protection to
-+ __set_fpscr.
-+
-+2010-09-30 Andreas Jaeger <aj at suse.de>
-+
-+ * sysdeps/unix/sysv/linux_fsinfo.h (BTRFS_SUPER_MAGIC): Define.
-+ (CGROUP_SUPER_MAGIC): Define.
-+ * sysdeps/unix/sysv/linux/internal_statvfs.c (__statvfs_getflags):
-+ Handle btrfs and cgroup file systems.
-+ * sysdeps/unix/sysv/linux/pathconf.c (__statfs_filesize_max):
-+ Likewise.
-+
-+2010-09-27 Luis Machado <luisgpm at br.ibm.com>
-+
-+ * sysdeps/powerpc/powerpc32/rtld-memset.c: New file.
-+ * sysdeps/powerpc/powerpc64/rtld-memset.c: New file.
-+
-+2010-09-29 Andreas Krebbel <Andreas.Krebbel at de.ibm.com>
-+
-+ [BZ #12067]
-+ * sysdeps/s390/s390-32/elf/start.S: Fix address calculation when
-+ trying to locate the ELF header.
-+
-+2010-09-27 Andreas Schwab <schwab at redhat.com>
-+
-+ [BZ #11611]
-+ * sysdeps/unix/sysv/linux/internal_statvfs.c (INTERNAL_STATVFS):
-+ Mask out sign-bit copies when constructing f_fsid.
-+
-+2010-09-24 Petr Baudis <pasky at suse.cz>
-+
-+ * debug/stack_chk_fail_local.c: Add missing licence exception.
-+ * debug/warning-nop.c: Likewise.
-+
-+2010-09-15 Joseph Myers <joseph at codesourcery.com>
-+
-+ * sysdeps/unix/sysv/linux/getdents.c (__GETDENTS): When
-+ implementing getdents64 using getdents syscall, set d_type if
-+ __ASSUME_GETDENTS32_D_TYPE.
-+
-+2010-09-16 Andreas Schwab <schwab at redhat.com>
-+
-+ * elf/dl-close.c (free_slotinfo, free_mem): Move to...
-+ * elf/dl-libc.c (free_slotinfo, free_mem): ... here.
-+
-+2010-09-21 Ulrich Drepper <drepper at redhat.com>
-+
-+ [BZ #12037]
-+ * posix/unistd.h: Undo change of feature selection for ftruncate from
-+ 2010-01-11.
-+
-+2010-09-20 Ulrich Drepper <drepper at redhat.com>
-+
-+ * sysdeps/x86_64/strcmp.S: Fix another typo in x86-64 strncasecmp limit
-+ detection.
-+
-+2010-09-20 Andreas Schwab <schwab at redhat.com>
-+
-+ * sysdeps/unix/sysv/linux/sparc/sparc32/syscalls.list: Add
-+ fanotify_mark.
-+ * sysdeps/unix/sysv/linux/s390/s390-32/syscalls.list: Likewise.
-+
-+2010-09-14 Andreas Schwab <schwab at redhat.com>
-+
-+ * sysdeps/s390/s390-32/__longjmp.c (__longjmp): Define register
-+ variables after CHECK_SP call.
-+ * sysdeps/s390/s390-64/__longjmp.c (__longjmp): Likewise.
-+
-+2010-09-13 Andreas Schwab <schwab at redhat.com>
-+ Ulrich Drepper <drepper at redhat.com>
-+
-+ * elf/rtld.c (dl_main): Set GLRO(dl_init_all_dirs) just before
-+ re-relocationg ld.so.
-+ * elf/dl-support.c (_dl_non_dynamic_init): And here after the
-+ _dl_init_paths call.
-+ * elf/dl-load.c (_dl_init_paths). Don't set GLRO(dl_init_all_dirs)
-+ here anymore.
-+
-+2010-09-14 Ulrich Drepper <drepper at redhat.com>
-+
-+ * resolv/res_init.c (__res_vinit): Count the default server we added.
-+
-+2010-09-08 Chung-Lin Tang <cltang at codesourcery.com>
-+ Ulrich Drepper <drepper at redhat.com>
-+
-+ [BZ #11968]
-+ * sysdeps/unix/sysv/linux/x86_64/____longjmp_chk.S
-+ (____longjmp_chk): Use %ebx for saving value across system call.
-+ Add unwind info.
-+
-+2010-09-06 Andreas Schwab <schwab at redhat.com>
-+
-+ * manual/Makefile: Don't mix pattern rules with normal rules.
-+
-+2010-09-05 Andreas Schwab <schwab at linux-m68k.org>
-+
-+ * debug/vdprintf_chk.c (__vdprintf_chk): Remove undefined
-+ operation.
-+ * libio/iofdopen.c (_IO_new_fdopen): Likewise.
-+ * libio/iofopncook.c (_IO_cookie_init): Likewise.
-+ * libio/iovdprintf.c (_IO_vdprintf): Likewise.
-+ * libio/oldiofdopen.c (_IO_old_fdopen): Likewise.
-+ * sysdeps/powerpc/powerpc64/dl-machine.h (elf_machine_rela):
-+ Likewise.
-+
-+2010-09-04 Ulrich Drepper <drepper at redhat.com>
-+
-+ [BZ #11979]
-+ * iconvdata/gconv-modules: Remove EBCDIC-CP-AR2 alias from
-+ IBM-930, IBM-933, IBM-935, IBM-937, and IBM-939.
-+
-+2010-09-02 Ulrich Drepper <drepper at redhat.com>
-+
-+ * sysdeps/x86_64/add_n.S: Update from GMP 5.0.1.
-+ * sysdeps/x86_64/addmul_1.S: Likewise.
-+ * sysdeps/x86_64/lshift.S: Likewise.
-+ * sysdeps/x86_64/mul_1.S: Likewise.
-+ * sysdeps/x86_64/rshift.S: Likewise.
-+ * sysdeps/x86_64/sub_n.S: Likewise.
-+ * sysdeps/x86_64/submul_1.S: Likewise.
-+
-+2010-09-01 Samuel Thibault <samuel.thibault at ens-lyon.org>
-+
-+ This aligns bits/sched.h onto sysdeps/unix/sysv/linux/bits/sched.h:
-+ Define __sched_param instead of SCHED_* and sched_param when
-+ <bits/sched.h> is included with __need_schedparam defined.
-+ * bits/sched.h [__need_schedparam]
-+ (SCHED_OTHER, SCHED_FIFO, SCHED_RR, sched_param): Do not define.
-+ [!__defined_schedparam && (__need_schedparam || _SCHED_H)]
-+ (__defined_schedparam): Define to 1.
-+ (__sched_param): New structure, identical to sched_param.
-+ (__need_schedparam): Undefine.
-+
-+2010-08-31 Mike Frysinger <vapier at gentoo.org>
-+
-+ * sysdeps/unix/sysv/linux/sparc/sys/epoll.h (epoll_create2): Delete.
-+ (epoll_create1): Declare.
-+
-+ * sysdeps/unix/sysv/linux/x86_64/sys/epoll.h: Fix typo.
-+
-+2010-08-31 Andreas Schwab <schwab at redhat.com>
-+
-+ [BZ #7066]
-+ * stdlib/strtod_l.c (____STRTOF_INTERNAL): Fix array overflow when
-+ shifting retval into place.
-+
-+2010-09-01 Ulrich Drepper <drepper at redhat.com>
-+
-+ * nis/rpcsvc/nis.h: Update copyright notice.
-+ * nis/rpcsvc/nis.x: Likewise.
-+ * nis/rpcsvc/nis_callback.h: Likewise.
-+ * nis/rpcsvc/nis_callback.x: Likewise.
-+ * nis/rpcsvc/nis_object.x: Likewise.
-+ * nis/rpcsvc/nis_tags.h: Likewise.
-+ * nis/rpcsvc/yp.h: Likewise.
-+ * nis/rpcsvc/yp.x: Likewise.
-+ * nis/rpcsvc/ypupd.h: Likewise.
-+ * nis/yp_xdr.c: Likewise.
-+ * nis/ypupdate_xdr.c: Likewise.
-+
-+ * sunrpc/pm_getport.c (__libc_rpc_getport): New function. This is
-+ mainly the body of pmap_getport. Add parameters to specify timeouts.
-+ (pmap_getport): Use __libc_rpc_getport.
-+ * sunrpc/Versions: Export __libc_rpc_getport with GLIBC_PRIVATE.
-+ * include/rpc/pmap_clnt.h: Declare __libc_rpc_getport.
-+ * nis/nis_findserv.c: Remove pmap_getport copy. Use __libc_rpc_getport.
-+
-+2010-08-31 Andreas Schwab <schwab at linux-m68k.org>
-+
-+ * sysdeps/unix/sysv/linux/powerpc/powerpc32/syscalls.list: Add
-+ fanotify_mark.
-+
-+2010-08-27 Roland McGrath <roland at redhat.com>
-+
-+ * sysdeps/i386/i686/multiarch/Makefile
-+ (CFLAGS-varshift.c): New variable.
-+
-+2010-08-27 Ulrich Drepper <drepper at redhat.com>
-+
-+ * sysdeps/i386/i686/multiarch/varshift.S: File removed.
-+ * sysdeps/i386/i686/multiarch/varshift.c: New file.
-+
-+ * sysdeps/x86_64/multiarch/strlen-no-bsf.S: Move to .text.slow section.
-+
-+ * sysdeps/x86_64/strlen.S: Minimal code improvement.
-+
-+2010-08-26 H.J. Lu <hongjiu.lu at intel.com>
-+
-+ * sysdeps/x86_64/strlen.S: Unroll the loop.
-+ * sysdeps/x86_64/multiarch/Makefile (sysdep_routines): Add
-+ strlen-sse2 strlen-sse2-bsf.
-+ * sysdeps/x86_64/multiarch/strlen.S ((strlen): Return
-+ __strlen_no_bsf if bit_Slow_BSF is set.
-+ (__strlen_sse42): Removed.
-+ * sysdeps/x86_64/multiarch/strlen-no-bsf.S: New file.
-+ * sysdeps/x86_64/multiarch/strlen-sse4.S: New file.
-+
-+2010-08-25 Roland McGrath <roland at redhat.com>
-+
-+ * sysdeps/x86_64/multiarch/varshift.S: File removed.
-+ * sysdeps/x86_64/multiarch/varshift.c: New file.
-+ * sysdeps/x86_64/multiarch/Makefile (CFLAGS-varshift.c): New variable.
-+ * sysdeps/x86_64/multiarch/varshift.h: Clean up decls, fix a cast.
-+ * sysdeps/x86_64/multiarch/memmove.c: Move decls around.
-+ * sysdeps/x86_64/multiarch/memmove_chk.c: Likewise.
-+
-+2010-08-25 H.J. Lu <hongjiu.lu at intel.com>
-+
-+ * sysdeps/i386/i686/multiarch/Makefile (sysdep_routines): Add
-+ strlen-sse2 strlen-sse2-bsf.
-+ * sysdeps/i386/i686/multiarch/strlen.S (strlen): Return
-+ __strlen_sse2_bsf if bit_Slow_BSF is unset.
-+ (__strlen_sse2): Removed.
-+ * sysdeps/i386/i686/multiarch/strlen-sse2-bsf.S: New file.
-+ * sysdeps/i386/i686/multiarch/strlen-sse2.S: New file.
-+ * sysdeps/x86_64/multiarch/init-arch.c (__init_cpu_features): Set
-+ bit_Slow_BSF for Atom.
-+ * sysdeps/x86_64/multiarch/init-arch.h (bit_Slow_BSF): Define.
-+ (index_Slow_BSF): Define.
-+ (HAS_SLOW_BSF): Define.
-+
-+2010-08-25 Ulrich Drepper <drepper at redhat.com>
-+
-+ [BZ #10851]
-+ * resolv/res_init.c (__res_vinit): When no server address at all
-+ is given default to loopback.
-+
-+2010-08-24 Roland McGrath <roland at redhat.com>
-+
-+ * configure.in: Remove config-name.h generation.
-+ * configure: Regenerated.
-+ * config-name.in: File removed.
-+ * scripts/config-uname.sh: New file.
-+ * posix/Makefile (uname.c): Depend on $(objdir)config-name.h.
-+ ($(objdir)config-name.h): New target.
-+
-+ * sunrpc/rpc_parse.h: Avoid nested comment.
-+
-+2010-08-24 Richard Henderson <rth at redhat.com>
-+ Ulrich Drepper <drepper at redhat.com>
-+ H.J. Lu <hongjiu.lu at intel.com>
-+
-+ * sysdeps/i386/i686/multiarch/Makefile (sysdep_routines): Add varshift.
-+ * sysdeps/x86_64/multiarch/Makefile (sysdep_routines): Likewise.
-+ * sysdeps/x86_64/multiarch/strcspn-c.c: Include "varshift.h".
-+ Replace _mm_srli_si128 with __m128i_shift_right. Replace
-+ _mm_alignr_epi8 with _mm_loadu_si128.
-+ * sysdeps/x86_64/multiarch/strspn-c.c: Likewise.
-+ * sysdeps/x86_64/multiarch/strstr.c: Include "varshift.h".
-+ (__m128i_shift_right): Removed.
-+ * sysdeps/i386/i686/multiarch/varshift.h: New file.
-+ * sysdeps/i386/i686/multiarch/varshift.S: New file.
-+ * sysdeps/x86_64/multiarch/varshift.h: New file.
-+ * sysdeps/x86_64/multiarch/varshift.S: New file.
-+
-+2010-08-21 Mike Frysinger <vapier at gentoo.org>
-+
-+ * configure.in: Move assembler checks to before sysdep dir checking.
-+
-+2010-08-20 Petr Baudis <pasky at suse.cz>
-+
-+ * LICENSES: Sync the sunrpc license.
-+
-+2010-08-19 Ulrich Drepper <drepper at redhat.com>
-+
-+ * sunrpc/auth_des.c: Update copyright notice once again.
-+ * sunrpc/auth_none.c: Likewise.
-+ * sunrpc/auth_unix.c: Likewise.
-+ * sunrpc/authdes_prot.c: Likewise.
-+ * sunrpc/authuxprot.c: Likewise.
-+ * sunrpc/bindrsvprt.c: Likewise.
-+ * sunrpc/clnt_gen.c: Likewise.
-+ * sunrpc/clnt_perr.c: Likewise.
-+ * sunrpc/clnt_raw.c: Likewise.
-+ * sunrpc/clnt_simp.c: Likewise.
-+ * sunrpc/clnt_tcp.c: Likewise.
-+ * sunrpc/clnt_udp.c: Likewise.
-+ * sunrpc/clnt_unix.c: Likewise.
-+ * sunrpc/des_crypt.c: Likewise.
-+ * sunrpc/des_soft.c: Likewise.
-+ * sunrpc/get_myaddr.c: Likewise.
-+ * sunrpc/getrpcport.c: Likewise.
-+ * sunrpc/key_call.c: Likewise.
-+ * sunrpc/key_prot.c: Likewise.
-+ * sunrpc/openchild.c: Likewise.
-+ * sunrpc/pm_getmaps.c: Likewise.
-+ * sunrpc/pm_getport.c: Likewise.
-+ * sunrpc/pmap_clnt.c: Likewise.
-+ * sunrpc/pmap_prot.c: Likewise.
-+ * sunrpc/pmap_prot2.c: Likewise.
-+ * sunrpc/pmap_rmt.c: Likewise.
-+ * sunrpc/rpc/auth.h: Likewise.
-+ * sunrpc/rpc/auth_unix.h: Likewise.
-+ * sunrpc/rpc/clnt.h: Likewise.
-+ * sunrpc/rpc/des_crypt.h: Likewise.
-+ * sunrpc/rpc/key_prot.h: Likewise.
-+ * sunrpc/rpc/netdb.h: Likewise.
-+ * sunrpc/rpc/pmap_clnt.h: Likewise.
-+ * sunrpc/rpc/pmap_prot.h: Likewise.
-+ * sunrpc/rpc/pmap_rmt.h: Likewise.
-+ * sunrpc/rpc/rpc.h: Likewise.
-+ * sunrpc/rpc/rpc_des.h: Likewise.
-+ * sunrpc/rpc/rpc_msg.h: Likewise.
-+ * sunrpc/rpc/svc.h: Likewise.
-+ * sunrpc/rpc/svc_auth.h: Likewise.
-+ * sunrpc/rpc/types.h: Likewise.
-+ * sunrpc/rpc/xdr.h: Likewise.
-+ * sunrpc/rpc_clntout.c: Likewise.
-+ * sunrpc/rpc_cmsg.c: Likewise.
-+ * sunrpc/rpc_common.c: Likewise.
-+ * sunrpc/rpc_cout.c: Likewise.
-+ * sunrpc/rpc_dtable.c: Likewise.
-+ * sunrpc/rpc_hout.c: Likewise.
-+ * sunrpc/rpc_main.c: Likewise.
-+ * sunrpc/rpc_parse.c: Likewise.
-+ * sunrpc/rpc_parse.h: Likewise.
-+ * sunrpc/rpc_prot.c: Likewise.
-+ * sunrpc/rpc_sample.c: Likewise.
-+ * sunrpc/rpc_scan.c: Likewise.
-+ * sunrpc/rpc_scan.h: Likewise.
-+ * sunrpc/rpc_svcout.c: Likewise.
-+ * sunrpc/rpc_tblout.c: Likewise.
-+ * sunrpc/rpc_util.c: Likewise.
-+ * sunrpc/rpc_util.h: Likewise.
-+ * sunrpc/rpcinfo.c: Likewise.
-+ * sunrpc/rpcsvc/bootparam_prot.x: Likewise.
-+ * sunrpc/rpcsvc/key_prot.x: Likewise.
-+ * sunrpc/rpcsvc/klm_prot.x: Likewise.
-+ * sunrpc/rpcsvc/mount.x: Likewise.
-+ * sunrpc/rpcsvc/nfs_prot.x: Likewise.
-+ * sunrpc/rpcsvc/nlm_prot.x: Likewise.
-+ * sunrpc/rpcsvc/rex.x: Likewise.
-+ * sunrpc/rpcsvc/rstat.x: Likewise.
-+ * sunrpc/rpcsvc/rusers.x: Likewise.
-+ * sunrpc/rpcsvc/sm_inter.x: Likewise.
-+ * sunrpc/rpcsvc/spray.x: Likewise.
-+ * sunrpc/rpcsvc/yppasswd.x: Likewise.
-+ * sunrpc/rtime.c: Likewise.
-+ * sunrpc/svc.c: Likewise.
-+ * sunrpc/svc_auth.c: Likewise.
-+ * sunrpc/svc_authux.c: Likewise.
-+ * sunrpc/svc_raw.c: Likewise.
-+ * sunrpc/svc_run.c: Likewise.
-+ * sunrpc/svc_simple.c: Likewise.
-+ * sunrpc/svc_tcp.c: Likewise.
-+ * sunrpc/svc_udp.c: Likewise.
-+ * sunrpc/svc_unix.c: Likewise.
-+ * sunrpc/svcauth_des.c: Likewise.
-+ * sunrpc/xcrypt.c: Likewise.
-+ * sunrpc/xdr.c: Likewise.
-+ * sunrpc/xdr_array.c: Likewise.
-+ * sunrpc/xdr_float.c: Likewise.
-+ * sunrpc/xdr_mem.c: Likewise.
-+ * sunrpc/xdr_rec.c: Likewise.
-+ * sunrpc/xdr_ref.c: Likewise.
-+ * sunrpc/xdr_sizeof.c: Likewise.
-+ * sunrpc/xdr_stdio.c: Likewise.
-+
-+ * sysdeps/x86_64/multiarch/strcmp.S: Fix two typos in strncasecmp
-+ handling.
-+
-+2010-08-19 Andreas Schwab <schwab at redhat.com>
-+
-+ * sysdeps/i386/i686/multiarch/strspn.S [!SHARED]: Fix SSE4.2 check.
-+
-+2010-08-19 Luis Machado <luisgpm at br.ibm.com>
-+
-+ * sysdeps/powerpc/powerpc32/power7/memchr.S: New file.
-+ * sysdeps/powerpc/powerpc32/power7/memrchr.S: New file.
-+ * sysdeps/powerpc/powerpc32/power7/rawmemchr.S: New file.
-+ * sysdeps/powerpc/powerpc32/power7/strchr.S: New file.
-+ * sysdeps/powerpc/powerpc32/power7/strchrnul.S: New file.
-+ * sysdeps/powerpc/powerpc32/power7/strlen.S: New file.
-+ * sysdeps/powerpc/powerpc32/power7/strnlen.S: New file.
-+ * sysdeps/powerpc/powerpc64/power7/memchr.S: New file.
-+ * sysdeps/powerpc/powerpc64/power7/memrchr.S: New file.
-+ * sysdeps/powerpc/powerpc64/power7/rawmemchr.S: New file.
-+ * sysdeps/powerpc/powerpc64/power7/strchr.S: New file.
-+ * sysdeps/powerpc/powerpc64/power7/strchrnul.S: New file.
-+ * sysdeps/powerpc/powerpc64/power7/strlen.S: New file.
-+ * sysdeps/powerpc/powerpc64/power7/strnlen.S: New file.
-+
-+2010-07-26 Anton Blanchard <anton at samba.org>
-+
-+ * malloc/malloc.c (sYSTRIm): Replace divide and multiply with mask.
-+ * malloc/arena.c (heap_trim): Likewise.
-+
-+2010-08-16 Ulrich Drepper <drepper at redhat.com>
-+
-+ * sysdeps/unix/sysv/linux/syscalls.list: Add entry for fanotify_init
-+ here. Not...
-+ * sysdeps/unix/sysv/linux/wordsize-64/syscalls.list: ...here...
-+ * sysdeps/unix/sysv/linux/i386/syscalls.list: ... orhere.
-+
-+2010-08-12 H.J. Lu <hongjiu.lu at intel.com>
-+
-+ * sysdeps/i386/elf/Makefile: New file.
-+
-+2010-08-14 Andreas Schwab <schwab at linux-m68k.org>
-+
-+ * sysdeps/unix/sysv/linux/sys/fanotify.h: Remove third argument
-+ from fanotify_init.
-+ * sysdeps/unix/sysv/linux/i386/syscalls.list: Likewise.
-+ * sysdeps/unix/sysv/linux/wordsize-64/syscalls.list: Likewise.
-+
-+2010-08-15 Ulrich Drepper <drepper at redhat.com>
-+
-+ * sysdeps/x86_64/strcmp.S: Use correct register for fourth parameter
-+ of strncasecmp_l.
-+ * sysdeps/multiarch/strcmp.S: Likewise.
-+
-+2010-08-14 Ulrich Drepper <drepper at redhat.com>
-+
-+ * sysdeps/x86_64/Makefile [subdir=string] (sysdep_routines): Add
-+ strncase_l-nonascii.
-+ * sysdeps/x86_64/multiarch/Makefile [subdir=string] (sysdep_routines):
-+ Add strncase_l-ssse3.
-+ * sysdeps/x86_64/multiarch/strcmp.S: Prepare for use as strncasecmp.
-+ * sysdeps/x86_64/strcmp.S: Likewise.
-+ * sysdeps/x86_64/multiarch/strncase_l-ssse3.S: New file.
-+ * sysdeps/x86_64/multiarch/strncase_l.S: New file.
-+ * sysdeps/x86_64/strncase.S: New file.
-+ * sysdeps/x86_64/strncase_l-nonascii.c: New file.
-+ * sysdeps/x86_64/strncase_l.S: New file.
-+ * string/Makefile (strop-tests): Add strncasecmp.
-+ * string/test-strncasecmp.c: New file.
-+
-+ * sysdeps/x86_64/strcasecmp_l-nonascii.c: Add prototype to avoid
-+ warning.
-+
-+ * sysdeps/x86_64/strcmp.S: Move definition of NO_NOLOCALE_ALIAS to...
-+ * sysdeps/x86_64/multiarch/strcasecmp_l-ssse3.S: ... here.
-+
-+2010-08-14 Andreas Schwab <schwab at linux-m68k.org>
-+
-+ * sysdeps/unix/sysv/linux/prlimit.c: Make it compile.
-+
-+2010-08-12 Ulrich Drepper <drepper at redhat.com>
-+
-+ * sysdeps/unix/sysv/linux/bits/termios.h: Define EXTPROC.
-+ * sysdeps/unix/sysv/linux/powerpc/bits/termios.h: Likewise.
-+ * sysdeps/unix/sysv/linux/sparc/bits/termios.h: Likewise.
-+
-+2010-05-01 Alan Modra <amodra at gmail.com>
-+
-+ * sysdeps/powerpc/powerpc32/power4/memcmp.S: Correct cfi for r24.
-+ * sysdeps/powerpc/powerpc64/bsd-_setjmp.S: Move contents..
-+ * sysdeps/powerpc/powerpc64/bsd-setjmp.S: ..and these too..
-+ * sysdeps/powerpc/powerpc64/setjmp.S: ..to here..
-+ * sysdeps/powerpc/powerpc64/setjmp-common.S: ..and here, with some
-+ tidying. Don't tail-call __sigjmp_save for static lib.
-+ * sysdeps/powerpc/powerpc64/sysdep.h (SAVE_ARG, REST_ARG): Correct
-+ save location.
-+ (CFI_SAVE_ARG, CFI_REST_ARG): New macros.
-+ (CALL_MCOUNT): Add eh info, and nop after bl.
-+ (TAIL_CALL_SYSCALL_ERROR): New macro.
-+ (PSEUDO_RET): Use it.
-+ * sysdeps/powerpc/powerpc64/dl-trampoline.S (_dl_runtime_resolve):
-+ Correct save location of integer regs and cr.
-+ (_dl_profile_resolve): Correct cr save location. Delete nops
-+ after bl when SHARED. Reduce cfi size a little by better
-+ placement of cfi directives.
-+ * sysdeps/powerpc/powerpc64/fpu/s_copysign.S (__copysign): Don't
-+ make a stack frame. Instead use parm save area as a temp.
-+ * sysdeps/unix/sysv/linux/powerpc/powerpc64/brk.S (__brk): Don't
-+ make a stack frame. Use TAIL_CALL_SYSCALL_ERROR.
-+ * sysdeps/unix/sysv/linux/powerpc/powerpc64/clone.S (__clone):
-+ Don't make a stack frame for parent, use parm save area.
-+ Increase child stack frame to 112 bytes. Don't save unused reg,
-+ and adjust reg usage. Set up cfi on error recovery and
-+ epilogue of parent, and use TAIL_CALL_SYSCALL_ERROR, PSEUDO_RET.
-+ * sysdeps/unix/sysv/linux/powerpc/powerpc64/makecontext.S
-+ (__makecontext): Add dummy nop after jump to exit.
-+ * sysdeps/unix/sysv/linux/powerpc/powerpc64/socket.S (__socket):
-+ Use correct parm save area and cr save, reduce stack frame.
-+ Correct cfi for possible PSEUDO_RET frame setup.
-+ * sysdeps/unix/sysv/linux/powerpc/powerpc64/vfork.S (__vfork):
-+ Branch to local label emitted by PSEUDO_RET rather than
-+ __syscall_error.
-+
-+2010-08-12 Andreas Schwab <schwab at redhat.com>
-+
-+ [BZ #11904]
-+ * locale/programs/locale.c (print_assignment): New function.
-+ (show_locale_vars): Use it.
-+
-+2010-08-11 Ulrich Drepper <drepper at redhat.com>
-+
-+ * sysdeps/unix/sysv/linux/bits/statfs.h (struct statfs): Add f_flags
-+ field.
-+ (struct statfs64): Likewise.
-+ (_STATFS_F_FLAGS): Define.
-+ * sysdeps/unix/sysv/linux/s390/bits/statfs.h: Likewise.
-+ * sysdeps/unix/sysv/linux/internal_statvfs.c (__statvfs_getflags):
-+ Don't define if __ASSUME_STATFS_F_FLAGS is defined.
-+ (ST_VALID): Define locally.
-+ (INTERNAL_STATVFS): If f_flags has ST_VALID set don't call
-+ __statvfs_getflags, use the provided value.
-+ * sysdeps/unix/sysv/linux/kernel-features.h: Define
-+ __ASSUME_STATFS_F_FLAGS.
-+
-+ * sysdeps/unix/sysv/linux/sys/inotify.h (IN_EXCL_UNLINK): Define.
-+
-+ * sysdeps/unix/sysv/linux/Makefile [subdir=misc] (sysdep_headers):
-+ Add sys/fanotify.h.
-+ * sysdeps/unix/sysv/linux/Versions [libc]: Export fanotify_init and
-+ fanotify_mask for GLIBC_2.13.
-+ * sysdeps/unix/sysv/linux/i386/syscalls.list: Add entries for
-+ fanotify_init and fanotify_mark.
-+ * sysdeps/unix/sysv/linux/wordsize-64/syscalls.list: Likewise.
-+ * sysdeps/unix/sysv/linux/sys/fanotify.h: New file.
-+
-+ * sysdeps/unix/sysv/linux/Makefile [subdir=misc] (sysdep_routines):
-+ Add prlimit.
-+ * sysdeps/unix/sysv/linux/Versions [libc]: Export prlimit and
-+ prlimit64 for GLIBC_2.13.
-+ * sysdeps/unix/sysv/linux/bits/resource.h: Declare prlimit and
-+ prlimit64.
-+ * sysdeps/unix/sysv/linux/i386/syscalls.list: Add entry for prlimit64
-+ syscall.
-+ * sysdeps/unix/sysv/linux/powerpc/powerpc32/syscalls.list: Likewise.
-+ * sysdeps/unix/sysv/linux/s390/s390-32/syscalls.list: Likewise.
-+ * sysdeps/unix/sysv/linux/sh/syscalls.list: Likewise.
-+ * sysdeps/unix/sysv/linux/sparc/sparc32/syscalls.lis: Likewise.
-+ * sysdeps/unix/sysv/linux/wordsize-64/syscalls.list: Likewise. Also
-+ add prlimit alias.
-+ * sysdeps/unix/sysv/linux/prlimit.c: New file.
-+
-+ [BZ #11903]
-+ * sysdeps/generic/netinet/ip.h (IPTOS_CLASS): Fix definition.
-+ Patch by Evgeni Bikov <bikovevg at iitp.ru>.
-+
-+ * nss/Makefile: Add rules to build and run tst-nss-test1.
-+ * shlib-versions: Add entry for libnss_test1.
-+ * nss/nss_test1.c: New file.
-+ * nss/tst-nss-test1.c: New file.
-+
-+ * nss/nsswitch.c (__nss_database_custom): Define new variable.
-+ (__nss_configure_lookup): Set appropriate entry in
-+ __nss_configure_lookup to true.
-+ * nss/nsswitch.h: Define enum with indeces of databases in
-+ databases and __nss_database_custom arrays. Declare
-+ __nss_database_custom.
-+ * grp/initgroups.c (internal_getgrouplist): Use __nss_database_custom
-+ to avoid using nscd when custom rules are installed.
-+ * nss/getXXbyYY_r.c: Likewise.
-+ * sysdeps/posix/getaddrinfo.c (gaih_inet): Likewise.
-+
-+ * nss/nss_files/files-parse.c: Whitespace fixes.
-+
-+2010-08-09 Ulrich Drepper <drepper at redhat.com>
-+
-+ [BZ #11883]
-+ * posix/fnmatch.c: Keep track of alloca use and fall back on malloc.
-+ * posix/fnmatch_loop.c: Likewise.
-+
-+2010-07-17 Andi Kleen <ak at linux.intel.com>
-+
-+ * sysdeps/i386/i386-mcount.S (__fentry__): Define.
-+ * sysdeps/x86_64/_mcount.S (__fentry__): Define.
-+ * stdlib/Versions (__fentry__): Add for GLIBC 2.13
-+ * Versions.def [GLIBC_2.13]: Add.
-+
-+2010-08-06 Ulrich Drepper <drepper at redhat.com>
-+
-+ * sysdeps/unix/sysv/linux/getlogin_r.c (__getlogin_r_loginuid):
-+ Also fail if tpwd after pwuid call is NULL.
-+
-+2010-07-31 Samuel Thibault <samuel.thibault at ens-lyon.org>
-+
-+ * hurd/hurdselect.c (_hurd_select): Round timeout up instead of down
-+ when converting to ms.
-+
-+2010-06-06 Samuel Thibault <samuel.thibault at ens-lyon.org>
-+
-+ * sysdeps/mach/hurd/ttyname.c (ttyname): Replace MIG_BAD_ID and
-+ EOPNOTSUPP errors with ENOTTY.
-+ * sysdeps/mach/hurd/ttyname_r.c (__ttyname_r): Replace MIG_BAD_ID and
-+ EOPNOTSUPP errors with ENOTTY.
-+
-+2010-07-31 Ulrich Drepper <drepper at redhat.com>
-+
-+ * sysdeps/x86_64/multiarch/Makefile [subdir=string] (sysdep_routines):
-+ Add strcasecmp_l-ssse3.
-+ * sysdeps/x86_64/multiarch/strcmp.S: Add support to compile for
-+ strcasecmp.
-+ * sysdeps/x86_64/strcmp.S: Allow more flexible compiling of strcasecmp.
-+ * sysdeps/x86_64/multiarch/strcasecmp_l.S: New file.
-+ * sysdeps/x86_64/multiarch/strcasecmp_l-ssse3.S: New file.
-+
-+2010-07-30 Ulrich Drepper <drepper at redhat.com>
-+
-+ * sysdeps/x86_64/multiarch/strcmp.S: Pretty printing.
-+
-+ * string/Makefile (strop-tests): Add strcasecmp.
-+ * sysdeps/x86_64/Makefile [subdir=string] (sysdep_routines): Add
-+ strcasecmp_l-nonascii.
-+ (gen-as-const-headers): Add locale-defines.sym.
-+ * sysdeps/x86_64/strcmp.S: Add support for strcasecmp implementation.
-+ * sysdeps/x86_64/strcasecmp.S: New file.
-+ * sysdeps/x86_64/strcasecmp_l.S: New file.
-+ * sysdeps/x86_64/strcasecmp_l-nonascii.c: New file.
-+ * sysdeps/x86_64/locale-defines.sym: New file.
-+ * string/test-strcasecmp.c: New file.
-+
-+ * string/test-strcasestr.c: Test both ends of the range of characters.
-+ * sysdeps/x86_64/multiarch/strstr.c: Fix UCHIGH definition.
-+
-+2010-07-29 Roland McGrath <roland at redhat.com>
-+
-+ [BZ #11856]
-+ * manual/locale.texi (Yes-or-No Questions): Fix example code.
-+
-+2010-07-27 Ulrich Drepper <drepper at redhat.com>
-+
-+ * sysdeps/x86_64/multiarch/strcmp-ssse3.S: Avoid compiling the file
-+ for ld.so.
-+
-+2010-07-27 Andreas Schwab <schwab at redhat.com>
-+
-+ * manual/memory.texi (Malloc Tunable Parameters): Document
-+ M_PERTURB.
-+
-+2010-07-26 Roland McGrath <roland at redhat.com>
-+
-+ [BZ #11840]
-+ * configure.in (-fgnu89-inline check): Set and substitute
-+ gnu89_inline, not libc_cv_gnu89_inline.
-+ * configure: Regenerated.
-+ * config.make.in (gnu89-inline-CFLAGS): Use @gnu89_inline at .
-+
-+2010-07-26 Ulrich Drepper <drepper at redhat.com>
-+
-+ * string/test-strnlen.c: New file.
-+ * string/Makefile (strop-tests): Add strnlen.
-+ * string/tester.c (test_strnlen): Add a few more test cases.
-+ * string/tst-strlen.c: Better error reporting.
-+
-+ * sysdeps/x86_64/strnlen.S: New file.
-+
-+2010-07-24 Ulrich Drepper <drepper at redhat.com>
-+
-+ * sysdeps/x86_64/multiarch/strstr.c (__m128i_strloadu_tolower): Use
-+ lower-latency instructions.
-+
-+2010-07-23 Ulrich Drepper <drepper at redhat.com>
-+
-+ * string/test-strcasestr.c: New file.
-+ * string/test-strstr.c: New file.
-+ * string/Makefile (strop-tests): Add strstr and strcasestr.
-+ * string/str-two-way.h: Don't undefine MAX.
-+ * string/strcasestr.c: Don't define alias if NO_ALIAS is defined.
-+
-+2010-07-21 Andreas Schwab <schwab at redhat.com>
-+
-+ * sysdeps/i386/i686/multiarch/Makefile (sysdep_routines): Add
-+ strcasestr-nonascii.
-+ (CFLAGS-strcasestr-nonascii.c): Define.
-+ * sysdeps/i386/i686/multiarch/strcasestr-nonascii.c: New file.
-+ * sysdeps/x86_64/multiarch/strcasestr-nonascii.c (STRSTR_SSE42):
-+ Remove unused attribute.
-+
-+2010-07-20 Roland McGrath <roland at redhat.com>
-+
-+ * elf/dl-sysdep.c (_dl_important_hwcaps): Add dsocaps mask to
-+ dl_hwcap_mask as well as dl_hwcap. Without this, dsocaps matching in
-+ ld.so.cache was broken. With it, there is no way to disable dsocaps
-+ like LD_HWCAP_MASK can disable hwcaps.
-+
-+2010-06-02 Emilio Pozuelo Monfort <pochu27 at gmail.com>
-+
-+ * sysdeps/mach/hurd/sendmsg.c (__libc_sendmsg): Fix memory leaks.
-+
-+2010-07-16 Ulrich Drepper <drepper at redhat.com>
-+
-+ * sysdeps/x86_64/multiarch/strstr.c: Rewrite to avoid indirect function
-+ call in strcasestr.
-+ * sysdeps/x86_64/multiarch/strcasestr.c: Declare
-+ __strcasestr_sse42_nonascii.
-+ * sysdeps/x86_64/multiarch/Makefile: Add rules to build
-+ strcasestr-nonascii.c.
-+ * sysdeps/x86_64/multiarch/strcasestr-nonascii.c: New file.
-+
-+2010-06-15 Luis Machado <luisgpm at br.ibm.com>
-+
-+ * sysdeps/powerpc/powerpc32/power6/fpu/s_copysign.S: New file.
-+ * sysdeps/powerpc/powerpc32/power6/fpu/s_copysignf.S: New file.
-+ * sysdeps/powerpc/powerpc64/power6/fpu/s_copysign.S: New file.
-+ * sysdeps/powerpc/powerpc64/power6/fpu/s_copysignf.S: New file.
-+
-+2010-07-09 Ulrich Drepper <drepper at redhat.com>
-+
-+ * sysdeps/unix/sysv/linux/fpathconf.c (__fpathconf): Use __fcntl not
-+ fcntl.
-+
-+2010-07-06 Andreas Schwab <schwab at redhat.com>
-+
-+ [BZ #11577]
-+ * elf/dl-version.c (match_symbol): Don't pass NULL occation to
-+ dl_signal_cerror.
-+
-+2010-07-06 Ulrich Drepper <drepper at redhat.com>
-+
-+ * sysdeps/unix/sysv/linux/fpathconf.c (__fpathconf): Implement
-+ _PC_PIPE_BUF using F_GETPIPE_SZ.
-+
-+2010-07-05 Roland McGrath <roland at redhat.com>
-+
-+ * manual/arith.texi (Rounding Functions): Fix rint description
-+ implicit in round description.
-+
-+2010-07-02 Ulrich Drepper <drepper at redhat.com>
-+
-+ * elf/Makefile: Fix linking for a few tests to make recent linker
-+ happy.
-+
-+2010-06-30 Andreas Schwab <schwab at redhat.com>
-+
-+ * dlfcn/Makefile (LDLIBS-bug-atexit3-lib.so): Readd
-+ $(common-objpfx)libc_nonshared.a.
-+
-+2010-06-21 Luis Machado <luisgpm at br.ibm.com>
-+
-+ * sysdeps/powerpc/powerpc32/970/fpu/Implies: Remove.
-+ * sysdeps/powerpc/powerpc32/power5/fpu/Implies: Remove.
-+ * sysdeps/powerpc/powerpc32/power5+/fpu/Implies: Remove.
-+ * sysdeps/powerpc/powerpc32/power6x/fpu/Implies: Remove.
-+ * sysdeps/powerpc/powerpc64/970/fpu/Implies: Remove.
-+ * sysdeps/powerpc/powerpc64/power5/fpu/Implies: Remove.
-+ * sysdeps/powerpc/powerpc64/power5+/fpu/Implies: Remove.
-+ * sysdeps/powerpc/powerpc64/power6x/fpu/Implies: Remove.
-+ * sysdeps/unix/sysv/linux/powerpc/powerpc32/970/fpu/Implies: Remove.
-+ * sysdeps/unix/sysv/linux/powerpc/powerpc32/power4/fpu/Implies: Remove.
-+ * sysdeps/unix/sysv/linux/powerpc/powerpc32/power5/fpu/Implies: Remove.
-+ * sysdeps/unix/sysv/linux/powerpc/powerpc32/power5+/fpu/Implies: Remove.
-+ * sysdeps/unix/sysv/linux/powerpc/powerpc32/power6/fpu/Implies: Remove.
-+ * sysdeps/unix/sysv/linux/powerpc/powerpc32/power6x/fpu/Implies: Remove.
-+ * sysdeps/unix/sysv/linux/powerpc/powerpc32/power7/fpu/Implies: Remove.
-+ * sysdeps/unix/sysv/linux/powerpc/powerpc64/970/fpu/Implies: Remove.
-+ * sysdeps/unix/sysv/linux/powerpc/powerpc64/power4/fpu/Implies: Remove.
-+ * sysdeps/unix/sysv/linux/powerpc/powerpc64/power5/fpu/Implies: Remove.
-+ * sysdeps/unix/sysv/linux/powerpc/powerpc64/power5+/fpu/Implies: Remove.
-+ * sysdeps/unix/sysv/linux/powerpc/powerpc64/power6/fpu/Implies: Remove.
-+ * sysdeps/unix/sysv/linux/powerpc/powerpc64/power6x/fpu/Implies: Remove.
-+ * sysdeps/unix/sysv/linux/powerpc/powerpc64/power7/fpu/Implies: Remove.
-+ * sysdeps/powerpc/powerpc32/970/Implies: Point to power4.
-+ * sysdeps/powerpc/powerpc32/power5/Implies: Point to power4.
-+ * sysdeps/powerpc/powerpc32/power5+/Implies: Point to power5.
-+ * sysdeps/powerpc/powerpc32/power6/Implies: Point to power5+.
-+ * sysdeps/powerpc/powerpc32/power6x/Implies: Point to power6.
-+ * sysdeps/powerpc/powerpc64/970/Implies: Point to power4.
-+ * sysdeps/powerpc/powerpc64/power5/Implies: Point to power4.
-+ * sysdeps/powerpc/powerpc64/power5+/Implies: Point to power5.
-+ * sysdeps/powerpc/powerpc64/power6/Implies: Point to power5+.
-+ * sysdeps/powerpc/powerpc64/power6x/Implies: Point to power6.
-+ * sysdeps/powerpc/powerpc32/power7/Implies: New file.
-+ * sysdeps/powerpc/powerpc64/power7/Implies: New file.
-+ * sysdeps/unix/sysv/linux/powerpc/powerpc32/970/Implies: New file.
-+ * sysdeps/unix/sysv/linux/powerpc/powerpc32/cell/Implies: New file.
-+ * sysdeps/unix/sysv/linux/powerpc/powerpc32/power4/Implies: New file.
-+ * sysdeps/unix/sysv/linux/powerpc/powerpc32/power5/Implies: New file.
-+ * sysdeps/unix/sysv/linux/powerpc/powerpc32/power6/Implies: New file.
-+ * sysdeps/unix/sysv/linux/powerpc/powerpc32/power6x/Implies: New file.
-+ * sysdeps/unix/sysv/linux/powerpc/powerpc32/power7/Implies: New file.
-+ * sysdeps/unix/sysv/linux/powerpc/powerpc64/970/Implies: New file.
-+ * sysdeps/unix/sysv/linux/powerpc/powerpc64/cell/Implies: New file.
-+ * sysdeps/unix/sysv/linux/powerpc/powerpc64/power4/Implies: New file.
-+ * sysdeps/unix/sysv/linux/powerpc/powerpc64/power5/Implies: New file.
-+ * sysdeps/unix/sysv/linux/powerpc/powerpc64/power6/Implies: New file.
-+ * sysdeps/unix/sysv/linux/powerpc/powerpc64/power6x/Implies: New file.
-+ * sysdeps/unix/sysv/linux/powerpc/powerpc64/power7/Implies: New file.
-+
-+2010-06-25 H.J. Lu <hongjiu.lu at intel.com>
-+
-+ * debug/memmove_chk.c (__memmove_chk): Renamed to ...
-+ (MEMMOVE_CHK): ...this. Default to __memmove_chk.
-+ * string/memmove.c (memmove): Renamed to ...
-+ (MEMMOVE): ...this. Default to memmove.
-+ * sysdeps/x86_64/memcpy.S: Use ENTRY_CHK and END_CHK.
-+ * sysdeps/x86_64/sysdep.h (ENTRY_CHK): Define.
-+ (END_CHK): Define.
-+ * sysdeps/x86_64/multiarch/Makefile (sysdep_routines): Add
-+ memcpy-ssse3 mempcpy-ssse3 memmove-ssse3 memcpy-ssse3-back
-+ mempcpy-ssse3-back memmove-ssse3-back.
-+ * sysdeps/x86_64/multiarch/bcopy.S: New file .
-+ * sysdeps/x86_64/multiarch/memcpy-ssse3-back.S: New file.
-+ * sysdeps/x86_64/multiarch/memcpy-ssse3.S: New file.
-+ * sysdeps/x86_64/multiarch/memcpy.S: New file.
-+ * sysdeps/x86_64/multiarch/memcpy_chk.S: New file.
-+ * sysdeps/x86_64/multiarch/memmove-ssse3-back.S: New file.
-+ * sysdeps/x86_64/multiarch/memmove-ssse3.S: New file.
-+ * sysdeps/x86_64/multiarch/memmove.c: New file.
-+ * sysdeps/x86_64/multiarch/memmove_chk.c: New file.
-+ * sysdeps/x86_64/multiarch/mempcpy-ssse3-back.S: New file.
-+ * sysdeps/x86_64/multiarch/mempcpy-ssse3.S: New file.
-+ * sysdeps/x86_64/multiarch/mempcpy.S: New file.
-+ * sysdeps/x86_64/multiarch/mempcpy_chk.S: New file.
-+ * sysdeps/x86_64/multiarch/init-arch.h (bit_Fast_Copy_Backward):
-+ Define.
-+ (index_Fast_Copy_Backward): Define.
-+ (HAS_ARCH_FEATURE): Define.
-+ (HAS_FAST_REP_STRING): Define.
-+ (HAS_FAST_COPY_BACKWARD): Define.
-+
-+2010-06-21 Andreas Schwab <schwab at redhat.com>
-+
-+ * sysdeps/unix/sysv/linux/getlogin_r.c (__getlogin_r_loginuid):
-+ Restore proper fallback handling.
-+
-+2010-06-19 Ulrich Drepper <drepper at redhat.com>
-+
-+ [BZ #11701]
-+ * posix/group_member.c (__group_member): Correct checking loop.
-+
-+ * sysdeps/unix/sysv/linux/getlogin_r.c (__getlogin_r_loginuid): Handle
-+ OOM in getpwuid_r correctly. Return error number when the caller
-+ should return, otherwise -1.
-+ (getlogin_r): Adjust to return also for result of __getlogin_r_loginuid
-+ call returning > 0 value.
-+ * sysdeps/unix/sysv/linux/getlogin.c (getlogin): Likewise.
-+
-+2010-06-07 Andreas Schwab <schwab at redhat.com>
-+
-+ * dlfcn/Makefile: Remove explicit dependencies on libc.so and
-+ libc_nonshared.a from targets in modules-names.
-+
-+2010-06-02 Kirill A. Shutemov <kirill at shutemov.name>
-+
-+ * elf/dl-reloc.c: Flush cache after solving TEXTRELs if arch
-+ requires it.
-+
-+2010-06-10 Luis Machado <luisgpm at br.ibm.com>
-+
-+ * sysdeps/powerpc/powerpc32/power7/memcmp.S: New file
-+ * sysdeps/powerpc/powerpc64/power7/memcmp.S: New file.
-+ * sysdeps/powerpc/powerpc32/power7/strncmp.S: New file.
-+ * sysdeps/powerpc/powerpc64/power7/strncmp.S: New file.
-+
-+2010-06-02 Andreas Schwab <schwab at redhat.com>
-+
-+ * nis/nss_nis/nis-initgroups.c (get_uid): Properly resize buffer.
-+
-+2010-06-14 Ulrich Drepper <drepper at redhat.com>
-+
-+ * sysdeps/unix/sysv/linux/powerpc/bits/fcntl.h: Define F_SETPIPE_SZ
-+ and F_GETPIPE_SZ.
-+ * sysdeps/unix/sysv/linux/i386/bits/fcntl.h: Likewise.
-+ * sysdeps/unix/sysv/linux/x86_64/bits/fcntl.h: Likewise.
-+ * sysdeps/unix/sysv/linux/s390/bits/fcntl.h: Likewise.
-+ * sysdeps/unix/sysv/linux/sparc/bits/fcntl.h: Likewise.
-+ * sysdeps/unix/sysv/linux/sh/bits/fcntl.h: Likewise.
-+ * sysdeps/unix/sysv/linux/ia64/bits/fcntl.h: Likewise
-+
-+2010-06-14 Roland McGrath <roland at redhat.com>
-+
-+ * manual/libc.texinfo (@copying): Change to GFDL v1.3.
-+
-+2010-06-07 Jakub Jelinek <jakub at redhat.com>
-+
-+ * libio/stdio.h (sscanf, vsscanf): Use __REDIRECT_NTH instead of
-+ __REDIRECT followed by __THROW.
-+ * wcsmbs/wchar.h (swscanf, vswscanf): Likewise.
-+ * posix/getopt.h (getopt): Likewise.
-+
-+2010-06-02 Emilio Pozuelo Monfort <pochu27 at gmail.com>
-+
-+ * hurd/lookup-at.c (__file_name_lookup_at): Accept
-+ AT_SYMLINK_FOLLOW in AT_FLAGS. Fail with EINVAL if both
-+ AT_SYMLINK_FOLLOW and AT_SYMLINK_NOFOLLOW are present
-+ in AT_FLAGS.
-+ * hurd/hurd/fd.h (__file_name_lookup_at): Update comment.
-+ * sysdeps/mach/hurd/linkat.c (linkat): Pass O_NOLINK in FLAGS.
-+
-+2010-05-28 Luis Machado <luisgpm at br.ibm.com>
-+
-+ * sysdeps/powerpc/powerpc32/power7/memcpy.S: Exchange srdi for srwi.
-+
-+2010-05-26 H.J. Lu <hongjiu.lu at intel.com>
-+
-+ [BZ #11640]
-+ * sysdeps/x86_64/multiarch/init-arch.c (__init_cpu_features):
-+ Properly check family and model.
-+
-+2010-05-26 Takashi Yoshii <takashi.yoshii.zj at renesas.com>
-+
-+ * sysdeps/unix/sysv/linux/sh/sh4/register-dump.h: Fix iov[] size.
-+
-+2010-05-24 Luis Machado <luisgpm at br.ibm.com>
-+
-+ * sysdeps/powerpc/powerpc32/power7/memset.S: POWER7 32-bit memset fix.
-+
-+2010-05-21 Ulrich Drepper <drepper at redhat.com>
-+
-+ * elf/dl-runtime.c (_dl_profile_fixup): Don't crash on unresolved weak
-+ symbol reference.
-+
-+2010-05-19 Andreas Schwab <schwab at redhat.com>
-+
-+ * elf/dl-runtime.c (_dl_fixup): Don't crash on unresolved weak
-+ symbol reference.
-+
-+2010-05-21 Andreas Schwab <schwab at redhat.com>
-+
-+ * sysdeps/unix/sysv/linux/Makefile (sysdep_routines): Add recvmmsg
-+ and internal_recvmmsg.
-+ * sysdeps/unix/sysv/linux/recvmmsg.c: New file.
-+ * sysdeps/unix/sysv/linux/internal_recvmmsg.S: New file.
-+ * sysdeps/unix/sysv/linux/socketcall.h (SOCKOP_recvmmsg): Define.
-+ * sysdeps/unix/sysv/linux/syscalls.list (recvmmsg): Remove.
-+
-+ * sunrpc/clnt_tcp.c (clnttcp_control): Add missing break.
-+ * sunrpc/clnt_udp.c (clntudp_control): Likewise.
-+ * sunrpc/clnt_unix.c (clntunix_control): Likewise.
-+
-+2010-05-20 Andreas Schwab <schwab at redhat.com>
-+
-+ * sysdeps/unix/sysv/linux/sys/timex.h: Use __REDIRECT_NTH.
-+
-+2010-05-17 Luis Machado <luisgpm at br.ibm.com>
-+
-+ POWER7 optimizations.
-+ * sysdeps/powerpc/powerpc64/power7/memset.S: New file.
-+ * sysdeps/powerpc/powerpc32/power7/memset.S: New file.
-+
-+2010-05-19 Ulrich Drepper <drepper at redhat.com>
-+
-+ * version.h: Update for 2.13 development version.
-+
-+2010-05-12 Andrew Stubbs <ams at codesourcery.com>
-+
-+ * sysdeps/sh/sh4/fpu/feholdexcpt.c (feholdexcept): Really disable all
-+ exceptions. Return 0.
-+
-+2010-05-07 Roland McGrath <roland at redhat.com>
-+
-+ * elf/ldconfig.c (main): Add a const.
-+
-+2010-05-06 Ulrich Drepper <drepper at redhat.com>
-+
-+ * nss/getent.c (idn_flags): Default to AI_IDN|AI_CANONIDN.
-+ (args_options): Add no-idn option.
-+ (ahosts_keys_int): Add idn_flags to ai_flags.
-+ (parse_option): Handle 'i' option to clear idn_flags.
-+
-+ * malloc/malloc.c (_int_free): Possible race in the most recently
-+ added check. Only act on the data if no current modification
-+ happened.
-+
-+See ChangeLog.17 for earlier changes.
-diff -Nup a/Makeconfig b/Makeconfig
---- a/Makeconfig 2012-01-01 05:16:32.000000000 -0700
-+++ b/Makeconfig 2012-01-01 13:08:53.291715873 -0700
-@@ -803,12 +803,12 @@ endif
- # The assembler can generate debug information too.
- ifndef ASFLAGS
- ifeq ($(have-cpp-asm-debuginfo),yes)
--ASFLAGS := $(filter -g% -fdebug-prefix-map=%,$(CFLAGS))
-+ASFLAGS = $(filter -g% -fdebug-prefix-map=%,$(CFLAGS))
- else
--ASFLAGS :=
-+ASFLAGS =
- endif
- endif
--ASFLAGS += $(ASFLAGS-config) $(asflags-cpu)
-+ASFLAGS += $(ASFLAGS-config) $(asflags-cpu) $(sysdep-ASFLAGS)
-
- ifndef BUILD_CC
- BUILD_CC = $(CC)
-diff -Nup a/NEWS b/NEWS
---- a/NEWS 2012-01-01 05:16:32.000000000 -0700
-+++ b/NEWS 2012-01-01 13:08:53.292715874 -0700
-@@ -84,16 +84,6 @@ Version 2.14
- 12724, 12734, 12738, 12746, 12766, 12775, 12777, 12782, 12788, 12792,
- 12795, 12811, 12813, 12814, 12841
-
--* The RPC implementation in libc is obsoleted. Old programs keep working
-- but new programs cannot be linked with the routines in libc anymore.
-- Programs in need of RPC functionality must be linked against TI-RPC.
-- The TI-RPC implementation is IPv6 enabled and there are other benefits.
--
-- Visible changes of this change include (obviously) the inability to link
-- programs using RPC functions without referencing the TI-RPC library and the
-- removal of the RPC headers from the glibc headers.
-- Implemented by Ulrich Drepper.
--
- * New Linux interfaces: clock_adjtime, name_to_handle_at, open_by_handle_at,
- syncfs, setns, sendmmsg
-
-diff -Nup a/NEWS.orig b/NEWS.orig
---- a/NEWS.orig 1969-12-31 17:00:00.000000000 -0700
-+++ b/NEWS.orig 2012-01-01 05:16:32.000000000 -0700
-@@ -0,0 +1,2048 @@
-+GNU C Library NEWS -- history of user-visible changes. 2011-12-23
-+Copyright (C) 1992-2009, 2010, 2011 Free Software Foundation, Inc.
-+See the end for copying conditions.
-+
-+Please send GNU C library bug reports via <http://sources.redhat.com/bugzilla/>
-+using `glibc' in the "product" field.
-+
-+Version 2.15
-+
-+* The following bugs are resolved with this release:
-+
-+ 6779, 6783, 9696, 10103, 10709, 11589, 12403, 12786, 12840, 12847, 12868,
-+ 12852, 12874, 12885, 12892, 12906, 12907, 12922, 12935, 12962, 13007,
-+ 13021, 13061, 13062, 13067, 13068, 13085, 13088, 13090, 13092, 13096,
-+ 13114, 13118, 13123, 13134, 13138, 13147, 13150, 13166, 13179, 13185,
-+ 13189, 13192, 13268, 13276, 13282, 13291, 13305, 13328, 13335, 13337,
-+ 13344, 13358, 13367, 13413, 13416, 13423, 13439, 13446, 13472, 13484,
-+ 13506, 13515, 13523, 13524, 13538, 13540
-+
-+* New program pldd to list loaded object of a process
-+ Implemented by Ulrich Drepper.
-+
-+* Add nss_db support back to glibc. No more dependency on Berkeley db
-+ and support for initgroups lookups.
-+ Implemented by Ulrich Drepper.
-+
-+* Optimized strcpy, strncpy, stpcpy, stpncpy for SSE2 and SSSE3 on x86-32.
-+ Contributed by HJ Lu.
-+
-+* Improved strcpy, strncpy, stpcpy, stpncpy for SSE2 and SSSE3 on x86-64.
-+ Contributed by HJ Lu.
-+
-+* Optimized strcat, strncat on x86-64 and optimized wcscmp, wcslen, strnlen
-+ on x86-32 and x86-64.
-+ Contributed by Liubov Dmitrieva.
-+
-+* Optimized strchr and strrchr for SSE on x86-32.
-+ Contributed by Liubov Dmitrieva.
-+
-+* Optimized memchr, memrchr, rawmemchr, memcmp, wmemcmp, wcschr, wcscpy
-+ for x86-64 and x86-32.
-+ Contributed by Liubov Dmitrieva.
-+
-+* New interfaces: scandirat, scandirat64
-+ Implemented by Ulrich Drepper.
-+
-+* Checking versions of FD_SET, FD_CLR, and FD_ISSET added.
-+ Implemented by Ulrich Drepper.
-+
-+* nscd now also caches the netgroup database.
-+ Implemented by Ulrich Drepper.
-+
-+* Integrate libm with gcc's -ffinite-math-only option.
-+ Implemented by Ulrich Drepper.
-+
-+* Lots of generic, 64-bit, and x86-64-specific performance optimizations
-+ to math functions. Implemented by Ulrich Drepper.
-+
-+* Optimized strcasecmp and strncasecmp for AVX on x86-64.
-+ Implemented by Ulrich Drepper.
-+
-+* New Linux interfaces: process_vm_readv, process_vm_writev
-+
-+* Optimized strcasecmp and strncasecmp for SSSE3 and SSE4.2 on x86-32.
-+ Implemented by Ulrich Drepper.
-+
-+* Optimized nearbyint and strcasecmp for PPC.
-+ Implemented by Adhemerval Zanella.
-+
-+* New locales: bho_IN, unm_US, es_CU, ta_LK
-+
-+Version 2.14
-+
-+* The following bugs are resolved with this release:
-+
-+ 386, 6420, 7101, 9730, 9732, 9809, 10138, 10149, 10157, 11099, 11257,
-+ 11258, 11487, 11532, 11558, 11578, 11634, 11653, 11668, 11697, 11724,
-+ 11781, 11799, 11820, 11837, 11857, 11869, 11892, 11895, 11901, 11945,
-+ 11947, 11952, 11987, 12052, 12083, 12158, 12178, 12200, 12346, 12350,
-+ 12393, 12420, 12432, 12445, 12449, 12453, 12454, 12460, 12469, 12489,
-+ 12509, 12510, 12511, 12518, 12527, 12541, 12545, 12551, 12582, 12583,
-+ 12587, 12597, 12601, 12611, 12625, 12626, 12631, 12650, 12653, 12655,
-+ 12660, 12671, 12681, 12684, 12685, 12711, 12713, 12714, 12717, 12723,
-+ 12724, 12734, 12738, 12746, 12766, 12775, 12777, 12782, 12788, 12792,
-+ 12795, 12811, 12813, 12814, 12841
-+
-+* The RPC implementation in libc is obsoleted. Old programs keep working
-+ but new programs cannot be linked with the routines in libc anymore.
-+ Programs in need of RPC functionality must be linked against TI-RPC.
-+ The TI-RPC implementation is IPv6 enabled and there are other benefits.
-+
-+ Visible changes of this change include (obviously) the inability to link
-+ programs using RPC functions without referencing the TI-RPC library and the
-+ removal of the RPC headers from the glibc headers.
-+ Implemented by Ulrich Drepper.
-+
-+* New Linux interfaces: clock_adjtime, name_to_handle_at, open_by_handle_at,
-+ syncfs, setns, sendmmsg
-+
-+* New locales: os_RU, bem_ZA, en_ZA, ff_SN, sw_KE, sw_TZ, lb_LU, wae_CH,
-+ yue_HK, lij_IT, mhr_RU
-+
-+* New encodings: CP770, CP771, CP772, CP773, CP774
-+
-+* New program sotruss to trace calls through PLTs
-+ Implemented by Ulrich Drepper.
-+
-+* The malloc hook implementation is marked deprecated and will be removed
-+ from the default implementation in the next version. The design never
-+ worked ever since the introduction of threads. Even programs which do
-+ not create threads themselves can use multiple threads created internally.
-+
-+Version 2.13
-+
-+* The following bugs are resolved with this release:
-+
-+ 3268, 6812, 7066, 10085, 10484, 10563, 10851, 11149, 11155, 11577, 11611,
-+ 11640, 11655, 11701, 11840, 11856, 11883, 11903, 11904, 11968, 11979,
-+ 12005, 12037, 12067, 12077, 12078, 12092, 12093, 12107, 12108, 12113,
-+ 12140, 12159, 12167, 12191, 12194, 12201, 12204, 12205, 12207, 12348,
-+ 12378, 12394, 12397
-+
-+* New Linux interfaces: prlimit, prlimit64, fanotify_init, fanotify_mark
-+
-+* POWER7 optimizations: memset, memcmp, strncmp
-+
-+* New optimized string functions for x86-64: strnlen (SSE2),
-+ strcasecmp (SSE2, SSSE3, SSE4.2), strncasecmp (SSE2, SSSE3, SSE4.2)
-+ Implemented by Ulrich Drepper.
-+
-+Version 2.12
-+
-+* The following bugs are resolved with this release:
-+
-+ 3662, 4457, 5553, 10162, 10401, 10414, 10554, 10824, 10864, 10915, 10918,
-+ 10936, 10939, 10958, 10968, 10969, 10972, 10992, 11000, 11001, 11007,
-+ 11010, 11027, 11039, 11040, 11041, 11043, 11046, 11056, 11070, 11093,
-+ 11115, 11120, 11125, 11126, 11127, 11134, 11141, 11149, 11183, 11184,
-+ 11185, 11186, 11187, 11188, 11189, 11190, 11191, 11192, 11193, 11194,
-+ 11200, 11230, 11235, 11242, 11254, 11258, 11271, 11272, 11276, 11279,
-+ 11287, 11292, 11319, 11332, 11333, 11387, 11389, 11390, 11394, 11397,
-+ 11410, 11438, 11449, 11470, 11471, 11520, 11537, 11538, 11571
-+
-+* New interfaces: pthread_getname_np, pthread_setname_np
-+
-+* New Linux interface: recvmmsg
-+
-+* STT_GNU_IFUNC implemented for Sparc by David Miller.
-+
-+* The dynamic linker now recognizes supported ABI versions from the
-+ EI_ABIVERSION field in the ELF header.
-+ Implemented by Ulrich Drepper.
-+
-+* New NIS mode selector ADJUNCT_AS_SHADOW. The passwd.adjunct.byname table
-+ will not be used to fill in password fields in the passwd.byname replies.
-+ Instead it is used to synthesize the shadow.byname table, should it be
-+ missing. This is a useful mode in some installations involving Solaris.
-+ Implemented by Ulrich Drepper.
-+
-+* New locales: kok_IN, sq_MK, cv_RU
-+
-+Version 2.11
-+
-+* The following bugs are resolved with this release:
-+
-+ 3270, 7094, 9924, 9986, 10011, 10085, 10107, 10159, 10162, 10166, 10183,
-+ 10195, 10196, 10200, 10203, 10207, 10211, 10213, 10217, 10221, 10229,
-+ 10262, 10286, 10312, 10315, 10319, 10349, 10360, 10391, 10402, 10416,
-+ 10418, 10422, 10425, 10446, 10448, 10452, 10540, 10553, 10560, 10564,
-+ 10609, 10643, 10692, 10713, 10717, 10730, 10731, 10742, 10780, 10784,
-+ 10789, 10817, 10823, 10840, 10847
-+
-+* New interfaces: execvpe, pthread_sigqueue, mkstemps, mkstemps64, mkostemps,
-+ mkostemps64
-+ Implemented by Ulrich Drepper.
-+
-+* Checking version of longjmp added that fails if an uninitialized stack
-+ frame would be created. Implemented by Ulrich Drepper.
-+
-+* STT_GNU_IFUNC is now supported in static executables.
-+ Implemented by H.J. Lu.
-+
-+* STT_GNU_IFUNC implemented for PPC by Alan Modra.
-+
-+* New optimized string functions for x86-64: strstr, strcasestr, memcmp,
-+ strcspn, strpbrk, strspn, strcpy, stpcpy, strncpy, strcmp (SSE2, SSE4.2),
-+ strncmp (SSE2, SSE4.2), strchr (SSE4.2), strrchr (SSE4.2).
-+ Contributed by H.J. Lu.
-+
-+ strlen, rawmemchr, strcmp (SSSE3), strncmp (SSSE3).
-+ Implemented by Ulrich Drepper.
-+
-+* New optimized string functions for x86: strlen, strcspn, strspn, strpbrk,
-+ strstr, strcasestr.
-+ Contributed by H.J. Lu.
-+
-+* Support for fma instruction in AVX on x86-64.
-+ Implemented by H.J. Lu and Ulrich Drepper.
-+
-+* AVX support in x86-64 auditing support in ld.so.
-+ Implemented by H.J. Lu.
-+
-+* STB_GNU_UNIQUE support added.
-+ Implemented by Ulrich Drepper.
-+
-+* Implement second fallback mode for optimized DNS lookup for even more
-+ broken environments. If two requests from the same port are not
-+ handled correctly close the socket and open a new one before sending
-+ the second request. The 'single-request-reopen' option in /etc/resolv.conf
-+ can be used to select this mode right away, instead of rediscovering the
-+ necessity is every process again.
-+ Implemented by Ulrich Drepper.
-+
-+* New resolver flag RES_USE_DNSSEC to enable use of verified lookup.
-+ Implemented by Adam Tkac.
-+
-+* Optimized iconv conversions for S390x.
-+ Implemented by Andreas Krebbel.
-+
-+* Using condvars with PI mutexes is now more efficient due to kernel
-+ support for requeueing to PI futexes. NPTL support added for x86-64.
-+ Implemented by Ulrich Drepper.
-+
-+* New locales: ps_AF, my_MM
-+
-+Version 2.10
-+
-+* The following bugs are resolved with this release:
-+
-+ 697, 5381, 5807, 6411, 6545, 7040, 7058, 7067, 7080, 7083, 7095, 7098,
-+ 9677, 9694, 9697, 9701, 9704, 9705, 9706, 9720, 9726, 9730, 9733, 9736,
-+ 9741, 9750, 9753, 9759, 9781, 9791, 9793, 9823, 9833, 9844, 9880, 9881,
-+ 9891, 9893, 9895, 9913, 9916, 9920, 9948, 9955, 9957, 9963, 9985, 10052,
-+ 10069, 10086, 10087, 10090, 10092, 10093, 10100, 10118, 10128
-+
-+* New interfaces: preadv, preadv64, pwritev, pwritev64, malloc_info
-+ Implemented by Ulrich Drepper.
-+
-+* New Linux interfaces: accept4, fallocate, fallocate64.
-+ Implemented by Ulrich Drepper.
-+
-+* Correct declarations of string function when used in C++ code. This
-+ could lead to compile errors for invalid C++ code.
-+
-+* XPG7/POSIX 2008 compilation environment. Many GNU-specific functions are
-+ now in POSIX.
-+
-+* New POSIX 2008 interface: psiginfo
-+ Implemented by Ulrich Drepper.
-+
-+* New ISO C++1x interfaces: quick_exit, at_quick_exit
-+ Implemented by Ulrich Drepper.
-+
-+* Support for selecting between multiple function definitions at runtime
-+ using STT_GNU_IFUNC symbols. Implemented by Ulrich Drepper.
-+
-+* The libcrypt library can now use the hash function implementations in
-+ NSS. Implemented by Ulrich Drepper.
-+
-+* The malloc implementation can be compiled to be less memory efficient
-+ but higher performing in multi-threaded programs.
-+ Implemented by Ulrich Drepper.
-+
-+* New locales: nan_TW at latin, ks_IN
-+
-+* Faster strlen, strchr, strchrnul, strrchr, memchr, and rawmemchr for x86-64.
-+ Implemented by Ulrich Drepper.
-+
-+* Extended printf hook support. It is possible to use user-defined types
-+ and extend existing format specifiers.
-+ Implemented by Ulrich Drepper.
-+
-+* Handling for group shadow files has been added.
-+ Implemented by Ulrich Drepper.
-+
-+* DNS IPv4-IPv6 parallel lookup now deals better with broken DNS
-+ servers (the case, e.g., for some people using the built-in DNS
-+ server in ADSL modems/routers). There is a once-per-process timeout
-+ in case of a broken server. To avoid it, users can run nscd or put
-+ 'options single-request' in /etc/resolv.conf.
-+ Implemented by Ulrich Drepper.
-+
-+Version 2.9
-+
-+* The following bugs are resolved with this release:
-+
-+ 3406, 5209, 5210, 5381, 5794, 5814, 5911, 6428, 6438, 6442, 6447, 6461,
-+ 6472, 6505, 6544, 6589, 6612, 6634, 6653, 6654, 6657, 6698, 6712, 6713,
-+ 6719, 6723, 6724, 6740, 6763, 6771, 6790, 6791, 6817, 6824, 6839, 6843,
-+ 6845, 6856, 6857, 6860, 6867, 6875, 6919, 6920, 6942, 6947, 6955, 6966,
-+ 6968, 6974, 6980, 6995, 7008, 7009, 7029
-+
-+* Unified lookup for getaddrinfo: IPv4 and IPv6 addresses are now looked
-+ up at the same time. Implemented by Ulrich Drepper.
-+
-+* TLS descriptors for LD and GD on x86 and x86-64.
-+ Implemented by Alexandre Oliva.
-+
-+* getaddrinfo now handles DCCP and UDPlite.
-+ Implemented by Ulrich Drepper.
-+
-+* New fixed-size conversion macros: htobe16, htole16, be16toh, le16toh,
-+ htobe32, htole32, be32toh, le32toh, htobe64, htole64, be64toh, le64toh.
-+ Implemented by Ulrich Drepper.
-+
-+* New implementation of memmem, strstr, and strcasestr which is O(n).
-+ Implemented by Eric Blake.
-+
-+* New Linux interfaces: inotify_init1, dup3, epoll_create1, pipe2
-+
-+* Implement "e" option for popen to open file descriptor with the
-+ close-on-exec flag set. Implemented by Ulrich Drepper.
-+
-+* Implement "b" mode for fmemopen. In this mode writes writes don't
-+ implicitly add a NUL byte and seeks from the end of the buffer really
-+ use the buffer end, not the string length as the basis.
-+ Implemented by Ulrich Drepper.
-+
-+* Many functions, exported and internal, now atomically set the close-on-exec
-+ flag when run on a sufficiently new kernel. Implemented by Ulrich Drepper.
-+
-+* Sorting rules for some Indian languages (Kannada, Gurumukhi, Telugu,
-+ Sinhala)
-+ Implemented by Pravin Satpute.
-+
-+* New locales: sd_IN, sd_IN at devanagari, ks_IN at devanagari, ht_HT, en_AG, nl_AW.
-+
-+Version 2.8
-+
-+* The following bugs are resolved with this release:
-+
-+ 2549, 3112, 4314, 4407, 4997, 5012, 5040, 5112, 5204, 5208, 5209, 5220,
-+ 5222, 5224, 5225, 5237, 5238, 5240, 5245, 5277, 5346, 5375, 5378, 5382,
-+ 5424, 5427, 5428, 5435, 5436, 5439, 5441, 5442, 5443, 5451, 5452, 5454,
-+ 5455, 5463, 5464, 5465, 5475, 5477, 5478, 5520, 5541, 5545, 5553, 5600,
-+ 5602, 5607, 5614, 5627, 5628, 5736, 5737, 5741, 5753, 5760, 5762, 5768,
-+ 5774, 5777, 5778, 5779, 5786, 5790, 5818, 5854, 5857, 5903, 5939, 5979,
-+ 5983, 5995, 5998, 6004, 6007, 6020, 6021, 6024, 6040, 6042
-+
-+* New locales: bo_CN, bo_IN, shs_CA.
-+
-+* New encoding: HP-ROMAN9, HP-GREEK8, HP-THAI8, HP-TURKISH8.
-+
-+* Sorting rules for some Indian languages (Devanagari and Gujarati).
-+ Implemented by Pravin Satpute.
-+
-+* IPV6 addresses in /etc/resolv.conf can now have a scope ID
-+
-+* nscd caches now all timeouts for DNS entries
-+ Implemented by Ulrich Drepper.
-+
-+* nscd is more efficient and wakes up less often.
-+ Implemented by Ulrich Drepper.
-+
-+* More checking functions: asprintf, dprintf, obstack_printf, vasprintf,
-+ vdprintf, and obstack_vprintf.
-+ Implemented by Jakub Jelinek.
-+
-+* Faster memset for x86-64.
-+ Implemented by Harsha Jagasia and H.J. Lu.
-+
-+* Faster memcpy on x86.
-+ Implemented by Ulrich Drepper.
-+
-+* ARG_MAX is not anymore constant on Linux. Use sysconf(_SC_ARG_MAX).
-+ Implemented by Ulrich Drepper.
-+
-+* Faster sqrt and sqrtf implemention for some PPC variants.
-+ Implemented by Stephen Munroe.
-+
-+Version 2.7
-+
-+* The following bugs are resolved with this release:
-+
-+ 4125, 4126, 4178, 4359, 4407, 4512, 4514, 4525, 4554, 4556, 4557, 4566,
-+ 4582, 4586, 4588, 4599, 4610, 4647, 4702, 4705, 4726, 4745, 4772, 4773,
-+ 4775, 4776, 4792, 4813, 4814, 4816, 4833, 4858, 4860, 4896, 4905, 4925,
-+ 4936, 4937, 4938, 4941, 4946, 4963, 4972, 5010, 5028, 5043, 5058, 5063,
-+ 5071, 5103, 5104, 5112, 5113, 5184, 5186
-+
-+* More checking functions: fread, fread_unlocked, open*, mq_open.
-+ Implemented by Jakub Jelinek and Ulrich Drepper.
-+
-+* Extend fortification to C++. Implemented by Jakub Jelinek.
-+
-+* Implement 'm' modifier for scanf. Add stricter C99/SUS compliance
-+ by not recognizing 'a' as a modifier when those specs are requested.
-+ Implemented by Jakub Jelinek.
-+
-+* PPC optimizations to math and string functions.
-+ Implemented by Steven Munroe.
-+
-+* New interfaces: mkostemp, mkostemp64. Like mkstemp* but allow additional
-+ options to be passed. Implemented by Ulrich Drepper.
-+
-+* More CPU set manipulation functions. Implemented by Ulrich Drepper.
-+
-+* New Linux interfaces: signalfd, eventfd, eventfd_read, and eventfd_write.
-+ Implemented by Ulrich Drepper.
-+
-+* Handle private futexes in the NPTL implementation.
-+ Implemented by Jakub Jelinek and Ulrich Drepper.
-+
-+* Add support for O_CLOEXEC. Implement in Hurd. Use throughout libc.
-+ Implemented by Roland McGrath and Ulrich Drepper.
-+
-+* Linux/x86-64 vDSO support. Implemented by Ulrich Drepper.
-+
-+* SHA-256 and SHA-512 based password encryption.
-+ Implemented by Ulrich Drepper.
-+
-+* New locales: ber_DZ, ber_MA, en_NG, fil_PH, fur_IT, fy_DE, ha_NG, ig_NG,
-+ ik_CA, iu_CA, li_BE, li_NL, nds_DE, nds_NL, pap_AN, sc_IT, tk_TM, ug_CN,
-+ yo_NG.
-+
-++ New iconv modules: MAC-CENTRALEUROPE, ISO-8859-9E, KOI8-RU.
-+ Implemented by Ulrich Drepper.
-+
-+Version 2.6
-+
-+* The following bugs are resolved with this release:
-+
-+ 3156, 3213, 3285, 3291, 3306, 3313, 3320, 3322, 3325, 3326, 3334, 3348,
-+ 3352, 3363, 3369, 3426, 3427, 3429, 3451, 3458, 3465, 3480, 3483, 3493,
-+ 3514, 3515, 3559, 3632, 3664, 3673, 3674, 3745, 3747, 3818, 3840, 3842,
-+ 3851, 3855, 3884, 3885, 3902, 3905, 3919, 3944, 3954, 3955, 3957, 3991,
-+ 3995, 3996, 4024, 4040, 4069, 4070, 4074, 4076, 4096, 4101, 4102, 4114,
-+ 4130, 4131, 4181, 4276, 4306, 4342, 4344, 4349, 4364, 4368, 4381, 4392,
-+ 4403, 4405, 4406, 4411, 4438, 4439, 4455, 4456, 4465, 4512, 4514, 4586,
-+ 4702, 4858
-+
-+* New Linux interfaces: epoll_pwait, sched_getcpu.
-+
-+* New generic interfaces: strerror_l.
-+
-+* nscd can now cache the services database. Implemented by Ulrich Drepper.
-+
-+Version 2.5
-+
-+* The following bugs are resolved with this release:
-+
-+ 39, 68, 192, 352, 388, 531, 935, 1006, 1201, 1203, 1386, 1782, 1783, 1784,
-+ 1785, 1786, 1787, 1951, 1974, 1996, 2072, 2098, 2125, 2134, 2158, 2182,
-+ 2349, 2376, 2386, 2389, 2415, 2418, 2420, 2423, 2450, 2451, 2466, 2472,
-+ 2473, 2477, 2498, 2499, 2501, 2502, 2505, 2507, 2508, 2509, 2517, 2526,
-+ 2569, 2571, 2592, 2611, 2625, 2632, 2644, 2662, 2680, 2683, 2684, 2693,
-+ 2695, 2703, 2734, 2751, 2764, 2766, 2775, 2792, 2821, 2823, 2832, 2841,
-+ 2843, 2883, 2892, 2908, 2914, 2926, 2961, 2978, 2980, 2987, 2997, 2998,
-+ 3013, 3018, 3034, 3040, 3044, 3123, 3124, 3137, 3138, 3143, 3155, 3189,
-+ 3225, 3251, 3252, 3253, 3273
-+
-+* For Linux, the sorting of addresses returned by getaddrinfo now also
-+ handles rules 3, 4, and 7 from RFC 3484. I.e., all rules are handled.
-+ Implemented by Ulrich Drepper.
-+
-+* Allow system admin to configure getaddrinfo with the /etc/gai.conf file.
-+ Implemented by Ulrich Drepper.
-+
-+* New Linux interfaces: splice, tee, sync_file_range, vmsplice.
-+
-+* New iconv module for MIK. Contributed by Alexander Shopov.
-+
-+* For sites with broken group and/or passwd database, the auto-propagate
-+ option of nscd can prevent creating ID lookup entries from the results
-+ of a name lookup and vice versa. This usually is no problem but some
-+ site might have problems with the default behavior.
-+ Implemented by Ulrich Drepper.
-+
-+* Iterating over entire database in NIS can be slow. With the
-+ SETENT_BATCH_READ option in /etc/default/nss a system admin can decide
-+ to trade time for memory. The entire database will be read at once.
-+ Implemented by Ulrich Drepper.
-+
-+* The interfaces introduced in RFC 3542 have been implemented by
-+ Ulrich Drepper.
-+
-+* Support for the new ELF hash table format was added by Ulrich Drepper.
-+
-+* Support for priority inheritance mutexes added by Jakub Jelinek and
-+ Ulrich Drepper.
-+
-+* Support for priority protected mutexes added by Jakub Jelinek.
-+
-+* New locales: nr_ZA, pa_PK, ca_AD, ca_FR, ca_IT, el_CY, tr_CY, as_IN,
-+ or_IN, csb_PL, fy_NL, sr_ME.
-+
-+Version 2.4
-+
-+* More overflow detection functions.
-+
-+* New iconv converters for IBM1025, IBM1122, IBM1137, IBM1153,
-+ IBM1154, IBM1155, IBM1156, IBM1157, and IBM1158 contributed by Jiro Sekiba.
-+
-+ More converters for IBM803, IBM901, IBM902, IBM921, IBM1008, IBM1097,
-+ IBM1112, IBM1123, IBM1130, IBM1140, IBM1141, IBM1142, IBM1143, IBM1144,
-+ IBM1145, IBM1146, IBM1147, IBM1148, IBM1149, IBM1166, IBM1167, IBM4517,
-+ IBM4899, IBM4909, IBM4971, IBM5347, IBM9030, IBM9066, IBM9448, IBM12712,
-+ IBM16804, IBM1364, IBM1371, IBM1388, IBM1390, and IBM1399 contributed
-+ by Masahide Washizawa.
-+
-+* It is now possible to install audit libraries for the dynamic linker using
-+ LD_AUDIT. Implemented by Ulrich Drepper.
-+
-+* The LinuxThreads add-on, providing pthreads on Linux 2.4 kernels, is no
-+ longer supported. The new NPTL implementation requires Linux 2.6 kernels.
-+ For a libc and libpthread that works well on Linux 2.4 kernels, we
-+ recommend using the stable 2.3 branch.
-+
-+* The new function open_wmemstream acts like open_memstream,
-+ but uses a wchar_t wide character buffer.
-+
-+* The new function ppoll is an improved version of poll, similar to pselect.
-+
-+* New interfaces: fdopendir, openat, fstatat, fchmodat, fchownat,
-+ futimesat, faccessat, mkdirat, mkfifoat, mknodat,
-+ renameat, unlinkat, linkat, symlinkat, readlinkat.
-+
-+* New Linux kernel system calls: unshare,
-+ inotify_init, inotify_add_watch, inotify_rm_watch.
-+
-+* The euidaccess function is now also known by the alias eaccess,
-+ for compatibility with some other systems.
-+
-+* Timezone data updated to 2006b version.
-+
-+Version 2.3.6
-+
-+* The following bugs are resolved with this release:
-+
-+ 38, 253, 549, 622, 653, 721, 758, 851, 877, 915, 934, 955, 961,
-+ 1016, 1037, 1076, 1079, 1080, 1081, 1082, 1083, 1084, 1085, 1086,
-+ 1087, 1088, 1090, 1091, 1092, 1093, 1094, 1095, 1096, 1097, 1098,
-+ 1099, 1100, 1101, 1102, 1103, 1104, 1105, 1106, 1107, 1108, 1109,
-+ 1110, 1111, 1112, 1113, 1125, 1137, 1138, 1249, 1250, 1251, 1252,
-+ 1253, 1254, 1350, 1358, 1394, 1438, 1498, 1534
-+
-+ Visit <http://sources.redhat.com/bugzilla/> for the details of each bug.
-+
-+* As of this release, GCC 4 can be used to compile the C Library.
-+
-+* Timezone data updated to 2005m version.
-+
-+Version 2.3.5
-+
-+* The following bugs are resolved with this release:
-+
-+ 284, 592, 602, 626, 633, 640, 650, 661, 671, 681, 693, 700, 710, 719,
-+ 722, 723, 725, 726, 727, 728, 729, 730, 731, 732, 733, 734, 735, 736,
-+ 737, 738, 739, 740, 741, 742, 743, 744, 745, 765, 767, 768, 769, 776,
-+ 777, 787, 821, 822, 823, 825
-+
-+ Visit <http://sources.redhat.com/bugzilla/> for the details of each bug.
-+
-+Version 2.3.4
-+
-+* Support for RFC 3678. Real implementations exist only for Linux so far.
-+ Implemented by Ulrich Drepper.
-+
-+* nscd can now cache entries persistently. Expiring entries are reloaded.
-+ For speedups the cache can be shared in memory with client processes.
-+ Implemented by Ulrich Drepper.
-+
-+* nscd can now perform SELinux checks.
-+ Implemented by Matthew Rickard <mjricka at epoch.ncsc.mil>.
-+
-+* getaddrinfo queries are now cached. Canonical name lookup is performed
-+ efficiently.
-+ Implemented by Ulrich Drepper.
-+
-+* The nothrow function attribute is used when headers are used by gcc when
-+ compiling C code. This can avoid significant amounts of exception
-+ handling data.
-+
-+* The malloc functions perform more error checking and are stricter when
-+ it comes to reacting on errors. The default action is to terminate
-+ the process after showing an error message. Implemented by Ulrich Drepper.
-+
-+* Reverse lookups of IPv6 addresses does not use bit string or .ip6.int
-+ lookups anymore unless explicitly requested. Implemented by Ulrich Drepper.
-+
-+* Namespaces in ld.so are implemented. DSOs can be loaded in separate
-+ namespaces using the new function dlmopen(). This feature is of course,
-+ like most other dynamic loading functionality, not available in statically
-+ linked applications. Implemented by Ulrich Drepper.
-+
-+* Low-overhead boundary checking variants of string and some stdio functions
-+ were added. These are to be used in conjunction with a gcc patch by
-+ Jakub Jelinek which adds calls to these functions if possible.
-+ Implemented by Jakub Jelinek and Ulrich Drepper.
-+
-+* Old code for several operating systems and machine architectures that
-+ have not been in working condition in a long time have been removed from
-+ the main source tree maintained by the GNU C Library's maintainers.
-+ These files are now reside in the separate `ports' source module
-+ that is usable as an add-on when building the library.
-+
-+Version 2.3.3
-+
-+* New functions `dladdr1' and `dlinfo' in <dlfcn.h> provide more ways to
-+ interrogate the dynamic linker, compatible with the Solaris interface.
-+
-+* ELF thread-local storage support (TLS) now works on PowerPC and PowerPC64;
-+ implemented by Paul Mackerras, Steven Munroe, and Roland McGrath.
-+
-+* getifaddrs now uses the netlink interface on Linux to get its information.
-+ Implemented by Thorsten Kukuk.
-+
-+* getaddrinfo now implements AI_V4MAPPED, AI_ALL, and AI_ADDRCONF.
-+ Implemented by Ulrich Drepper.
-+
-+* support for non-executable stacks on x86 has been added. Changes mostly
-+ by Roland McGrath.
-+
-+* regex is now much faster for multibyte locales. Changes by Jakub Jelinek
-+ and Ulrich Drepper.
-+
-+* getaddrinfo now performs destination address selection according to
-+ RFC 3484.
-+
-+Version 2.3.2
-+
-+* Thread-safe interfaces for many functions that access locale data
-+ were added in version 2.3, but these features were omitted from NEWS.
-+ Many functions have variants with an `_l' suffix that take a `locale_t'
-+ object as a parameter rather than consulting the current locale.
-+ The new functions `newlocale', `duplocale', and `freelocale' in <locale.h>
-+ create and maintain `locale_t' objects. Additionally, the new function
-+ `uselocale' sets "the current locale" (as used by functions not so
-+ parameterized) set for an individual thread. These features were added
-+ in version 2.3, implemented by Ulrich Drepper and Roland McGrath.
-+
-+* The functions getresuid, getresgid, setresuid, and setresgid, which
-+ have long been available on Linux, are now declared in <unistd.h>
-+ and are now also available on the Hurd.
-+
-+* ELF thread-local storage support (TLS) now works on x86-64.
-+
-+* The new dynamic string token $LIB is expanded in shared library names.
-+ This normally expands to lib, but on some 64-bit platforms to lib64 instead.
-+
-+* Aldy Hernandez contributed complete software floating point support for
-+ PowerPC machines with no FPU.
-+
-+* fexecve is implemented on Linux.
-+
-+* The `btowc' function should work at least twice as fast due to
-+ specialized callbacks in the iconv modules. Implemented by Bruno Haible.
-+
-+* With approriate thread add-ons cancelable functions are now implemented
-+ in libc.so as well. No need to call the function in libpthread. This
-+ change allowed to finally disable the incorrect and expensive handling
-+ of weak definition in ld.so.
-+
-+* Yet more PLT entries in libc.so have been removed. We finally arrived
-+ at the bare minimum. Startup times improved appropriately.
-+
-+* Support for the new Linux/x86 system call interface was added. The
-+ AT_SYSINFO auxiliary vector entry is recognized and handled.
-+
-+Version 2.3
-+
-+* Masahide Washizawa contributed iconv modules for IBM1163 and IBM1164
-+ charsets.
-+
-+* iconv (the program and the interface) now accepts empty names (excluding
-+ options like //TRANSLIT) to mean "use charset of current locale".
-+
-+* localedef can now transliterate characters in strings which are not in
-+ the provided charmap. The information from the input locale is used.
-+
-+* Prelinking support was added for ELF targets. This requires additional
-+ tools and recent versions of the GNU binutils. Contributed by Jakub Jelinek.
-+
-+* Read-only stdio streams now use mmap to speed up operation by eliminating
-+ copying and buffer underflows. To use add 'm' to the mode string of
-+ the fopen/fdopen/freopen call. Implemented by Ulrich Drepper.
-+
-+* The malloc functions were completely rewritten by Wolfram Gloger based
-+ on Doug Lea's malloc-2.7.0.c.
-+
-+* Isamu Hasegawa contributed a completely new and POSIX-conformant
-+ implementation of regex.
-+
-+* Bruno Haible upgraded the iconv and locale implementation to support
-+ Unicode 3.2.
-+
-+* Contents of the LC_* and LANG environment variables in the CEN style are
-+ not recognized anymore. It never was used. Change by Ulrich Drepper.
-+
-+* The runtime (ld.so, libc, libpthread for Linux) now can handle the ELF
-+ thread-local storage (TLS) ABI on some platforms.
-+ Changes by Ulrich Drepper. SH support by Kaz Kojima.
-+
-+* Bruno Haible contributed iconv converters for ISO-2022-JP-3, SHIFT JIS-X0213,
-+ EUC-JISX0213, and TSCII.
-+
-+* New header <ifaddrs.h> with functions `getifaddrs' and `freeifaddrs':
-+ BSD-compatible interface for getting all network interface addresses.
-+ Implementation for IPv4 by Roland McGrath.
-+
-+* Loading of locale data is faster due to the introduction of a locale
-+ archive. Implemented by Roland McGrath and Ulrich Drepper.
-+
-+* Startup times are significantly reduced by not using exported functions
-+ inside the library itself. Changes by Jakub Jelinek, Roland McGrath,
-+ and Ulrich Drepper.
-+
-+* Steven Munroe contributed a port to PowerPC64/Linux.
-+
-+Version 2.2.6
-+
-+* The Hurd now uses the GNU libio implementation of stdio rather than the
-+ old GNU stdio implementation, and uses a new ABI (libc.so.0.3).
-+
-+* The Hurd on x86 now has the `ioperm' function and <sys/io.h> header file
-+ with the same behavior as the Linux system call of the same name.
-+
-+Version 2.2.5
-+
-+* Stephen Moshier implemented log2, log10, powl and cbrtl for the
-+ 128-bit long double format.
-+
-+* Masahide Washizawa contributed iconv modules for IBM1132, IBM1133, IBM1160,
-+ IBM1161, and IBM1162 charsets.
-+
-+* Andreas Jaeger contributed a port to x86-64/Linux.
-+
-+* Peter Bruin contributed a port to PowerPC/Hurd.
-+
-+* libc functions using I/O streams now can handle wide-oriented streams
-+ as well.
-+
-+* optimizations in the dynamic linker. Binaries created by recent binutils
-+ versions start up quicker due to reduced time spent on relocations.
-+
-+* Support for use of gcc3 added by Jakub Jelinek and HJ Lu.
-+
-+Version 2.2.4
-+
-+* Stephen Moshier implemented cosh, expm1, log1p, acos, sinh, tanh,
-+ asinh, atanh, j0 for the 128-bit long double format.
-+
-+* Bruno Haible updated all the code handling Unicode in some form to
-+ support Unicode 3.1.
-+
-+* Speed of regex for single-byte locales is back to previous levels.
-+ Patch by Isamu Hasegawa.
-+
-+* Alpha, SPARC, and IA-64 now also using floating stacks.
-+
-+* Startup time of internationalized applications greatly improved through
-+ iconv cache. Use iconvconfig to generate the cache file.
-+ Contributed by Ulrich Drepper.
-+
-+* The IA-64 specific part of ld.so was rewritten to eliminate some pretty
-+ severe performance problems. Patch by David Mosberger.
-+
-+* The Hurd port got a lot more functionality like AIO, various stdio
-+ extensions, etc. Mainly done by Roland McGrath.
-+
-+* mtrace can now lookup symbols in shared libraries.
-+
-+Version 2.2.3
-+
-+* Intel's IA-64 math library is largely integrated. It provides fast and
-+ accurate implementatations for most basic and standard math functions
-+ in float, double, and long double format.
-+
-+* Stephen Moshier implemented j0, j1, jn, y0, y1, yn, lgamma, erf, erfc,
-+ and asin for the 96-bit long double format and asin, log, tan for the
-+ 128-bit long double format.
-+
-+* The beginning of a last-bit accurate math library by IBM Haifa were added.
-+ The basic double functions exist today. Contributed by Abraham Ziv
-+ <ziv at il.ibm.com>, Moshe Olshansky <olshansk at il.ibm.com>, Ealan Henis
-+ <ealan at il.ibm.com>, and Anna Reitman <reitman at il.ibm.com>.
-+
-+* An asynchronous name lookup library was added. The interface is designed
-+ after POSIX AIO. The proposal was circulated beforehand to get comments.
-+ No negative ones came in. Implemented by Ulrich Drepper.
-+
-+* Port to S390/64bit contributed by Martin Schwidefsky
-+ <schwidefsky at de.ibm.com>.
-+
-+* David Mosberger <davidm at hpl.hp.com> implemented the setcontext family
-+ of functions for Linux/IA-64.
-+
-+* The RPC code is now thread safe. Threads can now use the same service
-+ of different services at the same time. Patch by Eric Norum
-+ <eric.norum at usask.ca> with some help by Ulrich Drepper.
-+
-+* Martin Schwidefsky <schwidefsky at de.ibm.com> implemented the setcontext
-+ family of functions for Linux/S390.
-+
-+* Ulrich Drepper <drepper at redhat.com> implemented the setcontext family
-+ of functions for Linux/x86.
-+
-+* Port to Linux/CRIS contributed by Axis Communications.
-+
-+Version 2.2.2
-+
-+* Lots of headers were cleaned up. Using the tool in the conform/ subdir
-+ we can now check for namespace violations and missing declarations. The
-+ result is that almost all headers are now Unix-compliant (as defined in
-+ the upcoming XPG6). The negative side is that some programs might need
-+ corrections, too, if they depend on the incorrect form of the headers in
-+ previous versions which defined too many symbols and included too many
-+ other headers.
-+
-+* regex now handles multibyte character sets correctly.
-+ Contributed by Isamu Hasegawa <isamu at yamato.ibm.com>.
-+
-+* iconv (the program) does now conform to the upcoming XPG6 and handles
-+ charmaps. Instead of the charset names the path of charmaps can be
-+ provided and the conversion happens based on this data.
-+ Contributed by Ulrich Drepper.
-+
-+* The locale program now provides detailed information about the installed
-+ locales. While
-+
-+ locale -a
-+
-+ only lists the names of the supported locales
-+
-+ locale -a --verbose
-+
-+ provides details such as country, language, and codeset name.
-+ Contributed by Ulrich Drepper.
-+
-+Version 2.2.1
-+
-+* The gencat program now parses the input file according to the charset
-+ selected by the LC_CTYPE category. This is important for stateful
-+ character sets. To make generating catalogs easier there is a way
-+ to overwrite the charset selected by the locale: before the first
-+ message or $ quote line the catalog can contain a line like
-+
-+ $ codeset=ISO-8859-2
-+
-+ to select the charset (ISO-8859-2 in this case).
-+
-+ Implemented by Shinya Hanataka and Ulrich Drepper.
-+
-+* New codeset conversion modules: IBM-922 (Estonia PC codeset),
-+ IBM-1124 (Ukraine PC codeset), IBM-1129 (Vietnamese PC codeset).
-+ Contributed by Masahide Washizawa <washi at jp.ibm.com>.
-+
-+* Optimized string functions for Alpha ev6 and ev67 by Richard Henderson
-+ <rth at redhat.com> and Rick Gorton <rick.gorton at alpha-processor.com>.
-+
-+* The LANGUAGE environment variable is now ignored unless the locale is
-+ changed from the default "C" locale.
-+
-+* The usual bug fixes.
-+
-+Version 2.2
-+
-+* Greg McGary added runtime support for bounds checking using gcc's
-+ new -fbounded-pointers option. ix86 target is complete. PowerPC
-+ is in progress.
-+
-+* Thorsten Kukuk added secure mode support to nscd.
-+
-+* The Berkeley db libraries have been removed.
-+
-+ Related, the nss_db module is now in a separate package since it
-+ obviously requires a database library being available.
-+
-+* Wide character I/O streams implemented by Ulrich Drepper.
-+
-+* Functions from the extended socket API added by Ulrich Drepper.
-+
-+* Functions feenableexcept and fedisableexcept to control the
-+ behaviour of individual exceptions have been added by Andreas Jaeger.
-+
-+* ldconfig program added by Andreas Jaeger and Jakub Jelinek.
-+
-+* The resolver code has been updated from bind 8.2.3-T5B which supports
-+ threads. The integration was done by Andreas Jaeger, Adam D. Bradley,
-+ and Mark Kettenis.
-+
-+ This change could in some situations effect backward compatibility. Since
-+ now `_res' is a thread-local instead of a global variable, modifying it
-+ in one thread does not have any effect in other threads.
-+
-+ The resolver library was also extended to allow IPv6 as the transport
-+ protocol for the requests. This work was done by Stig Venaas.
-+
-+* Compatibility code for K&R C compilers has been removed from the
-+ header files. A ISO C compiler is needed to use the library
-+ (conforming to either C89 or C99 standard).
-+
-+* Complete rewrite of the localedef program to support multibyte character
-+ sets. Implement handling of ISO 14651 and ISO 14652. Rewrite strcoll,
-+ strxfrm, wcscoll, and wcsxfrm functions. Make isw*() functions work.
-+ Implemented by Ulrich Drepper.
-+
-+ Bruno Haible significantly improved the generation and use of the data
-+ structures for the wide character tables.
-+
-+* Plural handling in gettext implemented by Ulrich Drepper.
-+
-+* The utmp daemon has been removed.
-+
-+* The port to MIPS-Linux has been finished by Andreas Jaeger.
-+
-+* A port to Hitachi SH3 and SH4 has been contributed by Kazumoto Kojima
-+ and Yutaka Niibe.
-+
-+* POSIX clocks and timers implemented by Kaz Kylheku and Ulrich Drepper.
-+
-+* POSIX barriers implemented by Kaz Kylheku.
-+
-+* POSIX spawn function family implemented by Ulrich Drepper.
-+
-+* POSIX spinlocks are now available.
-+
-+* Timed wait functions for mutex, rwlock, and semaphores are implemented.
-+
-+* the configure option --enable-kernel=X.Y.Z allows to strip out
-+ compatibility for kernel versions before X.Y.Z. This is currently only
-+ implemented for Linux.
-+
-+* the sockaddr_in6 structure changed. The IPv6 working group added a new
-+ field sin6_scope_id. This means that all programs using IPv6 should be
-+ recompiled. Don't expect binary compatibility with previous glibc
-+ versions.
-+
-+* various conversion modules for IBM character sets contributed by
-+ Masahide Washizawa.
-+
-+* IA-64 port by Jes Sorensen and HJ Lu.
-+
-+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-+Compiling the GNU C Library for Linux/ia64
-+******************************************
-+
-+ Please refer to the file INSTALL in the same directory as you found
-+this file for general information about configuring and compiling
-+glibc.
-+
-+ For general inquiries about glibc under Linux/ia64 please use the
-+following mailing list linux-ia64 at linuxia64.org or one of the relevant
-+glibc mailing lists.
-+
-+Recommended Tools for Compilation
-+=================================
-+
-+ In order for glibc-2.2 to build correctly on the ia64 you need at
-+least the following versions of the GNU tools (the :
-+
-+ * The Cygnus toolchain snapshot for the ia64 as of August 4
-+ including the provided set of patches. It is however recommend
-+ you use the October 24 toolchain snapshot or a more recent version.
-+
-+ OR alternatively you can try the following (the Cygnus toolchain is
-+ the recommended solution):
-+
-+ * GCC and binutils, GAS and GNU LD out of CVS from
-+ sources.redhat.com as of August 28, 2000 or later. The CVS tree
-+ may require special patches to work properly on the ia64.
-+
-+Configuring and compiling GNU Libc for Linux/ia64
-+=================================================
-+
-+ The library requires Linux kernel version 2.4.0-test4-000728 or
-+later to funtion properly. Besides that it support for debug libraries
-+is currently untested. Hence the following options
-+are required for configuring the library:
-+
-+ --disable-debug --enable-kernel=2.4.0
-+
-+ It is also important that you make sure the library picks up the
-+appropriate kernel header files, if you do not have recent enough
-+kernel headers in /usr/src/linux/include, you should use the
-+--with-headers=<path> option to specify the location.
-+
-+ As an example I personally use the following options to configure
-+the library:
-+
-+ --disable-debug
-+ --disable-cvs
-+ --enable-kernel=2.4.0
-+ --host=ia64-linux
-+ --enable-add-ons=yes
-+ --prefix=/usr
-+ --with-headers=/home/jes/linux/include
-+
-+
-+Good luck
-+
-+Jes Sorensen <jes at linuxcare.com>,
-+November 14th, 2000
-+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-+
-+Version 2.1.3
-+
-+* bug fixes
-+
-+
-+Version 2.1.2
-+
-+* bug fixes
-+
-+
-+Version 2.1.1
-+
-+* New ISO C 9x function _Exit, imaxabs, and imaxdiv are added.
-+
-+* New xdr functions are added; some rpc functions are now 64bit clean.
-+
-+* Fixed a number of bugs and memory leaks (especially in NIS+ code).
-+
-+* Fixed known incompatibilities with glibc 2.0.
-+
-+* New functions lock64, strchrnul, rawmemchr, getutmp and getutmpx.
-+
-+* Optimized a number of functions (especially the ELF dynamic loader).
-+
-+* Update timezone data files.
-+
-+* lots of charmaps corrections
-+
-+* some new locale definitions and charmaps
-+
-+
-+Version 2.1
-+
-+* Richard Henderson corrected size of struct timeval on Linux/Alpha to
-+ conform to POSIX member type requirements. Symbol versions have been
-+ adjusted as needed within the library, and for direct use by applications,
-+ but there is potential for problems if third-party libraries use
-+ struct timeval as part of their interface. This does not present
-+ a problem for X and other "essential" system libraries.
-+
-+* An additional locale model to support C++ Standard Library locale
-+ model and probably more was implemented by Ulrich Drepper.
-+
-+* Eric Youngdale and Ulrich Drepper implemented versioning of objects on
-+ symbol level.
-+
-+* Miles Bader provided the `argp' function family to support hierachical
-+ command line argument parsing, layered on top of getopt.
-+
-+* strtod accepts new hexadecimal floating-point format from ISO C 9X.
-+
-+* printf has two new specifiers %a and %A to print hexadecimal flaoting-point
-+ numbers.
-+
-+* scanf recognizes the %a and %A format for scanning floating point numbers.
-+
-+* the new headers <stdint.h> and <inttypes.h> from ISO C 9X provides
-+ information and interfaces for the available integer types.
-+
-+* about 130 new math functions were added to implement the ISO C9x math
-+ library.
-+
-+* the new header <complex.h> contains definitions of the complex math
-+ functions from ISO C 9X.
-+
-+* the new header <tgmath.h> defines generic macros to use complex or
-+ real valued functions.
-+
-+* Thorsten Kukuk provided an implementation for NIS+, securelevel 0, 1 and 2.
-+
-+* Andreas Jaeger provided a test suite for the math library.
-+
-+* Mark Kettenis implemented the utmpx interface and an utmp daemon.
-+
-+* Ulrich Drepper added character set conversion functions (iconv).
-+
-+* Optimized string functions have been added.
-+
-+* The localedata addon is now part of glibc.
-+
-+* An implementation of profiling shared libraries was added by Ulrich Drepper.
-+
-+* Thorsten Kukuk and Ulrich Drepper provided an implementation for a caching
-+ daemon for NSS (nscd).
-+
-+ Missing a better place here are some numbers on improvements. Under
-+ Linux 2.1.125 un-tar-ing the kernel sources takes
-+
-+ user system wall
-+
-+ using local files 12.19s 6.88s 22.91s
-+
-+ using NIS 13.92s 8.91s 26.34s
-+
-+ using NIS & nscd 10.37s 7.34s 25.30s
-+
-+ using NIS+ 27.57s 30.37s 640.46s
-+
-+ using NIS+ & nscd 10.25s 7.83s 26.51s
-+
-+ using NIS & old nscd [1] 13.83s 8.32s 29.60s
-+
-+ Keep in mind that non-namelookup related operations dominate above times.
-+ It was just a common complain that using NIS+ unpacking the kernel is
-+ horribly slow.
-+
-+ [1] The old nscd implementation is not available anymore since it was
-+ distributed with glibc up to version 2.0.98 and thus is now replaced.
-+
-+* Tim Waugh provided an implementation of the POSIX.2 wordexp function family.
-+
-+* Mark Kettenis provided a Hesiod NSS module.
-+
-+* The ELF dynamic loader knows how to process dynamic string tokens ($ORIGIN
-+ and $PLATFORM) in RPATHs and similar strings (Ulrich Drepper).
-+
-+* rcmd can now handle netgroups (Dick Streefland).
-+
-+* A port to the ARM was contributed by Phil Blundell, Pat Beirne and Scott
-+ Bambrough.
-+
-+* Support for the IPv6 protocol has been added to the socket API, as per the
-+ latest draft standards.
-+
-+* Support for Linux 2.2 has been added.
-+
-+* Interface changes relative to the latest 2.0.x release:
-+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-+addseverity NEW: Unix98
-+alphasort64 NEW: LFS
-+argp_err_exit_status NEW: argp, GNU ext
-+argp_error NEW: argp, GNU ext
-+argp_failure NEW: argp, GNU ext
-+argp_help NEW: argp, GNU ext
-+argp_parse NEW: argp, GNU ext
-+argp_program_bug_address NEW: argp, GNU ext
-+argp_program_version NEW: argp, GNU ext
-+argp_program_version_hook NEW: argp, GNU ext
-+argp_state_help NEW: argp, GNU ext
-+argp_usage NEW: argp, GNU ext
-+authdes_create NEW: Secure RPC
-+authdes_getucred NEW: Secure RPC
-+authdes_pk_create NEW: Secure RPC
-+backtrace NEW: GNU ext.
-+backtrace_symbols NEW: GNU ext.
-+backtrace_symbols_fd NEW: GNU ext.
-+cacos NEW: ISO C 9x
-+cacosf NEW: ISO C 9x
-+cacosh NEW: ISO C 9x
-+cacoshf NEW: ISO C 9x
-+cacoshl NEW: ISO C 9x
-+cacosl NEW: ISO C 9x
-+capget NEW: kernel
-+capset NEW: kernel
-+carg NEW: ISO C 9x
-+cargf NEW: ISO C 9x
-+cargl NEW: ISO C 9x
-+casin NEW: ISO C 9x
-+casinf NEW: ISO C 9x
-+casinh NEW: ISO C 9x
-+casinhf NEW: ISO C 9x
-+casinhl NEW: ISO C 9x
-+casinl NEW: ISO C 9x
-+catan NEW: ISO C 9x
-+catanf NEW: ISO C 9x
-+catanh NEW: ISO C 9x
-+catanhf NEW: ISO C 9x
-+catanhl NEW: ISO C 9x
-+catanl NEW: ISO C 9x
-+cbc_crypt NEW: Secure RPC
-+ccos NEW: ISO C 9x
-+ccosf NEW: ISO C 9x
-+ccosh NEW: ISO C 9x
-+ccoshf NEW: ISO C 9x
-+ccoshl NEW: ISO C 9x
-+ccosl NEW: ISO C 9x
-+cexp NEW: ISO C 9x
-+cexpf NEW: ISO C 9x
-+cexpl NEW: ISO C 9x
-+cimag NEW: ISO C 9x
-+cimagf NEW: ISO C 9x
-+cimagl NEW: ISO C 9x
-+clearerr_locked REMOVED
-+clntunix_create NEW: sunrpc ext
-+clog NEW: ISO C 9x
-+clog10 NEW: ISO C 9x
-+clog10f NEW: ISO C 9x
-+clog10l NEW: ISO C 9x
-+clogf NEW: ISO C 9x
-+clogl NEW: ISO C 9x
-+conj NEW: ISO C 9x
-+conjf NEW: ISO C 9x
-+conjl NEW: ISO C 9x
-+cpow NEW: ISO C 9x
-+cpowf NEW: ISO C 9x
-+cpowl NEW: ISO C 9x
-+cproj NEW: ISO C 9x
-+cprojf NEW: ISO C 9x
-+cprojl NEW: ISO C 9x
-+creal NEW: ISO C 9x
-+crealf NEW: ISO C 9x
-+creall NEW: ISO C 9x
-+creat64 NEW: LFS
-+csin NEW: ISO C 9x
-+csinf NEW: ISO C 9x
-+csinh NEW: ISO C 9x
-+csinhf NEW: ISO C 9x
-+csinhl NEW: ISO C 9x
-+csinl NEW: ISO C 9x
-+csqrt NEW: ISO C 9x
-+csqrtf NEW: ISO C 9x
-+csqrtl NEW: ISO C 9x
-+ctan NEW: ISO C 9x
-+ctanf NEW: ISO C 9x
-+ctanh NEW: ISO C 9x
-+ctanhf NEW: ISO C 9x
-+ctanhl NEW: ISO C 9x
-+ctanl NEW: ISO C 9x
-+des_setparity NEW: Secure RPC
-+ecb_crypt NEW: Secure RPC
-+endutxent NEW: Unix98
-+exp10 NEW: ISO C 9x
-+exp10f NEW: ISO C 9x
-+exp10l NEW: ISO C 9x
-+exp2 NEW: ISO C 9x
-+exp2f NEW: ISO C 9x
-+exp2l NEW: ISO C 9x
-+fattach NEW: STREAMS
-+fdetach NEW: STREAMS
-+fdim NEW: ISO C 9x
-+fdimf NEW: ISO C 9x
-+fdiml NEW: ISO C 9x
-+feclearexcept NEW: ISO C 9x
-+fegetenv NEW: ISO C 9x
-+fegetexceptflag NEW: ISO C 9x
-+fegetround NEW: ISO C 9x
-+feholdexcept NEW: ISO C 9x
-+feof_locked REMOVED
-+feraiseexcept NEW: ISO C 9x
-+ferror_locked REMOVED
-+fesetenv NEW: ISO C 9x
-+fesetexceptflag NEW: ISO C 9x
-+fesetround NEW: ISO C 9x
-+fetestexcept NEW: ISO C 9x
-+feupdateenv NEW: ISO C 9x
-+fflush_locked REMOVED
-+ffsl NEW: GNU ext.
-+ffsll NEW: GNU ext.
-+fgetpos64 NEW: LFS
-+fgets_unlocked NEW: GNU ext.
-+fileno_locked REMOVED
-+fma NEW: ISO C 9x
-+fmaf NEW: ISO C 9x
-+fmal NEW: ISO C 9x
-+fmax NEW: ISO C 9x
-+fmaxf NEW: ISO C 9x
-+fmaxl NEW: ISO C 9x
-+fmin NEW: ISO C 9x
-+fminf NEW: ISO C 9x
-+fminl NEW: ISO C 9x
-+fmtmsg NEW: Unix98
-+fopen64 NEW: LFS
-+fputc_locked REMOVED
-+fputs_unlocked NEW: GNU ext.
-+fread_unlocked NEW: GNU ext.
-+freopen64 NEW: LFS
-+fseeko NEW: Unix98
-+fsetpos64 NEW: LFS
-+fstatfs64 NEW: LFS
-+fstatvfs NEW: Unix98
-+fstatvfs64 NEW: LFS
-+ftello NEW: Unix98
-+ftello64 NEW: LFS
-+ftruncate64 NEW: LFS
-+ftw64 NEW: LFS
-+fwrite_unlocked NEW: GNU ext.
-+gai_strerror NEW: IPv6
-+gamma_r REMOVED
-+gammaf_r REMOVED
-+gammal_r REMOVED
-+getchar_locked REMOVED
-+getdate NEW: Unix98
-+getdate_err NEW: Unix98
-+getdate_r NEW: GNU ext.
-+getmsg NEW: STREAMS
-+getnameinfo NEW: IPv6
-+getnetname NEW: Secure RPC
-+getpmsg NEW: STREAMS
-+getpt NEW: Unix98 PTY
-+getrlimit64 NEW: LFS
-+getutxent NEW: Unix98
-+getutxid NEW: Unix98
-+getutxline NEW: Unix98
-+glob64 NEW: GNU ext.
-+globfree64 NEW: GNU ext.
-+gnu_get_libc_release NEW: GNU ext.
-+gnu_get_libc_version NEW: GNU ext.
-+grantpt NEW: Unix98 PTY
-+host2netname NEW: Secure RPC
-+iconv NEW: iconv
-+iconv_close NEW: iconv
-+iconv_open NEW: iconv
-+if_freenameindex NEW: IPv6
-+if_indextoname NEW: IPv6
-+if_nameindex NEW: IPv6
-+if_nametoindex NEW: IPv6
-+in6addr_any NEW: IPv6
-+in6addr_loopback NEW: IPv6
-+inet6_isipv4mapped NEW: IPv6
-+isastream NEW: STREAMS
-+iswblank NEW: GNU ext.
-+key_decryptsession NEW: Secure RPC
-+key_decryptsession_pk NEW: Secure RPC
-+key_encryptsession NEW: Secure RPC
-+key_encryptsession_pk NEW: Secure RPC
-+key_gendes NEW: Secure RPC
-+key_get_conv NEW: Secure RPC
-+key_secretkey_is_set NEW: Secure RPC
-+key_setnet NEW: Secure RPC
-+key_setsecret NEW: Secure RPC
-+llrint NEW: ISO C 9x
-+llrintf NEW: ISO C 9x
-+llrintl NEW: ISO C 9x
-+llround NEW: ISO C 9x
-+llroundf NEW: ISO C 9x
-+llroundl NEW: ISO C 9x
-+log2 NEW: ISO C 9x
-+log2f NEW: ISO C 9x
-+log2l NEW: ISO C 9x
-+lrint NEW: ISO C 9x
-+lrintf NEW: ISO C 9x
-+lrintl NEW: ISO C 9x
-+lround NEW: ISO C 9x
-+lroundf NEW: ISO C 9x
-+lroundl NEW: ISO C 9x
-+lseek64 NEW: LFS
-+makecontext NEW: Unix98
-+mempcpy NEW: GNU ext.
-+mmap64 NEW: LFS
-+moncontrol REMOVED
-+modify_ldt NEW: kernel
-+nan NEW: ISO C 9x
-+nanf NEW: ISO C 9x
-+nanl NEW: ISO C 9x
-+nearbyint NEW: ISO C 9x
-+nearbyintf NEW: ISO C 9x
-+nearbyintl NEW: ISO C 9x
-+netname2host NEW: Secure RPC
-+netname2user NEW: Secure RPC
-+nexttoward NEW: ISO C 9x
-+nexttowardf NEW: ISO C 9x
-+nexttowardl NEW: ISO C 9x
-+nftw NEW: Unix98
-+nftw64 NEW: LFS
-+open64 NEW: LFS
-+passwd2des NEW: Secure RPC
-+pow10 NEW: GNU ext.
-+pow10f NEW: GNU ext.
-+pow10l NEW: GNU ext.
-+pread NEW: Unix98
-+pread64 NEW: LFS
-+printf_size NEW: GNU ext.
-+printf_size_info NEW: GNU ext.
-+profil_counter REMOVED
-+pthread_mutexattr_getkind_np REPLACED
-+pthread_mutexattr_setkind_np REPLACED
-+ptsname NEW: Unix98 PTY
-+ptsname_r NEW: Unix98 PTY
-+putc_locked REMOVED
-+putchar_locked REMOVED
-+putgrent NEW: GNU ext.
-+putmsg NEW: STREAMS
-+putpmsg NEW: STREAMS
-+pututxline NEW: Unix98
-+pwrite NEW: Unix98
-+pwrite64 NEW: LFS
-+readdir64 NEW: LFS
-+readdir64_r NEW: LFS
-+remquo NEW: ISO C 9x
-+remquof NEW: ISO C 9x
-+remquol NEW: ISO C 9x
-+round NEW: ISO C 9x
-+roundf NEW: ISO C 9x
-+roundl NEW: ISO C 9x
-+rtime NEW: GNU ext.
-+scalbln NEW: ISO C 9x
-+scalblnf NEW: ISO C 9x
-+scalblnl NEW: ISO C 9x
-+scandir64 NEW: LFS
-+sendfile NEW: kernel
-+setcontext NEW: Unix98
-+setrlimit64 NEW: LFS
-+setutxent NEW: Unix98
-+sighold NEW: Unix98
-+sigignore NEW: Unix98
-+sigqueue NEW: POSIX.1b
-+sigrelse NEW: Unix98
-+sigset NEW: POSIX.1b
-+sigtimedwait NEW: POSIX.1b
-+sigwaitinfo NEW: POSIX.1b
-+sincos NEW: GNU ext.
-+sincosf NEW: GNU ext.
-+sincosl NEW: GNU ext.
-+statfs64 NEW: LFS
-+statvfs NEW: Unix98
-+statvfs64 NEW: LFS
-+strcasestr NEW: GNU ext.
-+strtoimax NEW: ISO C 9x
-+strtoumax NEW: ISO C 9x
-+strverscmp NEW: GNU ext.
-+svcauthdes_stats NEW: Secure RPC
-+svcunix_create NEW: sunrpc etx
-+svcunixfd_create NEW: sunrpc ext
-+swapcontext NEW: Unix98
-+tcgetsid NEW: Unix98 PTY
-+tdestroy NEW: GNU ext.
-+tgamma NEW: ISO C 9x
-+tgammaf NEW: ISO C 9x
-+tgammal NEW: ISO C 9x
-+tmpfile64 NEW: LFS
-+trunc NEW: ISO C 9x
-+truncate64 NEW: LFS
-+truncf NEW: ISO C 9x
-+truncl NEW: ISO C 9x
-+umount2 NEW: kernel
-+unlockpt NEW: Unix98 PTY
-+updwtmpx NEW: Unix98
-+user2netname NEW: Secure RPC
-+utmpxname NEW: Unix98
-+versionsort NEW: GNU ext.
-+versionsort64 NEW: GNU ext.
-+waitid NEW: Unix98
-+wcscasecmp NEW: GNU ext.
-+wcsncasecmp NEW: GNU ext.
-+wcsnlen NEW: GNU ext.
-+wcstoimax NEW: ISO C 9x
-+wcstoll NEW: ISO C 9x
-+wcstoull NEW: ISO C 9x
-+wcstoumax NEW: ISO C 9x
-+wcswcs NEW: Unix98
-+wordexp NEW: POSIX.2
-+wordfree NEW: POSIX.2
-+write_profiling REMOVED
-+xdecrypt NEW: Secure RPC
-+xdr_authdes_cred NEW: Secure RPC
-+xdr_authdes_verf NEW: Secure RPC
-+xdr_cryptkeyarg NEW: Secure RPC
-+xdr_cryptkeyarg2 NEW: Secure RPC
-+xdr_cryptkeyres NEW: Secure RPC
-+xdr_getcredres NEW: Secure RPC
-+xdr_key_netstarg NEW: Secure RPC
-+xdr_key_netstres NEW: Secure RPC
-+xdr_keybuf NEW: Secure RPC
-+xdr_keystatus NEW: Secure RPC
-+xdr_netnamestr NEW: Secure RPC
-+xdr_sizeof NEW: Secure RPC
-+xdr_unixcred NEW: sunrpc ext
-+xencrypt NEW: Secure RPC
-+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-+
-+Version 2.0.6
-+
-+* more bug fixes
-+
-+
-+Version 2.0.5
-+
-+* more bug fixes
-+
-+* inet_ntoa is thread-safe
-+
-+* updwtmp is moved from libutil to libc
-+
-+* rewrite of cbrt function
-+
-+* update of timezone data
-+
-+Version 2.0.4
-+
-+* more bug fixes
-+
-+Version 2.0.3
-+
-+* more bug fixes
-+
-+Version 2.0.2
-+
-+* more bug fixes
-+
-+* add atoll function
-+
-+* fix complex problems in Berkeley DB code
-+
-+* fix math functions
-+
-+Version 2.0.1
-+
-+* fixed lots of header problems (especially Linux/GNU specific)
-+
-+* dynamic loader preserves all registers
-+
-+* Roland McGrath provided support for handling of auxiliary objects in
-+ the ELF dynamic loader.
-+
-+* support for parallel builds is improved
-+
-+Version 2.0
-+
-+* GNU extensions are no longer declared by default. To enable them you
-+ must define the macro `_GNU_SOURCE' in your program or compile with
-+ `-D_GNU_SOURCE'.
-+
-+* The library has changed from using GNU ld symbol aliases to using weak
-+ symbols where available. The ELF object file format supports weak
-+ symbols; GNU ld also supports weak symbols in the a.out format. (There
-+ is also now support for other GNU ld extensions in ELF. Use the
-+ `--with-elf' option to configure to indicate you have ELF, and
-+ `--with-gnu-ld' if using GNU ld.) This change resulted in the deletion
-+ of many files which contained only symbol aliases, reducing the size of
-+ the source and the compiled library; many other files were renamed to
-+ less cryptic names previously occupied by the symbol alias files.
-+ There is a new header file <elf.h> for programs which operate on
-+ files in the ELF format.
-+
-+* Converted to Autoconf version 2, so `configure' has more options.
-+ Run `configure --help' to see the details.
-+
-+* The library can now be configured to build profiling, highly-optimized
-+ (but undebuggable), and/or shared libraries (ELF with GNU ld only). The
-+ `--enable-profile', `--enable-omitfp', and `--enable-shared' options to
-+ `configure' enable building these extra libraries. The shared library is
-+ built by default when using both ELF and GNU ld. When shared libraries
-+ are enabled, the new library `-ldl' is available for arbitrary run-time
-+ loading of shared objects; its interface is defined in <dlfcn.h>. The
-+ new header file <link.h> gives access to the internals of the run-time
-+ dynamic linker, `ld.so'. The shell script `ldd' is similar to the
-+ application of same name on other systems and it provides information
-+ about dynamically linked binaries.
-+
-+* The C library now provides the run-time support code for profiling
-+ executables compiled with `-pg'. Programs can control the profiling code
-+ through the interface in <sys/gmon.h>. The `gmon.out' files written by
-+ the GNU C library can be read only by GNU `gprof' (from GNU binutils);
-+ the support for this file format was contributed by David Mosberger-Tang.
-+
-+* The math code has been replaced with a math library based on fdlibm from
-+ Sun, and modified by JT Conklin and Ulrich Drepper with i387 support, by
-+ Ian Taylor with `float' functions and by Ulrich Drepper with `long double'
-+ functions. The math functions now reside in a separate library, so
-+ programs using them will need to use `-lm' their linking commands.
-+
-+* John C. Bowman contributed optimized ix87 assembler inline functions.
-+
-+* Ulrich Drepper has contributed support for an `/etc/nsswitch.conf'
-+ mechanism similar to that found in Solaris 2. This is now used for the
-+ group, passwd, hosts, networks, services, protocols, rpc, ethers,
-+ shadow, netgroup, publickey, and alias databases. The `nsswitch.conf'
-+ file controls what services are used for each individual database. This
-+ works by loading shared libraries with names specified in `nsswitch.conf',
-+ so service modules can be changed or added at any time without even
-+ relinking any program. Currently there are the file, db, and NIS based
-+ NSS services available.
-+
-+* The new functions `strtoq' and `strtouq' parse integer values from
-+ strings, like `strtol' and `strtoul', but they return `long long int' and
-+ `unsigned long long int' values, respectively (64-bit quantities).
-+
-+* The new functions `strtof' and `strtold' parse floating-point values from
-+ strings, like `strtod', but they return `float' and `long double' values,
-+ respectively (on some machines `double' and `long double' are the same).
-+
-+* Ulrich Drepper has contributed new implementations of the floating-point
-+ printing and reading code used in the `printf' family of functions and
-+ `strtod', `strtof', and `strtold'. These new functions are perfectly
-+ accurate, and much faster than the old ones.
-+
-+* The implementation of the POSIX locale model was completely rewritten by
-+ Ulrich Drepper. This includes the new programs `localedef' and `locale'
-+ to compile the POSIX locale definition.
-+
-+* The former dummy implementations of the strcoll and strxfrm function are
-+ now replaced by fully functional code contributed by Ulrich Drepper. The
-+ collation information comes from the POSIX locale definitions.
-+
-+* The new header <langinfo.h> defines an interface for accessing
-+ various locale-dependent data (using the locale chosen with `setlocale').
-+
-+* Ulrich Drepper has contributed a new suite of functions for operation on
-+ wide-character and multibyte-character strings, in <wchar.h>;
-+ and classification and case conversion of wide characters, in <wctype.h>.
-+ These new functions are conforming to the ISO C, Amendement 1 specification.
-+
-+* There is now a second implementation of the standard I/O library available.
-+ It comes from GNU libg++ as was written by Per Bothner, heavily modified
-+ by Hongjiu Lu and made thread safe by Ulrich Drepper.
-+
-+* You can now use positional parameter specifications in format strings
-+ for the `printf' and `scanf' families of functions. For example,
-+ `printf ("Number %2$d, Mr %1$s\n", "Jones", 6);'' prints
-+ ``Number 6, Mr Jones''. This is mainly useful when providing different
-+ format strings for different languages, whose grammars may dictate
-+ different orderings of the values being printed. To support this
-+ feature, the interface for `register_printf_handler' has changed; see
-+ the header file <printf.h> for details.
-+
-+* The `printf' and `scanf' families of functions now understand a new
-+ formatting flag for numeric conversions: the ' flag (e.g. %'d or %'f) says
-+ to group numbers as indicated by the locale; for `scanf' and friends, this
-+ says to accept as valid only a number with all the proper grouping
-+ separators in the right places. In the default "C" locale, numbers are
-+ not grouped; but locales for specific countries will define the usual
-+ conventions (i.e. separate thousands with `,' in the US locale).
-+
-+* The pgrp functions have been regularized, slightly incompatibly but much
-+ less confusingly. The core functions are now `getpgid' and `setpgid',
-+ which take arguments for the PID to operate on; the POSIX.1 `getpgrp' (no
-+ argument) and BSD `setpgrp' (identical to `setpgid') functions are
-+ provided for compatibility. There is no longer an incompatible `getpgrp'
-+ with an argument declared under _BSD_SOURCE; no BSD code uses it.
-+
-+* The new header file <fts.h> and suite of functions simplify programs that
-+ operate on directory trees. This code comes from 4.4 BSD.
-+
-+* The resolver code has been updated from the BIND 4.9.5-P1 release.
-+ Parts of the code were heavily modified by Ulrich Drepper to fit in the
-+ NSS scheme used in glibc.
-+
-+* There is a new malloc debugging hook `__memalign_hook'.
-+
-+* There are new typedefs `ushort' for `unsigned short int' and `uint' for
-+ `unsigned int' in <sys/types.h>. These are for compatibility only and
-+ their use is discouraged.
-+
-+* The `-lmcheck' library to enable standard malloc debugging hooks is now
-+ done differently, so that it works even without GNU ld.
-+
-+* New function `euidaccess' checks allowed access to a file like `access',
-+ but using the effective IDs instead of the real IDs.
-+
-+* The time zone data files have been updated for the latest and greatest
-+ local time conventions of the countries of the world.
-+
-+* The new function `dirfd' extracts the file descriptor used by a DIR stream;
-+ see <dirent.h>.
-+
-+* The new functions `ecvt', `fcvt', and `gcvt' provide an obsolete interface
-+ for formatting floating-point numbers. They are provided only for
-+ compatibility; new programs should use `sprintf' instead. There are
-+ also equivalent function for the `long double' floating-point type and
-+ all functions also exist in a reentrant form.
-+
-+* The new auxiliary library `-lutil' from 4.4 BSD contains various
-+ functions for maintaining the login-record files (primarily of use to
-+ system programs such as `login'), and convenient functions for
-+ allocating and initializing a pseudo-terminal (pty) device.
-+
-+* Ulrich Drepper has contributed new support for System V style
-+ shared memory and IPC on systems that support it.
-+
-+* Ulrich Drepper has contributed several miscellaneous new functions found
-+ in System V: The `hsearch' family of functions provide an effective
-+ implementation of hash tables; `a64l' and `l64a' provide a very simple
-+ binary to ASCII mapping; `drand48' and friends provide a 48-bit random
-+ number generator.
-+
-+* Ulrich Drepper has contributed new reentrant counterparts for the
-+ `random' and `hsearch' families of functions; `random_r', `hsearch_r', etc.
-+
-+* Ulrich Drepper has contributed new, highly-optimized versions of several
-+ string functions for the i486/Pentium family of processors.
-+
-+* Ulrich Drepper has updated the Linux-specific code, based largely
-+ on work done in Hongjiu Lu's version of GNU libc for Linux.
-+ The GNU library now supports Linux versions 2.0.10 and later,
-+ using the ELF object file format (i[3456]86-*-linux).
-+
-+* Andreas Schwab has ported the C library to Linux/m68k (m68k-*-linux).
-+
-+* David Mosberger-Tang and Richard Henderson have ported the C library
-+ to Linux/Alpha (alpha-*-linux). Richard Henderson contributed the
-+ dynamic linking support for ELF/Alpha.
-+
-+* Richard Henderson contributed several Alpha optimized assembler function
-+ for arithmetic and string handling.
-+
-+* Ulrich Drepper has contributed a new set of message catalog functions to
-+ support multiple languages using the <libintl.h> interface, for use with
-+ his new package GNU gettext. Translation volunteers have contributed
-+ catalogs of the library's messages in Spanish, German, and Korean.
-+
-+* For compatibility with XPG4, Ulrich Drepper has contributed the `gencat'
-+ program and the `catgets' function for reading the catalog files it
-+ creates. (The <libintl.h> interface is preferred; we include the
-+ <nl_types.h> interface using `catgets' only for source compatibility with
-+ programs already written to use it.)
-+
-+* New header file <values.h> gives SVID-compatible names for <limits.h>
-+ constants.
-+
-+* Various new macros, declarations, and small header files for compatibility
-+ with 4.4 BSD.
-+
-+* New function `group_member' is a convenient way to check if a process has
-+ a given effective group ID.
-+
-+* When using GCC 2.7 and later, the socket functions are now declared in a
-+ special way so that passing an argument of type `struct sockaddr_in *',
-+ `struct sockaddr_ns *', or `struct sockaddr_un *' instead of the generic
-+ `struct sockaddr *' type, does not generate a type-clash warning.
-+
-+* New function `error' declared in header file <error.h> is a convenient
-+ function for printing error messages and optionally exiting; this is the
-+ canonical function used in GNU programs. The new functions `err', `warn',
-+ and friends in header file <err.h> are the canonical 4.4 BSD interface for
-+ doing the same thing.
-+
-+* The <glob.h> interface has several new flags from 4.4 BSD that extend the
-+ POSIX.2 `glob' function to do ~ and {...} expansion.
-+
-+* New function `unsetenv' complements `setenv' for compatibility with 4.4 BSD.
-+ `clearenv' which is used in POSIX.9 is also available.
-+
-+* New function `getsid' returns session ID number on systems that support it.
-+
-+* We have incorporated the 4.4 BSD `db' library (version 1.85). New header
-+ files <db.h> and <mpool.h> provide a rich set of functions for several
-+ types of simple databases stored in memory and in files, and <ndbm.h> is
-+ an old `ndbm'-compatible interface using the `db' functions. Link with
-+ `-ldb' to get these functions.
-+
-+* New macro `strdupa' copies a string like `strdup', but uses local stack
-+ space from `alloca' instead of dynamic heap space from `malloc'.
-+
-+* New function `strnlen' is like `strlen' but searches only a given maximum
-+ number of characters for the null terminator. `stpncpy', `strndup' and
-+ `strndupa' are similar variants for the `stpcpy', `strdup' and `strdupa'
-+ function.
-+
-+* New function `statfs' in header <sys/statfs.h>.
-+
-+* The new <argz.h> and <envz.h> interfaces contributed by Miles Bader
-+ provide convenient functions for operating on blocks of null-terminated
-+ strings.
-+
-+* A new suite of functions in <utmp.h> handle all the details of reading
-+ and writing the utmp file.
-+
-+* An implementation of the NIS/YP(tm) based NSS service was contributed by
-+ Thorsten Kukuk.
-+
-+* Paul Eggert and Ulrich Drepper modified the `strftime' function to be
-+ completely POSIX compliant and also implemented the extended functionality
-+ to handle alternate digit representation and alternate era date formats.
-+
-+* Ulrich Drepper provided an implementation of the `strptime' function
-+ defined in XPG4.2 which transforms a string into a `struct tm' value.
-+
-+* Paul Eggert provided the tzselect shell script as part of the timezone
-+ code. The shell script makes it easy to select the correct timezone
-+ specification.
+diff -Nrup a/Makeconfig b/Makeconfig
+--- a/Makeconfig 2012-01-01 05:16:32.000000000 -0700
++++ b/Makeconfig 2012-01-01 20:41:26.630439843 -0700
+@@ -803,12 +803,12 @@ endif
+ # The assembler can generate debug information too.
+ ifndef ASFLAGS
+ ifeq ($(have-cpp-asm-debuginfo),yes)
+-ASFLAGS := $(filter -g% -fdebug-prefix-map=%,$(CFLAGS))
++ASFLAGS = $(filter -g% -fdebug-prefix-map=%,$(CFLAGS))
+ else
+-ASFLAGS :=
++ASFLAGS =
+ endif
+ endif
+-ASFLAGS += $(ASFLAGS-config) $(asflags-cpu)
++ASFLAGS += $(ASFLAGS-config) $(asflags-cpu) $(sysdep-ASFLAGS)
+
+ ifndef BUILD_CC
+ BUILD_CC = $(CC)
+diff -Nrup a/NEWS b/NEWS
+--- a/NEWS 2012-01-01 05:16:32.000000000 -0700
++++ b/NEWS 2012-01-01 20:41:26.631439843 -0700
+@@ -84,16 +84,6 @@ Version 2.14
+ 12724, 12734, 12738, 12746, 12766, 12775, 12777, 12782, 12788, 12792,
+ 12795, 12811, 12813, 12814, 12841
+
+-* The RPC implementation in libc is obsoleted. Old programs keep working
+- but new programs cannot be linked with the routines in libc anymore.
+- Programs in need of RPC functionality must be linked against TI-RPC.
+- The TI-RPC implementation is IPv6 enabled and there are other benefits.
+-
+- Visible changes of this change include (obviously) the inability to link
+- programs using RPC functions without referencing the TI-RPC library and the
+- removal of the RPC headers from the glibc headers.
+- Implemented by Ulrich Drepper.
+-
+ * New Linux interfaces: clock_adjtime, name_to_handle_at, open_by_handle_at,
+ syncfs, setns, sendmmsg
+
+diff -Nrup a/config.h.in b/config.h.in
+--- a/config.h.in 2012-01-01 05:16:32.000000000 -0700
++++ b/config.h.in 2012-01-01 20:41:26.632439843 -0700
+@@ -187,6 +187,9 @@
+ /* Define if `.ctors' and `.dtors' sections shouldn't be used. */
+ #undef NO_CTORS_DTORS_SECTIONS
+
++/* Define if Systemtap <sys/sdt.h> probes should be defined. */
++#undef USE_STAP_PROBE
+
-+* The implementation of the malloc family of functions is completely replaced
-+ by a new implementation by Doug Lea with many improvements by Wolfram Gloger.
-+ The implementation uses the mmap function (if available) and it is
-+ optimized for the use in multi threaded programs.
+ /*
+ */
+
+diff -Nrup a/configure b/configure
+--- a/configure 2012-01-01 20:40:50.423446105 -0700
++++ b/configure 2012-01-01 20:41:26.634439843 -0700
+@@ -791,6 +791,7 @@ enable_kernel
+ enable_all_warnings
+ enable_multi_arch
+ enable_nss_crypt
++enable_systemtap
+ with_cpu
+ '
+ ac_precious_vars='build_alias
+@@ -1450,6 +1451,7 @@ Optional Features:
+ --enable-multi-arch enable single DSO with optimizations for multiple
+ architectures
+ --enable-nss-crypt enable libcrypt to use nss
++ --enable-systemtap enable systemtap static probe points [default=no]
+
+ Optional Packages:
+ --with-PACKAGE[=ARG] use PACKAGE [ARG=yes]
+@@ -3804,6 +3806,51 @@ else
+ fi
+
+
++# Check whether --enable-systemtap was given.
++if test "${enable_systemtap+set}" = set; then :
++ enableval=$enable_systemtap; systemtap=$enableval
++else
++ systemtap=no
++fi
+
-+* Ulrich Drepper contributed a MD5 "encryption" for the crypt family of
-+ functions. This new functionality is usable by specifying a special
-+ salt string and it is compatible with implementation on *BSD systems.
++if test x$systemtap != xno; then
++ { $as_echo "$as_me:${as_lineno-$LINENO}: checking for systemtap static probe support" >&5
++$as_echo_n "checking for systemtap static probe support... " >&6; }
++if test "${libc_cv_sdt+set}" = set; then :
++ $as_echo_n "(cached) " >&6
++else
++ old_CFLAGS="$CFLAGS"
++ CFLAGS="-std=gnu99 $CFLAGS"
++ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
++/* end confdefs.h. */
++#include <sys/sdt.h>
++void foo (int i, void *p)
++{
++ asm ("" STAP_PROBE_ASM (foo, bar, STAP_PROBE_ASM_TEMPLATE (2)) ""
++ :: STAP_PROBE_ASM_OPERANDS (2, i, p));
++}
++_ACEOF
++if ac_fn_c_try_compile "$LINENO"; then :
++ libc_cv_sdt=yes
++else
++ libc_cv_sdt=no
++fi
++rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
++ CFLAGS="$old_CFLAGS"
++fi
++{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $libc_cv_sdt" >&5
++$as_echo "$libc_cv_sdt" >&6; }
++ if test $libc_cv_sdt = yes; then
++ $as_echo "#define USE_STAP_PROBE 1" >>confdefs.h
+
-+* Lots of functions from the XPG4.2 standard were added by Ulrich Drepper:
-+ `getsubopt' to handle second level command line options, `bsd_signal'
-+ to access BSD style `signal' functionality, the obsolete `regexp' style
-+ expression matcher.
++ else
++ { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
++$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
++as_fn_error $? "systemtap support needs sys/sdt.h with asm support
++See \`config.log' for more details" "$LINENO" 5; }
++ fi
++fi
+
-+* the `lchown' function is available on system which support this
-+ functionality.
+ # The way shlib-versions is used to generate soversions.mk uses a
+ # fairly simplistic model for name recognition that can't distinguish
+ # i486-pc-linux-gnu fully from i486-pc-gnu. So we mutate a $host_os
+diff -Nrup a/configure.in b/configure.in
+--- a/configure.in 2012-01-01 05:16:32.000000000 -0700
++++ b/configure.in 2012-01-01 20:41:26.635439843 -0700
+@@ -290,6 +290,29 @@ else
+ fi
+ AC_SUBST(libc_cv_nss_crypt)
+
++AC_ARG_ENABLE([systemtap],
++ [AS_HELP_STRING([--enable-systemtap],
++ [enable systemtap static probe points @<:@default=no@:>@])],
++ [systemtap=$enableval],
++ [systemtap=no])
++if test x$systemtap != xno; then
++ AC_CACHE_CHECK([for systemtap static probe support], libc_cv_sdt, [dnl
++ old_CFLAGS="$CFLAGS"
++ CFLAGS="-std=gnu99 $CFLAGS"
++ AC_COMPILE_IFELSE([#include <sys/sdt.h>
++void foo (int i, void *p)
++{
++ asm ("" STAP_PROBE_ASM (foo, bar, STAP_PROBE_ASM_TEMPLATE (2)) ""
++ :: STAP_PROBE_ASM_OPERANDS (2, i, p));
++}], [libc_cv_sdt=yes], [libc_cv_sdt=no])
++ CFLAGS="$old_CFLAGS"])
++ if test $libc_cv_sdt = yes; then
++ AC_DEFINE([USE_STAP_PROBE])
++ else
++ AC_MSG_FAILURE([systemtap support needs sys/sdt.h with asm support])
++ fi
++fi
+
-+* The implementation of the shadow password handling function was contributed
-+ by Ulrich Drepper.
+ # The way shlib-versions is used to generate soversions.mk uses a
+ # fairly simplistic model for name recognition that can't distinguish
+ # i486-pc-linux-gnu fully from i486-pc-gnu. So we mutate a $host_os
+diff -Nrup a/csu/Makefile b/csu/Makefile
+--- a/csu/Makefile 2012-01-01 05:16:32.000000000 -0700
++++ b/csu/Makefile 2012-01-01 20:41:26.635439843 -0700
+@@ -93,7 +93,8 @@ omit-deps += $(crtstuff)
+ $(crtstuff:%=$(objpfx)%.o): %.o: %.S $(objpfx)defs.h
+ $(compile.S) -g0 $(ASFLAGS-.os) -o $@
+
+-CFLAGS-initfini.s = -g0 -fPIC -fno-inline-functions $(fno-unit-at-a-time)
++CFLAGS-initfini.s = -g0 -fPIC -fno-inline-functions $(fno-unit-at-a-time) \
++ -fno-asynchronous-unwind-tables
+
+ vpath initfini.c $(sysdirs)
+
+diff -Nrup a/csu/elf-init.c b/csu/elf-init.c
+--- a/csu/elf-init.c 2012-01-01 05:16:32.000000000 -0700
++++ b/csu/elf-init.c 2012-01-01 20:41:26.636439843 -0700
+@@ -64,6 +64,23 @@ extern void (*__init_array_end []) (int,
+ extern void (*__fini_array_start []) (void) attribute_hidden;
+ extern void (*__fini_array_end []) (void) attribute_hidden;
+
++#if defined HAVE_VISIBILITY_ATTRIBUTE \
++ && (defined SHARED || defined LIBC_NONSHARED)
++# define hidden_undef_2(x) #x
++# define hidden_undef_1(x) hidden_undef_2 (x)
++# define hidden_undef(x) \
++ __asm (hidden_undef_1 (ASM_GLOBAL_DIRECTIVE) " " #x); \
++ __asm (".hidden " #x);
++#else
++# define hidden_undef(x)
++#endif
++
++hidden_undef (__preinit_array_start)
++hidden_undef (__preinit_array_end)
++hidden_undef (__init_array_start)
++hidden_undef (__init_array_end)
++hidden_undef (__fini_array_start)
++hidden_undef (__fini_array_end)
+
+ /* These function symbols are provided for the .init/.fini section entry
+ points automagically by the linker. */
+diff -Nrup a/debug/tst-chk1.c b/debug/tst-chk1.c
+--- a/debug/tst-chk1.c 2012-01-01 05:16:32.000000000 -0700
++++ b/debug/tst-chk1.c 2012-01-01 20:41:26.636439843 -0700
+@@ -17,6 +17,9 @@
+ Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
+ 02111-1307 USA. */
+
++/* Hack: make sure GCC doesn't know __chk_fail () will not return. */
++#define __noreturn__
++
+ #include <assert.h>
+ #include <fcntl.h>
+ #include <locale.h>
+@@ -243,7 +246,7 @@ do_test (void)
+ if (memcmp (a.buf1, "aabcdabcjj", 10))
+ FAIL ();
+
+-#if __USE_FORTIFY_LEVEL < 2
++#if __USE_FORTIFY_LEVEL < 2 || !__GNUC_PREREQ (4, 0)
+ /* The following tests are supposed to crash with -D_FORTIFY_SOURCE=2
+ and sufficient GCC support, as the string operations overflow
+ from a.buf1 into a.buf2. */
+@@ -358,7 +361,7 @@ do_test (void)
+ memset (a.buf1 + 9, 'j', l0 + 2);
+ CHK_FAIL_END
+
+-# if __USE_FORTIFY_LEVEL >= 2
++# if __USE_FORTIFY_LEVEL >= 2 && __GNUC_PREREQ (4, 0)
+ # define O 0
+ # else
+ # define O 1
+diff -Nrup a/elf/Makefile b/elf/Makefile
+--- a/elf/Makefile 2012-01-01 05:16:32.000000000 -0700
++++ b/elf/Makefile 2012-01-01 20:41:26.637439843 -0700
+@@ -135,6 +135,7 @@ include ../Makeconfig
+ ifeq ($(unwind-find-fde),yes)
+ routines += unwind-dw2-fde-glibc
+ shared-only-routines += unwind-dw2-fde-glibc
++CFLAGS-unwind-dw2-fde-glibc.c += -fno-strict-aliasing
+ endif
+
+ before-compile = $(objpfx)trusted-dirs.h
+@@ -505,7 +506,8 @@ CFLAGS-ldconfig.c = $(SYSCONF-FLAGS) -D'
+ CFLAGS-dl-cache.c = $(SYSCONF-FLAGS)
+ CFLAGS-cache.c = $(SYSCONF-FLAGS)
+
+-CPPFLAGS-.os += $(if $(filter $(@F),$(patsubst %,%.os,$(all-rtld-routines))),-DNOT_IN_libc=1 -DIS_IN_rtld=1)
++CPPFLAGS-.os += $(if $(filter $(@F),$(patsubst %,%.os,$(all-rtld-routines))),\
++ -DNOT_IN_libc=1 -DIS_IN_rtld=1 -DIN_LIB=rtld)
+
+ test-modules = $(addprefix $(objpfx),$(addsuffix .so,$(strip $(modules-names))))
+ generated += $(addsuffix .so,$(strip $(modules-names)))
+diff -Nrup a/elf/dl-close.c b/elf/dl-close.c
+--- a/elf/dl-close.c 2012-01-01 05:16:32.000000000 -0700
++++ b/elf/dl-close.c 2012-01-01 20:41:26.638439843 -0700
+@@ -119,17 +119,8 @@ _dl_close_worker (struct link_map *map)
+ if (map->l_direct_opencount > 0 || map->l_type != lt_loaded
+ || dl_close_state != not_pending)
+ {
+- if (map->l_direct_opencount == 0)
+- {
+- if (map->l_type == lt_loaded)
+- dl_close_state = rerun;
+- else if (map->l_type == lt_library)
+- {
+- struct link_map **oldp = map->l_initfini;
+- map->l_initfini = map->l_orig_initfini;
+- _dl_scope_free (oldp);
+- }
+- }
++ if (map->l_direct_opencount == 0 && map->l_type == lt_loaded)
++ dl_close_state = rerun;
+
+ /* There are still references to this object. Do nothing more. */
+ if (__builtin_expect (GLRO(dl_debug_mask) & DL_DEBUG_FILES, 0))
+diff -Nrup a/elf/dl-deps.c b/elf/dl-deps.c
+--- a/elf/dl-deps.c 2012-01-01 05:16:32.000000000 -0700
++++ b/elf/dl-deps.c 2012-01-01 20:41:26.638439843 -0700
+@@ -489,6 +489,7 @@ _dl_map_object_deps (struct link_map *ma
+ nneeded * sizeof needed[0]);
+ atomic_write_barrier ();
+ l->l_initfini = l_initfini;
++ l->l_free_initfini = 1;
+ }
+
+ /* If we have no auxiliary objects just go on to the next map. */
+@@ -689,6 +690,7 @@ Filters not supported with LD_TRACE_PREL
+ l_initfini[nlist] = NULL;
+ atomic_write_barrier ();
+ map->l_initfini = l_initfini;
++ map->l_free_initfini = 1;
+ if (l_reldeps != NULL)
+ {
+ atomic_write_barrier ();
+@@ -697,7 +699,7 @@ Filters not supported with LD_TRACE_PREL
+ _dl_scope_free (old_l_reldeps);
+ }
+ if (old_l_initfini != NULL)
+- map->l_orig_initfini = old_l_initfini;
++ _dl_scope_free (old_l_initfini);
+
+ if (errno_reason)
+ _dl_signal_error (errno_reason == -1 ? 0 : errno_reason, objname,
+diff -Nrup a/elf/dl-init.c b/elf/dl-init.c
+--- a/elf/dl-init.c 2012-01-01 05:16:32.000000000 -0700
++++ b/elf/dl-init.c 2012-01-01 20:41:26.639439843 -0700
+@@ -24,11 +24,9 @@
+ /* Type of the initializer. */
+ typedef void (*init_t) (int, char **, char **);
+
+-#ifndef HAVE_INLINED_SYSCALLS
+ /* Flag, nonzero during startup phase. */
+ extern int _dl_starting_up;
+ extern int _dl_starting_up_internal attribute_hidden;
+-#endif
+
+
+ static void
+@@ -133,9 +131,7 @@ _dl_init (struct link_map *main_map, int
+ while (i-- > 0)
+ call_init (main_map->l_initfini[i], argc, argv, env);
+
+-#ifndef HAVE_INLINED_SYSCALLS
+ /* Finished starting up. */
+ INTUSE(_dl_starting_up) = 0;
+-#endif
+ }
+ INTDEF (_dl_init)
+diff -Nrup a/elf/dl-libc.c b/elf/dl-libc.c
+--- a/elf/dl-libc.c 2012-01-01 05:16:32.000000000 -0700
++++ b/elf/dl-libc.c 2012-01-01 20:41:26.639439843 -0700
+@@ -270,13 +270,13 @@ libc_freeres_fn (free_mem)
+
+ for (Lmid_t ns = 0; ns < GL(dl_nns); ++ns)
+ {
+- /* Remove all additional names added to the objects. */
+ for (l = GL(dl_ns)[ns]._ns_loaded; l != NULL; l = l->l_next)
+ {
+ struct libname_list *lnp = l->l_libname->next;
+
+ l->l_libname->next = NULL;
+
++ /* Remove all additional names added to the objects. */
+ while (lnp != NULL)
+ {
+ struct libname_list *old = lnp;
+@@ -284,6 +284,10 @@ libc_freeres_fn (free_mem)
+ if (! old->dont_free)
+ free (old);
+ }
++
++ /* Free the initfini dependency list. */
++ if (l->l_free_initfini)
++ free (l->l_initfini);
+ }
+
+ if (__builtin_expect (GL(dl_ns)[ns]._ns_global_scope_alloc, 0) != 0
+diff -Nrup a/elf/dl-load.c b/elf/dl-load.c
+--- a/elf/dl-load.c 2012-01-01 05:16:32.000000000 -0700
++++ b/elf/dl-load.c 2012-01-01 20:41:26.640439842 -0700
+@@ -250,8 +250,7 @@ is_trusted_path_normalize (const char *p
+
+
+ static size_t
+-is_dst (const char *start, const char *name, const char *str,
+- int is_path, int secure)
++is_dst (const char *start, const char *name, const char *str, int is_path)
+ {
+ size_t len;
+ bool is_curly = false;
+@@ -280,12 +279,6 @@ is_dst (const char *start, const char *n
+ && (!is_path || name[len] != ':'))
+ return 0;
+
+- if (__builtin_expect (secure, 0)
+- && ((name[len] != '\0' && name[len] != '/'
+- && (!is_path || name[len] != ':'))
+- || (name != start + 1 && (!is_path || name[-2] != ':'))))
+- return 0;
+-
+ return len;
+ }
+
+@@ -300,13 +293,10 @@ _dl_dst_count (const char *name, int is_
+ {
+ size_t len;
+
+- /* $ORIGIN is not expanded for SUID/GUID programs (except if it
+- is $ORIGIN alone) and it must always appear first in path. */
+ ++name;
+- if ((len = is_dst (start, name, "ORIGIN", is_path,
+- INTUSE(__libc_enable_secure))) != 0
+- || (len = is_dst (start, name, "PLATFORM", is_path, 0)) != 0
+- || (len = is_dst (start, name, "LIB", is_path, 0)) != 0)
++ if ((len = is_dst (start, name, "ORIGIN", is_path)) != 0
++ || (len = is_dst (start, name, "PLATFORM", is_path)) != 0
++ || (len = is_dst (start, name, "LIB", is_path)) != 0)
+ ++cnt;
+
+ name = strchr (name + len, '$');
+@@ -339,9 +329,16 @@ _dl_dst_substitute (struct link_map *l,
+ size_t len;
+
+ ++name;
+- if ((len = is_dst (start, name, "ORIGIN", is_path,
+- INTUSE(__libc_enable_secure))) != 0)
++ if ((len = is_dst (start, name, "ORIGIN", is_path)) != 0)
+ {
++ /* For SUID/GUID programs $ORIGIN must always appear
++ first in a path element. */
++ if (__builtin_expect (INTUSE(__libc_enable_secure), 0)
++ && ((name[len] != '\0' && name[len] != '/'
++ && (!is_path || name[len] != ':'))
++ || (name != start + 1 && (!is_path || name[-2] != ':'))))
++ repl = (const char *) -1;
++ else
+ #ifndef SHARED
+ if (l == NULL)
+ repl = _dl_get_origin ();
+@@ -352,9 +349,9 @@ _dl_dst_substitute (struct link_map *l,
+ check_for_trusted = (INTUSE(__libc_enable_secure)
+ && l->l_type == lt_executable);
+ }
+- else if ((len = is_dst (start, name, "PLATFORM", is_path, 0)) != 0)
++ else if ((len = is_dst (start, name, "PLATFORM", is_path)) != 0)
+ repl = GLRO(dl_platform);
+- else if ((len = is_dst (start, name, "LIB", is_path, 0)) != 0)
++ else if ((len = is_dst (start, name, "LIB", is_path)) != 0)
+ repl = DL_DST_LIB;
+
+ if (repl != NULL && repl != (const char *) -1)
+@@ -374,6 +371,7 @@ _dl_dst_substitute (struct link_map *l,
+ element, but keep an empty element at the end. */
+ if (wp == result && is_path && *name == ':' && name[1] != '\0')
+ ++name;
++ check_for_trusted = false;
+ }
+ else
+ /* No DST we recognize. */
+diff -Nrup a/elf/dl-support.c b/elf/dl-support.c
+--- a/elf/dl-support.c 2012-01-01 05:16:32.000000000 -0700
++++ b/elf/dl-support.c 2012-01-01 20:41:26.641439841 -0700
+@@ -82,10 +82,8 @@ unsigned long long _dl_load_adds;
+ create a fake scope containing nothing. */
+ struct r_scope_elem _dl_initial_searchlist;
+
+-#ifndef HAVE_INLINED_SYSCALLS
+ /* Nonzero during startup. */
+ int _dl_starting_up = 1;
+-#endif
+
+ /* Random data provided by the kernel. */
+ void *_dl_random;
+diff -Nrup a/elf/ldconfig.c b/elf/ldconfig.c
+--- a/elf/ldconfig.c 2012-01-01 05:16:32.000000000 -0700
++++ b/elf/ldconfig.c 2012-01-01 20:41:26.641439841 -0700
+@@ -1034,17 +1034,19 @@ search_dirs (void)
+
+
+ static void parse_conf_include (const char *config_file, unsigned int lineno,
+- bool do_chroot, const char *pattern);
++ const char *prefix, bool do_chroot,
++ const char *pattern);
+
+ /* Parse configuration file. */
+ static void
+-parse_conf (const char *filename, bool do_chroot)
++parse_conf (const char *filename, const char *prefix, bool do_chroot)
+ {
+ FILE *file = NULL;
+ char *line = NULL;
+ const char *canon;
+ size_t len = 0;
+ unsigned int lineno;
++ size_t prefix_len = prefix ? strlen (prefix) : 0;
+
+ if (do_chroot && opt_chroot)
+ {
+@@ -1105,7 +1107,14 @@ parse_conf (const char *filename, bool d
+ cp += 8;
+ while ((dir = strsep (&cp, " \t")) != NULL)
+ if (dir[0] != '\0')
+- parse_conf_include (filename, lineno, do_chroot, dir);
++ parse_conf_include (filename, lineno, prefix, do_chroot, dir);
++ }
++ else if (prefix != NULL)
++ {
++ size_t cp_len = strlen (cp);
++ char new_cp [prefix_len + cp_len + 1];
++ memcpy (mempcpy (new_cp, prefix, prefix_len), cp, cp_len + 1);
++ add_dir (new_cp);
+ }
+ else if (!strncasecmp (cp, "hwcap", 5) && isblank (cp[5]))
+ {
+@@ -1168,7 +1177,7 @@ parse_conf (const char *filename, bool d
+ config files to read. */
+ static void
+ parse_conf_include (const char *config_file, unsigned int lineno,
+- bool do_chroot, const char *pattern)
++ const char *prefix, bool do_chroot, const char *pattern)
+ {
+ if (opt_chroot && pattern[0] != '/')
+ error (EXIT_FAILURE, 0,
+@@ -1200,7 +1209,7 @@ parse_conf_include (const char *config_f
+ {
+ case 0:
+ for (size_t i = 0; i < gl.gl_pathc; ++i)
+- parse_conf (gl.gl_pathv[i], false);
++ parse_conf (gl.gl_pathv[i], prefix, false);
+ globfree64 (&gl);
+ break;
+
+@@ -1243,6 +1252,8 @@ main (int argc, char **argv)
+ /* Set the text message domain. */
+ textdomain (_libc_intl_domainname);
+
++ arch_startup (argc, argv);
+
-+* David Mosberger-Tang changed the SunRPC implementation to be 64bit safe.
+ /* Parse and process arguments. */
+ int remaining;
+ argp_parse (&argp, argc, argv, 0, &remaining, NULL);
+@@ -1352,12 +1363,14 @@ main (int argc, char **argv)
+
+ if (!opt_only_cline)
+ {
+- parse_conf (config_file, true);
++ parse_conf (config_file, NULL, true);
+
+ /* Always add the standard search paths. */
+ add_system_dir (SLIBDIR);
+ if (strcmp (SLIBDIR, LIBDIR))
+ add_system_dir (LIBDIR);
+
-+* POSIX.1g support was added. The <sys/select.h> header is available,
-+ `isfdtype' and `pselect' are implemented. Craig Metz contributed an
-+ implementation of `getaddrinfo'.
-+
-+Version 1.09
++ add_arch_dirs (config_file);
+ }
+
+ const char *aux_cache_file = _PATH_LDCONFIG_AUX_CACHE;
+diff -Nrup a/elf/ldd.bash.in b/elf/ldd.bash.in
+--- a/elf/ldd.bash.in 2012-01-01 05:16:32.000000000 -0700
++++ b/elf/ldd.bash.in 2012-01-01 20:41:26.642439841 -0700
+@@ -167,18 +167,6 @@ warning: you do not have execution permi
+ fi
+ done
+ case $ret in
+- 0)
+- # If the program exits with exit code 5, it means the process has been
+- # invoked with __libc_enable_secure. Fall back to running it through
+- # the dynamic linker.
+- try_trace "$file"
+- rc=$?
+- if [ $rc = 5 ]; then
+- try_trace "$RTLD" "$file"
+- rc=$?
+- fi
+- [ $rc = 0 ] || result=1
+- ;;
+ 1)
+ # This can be a non-ELF binary or no binary at all.
+ nonelf "$file" || {
+@@ -186,7 +174,7 @@ warning: you do not have execution permi
+ result=1
+ }
+ ;;
+- 2)
++ 0|2)
+ try_trace "$RTLD" "$file" || result=1
+ ;;
+ *)
+diff -Nrup a/elf/rtld-Rules b/elf/rtld-Rules
+--- a/elf/rtld-Rules 2012-01-01 05:16:32.000000000 -0700
++++ b/elf/rtld-Rules 2012-01-01 20:41:26.642439841 -0700
+@@ -1,7 +1,7 @@
+ # Subroutine makefile for compiling libc modules linked into dynamic linker.
+
+ # Copyright (C) 2002,2003,2005,2006,2008,2010,2011
+-# Free Software Foundation, Inc.
++# 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
+@@ -131,6 +131,6 @@ ifdef rtld-depfiles
+ endif
+
+ # This here is the whole point of all the shenanigans.
+-rtld-CPPFLAGS := -DNOT_IN_libc=1 -DIS_IN_rtld=1
++rtld-CPPFLAGS := -DNOT_IN_libc=1 -DIS_IN_rtld=1 -DIN_LIB=rtld
+
+ endif
+diff -Nrup a/elf/rtld.c b/elf/rtld.c
+--- a/elf/rtld.c 2012-01-01 05:16:32.000000000 -0700
++++ b/elf/rtld.c 2012-01-01 20:41:26.643439841 -0700
+@@ -107,7 +107,6 @@ static struct audit_list
+ struct audit_list *next;
+ } *audit_list;
+
+-#ifndef HAVE_INLINED_SYSCALLS
+ /* Set nonzero during loading and initialization of executable and
+ libraries, cleared before the executable's entry point runs. This
+ must not be initialized to nonzero, because the unused dynamic
+@@ -117,7 +116,6 @@ static struct audit_list
+ never be called. */
+ int _dl_starting_up = 0;
+ INTVARDEF(_dl_starting_up)
+-#endif
+
+ /* This is the structure which defines all variables global to ld.so
+ (except those which cannot be added for some reason). */
+@@ -929,10 +927,8 @@ dl_main (const ElfW(Phdr) *phdr,
+ /* Process the environment variable which control the behaviour. */
+ process_envvars (&mode);
+
+-#ifndef HAVE_INLINED_SYSCALLS
+ /* Set up a flag which tells we are just starting. */
+ INTUSE(_dl_starting_up) = 1;
+-#endif
+
+ if (*user_entry == (ElfW(Addr)) ENTRY_POINT)
+ {
+@@ -1397,7 +1393,9 @@ of this helper program; chances are you
+ char *copy = malloc (len);
+ if (copy == NULL)
+ _dl_fatal_printf ("out of memory\n");
+- l->l_libname->name = l->l_name = memcpy (copy, dsoname, len);
++ l->l_libname->name = memcpy (copy, dsoname, len);
++ if (GLRO(dl_debug_mask))
++ l->l_name = copy;
+ }
+
+ /* Add the vDSO to the object list. */
+@@ -2276,6 +2274,7 @@ ERROR: ld.so: object '%s' cannot be load
+ lnp->dont_free = 1;
+ lnp = lnp->next;
+ }
++ l->l_free_initfini = 0;
+
+ if (l != &GL(dl_rtld_map))
+ _dl_relocate_object (l, l->l_scope, GLRO(dl_lazy) ? RTLD_LAZY : 0,
+@@ -2327,7 +2326,6 @@ ERROR: ld.so: object '%s' cannot be load
+
+ /* Make sure no new search directories have been added. */
+ assert (GLRO(dl_init_all_dirs) == GL(dl_all_dirs));
+-
+ if (! prelinked && rtld_multiple_ref)
+ {
+ /* There was an explicit ref to the dynamic linker as a shared lib.
+diff -Nrup a/extra-lib.mk b/extra-lib.mk
+--- a/extra-lib.mk 2012-01-01 05:16:32.000000000 -0700
++++ b/extra-lib.mk 2012-01-01 20:41:26.644439841 -0700
+@@ -101,4 +101,4 @@ ifneq (,$(cpp-srcs-left))
+ include $(patsubst %,$(..)cppflags-iterator.mk,$(cpp-srcs-left))
+ endif
+
+-CPPFLAGS-$(lib) := -DNOT_IN_libc=1 -DIS_IN_$(lib)=1
++CPPFLAGS-$(lib) := -DNOT_IN_libc=1 -DIS_IN_$(lib)=1 -DIN_LIB=$(lib)
+diff -Nrup a/include/bits/stdlib-ldbl.h b/include/bits/stdlib-ldbl.h
+--- a/include/bits/stdlib-ldbl.h 1969-12-31 17:00:00.000000000 -0700
++++ b/include/bits/stdlib-ldbl.h 2012-01-01 20:41:26.644439841 -0700
+@@ -0,0 +1 @@
++#include <stdlib/bits/stdlib-ldbl.h>
+diff -Nrup a/include/bits/wchar-ldbl.h b/include/bits/wchar-ldbl.h
+--- a/include/bits/wchar-ldbl.h 1969-12-31 17:00:00.000000000 -0700
++++ b/include/bits/wchar-ldbl.h 2012-01-01 20:41:26.644439841 -0700
+@@ -0,0 +1 @@
++#include <wcsmbs/bits/wchar-ldbl.h>
+diff -Nrup a/include/features.h b/include/features.h
+--- a/include/features.h 2012-01-01 05:16:32.000000000 -0700
++++ b/include/features.h 2012-01-01 20:41:26.644439841 -0700
+@@ -310,8 +310,13 @@
+ #endif
+
+ #if defined _FORTIFY_SOURCE && _FORTIFY_SOURCE > 0 \
+- && __GNUC_PREREQ (4, 1) && defined __OPTIMIZE__ && __OPTIMIZE__ > 0
+-# if _FORTIFY_SOURCE > 1
++ && defined __OPTIMIZE__ && __OPTIMIZE__ > 0
++# if !__GNUC_PREREQ (4, 1)
++# ifdef __GNUC_RH_RELEASE__
++# warning _FORTIFY_SOURCE supported only with GCC 4.1 and later
++# endif
++# define __USE_FORTIFY_LEVEL 0
++# elif _FORTIFY_SOURCE > 1
+ # define __USE_FORTIFY_LEVEL 2
+ # else
+ # define __USE_FORTIFY_LEVEL 1
+diff -Nrup a/include/libc-symbols.h b/include/libc-symbols.h
+--- a/include/libc-symbols.h 2012-01-01 05:16:32.000000000 -0700
++++ b/include/libc-symbols.h 2012-01-01 20:41:26.645439841 -0700
+@@ -626,7 +626,7 @@ for linking")
+ # define libc_hidden_proto(name, attrs...) hidden_proto (name, ##attrs)
+ # define libc_hidden_def(name) hidden_def (name)
+ # define libc_hidden_weak(name) hidden_weak (name)
+-# define libc_hidden_nolink(name, version) hidden_nolink (name, libc, version)
++# define libc_hidden_nolink(name, version) hidden_def (name)
+ # define libc_hidden_ver(local, name) hidden_ver (local, name)
+ # define libc_hidden_data_def(name) hidden_data_def (name)
+ # define libc_hidden_data_weak(name) hidden_data_weak (name)
+diff -Nrup a/include/link.h b/include/link.h
+--- a/include/link.h 2012-01-01 05:16:32.000000000 -0700
++++ b/include/link.h 2012-01-01 20:41:26.646439841 -0700
+@@ -1,6 +1,6 @@
+ /* Data structure for communication from the run-time dynamic linker for
+ loaded ELF shared objects.
+- Copyright (C) 1995-2006, 2007, 2009, 2010, 2011 Free Software Foundation, Inc.
++ Copyright (C) 1995-2006, 2007, 2009, 2010 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
+@@ -192,6 +192,9 @@ struct link_map
+ during LD_TRACE_PRELINKING=1
+ contains any DT_SYMBOLIC
+ libraries. */
++ unsigned int l_free_initfini:1; /* Nonzero if l_initfini can be
++ freed, ie. not allocated with
++ the dummy malloc in ld.so. */
+
+ /* Collected information about own RPATH directories. */
+ struct r_search_path_struct l_rpath_dirs;
+@@ -240,9 +243,6 @@ struct link_map
+
+ /* List of object in order of the init and fini calls. */
+ struct link_map **l_initfini;
+- /* The init and fini list generated at startup, saved when the
+- object is also loaded dynamically. */
+- struct link_map **l_orig_initfini;
+
+ /* List of the dependencies introduced through symbol binding. */
+ struct link_map_reldeps
+@@ -290,7 +290,7 @@ struct link_map
+ #endif
+ #ifndef FORCED_DYNAMIC_TLS_OFFSET
+ # if NO_TLS_OFFSET == 0
+-# define FORCED_DYNAMIC_TLS_OFFSET 1
++# define FORCED_DYNAMIC_TLS_OFFSET -1
+ # elif NO_TLS_OFFSET == -1
+ # define FORCED_DYNAMIC_TLS_OFFSET -2
+ # else
+diff -Nrup a/include/stap-probe.h b/include/stap-probe.h
+--- a/include/stap-probe.h 1969-12-31 17:00:00.000000000 -0700
++++ b/include/stap-probe.h 2012-01-01 20:41:26.646439841 -0700
+@@ -0,0 +1,140 @@
++/* Macros for defining Systemtap <sys/sdt.h> static probe points.
++ Copyright (C) 2011 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. */
++
++#ifndef _STAP_PROBE_H
++#define _STAP_PROBE_H 1
++
++#ifdef USE_STAP_PROBE
++
++# include <sys/sdt.h>
++
++/* Our code uses one macro LIBC_PROBE (name, n, arg1, ..., argn).
++
++ Without USE_STAP_PROBE, that does nothing but evaluates all
++ its arguments (to prevent bit rot, unlike e.g. assert).
++
++ Systemtap's header defines the macros STAP_PROBE (provider, name) and
++ STAP_PROBEn (provider, name, arg1, ..., argn). For "provider" we paste
++ in the IN_LIB name (libc, libpthread, etc.) automagically. */
++
++# ifndef NOT_IN_libc
++# define IN_LIB libc
++# elif !defined IN_LIB
++/* This is intentionally defined with extra unquoted commas in it so
++ that macro substitution will bomb out when it is used. We don't
++ just use #error here, so that this header can be included by
++ other headers that use LIBC_PROBE inside their own macros. We
++ only want such headers to fail to compile if those macros are
++ actually used in a context where IN_LIB has not been defined. */
++# define IN_LIB ,,,missing -DIN_LIB=... -- not extra-lib.mk?,,,
++# endif
++
++# define LIBC_PROBE(name, n, ...) \
++ LIBC_PROBE_1 (IN_LIB, name, n, ## __VA_ARGS__)
++
++# define LIBC_PROBE_1(lib, name, n, ...) \
++ STAP_PROBE##n (lib, name, ## __VA_ARGS__)
++
++# define STAP_PROBE0 STAP_PROBE
++
++# define LIBC_PROBE_ASM(name, template) \
++ STAP_PROBE_ASM (IN_LIB, name, template)
++
++# define LIBC_PROBE_ASM_OPERANDS STAP_PROBE_ASM_OPERANDS
++
++#else /* Not USE_STAP_PROBE. */
++
++# ifndef __ASSEMBLER__
++# define LIBC_PROBE(name, n, ...) DUMMY_PROBE##n (__VA_ARGS__)
++# else
++# define LIBC_PROBE(name, n, ...) /* Nothing. */
++# endif
++
++# define LIBC_PROBE_ASM(name, template) /* Nothing. */
++# define LIBC_PROBE_ASM_OPERANDS(n, ...) /* Nothing. */
++
++/* This silliness lets us evaluate all the arguments for each arity
++ of probe. My kingdom for a real macro system. */
++
++# define DUMMY_PROBE0() do {} while (0)
++# define DUMMY_PROBE1(a1) do {} while ((void) (a1), 0)
++# define DUMMY_PROBE2(a1, a2) do {} while ((void) (a1), \
++ (void) (a2), 0)
++# define DUMMY_PROBE3(a1, a2, a3) do {} while ((void) (a1), \
++ (void) (a2), \
++ (void) (a3), 0)
++# define DUMMY_PROBE4(a1, a2, a3, a4) do {} while ((void) (a1), \
++ (void) (a2), \
++ (void) (a3), \
++ (void) (a4), 0)
++# define DUMMY_PROBE5(a1, a2, a3, a4, a5) \
++ do {} while ((void) (a1), \
++ (void) (a2), \
++ (void) (a3), \
++ (void) (a4), \
++ (void) (a5), 0)
++# define DUMMY_PROBE6(a1, a2, a3, a4, a5, a6) \
++ do {} while ((void) (a1), \
++ (void) (a2), \
++ (void) (a3), \
++ (void) (a4), \
++ (void) (a5), \
++ (void) (a6), 0)
++# define DUMMY_PROBE7(a1, a2, a3, a4, a5, a6, a7) \
++ do {} while ((void) (a1), \
++ (void) (a2), \
++ (void) (a3), \
++ (void) (a4), \
++ (void) (a5), \
++ (void) (a6), \
++ (void) (a7), 0)
++# define DUMMY_PROBE8(a1, a2, a3, a4, a5, a6, a7, a8) \
++ do {} while ((void) (a1), \
++ (void) (a2), \
++ (void) (a3), \
++ (void) (a4), \
++ (void) (a5), \
++ (void) (a6), \
++ (void) (a7), \
++ (void) (a8), 0)
++# define DUMMY_PROBE9(a1, a2, a3, a4, a5, a6, a7, a8, a9) \
++ do {} while ((void) (a1), \
++ (void) (a2), \
++ (void) (a3), \
++ (void) (a4), \
++ (void) (a5), \
++ (void) (a6), \
++ (void) (a7), \
++ (void) (a8), \
++ (void) (a9), 0)
++# define DUMMY_PROBE10(a1, a2, a3, a4, a5, a6, a7, a8, a9, a10) \
++ do {} while ((void) (a1), \
++ (void) (a2), \
++ (void) (a3), \
++ (void) (a4), \
++ (void) (a5), \
++ (void) (a6), \
++ (void) (a7), \
++ (void) (a8), \
++ (void) (a9), \
++ (void) (a10), 0)
++
++#endif /* USE_STAP_PROBE. */
++
++#endif /* stap-probe.h */
+diff -Nrup a/include/sys/resource.h b/include/sys/resource.h
+--- a/include/sys/resource.h 2012-01-01 05:16:32.000000000 -0700
++++ b/include/sys/resource.h 2012-01-01 20:41:26.647439841 -0700
+@@ -13,4 +13,5 @@ extern int __getrusage (enum __rusage_wh
+
+ extern int __setrlimit (enum __rlimit_resource __resource,
+ const struct rlimit *__rlimits);
++libc_hidden_proto (__getrlimit)
+ #endif
+diff -Nrup a/inet/Makefile b/inet/Makefile
+--- a/inet/Makefile 2012-01-01 05:16:32.000000000 -0700
++++ b/inet/Makefile 2012-01-01 20:41:26.647439841 -0700
+@@ -57,6 +57,8 @@ tests := htontest test_ifindex tst-ntoa
+
+ include ../Rules
+
++CFLAGS-tst-inet6_rth.c += -fno-strict-aliasing
+
-+* For cross-compilation you should now set `BUILD_CC' instead of `HOST_CC'.
+ ifeq ($(have-thread-library),yes)
+
+ CFLAGS-gethstbyad_r.c = -DUSE_NSCD=1 -fexceptions
+diff -Nrup a/intl/locale.alias b/intl/locale.alias
+--- a/intl/locale.alias 2012-01-01 05:16:32.000000000 -0700
++++ b/intl/locale.alias 2012-01-01 20:41:26.647439841 -0700
+@@ -57,8 +57,6 @@ korean ko_KR.eucKR
+ korean.euc ko_KR.eucKR
+ ko_KR ko_KR.eucKR
+ lithuanian lt_LT.ISO-8859-13
+-no_NO nb_NO.ISO-8859-1
+-no_NO.ISO-8859-1 nb_NO.ISO-8859-1
+ norwegian nb_NO.ISO-8859-1
+ nynorsk nn_NO.ISO-8859-1
+ polish pl_PL.ISO-8859-2
+diff -Nrup a/libio/stdio.h b/libio/stdio.h
+--- a/libio/stdio.h 2012-01-01 05:16:32.000000000 -0700
++++ b/libio/stdio.h 2012-01-01 20:41:26.648439841 -0700
+@@ -169,10 +169,12 @@ typedef _G_fpos64_t fpos64_t;
+ extern struct _IO_FILE *stdin; /* Standard input stream. */
+ extern struct _IO_FILE *stdout; /* Standard output stream. */
+ extern struct _IO_FILE *stderr; /* Standard error output stream. */
++#ifdef __STDC__
+ /* C89/C99 say they're macros. Make them happy. */
+ #define stdin stdin
+ #define stdout stdout
+ #define stderr stderr
++#endif
+
+ __BEGIN_NAMESPACE_STD
+ /* Remove file FILENAME. */
+diff -Nrup a/locale/iso-4217.def b/locale/iso-4217.def
+--- a/locale/iso-4217.def 2012-01-01 05:16:32.000000000 -0700
++++ b/locale/iso-4217.def 2012-01-01 20:41:26.649439841 -0700
+@@ -8,6 +8,7 @@
+ *
+ * !!! The list has to be sorted !!!
+ */
++DEFINE_INT_CURR("ADP") /* Andorran Peseta -> EUR */
+ DEFINE_INT_CURR("AED") /* United Arab Emirates Dirham */
+ DEFINE_INT_CURR("AFN") /* Afghanistan Afgani */
+ DEFINE_INT_CURR("ALL") /* Albanian Lek */
+@@ -15,12 +16,14 @@ DEFINE_INT_CURR("AMD") /* Armenia Dram
+ DEFINE_INT_CURR("ANG") /* Netherlands Antilles */
+ DEFINE_INT_CURR("AOA") /* Angolan Kwanza */
+ DEFINE_INT_CURR("ARS") /* Argentine Peso */
++DEFINE_INT_CURR("ATS") /* Austrian Schilling -> EUR */
+ DEFINE_INT_CURR("AUD") /* Australian Dollar */
+ DEFINE_INT_CURR("AWG") /* Aruba Guilder */
+ DEFINE_INT_CURR("AZM") /* Azerbaijan Manat */
+ DEFINE_INT_CURR("BAM") /* Bosnian and Herzegovina Convertible Mark */
+ DEFINE_INT_CURR("BBD") /* Barbados Dollar */
+ DEFINE_INT_CURR("BDT") /* Bangladesh Taka */
++DEFINE_INT_CURR("BEF") /* Belgian Franc -> EUR */
+ DEFINE_INT_CURR("BGN") /* Bulgarian Lev */
+ DEFINE_INT_CURR("BHD") /* Bahraini Dinar */
+ DEFINE_INT_CURR("BIF") /* Burundi Franc */
+@@ -44,6 +47,7 @@ DEFINE_INT_CURR("CUP") /* Cuban Peso *
+ DEFINE_INT_CURR("CVE") /* Cape Verde Escudo */
+ DEFINE_INT_CURR("CYP") /* Cypriot Pound */
+ DEFINE_INT_CURR("CZK") /* Czech Koruna */
++DEFINE_INT_CURR("DEM") /* German Mark -> EUR */
+ DEFINE_INT_CURR("DJF") /* Djibouti Franc */
+ DEFINE_INT_CURR("DKK") /* Danish Krone (Faroe Islands, Greenland) */
+ DEFINE_INT_CURR("DOP") /* Dominican Republic */
+@@ -51,16 +55,20 @@ DEFINE_INT_CURR("DZD") /* Algerian Dina
+ DEFINE_INT_CURR("EEK") /* Estonian Kroon */
+ DEFINE_INT_CURR("EGP") /* Egyptian Pound */
+ DEFINE_INT_CURR("ERN") /* Eritrean Nakfa */
++DEFINE_INT_CURR("ESP") /* Spanish Peseta -> EUR */
+ DEFINE_INT_CURR("ETB") /* Ethiopian Birr */
+ DEFINE_INT_CURR("EUR") /* European Union Euro */
++DEFINE_INT_CURR("FIM") /* Finnish Markka -> EUR */
+ DEFINE_INT_CURR("FJD") /* Fiji Dollar */
+ DEFINE_INT_CURR("FKP") /* Falkland Islands Pound (Malvinas) */
++DEFINE_INT_CURR("FRF") /* French Franc -> EUR */
+ DEFINE_INT_CURR("GBP") /* British Pound */
+ DEFINE_INT_CURR("GEL") /* Georgia Lari */
+ DEFINE_INT_CURR("GHC") /* Ghana Cedi */
+ DEFINE_INT_CURR("GIP") /* Gibraltar Pound */
+ DEFINE_INT_CURR("GMD") /* Gambian Dalasi */
+ DEFINE_INT_CURR("GNF") /* Guinea Franc */
++DEFINE_INT_CURR("GRD") /* Greek Drachma -> EUR */
+ DEFINE_INT_CURR("GTQ") /* Guatemala Quetzal */
+ DEFINE_INT_CURR("GYD") /* Guyana Dollar */
+ DEFINE_INT_CURR("HKD") /* Hong Kong Dollar */
+@@ -69,12 +77,14 @@ DEFINE_INT_CURR("HRK") /* Croatia Kuna
+ DEFINE_INT_CURR("HTG") /* Haiti Gourde */
+ DEFINE_INT_CURR("HUF") /* Hungarian Forint */
+ DEFINE_INT_CURR("IDR") /* Indonesia Rupiah */
++DEFINE_INT_CURR("IEP") /* Irish Pound -> EUR */
+ DEFINE_INT_CURR("ILS") /* Israeli Shekel */
+ DEFINE_INT_CURR("IMP") /* Isle of Man Pounds */
+ DEFINE_INT_CURR("INR") /* Indian Rupee (Bhutan) */
+ DEFINE_INT_CURR("IQD") /* Iraqi Dinar */
+ DEFINE_INT_CURR("IRR") /* Iranian Rial */
+ DEFINE_INT_CURR("ISK") /* Iceland Krona */
++DEFINE_INT_CURR("ITL") /* Italian Lira -> EUR */
+ DEFINE_INT_CURR("JEP") /* Jersey Pound */
+ DEFINE_INT_CURR("JMD") /* Jamaican Dollar */
+ DEFINE_INT_CURR("JOD") /* Jordanian Dinar */
+@@ -94,6 +104,7 @@ DEFINE_INT_CURR("LKR") /* Sri Lankan Ru
+ DEFINE_INT_CURR("LRD") /* Liberian Dollar */
+ DEFINE_INT_CURR("LSL") /* Lesotho Maloti */
+ DEFINE_INT_CURR("LTL") /* Lithuanian Litas */
++DEFINE_INT_CURR("LUF") /* Luxembourg Franc -> EUR */
+ DEFINE_INT_CURR("LVL") /* Latvia Lat */
+ DEFINE_INT_CURR("LYD") /* Libyan Arab Jamahiriya Dinar */
+ DEFINE_INT_CURR("MAD") /* Moroccan Dirham */
+@@ -114,6 +125,7 @@ DEFINE_INT_CURR("MZM") /* Mozambique Me
+ DEFINE_INT_CURR("NAD") /* Namibia Dollar */
+ DEFINE_INT_CURR("NGN") /* Nigeria Naira */
+ DEFINE_INT_CURR("NIO") /* Nicaragua Cordoba Oro */
++DEFINE_INT_CURR("NLG") /* Netherlands Guilder -> EUR */
+ DEFINE_INT_CURR("NOK") /* Norwegian Krone */
+ DEFINE_INT_CURR("NPR") /* Nepalese Rupee */
+ DEFINE_INT_CURR("NZD") /* New Zealand Dollar */
+@@ -124,6 +136,7 @@ DEFINE_INT_CURR("PGK") /* Papau New Gui
+ DEFINE_INT_CURR("PHP") /* Philippines Peso */
+ DEFINE_INT_CURR("PKR") /* Pakistan Rupee */
+ DEFINE_INT_CURR("PLN") /* Polish Zloty */
++DEFINE_INT_CURR("PTE") /* Portugese Escudo -> EUR */
+ DEFINE_INT_CURR("PYG") /* Paraguay Guarani */
+ DEFINE_INT_CURR("QAR") /* Qatar Rial */
+ DEFINE_INT_CURR("ROL") /* Romanian Leu */
+diff -Nrup a/locale/programs/locarchive.c b/locale/programs/locarchive.c
+--- a/locale/programs/locarchive.c 2012-01-01 05:16:32.000000000 -0700
++++ b/locale/programs/locarchive.c 2012-01-01 20:41:26.649439841 -0700
+@@ -253,9 +253,9 @@ oldlocrecentcmp (const void *a, const vo
+ /* forward decls for below */
+ static uint32_t add_locale (struct locarhandle *ah, const char *name,
+ locale_data_t data, bool replace);
+-static void add_alias (struct locarhandle *ah, const char *alias,
+- bool replace, const char *oldname,
+- uint32_t *locrec_offset_p);
++void add_alias (struct locarhandle *ah, const char *alias,
++ bool replace, const char *oldname,
++ uint32_t *locrec_offset_p);
+
+
+ static bool
+@@ -636,7 +636,7 @@ close_archive (struct locarhandle *ah)
+ #include "../../intl/explodename.c"
+ #include "../../intl/l10nflist.c"
+
+-static struct namehashent *
++struct namehashent *
+ insert_name (struct locarhandle *ah,
+ const char *name, size_t name_len, bool replace)
+ {
+@@ -694,7 +694,7 @@ insert_name (struct locarhandle *ah,
+ return &namehashtab[idx];
+ }
+
+-static void
++void
+ add_alias (struct locarhandle *ah, const char *alias, bool replace,
+ const char *oldname, uint32_t *locrec_offset_p)
+ {
+diff -Nrup a/localedata/ChangeLog b/localedata/ChangeLog
+--- a/localedata/ChangeLog 2012-01-01 05:16:32.000000000 -0700
++++ b/localedata/ChangeLog 2012-01-01 20:41:26.651439841 -0700
+@@ -90,6 +90,14 @@
+ * tests-mbwc/tst_funcs.h (TST_DECL_VARS, TST_HEAD_LOCALE):
+ Remove unused variable.
+
++2011-06-28 Andreas Schwab <schwab at redhat.com>
+
-+* New header file <fstab.h> and new functions `getfsspec', `getfsent' and
-+ friends, for parsing /etc/fstab. This code comes from 4.4 BSD.
++ * charmaps/GB18030: Correct some entries.
+
-+* The new function `daemon' from 4.4 BSD is useful for server programs that
-+ want to put themselves in the background.
++2011-06-21 Andreas Schwab <schwab at redhat.com>
+
-+* Joel Sherrill has contributed support for several standalone boards that
-+ run without an operating system.
++ * charmaps/GB18030: Readd lost characters.
+
-+* `printf', `scanf' and friends now accept a `q' type modifier for long
-+ long int as well as `ll'. Formats using these might be `%qu' or `%lld'.
+ 2011-05-21 Ulrich Drepper <drepper at gmail.com>
+
+ [BZ #12788]
+diff -Nrup a/localedata/Makefile b/localedata/Makefile
+--- a/localedata/Makefile 2012-01-01 05:16:32.000000000 -0700
++++ b/localedata/Makefile 2012-01-01 20:41:26.652439840 -0700
+@@ -224,6 +224,7 @@ $(INSTALL-SUPPORTED-LOCALES): install-lo
+ echo -n '...'; \
+ input=`echo $$locale | sed 's/\([^.]*\)[^@]*\(.*\)/\1\2/'`; \
+ $(LOCALEDEF) --alias-file=../intl/locale.alias \
++ --no-archive \
+ -i locales/$$input -c -f charmaps/$$charset \
+ $(addprefix --prefix=,$(install_root)) $$locale; \
+ echo ' done'; \
+diff -Nrup a/localedata/SUPPORTED b/localedata/SUPPORTED
+--- a/localedata/SUPPORTED 2012-01-01 05:16:32.000000000 -0700
++++ b/localedata/SUPPORTED 2012-01-01 20:41:26.652439840 -0700
+@@ -88,6 +88,7 @@ cy_GB.UTF-8/UTF-8 \
+ cy_GB/ISO-8859-14 \
+ da_DK.UTF-8/UTF-8 \
+ da_DK/ISO-8859-1 \
++da_DK.ISO-8859-15/ISO-8859-15 \
+ de_AT.UTF-8/UTF-8 \
+ de_AT/ISO-8859-1 \
+ de_AT at euro/ISO-8859-15 \
+@@ -119,6 +120,7 @@ en_DK.UTF-8/UTF-8 \
+ en_DK/ISO-8859-1 \
+ en_GB.UTF-8/UTF-8 \
+ en_GB/ISO-8859-1 \
++en_GB.ISO-8859-15/ISO-8859-15 \
+ en_HK.UTF-8/UTF-8 \
+ en_HK/ISO-8859-1 \
+ en_IE.UTF-8/UTF-8 \
+@@ -134,6 +136,7 @@ en_SG.UTF-8/UTF-8 \
+ en_SG/ISO-8859-1 \
+ en_US.UTF-8/UTF-8 \
+ en_US/ISO-8859-1 \
++en_US.ISO-8859-15/ISO-8859-15 \
+ en_ZA.UTF-8/UTF-8 \
+ en_ZA/ISO-8859-1 \
+ en_ZM/UTF-8 \
+@@ -316,6 +319,8 @@ nl_NL/ISO-8859-1 \
+ nl_NL at euro/ISO-8859-15 \
+ nn_NO.UTF-8/UTF-8 \
+ nn_NO/ISO-8859-1 \
++no_NO.UTF-8/UTF-8 \
++no_NO/ISO-8859-1 \
+ nr_ZA/UTF-8 \
+ nso_ZA/UTF-8 \
+ oc_FR.UTF-8/UTF-8 \
+@@ -377,6 +382,7 @@ sv_FI/ISO-8859-1 \
+ sv_FI at euro/ISO-8859-15 \
+ sv_SE.UTF-8/UTF-8 \
+ sv_SE/ISO-8859-1 \
++sv_SE.ISO-8859-15/ISO-8859-15 \
+ sw_KE/UTF-8 \
+ sw_TZ/UTF-8 \
+ ta_IN/UTF-8 \
+diff -Nrup a/localedata/locales/cy_GB b/localedata/locales/cy_GB
+--- a/localedata/locales/cy_GB 2012-01-01 05:16:32.000000000 -0700
++++ b/localedata/locales/cy_GB 2012-01-01 20:41:26.653439839 -0700
+@@ -248,8 +248,11 @@ mon "<U0049><U006F><U006E><U0061
+ d_t_fmt "<U0044><U0079><U0064><U0064><U0020><U0025><U0041><U0020><U0025><U0064><U0020><U006d><U0069><U0073><U0020><U0025><U0042><U0020><U0025><U0059><U0020><U0025><U0054><U0020><U0025><U005A>"
+ d_fmt "<U0025><U0064><U002E><U0025><U006D><U002E><U0025><U0079>"
+ t_fmt "<U0025><U0054>"
+-am_pm "";""
+-t_fmt_ampm ""
++am_pm "<U0041><U004D>";"<U0050><U004D>"
++t_fmt_ampm "<U0025><U006C><U003A><U0025><U004D><U003A><U0025><U0053><U0020><U0025><U0050><U0020><U0025><U005A>"
++date_fmt "<U0025><U0061><U0020><U0025><U0062><U0020><U0025><U0065>/
++<U0020><U0025><U0048><U003A><U0025><U004D><U003A><U0025><U0053><U0020>/
++<U0025><U005A><U0020><U0025><U0059>"
+ END LC_TIME
+
+ LC_MESSAGES
+diff -Nrup a/localedata/locales/en_GB b/localedata/locales/en_GB
+--- a/localedata/locales/en_GB 2012-01-01 05:16:32.000000000 -0700
++++ b/localedata/locales/en_GB 2012-01-01 20:41:26.653439839 -0700
+@@ -116,8 +116,8 @@ mon "<U004A><U0061><U006E><U0075
+ d_t_fmt "<U0025><U0061><U0020><U0025><U0064><U0020><U0025><U0062><U0020><U0025><U0059><U0020><U0025><U0054><U0020><U0025><U005A>"
+ d_fmt "<U0025><U0064><U002F><U0025><U006D><U002F><U0025><U0079>"
+ t_fmt "<U0025><U0054>"
+-am_pm "";""
+-t_fmt_ampm ""
++am_pm "<U0041><U004D>";"<U0050><U004D>"
++t_fmt_ampm "<U0025><U006C><U003A><U0025><U004D><U003A><U0025><U0053><U0020><U0025><U0050><U0020><U0025><U005A>"
+ date_fmt "<U0025><U0061><U0020><U0025><U0062><U0020><U0025><U0065>/
+ <U0020><U0025><U0048><U003A><U0025><U004D><U003A><U0025><U0053><U0020>/
+ <U0025><U005A><U0020><U0025><U0059>"
+diff -Nrup a/localedata/locales/no_NO b/localedata/locales/no_NO
+--- a/localedata/locales/no_NO 1969-12-31 17:00:00.000000000 -0700
++++ b/localedata/locales/no_NO 2012-01-01 20:41:26.653439839 -0700
+@@ -0,0 +1,69 @@
++escape_char /
++comment_char %
++
++% Norwegian language locale for Norway
++% Source: Norsk Standardiseringsforbund
++% Address: University Library,
++% Drammensveien 41, N-9242 Oslo, Norge
++% Contact: Kolbjoern Aamboe
++% Tel: +47 - 22859109
++% Fax: +47 - 22434497
++% Email: kolbjorn.aambo at usit.uio.no
++% Language: no
++% Territory: NO
++% Revision: 4.3
++% Date: 1996-10-15
++% Application: general
++% Users: general
++% Repertoiremap: mnemonic.ds
++% Charset: ISO-8859-1
++% Distribution and use is free, also
++% for commercial purposes.
++
++LC_IDENTIFICATION
++copy "nb_NO"
++END LC_IDENTIFICATION
++
++LC_COLLATE
++copy "nb_NO"
++END LC_COLLATE
++
++LC_CTYPE
++copy "nb_NO"
++END LC_CTYPE
++
++LC_MONETARY
++copy "nb_NO"
++END LC_MONETARY
++
++LC_NUMERIC
++copy "nb_NO"
++END LC_NUMERIC
++
++LC_TIME
++copy "nb_NO"
++END LC_TIME
++
++LC_MESSAGES
++copy "nb_NO"
++END LC_MESSAGES
++
++LC_PAPER
++copy "nb_NO"
++END LC_PAPER
++
++LC_TELEPHONE
++copy "nb_NO"
++END LC_TELEPHONE
++
++LC_MEASUREMENT
++copy "nb_NO"
++END LC_MEASUREMENT
++
++LC_NAME
++copy "nb_NO"
++END LC_NAME
++
++LC_ADDRESS
++copy "nb_NO"
++END LC_ADDRESS
+diff -Nrup a/localedata/locales/zh_TW b/localedata/locales/zh_TW
+--- a/localedata/locales/zh_TW 2012-01-01 05:16:32.000000000 -0700
++++ b/localedata/locales/zh_TW 2012-01-01 20:41:26.653439839 -0700
+@@ -1,7 +1,7 @@
+ comment_char %
+ escape_char /
+ %
+-% Chinese language locale for Taiwan R.O.C.
++% Chinese language locale for Taiwan
+ % charmap: BIG5-CP950
+ %
+ % Original Author:
+@@ -17,7 +17,7 @@ escape_char /
+ % Reference: http://wwwold.dkuug.dk/JTC1/SC22/WG20/docs/n690.pdf
+
+ LC_IDENTIFICATION
+-title "Chinese locale for Taiwan R.O.C."
++title "Chinese locale for Taiwan"
+ source ""
+ address ""
+ contact ""
+@@ -25,7 +25,7 @@ email "bug-glibc-locales at gnu.org"
+ tel ""
+ fax ""
+ language "Chinese"
+-territory "Taiwan R.O.C."
++territory "Taiwan"
+ revision "0.2"
+ date "2000-08-02"
+ %
+diff -Nrup a/login/programs/pt_chown.c b/login/programs/pt_chown.c
+--- a/login/programs/pt_chown.c 2012-01-01 05:16:32.000000000 -0700
++++ b/login/programs/pt_chown.c 2012-01-01 20:41:26.654439839 -0700
+@@ -29,6 +29,7 @@
+ #include <string.h>
+ #include <sys/stat.h>
+ #include <unistd.h>
++#include <fcntl.h>
+ #ifdef HAVE_LIBCAP
+ # include <sys/capability.h>
+ # include <sys/prctl.h>
+@@ -143,7 +144,7 @@ main (int argc, char *argv[])
+ uid_t uid = getuid ();
+ int remaining;
+
+- if (argc == 1 && euid == 0)
++ if (argc == 1 && fcntl (PTY_FILENO, F_GETFD) == 0)
+ {
+ #ifdef HAVE_LIBCAP
+ /* Drop privileges. */
+@@ -176,6 +177,13 @@ main (int argc, char *argv[])
+
+ /* We aren't going to be using privileges, so drop them right now. */
+ setuid (uid);
++#ifdef HAVE_LIBCAP
++ cap_t caps = cap_init ();
++ if (caps == NULL)
++ error (1, errno, "cap_init");
++ cap_set_proc (caps);
++ cap_free (caps);
++#endif
+
+ /* Set locale via LC_ALL. */
+ setlocale (LC_ALL, "");
+@@ -195,9 +203,5 @@ main (int argc, char *argv[])
+ return EXIT_FAILURE;
+ }
+
+- /* Check if we are properly installed. */
+- if (euid != 0)
+- error (FAIL_EXEC, 0, gettext ("needs to be installed setuid `root'"));
+-
+ return EXIT_SUCCESS;
+ }
+diff -Nrup a/malloc/mcheck.c b/malloc/mcheck.c
+--- a/malloc/mcheck.c 2012-01-01 05:16:32.000000000 -0700
++++ b/malloc/mcheck.c 2012-01-01 20:41:26.654439839 -0700
+@@ -25,10 +25,26 @@
+ # include <mcheck.h>
+ # include <stdint.h>
+ # include <stdio.h>
++# include <stdlib.h>
+ # include <libintl.h>
+ # include <errno.h>
+ #endif
+
++#ifdef _LIBC
++extern __typeof (malloc) __libc_malloc;
++extern __typeof (free) __libc_free;
++extern __typeof (realloc) __libc_realloc;
++libc_hidden_proto (__libc_malloc)
++libc_hidden_proto (__libc_realloc)
++libc_hidden_proto (__libc_free)
++libc_hidden_proto (__libc_memalign)
++#else
++# define __libc_malloc(sz) malloc (sz)
++# define __libc_free(ptr) free (ptr)
++# define __libc_realloc(ptr, sz) realloc (ptr, sz)
++# define __libc_memalign(al, sz) memalign (al, sz)
++#endif
++
+ /* Old hook values. */
+ static void (*old_free_hook) (__ptr_t ptr, __const __ptr_t);
+ static __ptr_t (*old_malloc_hook) (__malloc_size_t size, const __ptr_t);
+@@ -199,7 +215,7 @@ freehook (__ptr_t ptr, const __ptr_t cal
+ if (old_free_hook != NULL)
+ (*old_free_hook) (ptr, caller);
+ else
+- free (ptr);
++ __libc_free (ptr);
+ __free_hook = freehook;
+ }
+
+@@ -222,7 +238,7 @@ mallochook (__malloc_size_t size, const
+ hdr = (struct hdr *) (*old_malloc_hook) (sizeof (struct hdr) + size + 1,
+ caller);
+ else
+- hdr = (struct hdr *) malloc (sizeof (struct hdr) + size + 1);
++ hdr = (struct hdr *) __libc_malloc (sizeof (struct hdr) + size + 1);
+ __malloc_hook = mallochook;
+ if (hdr == NULL)
+ return NULL;
+@@ -259,7 +275,7 @@ memalignhook (__malloc_size_t alignment,
+ if (old_memalign_hook != NULL)
+ block = (*old_memalign_hook) (alignment, slop + size + 1, caller);
+ else
+- block = memalign (alignment, slop + size + 1);
++ block = __libc_memalign (alignment, slop + size + 1);
+ __memalign_hook = memalignhook;
+ if (block == NULL)
+ return NULL;
+@@ -320,8 +336,8 @@ reallochook (__ptr_t ptr, __malloc_size_
+ sizeof (struct hdr) + size + 1,
+ caller);
+ else
+- hdr = (struct hdr *) realloc ((__ptr_t) hdr,
+- sizeof (struct hdr) + size + 1);
++ hdr = (struct hdr *) __libc_realloc ((__ptr_t) hdr,
++ sizeof (struct hdr) + size + 1);
+ __free_hook = freehook;
+ __malloc_hook = mallochook;
+ __memalign_hook = memalignhook;
+@@ -381,8 +397,8 @@ mcheck (func)
+ if (__malloc_initialized <= 0 && !mcheck_used)
+ {
+ /* We call malloc() once here to ensure it is initialized. */
+- void *p = malloc (0);
+- free (p);
++ void *p = __libc_malloc (0);
++ __libc_free (p);
+
+ old_free_hook = __free_hook;
+ __free_hook = freehook;
+diff -Nrup a/manual/libc.texinfo b/manual/libc.texinfo
+--- a/manual/libc.texinfo 2012-01-01 05:16:32.000000000 -0700
++++ b/manual/libc.texinfo 2012-01-01 20:41:26.655439839 -0700
+@@ -5,7 +5,7 @@
+ @c setchapternewpage odd
+
+ @comment Tell install-info what to do.
+- at dircategory Software libraries
++ at dircategory Libraries
+ @direntry
+ * Libc: (libc). C library.
+ @end direntry
+diff -Nrup a/misc/sys/cdefs.h b/misc/sys/cdefs.h
+--- a/misc/sys/cdefs.h 2012-01-01 05:16:32.000000000 -0700
++++ b/misc/sys/cdefs.h 2012-01-01 20:41:26.655439839 -0700
+@@ -146,7 +146,10 @@
+ #define __bos(ptr) __builtin_object_size (ptr, __USE_FORTIFY_LEVEL > 1)
+ #define __bos0(ptr) __builtin_object_size (ptr, 0)
+
+-#if __GNUC_PREREQ (4,3)
++#if __GNUC_PREREQ (4,3) \
++ || (defined __GNUC_RH_RELEASE__ && __GNUC__ == 4 \
++ && __GNUC_MINOR__ == 1 && __GNUC_PATCHLEVEL__ == 2 \
++ && __GNUC_RH_RELEASE__ >= 31)
+ # define __warndecl(name, msg) \
+ extern void name (void) __attribute__((__warning__ (msg)))
+ # define __warnattr(msg) __attribute__((__warning__ (msg)))
+@@ -316,10 +319,16 @@
+
+ /* GCC 4.3 and above with -std=c99 or -std=gnu99 implements ISO C99
+ inline semantics, unless -fgnu89-inline is used. */
+-#if !defined __cplusplus || __GNUC_PREREQ (4,3)
++#if !defined __cplusplus || __GNUC_PREREQ (4,3) \
++ || (defined __GNUC_RH_RELEASE__ && __GNUC__ == 4 \
++ && __GNUC_MINOR__ == 1 && __GNUC_PATCHLEVEL__ == 2 \
++ && __GNUC_RH_RELEASE__ >= 31)
+ # if defined __GNUC_STDC_INLINE__ || defined __cplusplus
+ # define __extern_inline extern __inline __attribute__ ((__gnu_inline__))
+-# if __GNUC_PREREQ (4,3)
++# if __GNUC_PREREQ (4,3) \
++ || (defined __GNUC_RH_RELEASE__ && __GNUC__ == 4 \
++ && __GNUC_MINOR__ == 1 && __GNUC_PATCHLEVEL__ == 2 \
++ && __GNUC_RH_RELEASE__ >= 31)
+ # define __extern_always_inline \
+ extern __always_inline __attribute__ ((__gnu_inline__, __artificial__))
+ # else
+@@ -339,7 +348,10 @@
+
+ /* GCC 4.3 and above allow passing all anonymous arguments of an
+ __extern_always_inline function to some other vararg function. */
+-#if __GNUC_PREREQ (4,3)
++#if __GNUC_PREREQ (4,3) \
++ || (defined __GNUC_RH_RELEASE__ && __GNUC__ == 4 \
++ && __GNUC_MINOR__ == 1 && __GNUC_PATCHLEVEL__ == 2 \
++ && __GNUC_RH_RELEASE__ >= 31)
+ # define __va_arg_pack() __builtin_va_arg_pack ()
+ # define __va_arg_pack_len() __builtin_va_arg_pack_len ()
+ #endif
+diff -Nrup a/nis/Makefile b/nis/Makefile
+--- a/nis/Makefile 2012-01-01 05:16:32.000000000 -0700
++++ b/nis/Makefile 2012-01-01 20:41:26.656439839 -0700
+@@ -23,9 +23,9 @@ subdir := nis
+
+ aux := nis_hash
+
++headers := $(wildcard rpcsvc/*.[hx])
+ distribute := nss-nis.h nss-nisplus.h nis_intern.h Banner \
+- nisplus-parser.h nis_xdr.h nss \
+- $(wildcard rpcsvc/*.[hx])
++ nisplus-parser.h nis_xdr.h nss
+
+ # These are the databases available for the nis (and perhaps later nisplus)
+ # service. This must be a superset of the services in nss.
+@@ -69,6 +69,8 @@ libnss_nisplus-inhibit-o = $(filter-out
+
+ include ../Rules
+
++CFLAGS-nis_findserv.c += -fno-strict-aliasing
++CFLAGS-ypclnt.c += -fno-strict-aliasing
+
+ $(objpfx)libnss_compat.so: $(objpfx)libnsl.so$(libnsl.so-version)
+ $(objpfx)libnss_nis.so: $(objpfx)libnsl.so$(libnsl.so-version) \
+diff -Nrup a/nis/nss b/nis/nss
+--- a/nis/nss 2012-01-01 05:16:32.000000000 -0700
++++ b/nis/nss 2012-01-01 20:41:26.656439839 -0700
+@@ -25,7 +25,7 @@
+ # memory with every getXXent() call. Otherwise each getXXent() call
+ # might result into a network communication with the server to get
+ # the next entry.
+-#SETENT_BATCH_READ=TRUE
++SETENT_BATCH_READ=TRUE
+ #
+ # ADJUNCT_AS_SHADOW
+ # If set to TRUE, the passwd routines in the NIS NSS module will not
+diff -Nrup a/nptl/ChangeLog b/nptl/ChangeLog
+--- a/nptl/ChangeLog 2012-01-01 05:16:32.000000000 -0700
++++ b/nptl/ChangeLog 2012-01-01 20:41:26.659439839 -0700
+@@ -210,6 +210,51 @@
+ clearing memory.
+ Patch partly by Robert Rex <robert.rex at exasol.com>.
+
++2011-02-22 Rayson Ho <rho at redhat.com>
++
++ * sysdeps/unix/sysv/linux/i386/lowlevellock.h: Low-level SystemTap
++ probes for i386.
++ * sysdeps/unix/sysv/linux/i386/i486/lowlevellock.S: Likewise.
++ * sysdeps/unix/sysv/linux/i386/i486/lowlevellock.S: Likewise.
++ * sysdeps/unix/sysv/linux/i386/i486/pthread_cond_broadcast.S: Likewise.
++ * sysdeps/unix/sysv/linux/i386/i486/pthread_cond_signal.S: Likewise.
++ * sysdeps/unix/sysv/linux/i386/i486/pthread_cond_timedwait.S: Likewise.
++ * sysdeps/unix/sysv/linux/i386/i486/pthread_cond_wait.S: Likewise.
++ * sysdeps/unix/sysv/linux/i386/i486/pthread_rwlock_rdlock.S: Likewise.
++ * sysdeps/unix/sysv/linux/i386/i486/pthread_rwlock_wrlock.S: Likewise.
++
++2011-02-09 Rayson Ho <rho at redhat.com>
++
++ * DESIGN-systemtap-probes.txt: New file.
++ * pthread_cond_broadcast.c: SystemTap probes.
++ * pthread_cond_init.c: Likewise.
++ * pthread_cond_signal.c: Likewise.
++ * pthread_cond_wait.c: Likewise.
++ * pthread_cond_destroy.c: Likewise.
++ * pthread_create.c: Likewise.
++ * pthread_join.c: Likewise.
++ * pthread_mutex_destroy.c: Likewise.
++ * pthread_mutex_init.c: Likewise.
++ * pthread_mutex_lock.c: Likewise.
++ * pthread_mutex_timedlock.c: Likewise.
++ * pthread_mutex_unlock.c: Likewise.
++ * pthread_rwlock_destroy.c: Likewise.
++ * pthread_rwlock_rdlock.c: Likewise.
++ * pthread_rwlock_unlock.c: Likewise.
++ * pthread_rwlock_wrlock.c: Likewise.
++ * sysdeps/unix/sysv/linux/x86_64/lowlevellock.S: Likewise.
++ * sysdeps/unix/sysv/linux/x86_64/lowlevellock.h: Likewise.
++ * sysdeps/unix/sysv/linux/x86_64/pthread_cond_broadcast.S: Likewise.
++ * sysdeps/unix/sysv/linux/x86_64/pthread_cond_signal.S: Likewise.
++ * sysdeps/unix/sysv/linux/x86_64/pthread_cond_timedwait.S: Likewise.
++ * sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S: Likewise.
++ * sysdeps/unix/sysv/linux/x86_64/pthread_rwlock_rdlock.S: Likewise.
++ * sysdeps/unix/sysv/linux/x86_64/pthread_rwlock_wrlock.S: Likewise.
++
++2010-07-23 Roland McGrath <roland at redhat.com>
++
++ * pthread_create.c (start_thread): Define pthread_start LIBC_PROBE.
++
+ 2011-01-19 Roland McGrath <roland at redhat.com>
+
+ * pthread_cond_wait.c (__pthread_cond_wait): Fix comment typo.
+@@ -4939,6 +4984,11 @@
+ Move definition inside libpthread, libc, librt check. Provide
+ definition for rtld.
+
++2004-09-02 Jakub Jelinek <jakub at redhat.com>
+
-+* All of the code taken from BSD (notably most of the math and networking
-+ routines) has been updated from the BSD 4.4-Lite release.
++ * pthread_cond_destroy.c (__pthread_cond_destroy): If there are
++ waiters, awake all waiters on the associated mutex.
+
-+* The resolver code has been updated from the BIND-4.9.3-BETA9 release.
+ 2004-09-02 Ulrich Drepper <drepper at redhat.com>
+
+ * sysdeps/alpha/jmpbuf-unwind.h: Define __libc_unwind_longjmp.
+@@ -7013,6 +7063,11 @@
+
+ * Makefile [$(build-shared) = yes] (tests): Depend on $(test-modules).
+
++2003-07-22 Jakub Jelinek <jakub at redhat.com>
+
-+* The new functions `getdomainname' and `setdomainname' fetch or change the
-+ YP/NIS domain name. These are system calls which exist on systems which
-+ have YP (aka NIS).
++ * descr.h: Don't include lowlevellock.h, pthreaddef.h and dl-sysdep.h
++ if __need_struct_pthread_size, instead define lll_lock_t.
+
-+* The time zone data files have been updated for the latest international
-+ conventions.
+ 2003-07-25 Jakub Jelinek <jakub at redhat.com>
+
+ * tst-cancel17.c (do_test): Check if aio_cancel failed.
+diff -Nrup a/nptl/DESIGN-systemtap-probes.txt b/nptl/DESIGN-systemtap-probes.txt
+--- a/nptl/DESIGN-systemtap-probes.txt 1969-12-31 17:00:00.000000000 -0700
++++ b/nptl/DESIGN-systemtap-probes.txt 2012-01-01 20:41:26.660439839 -0700
+@@ -0,0 +1,89 @@
++Systemtap is a dynamic tracing/instrumenting tool available on Linux. Probes
++that are not fired at run time have close to zero overhead.
++
++The following probes are available for NPTL:
++
++Thread creation & Join Probes
++=============================
++pthread_create - probe for pthread_create
++ arg1 = pointer (pthread_t*) to thread
++ arg2 = pointer (pthread_attr_t*) to attr
++ arg3 = pointer (void *) to start_routine
++ arg4 = arguments to start_routine
++pthread_start - probe for actual thread creation
++ arg1 = struct pthread (members include thread ID, process ID)
++ arg2 = address of start_routine
++ arg3 = pointer to the list of arguments
++pthread_join - probe for pthread_join
++ arg1 = thread ID
++pthread_join_ret - probe for pthread_join return
++ arg1 = thread ID
++ arg2 = return value
++
++Lock-related Probes
++===================
++mutex_init - probe for pthread_mutex_init
++ arg1 = address of mutex lock
++mutex_acquired - probe for succ. return of pthread_mutex_lock
++ arg1 = address of mutex lock
++mutex_timedlock_acquired - probe for succ. return of pthread_mutex_timedlock
++ arg1 = address of mutex lock
++mutex_entry - probe for entry to the pthread_mutex_lock function
++ arg1 = address of mutex lock
++mutex_timedlock_entry - probe for entry to the pthread_mutex_timedlock function
++ arg1 = address of mutex lock, arg2 = address of timespec
++mutex_release - probe for pthread_mutex_unlock after the successful release of a
++ mutex lock
++ arg1 = address of mutex lock
++mutex_destroy - probe for pthread_mutex_destroy
++ arg1 = address of mutex lock
++
++wrlock_entry - probe for entry to the pthread_rwlock_wrlock function
++ arg1 = address of rw lock
++rdlock_entry - probe for entry to the pthread_rwlock_rdlock function
++ arg1 = address of rw lock
++
++rwlock_destroy - probe for pthread_rwlock_destroy
++ arg1 = address of rw lock
++wrlock_acquire_write - probe for pthread_rwlock_wrlock (after getting the lock)
++ arg1 = address of rw lock
++rdlock_acquire_read - probe for pthread_rwlock_rdlock after successfully getting
++ the lock
++ arg1 = address of rw lock
++rwlock_unlock - probe for pthread_rwlock_unlock
++ arg1 = address of rw lock
++
++lll_lock_wait - probe in low-level (assembly language) locking code, only fired
++ when futex/FUTEX_WAIT is called (i.e. when trying to acquire a
++ contented lock)
++ arg1 = pointer to futex
++ arg2 = flags passed to the futex system call
++lll_lock_wait_private - probe in low-level (assembly language) locking code,
++ only fired when futex/FUTEX_WAIT is called (i.e. when
++ trying to acquire a contented lock)
++ arg1 = pointer to futex
++
++lll_futex_wake - probe in low-level (assembly language) locking code, only fired
++ when futex (FUTEX_WAKE) is called
++ arg1 = pointer to futex
++ arg2 = number of processes to wake
++ arg3 = additional flags
++
++Condition variable Probes
++=========================
++cond_init - probe for pthread_cond_init
++ arg1 = condition
++ arg2 = attr
++cond_destroy - probe for pthread_cond_destroy
++ arg1 = cond
++cond_wait - probe for pthread_cond_wait
++ arg1 = condition
++ arg2 = mutex lock
++cond_timedwait - probe for pthread_cond_timedwait
++ arg1 = condition
++ arg2 = mutex lock
++ arg3 = timespec
++cond_signal - probe for pthread_cond_signal
++ arg1 = condition
++cond_broadcast - probe for pthread_cond_broadcast
++ arg1 = condition
+diff -Nrup a/nptl/Makefile b/nptl/Makefile
+--- a/nptl/Makefile 2012-01-01 05:16:32.000000000 -0700
++++ b/nptl/Makefile 2012-01-01 20:41:26.660439839 -0700
+@@ -342,7 +342,8 @@ endif
+ extra-objs += $(crti-objs) $(crtn-objs)
+ omit-deps += crti crtn
+
+-CFLAGS-pt-initfini.s = -g0 -fPIC -fno-inline-functions $(fno-unit-at-a-time)
++CFLAGS-pt-initfini.s = -g0 -fPIC -fno-inline-functions $(fno-unit-at-a-time) \
++ -fno-asynchronous-unwind-tables
+ endif
+
+ CFLAGS-flockfile.c = -D_IO_MTSAFE_IO
+@@ -529,15 +530,19 @@ $(addprefix $(objpfx), \
+ $(tests) $(xtests) $(test-srcs))): $(objpfx)libpthread.so \
+ $(objpfx)libpthread_nonshared.a
+ $(objpfx)tst-unload: $(common-objpfx)dlfcn/libdl.so
+-# $(objpfx)../libc.so is used instead of $(common-objpfx)libc.so,
++# $(objpfx)linklibc.so is used instead of $(common-objpfx)libc.so,
+ # since otherwise libpthread.so comes before libc.so when linking.
+ $(addprefix $(objpfx), $(tests-reverse)): \
+- $(objpfx)../libc.so $(objpfx)libpthread.so \
++ $(objpfx)linklibc.so $(objpfx)libpthread.so \
+ $(objpfx)libpthread_nonshared.a
+ $(objpfx)../libc.so: $(common-objpfx)libc.so ;
+ $(addprefix $(objpfx),$(tests-static) $(xtests-static)): $(objpfx)libpthread.a
+
+ $(objpfx)tst-atfork2.out: $(objpfx)tst-atfork2mod.so
+
-+* The SunRPC programs `portmap' and `rpcinfo' are now installed in
-+ $(sbindir) (usually /usr/local/sbin) instead of $(bindir).
-+
-+Version 1.08
++$(objpfx)linklibc.so: $(common-objpfx)libc.so
++ ln -s ../libc.so $@
++generated += libclink.so
+ else
+ $(addprefix $(objpfx),$(tests) $(test-srcs)): $(objpfx)libpthread.a
+ endif
+diff -Nrup a/nptl/Versions b/nptl/Versions
+--- a/nptl/Versions 2012-01-01 05:16:32.000000000 -0700
++++ b/nptl/Versions 2012-01-01 20:41:26.661439839 -0700
+@@ -30,6 +30,7 @@ libc {
+ __libc_alloca_cutoff;
+ # Internal libc interface to libpthread
+ __libc_dl_error_tsd;
++ __getrlimit;
+ }
+ }
+
+diff -Nrup a/nptl/nptl-init.c b/nptl/nptl-init.c
+--- a/nptl/nptl-init.c 2012-01-01 05:16:32.000000000 -0700
++++ b/nptl/nptl-init.c 2012-01-01 20:41:26.661439839 -0700
+@@ -415,7 +415,7 @@ __pthread_initialize_minimal_internal (v
+ /* Determine the default allowed stack size. This is the size used
+ in case the user does not specify one. */
+ struct rlimit limit;
+- if (getrlimit (RLIMIT_STACK, &limit) != 0
++ if (__getrlimit (RLIMIT_STACK, &limit) != 0
+ || limit.rlim_cur == RLIM_INFINITY)
+ /* The system limit is not usable. Use an architecture-specific
+ default. */
+diff -Nrup a/nptl/pthread_cond_broadcast.c b/nptl/pthread_cond_broadcast.c
+--- a/nptl/pthread_cond_broadcast.c 2012-01-01 05:16:32.000000000 -0700
++++ b/nptl/pthread_cond_broadcast.c 2012-01-01 20:41:26.662439839 -0700
+@@ -23,6 +23,7 @@
+ #include <lowlevellock.h>
+ #include <pthread.h>
+ #include <pthreadP.h>
++#include <stap-probe.h>
+
+ #include <shlib-compat.h>
+ #include <kernel-features.h>
+@@ -32,6 +33,8 @@ int
+ __pthread_cond_broadcast (cond)
+ pthread_cond_t *cond;
+ {
++ LIBC_PROBE (cond_broadcast, 1, cond);
++
+ int pshared = (cond->__data.__mutex == (void *) ~0l)
+ ? LLL_SHARED : LLL_PRIVATE;
+ /* Make sure we are alone. */
+diff -Nrup a/nptl/pthread_cond_destroy.c b/nptl/pthread_cond_destroy.c
+--- a/nptl/pthread_cond_destroy.c 2012-01-01 05:16:32.000000000 -0700
++++ b/nptl/pthread_cond_destroy.c 2012-01-01 20:41:26.662439839 -0700
+@@ -20,6 +20,7 @@
+ #include <errno.h>
+ #include <shlib-compat.h>
+ #include "pthreadP.h"
++#include <stap-probe.h>
+
+
+ int
+@@ -29,6 +30,8 @@ __pthread_cond_destroy (cond)
+ int pshared = (cond->__data.__mutex == (void *) ~0l)
+ ? LLL_SHARED : LLL_PRIVATE;
+
++ LIBC_PROBE (cond_destroy, 1, cond);
+
-+* The C library now includes support for Sun RPC, from Sun's free
-+ RPCSRC-4.0 distribution. The `portmap', `rpcinfo', and `rpcgen' programs
-+ are included. (There is still no support for YP.)
+ /* Make sure we are alone. */
+ lll_lock (cond->__data.__lock, pshared);
+
+diff -Nrup a/nptl/pthread_cond_init.c b/nptl/pthread_cond_init.c
+--- a/nptl/pthread_cond_init.c 2012-01-01 05:16:32.000000000 -0700
++++ b/nptl/pthread_cond_init.c 2012-01-01 20:41:26.662439839 -0700
+@@ -20,6 +20,7 @@
+
+ #include <shlib-compat.h>
+ #include "pthreadP.h"
++#include <stap-probe.h>
+
+
+ int
+@@ -42,6 +43,8 @@ __pthread_cond_init (cond, cond_attr)
+ ? NULL : (void *) ~0l);
+ cond->__data.__broadcast_seq = 0;
+
++ LIBC_PROBE (cond_init, 2, cond, cond_attr);
++
+ return 0;
+ }
+ versioned_symbol (libpthread, __pthread_cond_init,
+diff -Nrup a/nptl/pthread_cond_signal.c b/nptl/pthread_cond_signal.c
+--- a/nptl/pthread_cond_signal.c 2012-01-01 05:16:32.000000000 -0700
++++ b/nptl/pthread_cond_signal.c 2012-01-01 20:41:26.663439839 -0700
+@@ -26,6 +26,7 @@
+
+ #include <shlib-compat.h>
+ #include <kernel-features.h>
++#include <stap-probe.h>
+
+
+ int
+@@ -35,6 +36,8 @@ __pthread_cond_signal (cond)
+ int pshared = (cond->__data.__mutex == (void *) ~0l)
+ ? LLL_SHARED : LLL_PRIVATE;
+
++ LIBC_PROBE (cond_signal, 1, cond);
+
-+* Tom Quinn has contributed a port of the C library to SGI machines running
-+ Irix 4 (mips-sgi-irix4).
+ /* Make sure we are alone. */
+ lll_lock (cond->__data.__lock, pshared);
+
+diff -Nrup a/nptl/pthread_cond_wait.c b/nptl/pthread_cond_wait.c
+--- a/nptl/pthread_cond_wait.c 2012-01-01 05:16:32.000000000 -0700
++++ b/nptl/pthread_cond_wait.c 2012-01-01 20:41:26.663439839 -0700
+@@ -25,6 +25,7 @@
+ #include <pthreadP.h>
+
+ #include <shlib-compat.h>
++#include <stap-probe.h>
+
+
+ struct _condvar_cleanup_buffer
+@@ -101,6 +102,8 @@ __pthread_cond_wait (cond, mutex)
+ int pshared = (cond->__data.__mutex == (void *) ~0l)
+ ? LLL_SHARED : LLL_PRIVATE;
+
++ LIBC_PROBE (cond_wait, 2, cond, mutex);
+
-+* The new `lockf' function is a simplified interface to the locking
-+ facilities of `fcntl', included for compatibility.
+ /* Make sure we are alone. */
+ lll_lock (cond->__data.__lock, pshared);
+
+diff -Nrup a/nptl/pthread_create.c b/nptl/pthread_create.c
+--- a/nptl/pthread_create.c 2012-01-01 05:16:32.000000000 -0700
++++ b/nptl/pthread_create.c 2012-01-01 20:41:26.664439838 -0700
+@@ -32,6 +32,8 @@
+
+ #include <shlib-compat.h>
+
++#include <stap-probe.h>
+
-+* New time functions `timegm', `timelocal', and `dysize' for compatibility.
+
+ /* Local function to start thread and handle cleanup. */
+ static int start_thread (void *arg);
+@@ -300,6 +302,8 @@ start_thread (void *arg)
+ CANCEL_RESET (oldtype);
+ }
+
++ LIBC_PROBE (pthread_start, 3, (pthread_t) pd, pd->start_routine, pd->arg);
++
+ /* Run the code the user provided. */
+ #ifdef CALL_THREAD_FCT
+ THREAD_SETMEM (pd, result, CALL_THREAD_FCT (pd));
+@@ -557,6 +561,8 @@ __pthread_create_2_1 (newthread, attr, s
+ /* Pass the descriptor to the caller. */
+ *newthread = (pthread_t) pd;
+
++ LIBC_PROBE (pthread_create, 4, newthread, attr, start_routine, arg);
++
+ /* Start the thread. */
+ return create_thread (pd, iattr, STACK_VARIABLES_ARGS);
+ }
+diff -Nrup a/nptl/pthread_join.c b/nptl/pthread_join.c
+--- a/nptl/pthread_join.c 2012-01-01 05:16:32.000000000 -0700
++++ b/nptl/pthread_join.c 2012-01-01 20:41:26.664439838 -0700
+@@ -23,6 +23,8 @@
+ #include <atomic.h>
+ #include "pthreadP.h"
+
++#include <stap-probe.h>
+
-+* New header file <sys/timeb.h> and new function `ftime' for compatibility.
+
+ static void
+ cleanup (void *arg)
+@@ -55,6 +57,8 @@ pthread_join (threadid, thread_return)
+ struct pthread *self = THREAD_SELF;
+ int result = 0;
+
++ LIBC_PROBE (pthread_join, 1, threadid);
++
+ /* During the wait we change to asynchronous cancellation. If we
+ are canceled the thread we are waiting for must be marked as
+ un-wait-ed for again. */
+@@ -110,5 +114,7 @@ pthread_join (threadid, thread_return)
+ __free_tcb (pd);
+ }
+
++ LIBC_PROBE (pthread_join_ret, 3, threadid, result, pd->result);
++
+ return result;
+ }
+diff -Nrup a/nptl/pthread_mutex_destroy.c b/nptl/pthread_mutex_destroy.c
+--- a/nptl/pthread_mutex_destroy.c 2012-01-01 05:16:32.000000000 -0700
++++ b/nptl/pthread_mutex_destroy.c 2012-01-01 20:41:26.665439837 -0700
+@@ -20,11 +20,15 @@
+ #include <errno.h>
+ #include "pthreadP.h"
+
++#include <stap-probe.h>
+
-+* New header files <poll.h> and <sys/poll.h> and new function `poll' for
-+ compatibility.
+
+ int
+ __pthread_mutex_destroy (mutex)
+ pthread_mutex_t *mutex;
+ {
++ LIBC_PROBE (mutex_destroy, 1, mutex);
++
+ if ((mutex->__data.__kind & PTHREAD_MUTEX_ROBUST_NORMAL_NP) == 0
+ && mutex->__data.__nusers != 0)
+ return EBUSY;
+diff -Nrup a/nptl/pthread_mutex_init.c b/nptl/pthread_mutex_init.c
+--- a/nptl/pthread_mutex_init.c 2012-01-01 05:16:32.000000000 -0700
++++ b/nptl/pthread_mutex_init.c 2012-01-01 20:41:26.665439837 -0700
+@@ -24,6 +24,8 @@
+ #include <kernel-features.h>
+ #include "pthreadP.h"
+
++#include <stap-probe.h>
++
+ static const struct pthread_mutexattr default_attr =
+ {
+ /* Default is a normal mutex, not shared between processes. */
+@@ -135,6 +137,8 @@ __pthread_mutex_init (mutex, mutexattr)
+ // mutex->__spins = 0; already done by memset
+ // mutex->__next = NULL; already done by memset
+
++ LIBC_PROBE (mutex_init, 1, mutex);
++
+ return 0;
+ }
+ strong_alias (__pthread_mutex_init, pthread_mutex_init)
+diff -Nrup a/nptl/pthread_mutex_lock.c b/nptl/pthread_mutex_lock.c
+--- a/nptl/pthread_mutex_lock.c 2012-01-01 05:16:32.000000000 -0700
++++ b/nptl/pthread_mutex_lock.c 2012-01-01 20:41:26.665439837 -0700
+@@ -24,6 +24,7 @@
+ #include <not-cancel.h>
+ #include "pthreadP.h"
+ #include <lowlevellock.h>
++#include <stap-probe.h>
+
+
+ #ifndef LLL_MUTEX_LOCK
+@@ -48,6 +49,9 @@ __pthread_mutex_lock (mutex)
+ assert (sizeof (mutex->__size) >= sizeof (mutex->__data));
+
+ unsigned int type = PTHREAD_MUTEX_TYPE (mutex);
+
-+* The error message printed by `assert' for a failed assertion now includes
-+ the name of the program (if using GNU ld) and the name of the calling
-+ function (with versions of GCC that support this).
++ LIBC_PROBE (mutex_entry, 1, mutex);
+
-+* The `psignal' function is now declared in <signal.h>, not <stdio.h>.
+ if (__builtin_expect (type & ~PTHREAD_MUTEX_KIND_MASK_NP, 0))
+ return __pthread_mutex_lock_full (mutex);
+
+@@ -127,6 +131,8 @@ __pthread_mutex_lock (mutex)
+ ++mutex->__data.__nusers;
+ #endif
+
++ LIBC_PROBE (mutex_acquired, 1, mutex);
+
-+* The library now includes the <sys/mman.h> header file and memory
-+ management functions `mmap', `munmap', `mprotect', `msync', and
-+ `madvise', on systems that support those facilities.
+ return 0;
+ }
+
+@@ -467,6 +473,8 @@ __pthread_mutex_lock_full (pthread_mutex
+ ++mutex->__data.__nusers;
+ #endif
+
++ LIBC_PROBE (mutex_acquired, 1, mutex);
++
+ return 0;
+ }
+ #ifndef __pthread_mutex_lock
+diff -Nrup a/nptl/pthread_mutex_timedlock.c b/nptl/pthread_mutex_timedlock.c
+--- a/nptl/pthread_mutex_timedlock.c 2012-01-01 05:16:32.000000000 -0700
++++ b/nptl/pthread_mutex_timedlock.c 2012-01-01 20:41:26.666439837 -0700
+@@ -24,6 +24,8 @@
+ #include <lowlevellock.h>
+ #include <not-cancel.h>
+
++#include <stap-probe.h>
+
-+* The interface for `mcheck' has changed slightly: the function called to
-+ abort the program when an allocation inconsistency is detected now takes
-+ an argument that indicates the type of failure. The new function
-+ `mprobe' lets you request a consistency check for a particular block at
-+ any time (checks are normally done only when you call `free' or `realloc'
-+ on a block).
+
+ int
+ pthread_mutex_timedlock (mutex, abstime)
+@@ -34,6 +36,8 @@ pthread_mutex_timedlock (mutex, abstime)
+ pid_t id = THREAD_GETMEM (THREAD_SELF, tid);
+ int result = 0;
+
++ LIBC_PROBE (mutex_timedlock_entry, 2, mutex, abstime);
+
-+* It is now possible to easily cross-compile the C library, building on one
-+ system a library to run on another machine and/or operating system. All
-+ you need to do is set the variable `HOST_CC' in `configparms' to the
-+ native compiler for programs to run on the machine you are building on (a
-+ few generator programs are used on Unix systems); set `CC' to the
-+ cross-compiler.
+ /* We must not check ABSTIME here. If the thread does not block
+ abstime must not be checked for a valid value. */
+
+@@ -172,6 +176,8 @@ pthread_mutex_timedlock (mutex, abstime)
+
+ ++mutex->__data.__count;
+
++ LIBC_PROBE (mutex_timedlock_acquired, 1, mutex);
+
-+* The new function `fexecve' (only implemented on the GNU system) executes
-+ a program file given a file descriptor already open on the file.
-+
-+Version 1.07
+ return 0;
+ }
+ }
+@@ -242,6 +248,8 @@ pthread_mutex_timedlock (mutex, abstime)
+
+ ++mutex->__data.__count;
+
++ LIBC_PROBE (mutex_timedlock_acquired, 1, mutex);
+
-+* Brendan Kehoe has contributed most of a port to the DEC Alpha
-+ running OSF/1 (alpha-dec-osf1). He says it is 75% complete.
+ return 0;
+ }
+ }
+@@ -377,6 +385,8 @@ pthread_mutex_timedlock (mutex, abstime)
+
+ ++mutex->__data.__count;
+
++ LIBC_PROBE (mutex_timedlock_acquired, 1, mutex);
++
+ return 0;
+ }
+ }
+@@ -477,6 +487,8 @@ pthread_mutex_timedlock (mutex, abstime)
+ /* Record the ownership. */
+ mutex->__data.__owner = id;
+ ++mutex->__data.__nusers;
++
++ LIBC_PROBE (mutex_timedlock_acquired, 1, mutex);
+ }
+
+ out:
+diff -Nrup a/nptl/pthread_mutex_unlock.c b/nptl/pthread_mutex_unlock.c
+--- a/nptl/pthread_mutex_unlock.c 2012-01-01 05:16:32.000000000 -0700
++++ b/nptl/pthread_mutex_unlock.c 2012-01-01 20:41:26.666439837 -0700
+@@ -22,6 +22,7 @@
+ #include <stdlib.h>
+ #include "pthreadP.h"
+ #include <lowlevellock.h>
++#include <stap-probe.h>
+
+ static int
+ internal_function
+@@ -50,6 +51,9 @@ __pthread_mutex_unlock_usercnt (mutex, d
+
+ /* Unlock. */
+ lll_unlock (mutex->__data.__lock, PTHREAD_MUTEX_PSHARED (mutex));
+
-+* You can set the variable `libprefix' in `configparms' to specify a prefix
-+ to be prepended to installed library files; this makes it easy to install
-+ the GNU C library to be linked as `-lgnuc' or whatever.
++ LIBC_PROBE (mutex_release, 1, mutex);
+
-+* The new `stpncpy' is a cross between `stpcpy' and `strncpy': It
-+ copies a limited number of characters from a string, and returns the
-+ address of the last character written.
+ return 0;
+ }
+ else if (__builtin_expect (type == PTHREAD_MUTEX_RECURSIVE_NP, 1))
+@@ -272,6 +276,9 @@ __pthread_mutex_unlock_full (pthread_mut
+ PTHREAD_MUTEX_PSHARED (mutex));
+
+ int oldprio = newval >> PTHREAD_MUTEX_PRIO_CEILING_SHIFT;
+
-+* You no longer need to check for whether the installed `stddef.h' is
-+ compatible with the GNU C library. configure now checks for you.
++ LIBC_PROBE (mutex_release, 1, mutex);
+
-+* You can now define a per-stream `fileno' function to convert the
-+ stream's cookie into an integral file descriptor.
+ return __pthread_tpp_change_priority (oldprio, -1);
+
+ default:
+@@ -279,6 +286,7 @@ __pthread_mutex_unlock_full (pthread_mut
+ return EINVAL;
+ }
+
++ LIBC_PROBE (mutex_release, 1, mutex);
+ return 0;
+ }
+
+diff -Nrup a/nptl/pthread_rwlock_destroy.c b/nptl/pthread_rwlock_destroy.c
+--- a/nptl/pthread_rwlock_destroy.c 2012-01-01 05:16:32.000000000 -0700
++++ b/nptl/pthread_rwlock_destroy.c 2012-01-01 20:41:26.667439837 -0700
+@@ -18,12 +18,15 @@
+ 02111-1307 USA. */
+
+ #include "pthreadP.h"
++#include <stap-probe.h>
+
+
+ int
+ __pthread_rwlock_destroy (rwlock)
+ pthread_rwlock_t *rwlock;
+ {
++ LIBC_PROBE (rwlock_destroy, 1, rwlock);
++
+ /* Nothing to be done. For now. */
+ return 0;
+ }
+diff -Nrup a/nptl/pthread_rwlock_rdlock.c b/nptl/pthread_rwlock_rdlock.c
+--- a/nptl/pthread_rwlock_rdlock.c 2012-01-01 05:16:32.000000000 -0700
++++ b/nptl/pthread_rwlock_rdlock.c 2012-01-01 20:41:26.667439837 -0700
+@@ -22,6 +22,7 @@
+ #include <lowlevellock.h>
+ #include <pthread.h>
+ #include <pthreadP.h>
++#include <stap-probe.h>
+
+
+ /* Acquire read lock for RWLOCK. */
+@@ -31,6 +32,8 @@ __pthread_rwlock_rdlock (rwlock)
+ {
+ int result = 0;
+
++ LIBC_PROBE (rdlock_entry, 1, rwlock);
+
-+* ``malloc (0)'' no longer returns a null pointer. Instead, it
-+ allocates zero bytes of storage, and returns a unique pointer which
-+ you can pass to `realloc' or `free'. The behavior is undefined if
-+ you dereference this pointer.
+ /* Make sure we are alone. */
+ lll_lock (rwlock->__data.__lock, rwlock->__data.__shared);
+
+@@ -49,6 +52,8 @@ __pthread_rwlock_rdlock (rwlock)
+ --rwlock->__data.__nr_readers;
+ result = EAGAIN;
+ }
++ else
++ LIBC_PROBE (rdlock_acquire_read, 1, rwlock);
+
+ break;
+ }
+diff -Nrup a/nptl/pthread_rwlock_unlock.c b/nptl/pthread_rwlock_unlock.c
+--- a/nptl/pthread_rwlock_unlock.c 2012-01-01 05:16:32.000000000 -0700
++++ b/nptl/pthread_rwlock_unlock.c 2012-01-01 20:41:26.668439837 -0700
+@@ -22,11 +22,14 @@
+ #include <lowlevellock.h>
+ #include <pthread.h>
+ #include <pthreadP.h>
++#include <stap-probe.h>
+
+ /* Unlock RWLOCK. */
+ int
+ __pthread_rwlock_unlock (pthread_rwlock_t *rwlock)
+ {
++ LIBC_PROBE (rwlock_unlock, 1, rwlock);
++
+ lll_lock (rwlock->__data.__lock, rwlock->__data.__shared);
+ if (rwlock->__data.__writer)
+ rwlock->__data.__writer = 0;
+diff -Nrup a/nptl/pthread_rwlock_wrlock.c b/nptl/pthread_rwlock_wrlock.c
+--- a/nptl/pthread_rwlock_wrlock.c 2012-01-01 05:16:32.000000000 -0700
++++ b/nptl/pthread_rwlock_wrlock.c 2012-01-01 20:41:26.668439837 -0700
+@@ -22,6 +22,7 @@
+ #include <lowlevellock.h>
+ #include <pthread.h>
+ #include <pthreadP.h>
++#include <stap-probe.h>
+
+
+ /* Acquire write lock for RWLOCK. */
+@@ -31,6 +32,8 @@ __pthread_rwlock_wrlock (rwlock)
+ {
+ int result = 0;
+
++ LIBC_PROBE (wrlock_entry, 1, rwlock);
+
-+* The C library now runs on Sony NEWS m68k machines running either
-+ NewsOS 3 or NewsOS 4.
+ /* Make sure we are alone. */
+ lll_lock (rwlock->__data.__lock, rwlock->__data.__shared);
+
+@@ -41,6 +44,8 @@ __pthread_rwlock_wrlock (rwlock)
+ {
+ /* Mark self as writer. */
+ rwlock->__data.__writer = THREAD_GETMEM (THREAD_SELF, tid);
++
++ LIBC_PROBE (wrlock_acquire_write, 1, rwlock);
+ break;
+ }
+
+diff -Nrup a/nptl/sysdeps/unix/sysv/linux/bits/posix_opt.h b/nptl/sysdeps/unix/sysv/linux/bits/posix_opt.h
+--- a/nptl/sysdeps/unix/sysv/linux/bits/posix_opt.h 2012-01-01 05:16:32.000000000 -0700
++++ b/nptl/sysdeps/unix/sysv/linux/bits/posix_opt.h 2012-01-01 20:41:26.668439837 -0700
+@@ -189,4 +189,7 @@
+ /* Typed memory objects are not available. */
+ #define _POSIX_TYPED_MEMORY_OBJECTS -1
+
++/* Streams are not available. */
++#define _XOPEN_STREAMS -1
++
+ #endif /* bits/posix_opt.h */
+diff -Nrup a/nptl/sysdeps/unix/sysv/linux/i386/Versions b/nptl/sysdeps/unix/sysv/linux/i386/Versions
+--- a/nptl/sysdeps/unix/sysv/linux/i386/Versions 1969-12-31 17:00:00.000000000 -0700
++++ b/nptl/sysdeps/unix/sysv/linux/i386/Versions 2012-01-01 20:41:26.669439837 -0700
+@@ -0,0 +1,6 @@
++libc {
++ GLIBC_PRIVATE {
++ # Internal libc interface to libpthread
++ __uname;
++ }
++}
+diff -Nrup a/nptl/sysdeps/unix/sysv/linux/i386/i486/lowlevellock.S b/nptl/sysdeps/unix/sysv/linux/i386/i486/lowlevellock.S
+--- a/nptl/sysdeps/unix/sysv/linux/i386/i486/lowlevellock.S 2012-01-01 05:16:32.000000000 -0700
++++ b/nptl/sysdeps/unix/sysv/linux/i386/i486/lowlevellock.S 2012-01-01 20:41:26.669439837 -0700
+@@ -22,6 +22,8 @@
+ #include <kernel-features.h>
+ #include <lowlevellock.h>
+
++#include <stap-probe.h>
+
-+* The new `syscall' function is a system-dependent primitive function
-+ for invoking system calls. It has the canonical behavior on Unix
-+ systems, including unreliable return values for some calls (such as
-+ `pipe', `fork' and `getppid').
+ .text
+
+ #ifdef __ASSUME_PRIVATE_FUTEX
+@@ -91,7 +93,8 @@ __lll_lock_wait_private:
+ cmpl %edx, %eax /* NB: %edx == 2 */
+ jne 2f
+
+-1: movl $SYS_futex, %eax
++1: LIBC_PROBE (lll_lock_wait_private, 1, %ebx)
++ movl $SYS_futex, %eax
+ ENTER_KERNEL
+
+ 2: movl %edx, %eax
+diff -Nrup a/nptl/sysdeps/unix/sysv/linux/i386/i486/pthread_cond_broadcast.S b/nptl/sysdeps/unix/sysv/linux/i386/i486/pthread_cond_broadcast.S
+--- a/nptl/sysdeps/unix/sysv/linux/i386/i486/pthread_cond_broadcast.S 2012-01-01 05:16:32.000000000 -0700
++++ b/nptl/sysdeps/unix/sysv/linux/i386/i486/pthread_cond_broadcast.S 2012-01-01 20:41:26.670439837 -0700
+@@ -24,6 +24,7 @@
+ #include <kernel-features.h>
+ #include <pthread-pi-defines.h>
+ #include <pthread-errnos.h>
++#include <stap-probe.h>
+
+ .text
+
+@@ -49,6 +50,8 @@ __pthread_cond_broadcast:
+
+ movl 20(%esp), %ebx
+
++ LIBC_PROBE (cond_broadcast, 1, %edx)
++
+ /* Get internal lock. */
+ movl $1, %edx
+ xorl %eax, %eax
+diff -Nrup a/nptl/sysdeps/unix/sysv/linux/i386/i486/pthread_cond_signal.S b/nptl/sysdeps/unix/sysv/linux/i386/i486/pthread_cond_signal.S
+--- a/nptl/sysdeps/unix/sysv/linux/i386/i486/pthread_cond_signal.S 2012-01-01 05:16:32.000000000 -0700
++++ b/nptl/sysdeps/unix/sysv/linux/i386/i486/pthread_cond_signal.S 2012-01-01 20:41:26.670439837 -0700
+@@ -24,7 +24,7 @@
+ #include <kernel-features.h>
+ #include <pthread-pi-defines.h>
+ #include <pthread-errnos.h>
+-
++#include <stap-probe.h>
+
+ .text
+
+@@ -45,6 +45,8 @@ __pthread_cond_signal:
+
+ movl 12(%esp), %edi
+
++ LIBC_PROBE (cond_signal, 1, %edi)
++
+ /* Get internal lock. */
+ movl $1, %edx
+ xorl %eax, %eax
+diff -Nrup a/nptl/sysdeps/unix/sysv/linux/i386/i486/pthread_cond_timedwait.S b/nptl/sysdeps/unix/sysv/linux/i386/i486/pthread_cond_timedwait.S
+--- a/nptl/sysdeps/unix/sysv/linux/i386/i486/pthread_cond_timedwait.S 2012-01-01 05:16:32.000000000 -0700
++++ b/nptl/sysdeps/unix/sysv/linux/i386/i486/pthread_cond_timedwait.S 2012-01-01 20:41:26.670439837 -0700
+@@ -24,7 +24,7 @@
+ #include <pthread-errnos.h>
+ #include <pthread-pi-defines.h>
+ #include <kernel-features.h>
+-
++#include <stap-probe.h>
+
+ .text
+
+@@ -61,6 +61,8 @@ __pthread_cond_timedwait:
+ movl 20(%esp), %ebx
+ movl 28(%esp), %ebp
+
++ LIBC_PROBE (cond_timedwait, 3, %ebx, 24(%esp), %ebp)
++
+ cmpl $1000000000, 4(%ebp)
+ movl $EINVAL, %eax
+ jae 18f
+diff -Nrup a/nptl/sysdeps/unix/sysv/linux/i386/i486/pthread_cond_wait.S b/nptl/sysdeps/unix/sysv/linux/i386/i486/pthread_cond_wait.S
+--- a/nptl/sysdeps/unix/sysv/linux/i386/i486/pthread_cond_wait.S 2012-01-01 05:16:32.000000000 -0700
++++ b/nptl/sysdeps/unix/sysv/linux/i386/i486/pthread_cond_wait.S 2012-01-01 20:41:26.671439837 -0700
+@@ -25,6 +25,7 @@
+ #include <pthread-errnos.h>
+ #include <pthread-pi-defines.h>
+ #include <kernel-features.h>
++#include <stap-probe.h>
+
+
+ .text
+@@ -61,6 +62,8 @@ __pthread_cond_wait:
+ xorl %esi, %esi
+ movl 20(%esp), %ebx
+
++ LIBC_PROBE (cond_wait, 2, 24(%esp), %ebx)
++
+ /* Get internal lock. */
+ movl $1, %edx
+ xorl %eax, %eax
+diff -Nrup a/nptl/sysdeps/unix/sysv/linux/i386/i486/pthread_rwlock_rdlock.S b/nptl/sysdeps/unix/sysv/linux/i386/i486/pthread_rwlock_rdlock.S
+--- a/nptl/sysdeps/unix/sysv/linux/i386/i486/pthread_rwlock_rdlock.S 2012-01-01 05:16:32.000000000 -0700
++++ b/nptl/sysdeps/unix/sysv/linux/i386/i486/pthread_rwlock_rdlock.S 2012-01-01 20:41:26.671439837 -0700
+@@ -23,6 +23,7 @@
+ #include <pthread-errnos.h>
+ #include <kernel-features.h>
+
++#include <stap-probe.h>
+
+ .text
+
+@@ -41,6 +42,8 @@ __pthread_rwlock_rdlock:
+ xorl %esi, %esi
+ movl 12(%esp), %ebx
+
++ LIBC_PROBE (rdlock_entry, 1, %ebx)
++
+ /* Get the lock. */
+ movl $1, %edx
+ xorl %eax, %eax
+diff -Nrup a/nptl/sysdeps/unix/sysv/linux/i386/i486/pthread_rwlock_wrlock.S b/nptl/sysdeps/unix/sysv/linux/i386/i486/pthread_rwlock_wrlock.S
+--- a/nptl/sysdeps/unix/sysv/linux/i386/i486/pthread_rwlock_wrlock.S 2012-01-01 05:16:32.000000000 -0700
++++ b/nptl/sysdeps/unix/sysv/linux/i386/i486/pthread_rwlock_wrlock.S 2012-01-01 20:41:26.672439837 -0700
+@@ -23,6 +23,7 @@
+ #include <pthread-errnos.h>
+ #include <kernel-features.h>
+
++#include <stap-probe.h>
+
+ .text
+
+@@ -41,6 +42,8 @@ __pthread_rwlock_wrlock:
+ xorl %esi, %esi
+ movl 12(%esp), %ebx
+
++ LIBC_PROBE (wrlock_entry, 1, %ebx)
++
+ /* Get the lock. */
+ movl $1, %edx
+ xorl %eax, %eax
+diff -Nrup a/nptl/sysdeps/unix/sysv/linux/i386/lowlevellock.h b/nptl/sysdeps/unix/sysv/linux/i386/lowlevellock.h
+--- a/nptl/sysdeps/unix/sysv/linux/i386/lowlevellock.h 2012-01-01 05:16:32.000000000 -0700
++++ b/nptl/sysdeps/unix/sysv/linux/i386/lowlevellock.h 2012-01-01 20:41:26.672439837 -0700
+@@ -20,6 +20,8 @@
+ #ifndef _LOWLEVELLOCK_H
+ #define _LOWLEVELLOCK_H 1
+
++#include <stap-probe.h>
++
+ #ifndef __ASSEMBLER__
+ # include <time.h>
+ # include <sys/param.h>
+@@ -226,6 +228,7 @@ LLL_STUB_UNWIND_INFO_END
+ do { \
+ int __ignore; \
+ register __typeof (nr) _nr asm ("edx") = (nr); \
++ LIBC_PROBE (lll_futex_wake, 3, futex, nr, private); \
+ __asm __volatile (LLL_EBX_LOAD \
+ LLL_ENTER_KERNEL \
+ LLL_EBX_LOAD \
+diff -Nrup a/nptl/sysdeps/unix/sysv/linux/i386/smp.h b/nptl/sysdeps/unix/sysv/linux/i386/smp.h
+--- a/nptl/sysdeps/unix/sysv/linux/i386/smp.h 2012-01-01 05:16:32.000000000 -0700
++++ b/nptl/sysdeps/unix/sysv/linux/i386/smp.h 2012-01-01 20:41:26.673439836 -0700
+@@ -37,7 +37,7 @@ is_smp_system (void)
+ char *cp;
+
+ /* Try reading the number using `sysctl' first. */
+- if (uname (&u.uts) == 0)
++ if (__uname (&u.uts) == 0)
+ cp = u.uts.version;
+ else
+ {
+diff -Nrup a/nptl/sysdeps/unix/sysv/linux/kernel-features.h b/nptl/sysdeps/unix/sysv/linux/kernel-features.h
+--- a/nptl/sysdeps/unix/sysv/linux/kernel-features.h 1969-12-31 17:00:00.000000000 -0700
++++ b/nptl/sysdeps/unix/sysv/linux/kernel-features.h 2012-01-01 20:41:26.673439836 -0700
+@@ -0,0 +1,6 @@
++#include_next <kernel-features.h>
++
++/* NPTL can always assume all clone thread flags work. */
++#ifndef __ASSUME_CLONE_THREAD_FLAGS
++# define __ASSUME_CLONE_THREAD_FLAGS 1
++#endif
+diff -Nrup a/nptl/sysdeps/unix/sysv/linux/x86_64/lowlevellock.S b/nptl/sysdeps/unix/sysv/linux/x86_64/lowlevellock.S
+--- a/nptl/sysdeps/unix/sysv/linux/x86_64/lowlevellock.S 2012-01-01 05:16:32.000000000 -0700
++++ b/nptl/sysdeps/unix/sysv/linux/x86_64/lowlevellock.S 2012-01-01 20:41:26.673439836 -0700
+@@ -22,6 +22,8 @@
+ #include <kernel-features.h>
+ #include <lowlevellock.h>
+
++#include <stap-probe.h>
+
-+* The error code `EWOULDBLOCK' is now obsolete; it is always defined
-+ to `EAGAIN', which is the preferred name. On systems whose kernels
-+ use two distinct codes, the C library now translates EWOULDBLOCK to
-+ EAGAIN in every system call function.
-+
-+Version 1.06
+ .text
+
+ #ifdef __ASSUME_PRIVATE_FUTEX
+@@ -87,7 +89,8 @@ __lll_lock_wait_private:
+ cmpl %edx, %eax /* NB: %edx == 2 */
+ jne 2f
+
+-1: movl $SYS_futex, %eax
++1: LIBC_PROBE (lll_lock_wait_private, 1, %rdi)
++ movl $SYS_futex, %eax
+ syscall
+
+ 2: movl %edx, %eax
+@@ -126,7 +129,8 @@ __lll_lock_wait:
+ cmpl %edx, %eax /* NB: %edx == 2 */
+ jne 2f
+
+-1: movl $SYS_futex, %eax
++1: LIBC_PROBE (lll_lock_wait, 2, %rdi, %rsi)
++ movl $SYS_futex, %eax
+ syscall
+
+ 2: movl %edx, %eax
+diff -Nrup a/nptl/sysdeps/unix/sysv/linux/x86_64/lowlevellock.h b/nptl/sysdeps/unix/sysv/linux/x86_64/lowlevellock.h
+--- a/nptl/sysdeps/unix/sysv/linux/x86_64/lowlevellock.h 2012-01-01 05:16:32.000000000 -0700
++++ b/nptl/sysdeps/unix/sysv/linux/x86_64/lowlevellock.h 2012-01-01 20:41:26.674439835 -0700
+@@ -20,6 +20,8 @@
+ #ifndef _LOWLEVELLOCK_H
+ #define _LOWLEVELLOCK_H 1
+
++#include <stap-probe.h>
++
+ #ifndef __ASSEMBLER__
+ # include <time.h>
+ # include <sys/param.h>
+@@ -227,6 +229,7 @@ LLL_STUB_UNWIND_INFO_END
+ do { \
+ int __ignore; \
+ register __typeof (nr) _nr __asm ("edx") = (nr); \
++ LIBC_PROBE (lll_futex_wake, 3, futex, nr, private); \
+ __asm __volatile ("syscall" \
+ : "=a" (__ignore) \
+ : "0" (SYS_futex), "D" (futex), \
+diff -Nrup a/nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_broadcast.S b/nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_broadcast.S
+--- a/nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_broadcast.S 2012-01-01 05:16:32.000000000 -0700
++++ b/nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_broadcast.S 2012-01-01 20:41:26.674439835 -0700
+@@ -25,7 +25,7 @@
+ #include <kernel-features.h>
+ #include <pthread-pi-defines.h>
+ #include <pthread-errnos.h>
+-
++#include <stap-probe.h>
+
+ .text
+
+@@ -35,6 +35,8 @@
+ .align 16
+ __pthread_cond_broadcast:
+
++ LIBC_PROBE (cond_broadcast, 1, %rdi)
++
+ /* Get internal lock. */
+ movl $1, %esi
+ xorl %eax, %eax
+diff -Nrup a/nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_signal.S b/nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_signal.S
+--- a/nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_signal.S 2012-01-01 05:16:32.000000000 -0700
++++ b/nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_signal.S 2012-01-01 20:41:26.675439835 -0700
+@@ -24,6 +24,7 @@
+ #include <pthread-pi-defines.h>
+ #include <kernel-features.h>
+ #include <pthread-errnos.h>
++#include <stap-probe.h>
+
+
+ .text
+@@ -34,6 +35,8 @@
+ .align 16
+ __pthread_cond_signal:
+
++ LIBC_PROBE (cond_signal, 1, %rdi)
++
+ /* Get internal lock. */
+ movq %rdi, %r8
+ movl $1, %esi
+diff -Nrup a/nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_timedwait.S b/nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_timedwait.S
+--- a/nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_timedwait.S 2012-01-01 05:16:32.000000000 -0700
++++ b/nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_timedwait.S 2012-01-01 20:41:26.675439835 -0700
+@@ -23,6 +23,7 @@
+ #include <lowlevelcond.h>
+ #include <pthread-pi-defines.h>
+ #include <pthread-errnos.h>
++#include <stap-probe.h>
+
+ #include <kernel-features.h>
+
+@@ -68,6 +69,8 @@ __pthread_cond_timedwait:
+ cfi_adjust_cfa_offset(FRAME_SIZE)
+ cfi_remember_state
+
++ LIBC_PROBE (cond_timedwait, 3, %rdi, %rsi, %rdx)
++
+ cmpq $1000000000, 8(%rdx)
+ movl $EINVAL, %eax
+ jae 48f
+diff -Nrup a/nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S b/nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S
+--- a/nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S 2012-01-01 05:16:32.000000000 -0700
++++ b/nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S 2012-01-01 20:41:26.676439836 -0700
+@@ -24,6 +24,7 @@
+ #include <tcb-offsets.h>
+ #include <pthread-pi-defines.h>
+ #include <pthread-errnos.h>
++#include <stap-probe.h>
+
+ #include <kernel-features.h>
+
+@@ -66,6 +67,8 @@ __pthread_cond_wait:
+ +--------------------------+
+ */
+
++ LIBC_PROBE (cond_wait, 2, %rdi, %rsi)
+
-+* The GNU C Library Reference Manual is now distributed with the library.
-+ `make dvi' will produce a DVI file of the printed manual.
-+ `make info' will produce Info files that you can read on line using C-h i
-+ in Emacs or the `info' program.
-+ Please send comments on the manual to bug-glibc-manual at gnu.org.
+ cmpq $-1, dep_mutex(%rdi)
+
+ /* Prepare structure passed to cancellation handler. */
+diff -Nrup a/nptl/sysdeps/unix/sysv/linux/x86_64/pthread_rwlock_rdlock.S b/nptl/sysdeps/unix/sysv/linux/x86_64/pthread_rwlock_rdlock.S
+--- a/nptl/sysdeps/unix/sysv/linux/x86_64/pthread_rwlock_rdlock.S 2012-01-01 05:16:32.000000000 -0700
++++ b/nptl/sysdeps/unix/sysv/linux/x86_64/pthread_rwlock_rdlock.S 2012-01-01 20:41:26.677439836 -0700
+@@ -22,7 +22,7 @@
+ #include <lowlevelrwlock.h>
+ #include <pthread-errnos.h>
+ #include <kernel-features.h>
+-
++#include <stap-probe.h>
+
+ .text
+
+@@ -31,6 +31,9 @@
+ .align 16
+ __pthread_rwlock_rdlock:
+ cfi_startproc
+
-+* The library now supports SVR4 on i386s (i386-unknown-sysv4).
++ LIBC_PROBE (rdlock_entry, 1, %rdi)
+
-+* Brendan Kehoe has contributed a port to Sun SPARCs running Solaris 2.
+ xorq %r10, %r10
+
+ /* Get the lock. */
+diff -Nrup a/nptl/sysdeps/unix/sysv/linux/x86_64/pthread_rwlock_wrlock.S b/nptl/sysdeps/unix/sysv/linux/x86_64/pthread_rwlock_wrlock.S
+--- a/nptl/sysdeps/unix/sysv/linux/x86_64/pthread_rwlock_wrlock.S 2012-01-01 05:16:32.000000000 -0700
++++ b/nptl/sysdeps/unix/sysv/linux/x86_64/pthread_rwlock_wrlock.S 2012-01-01 20:41:26.677439836 -0700
+@@ -22,7 +22,7 @@
+ #include <lowlevelrwlock.h>
+ #include <pthread-errnos.h>
+ #include <kernel-features.h>
+-
++#include <stap-probe.h>
+
+ .text
+
+@@ -31,6 +31,9 @@
+ .align 16
+ __pthread_rwlock_wrlock:
+ cfi_startproc
+
-+* Jason Merrill has contributed a port to the Sequent Symmetry running
-+ Dynix version 3 (i386-sequent-dynix).
++ LIBC_PROBE (wrlock_entry, 1, %rdi)
+
-+* The library has been ported to i386s running SCO 3.2.4 (also known as SCO
-+ ODT 2.0; i386-unknown-sco3.2.4) or SCO 3.2 (i386-unknown-sco3.2).
+ xorq %r10, %r10
+
+ /* Get the lock. */
+diff -Nrup a/nscd/nscd.conf b/nscd/nscd.conf
+--- a/nscd/nscd.conf 2012-01-01 05:16:32.000000000 -0700
++++ b/nscd/nscd.conf 2012-01-01 20:41:26.677439836 -0700
+@@ -33,7 +33,7 @@
+ # logfile /var/log/nscd.log
+ # threads 4
+ # max-threads 32
+-# server-user nobody
++ server-user nscd
+ # stat-user somebody
+ debug-level 0
+ # reload-count 5
+diff -Nrup a/nscd/nscd.init b/nscd/nscd.init
+--- a/nscd/nscd.init 2012-01-01 05:16:32.000000000 -0700
++++ b/nscd/nscd.init 2012-01-01 20:41:26.678439836 -0700
+@@ -9,6 +9,7 @@
+ # slow naming services like NIS, NIS+, LDAP, or hesiod.
+ # processname: /usr/sbin/nscd
+ # config: /etc/nscd.conf
++# config: /etc/sysconfig/nscd
+ #
+ ### BEGIN INIT INFO
+ # Provides: nscd
+@@ -28,20 +29,8 @@
+ # Source function library.
+ . /etc/init.d/functions
+
+-# nscd does not run on any kernel lower than 2.2.0 because of threading
+-# problems, so we require that in first place.
+-case $(uname -r) in
+- 2.[2-9].*)
+- # this is okay
+- ;;
+- [3-9]*)
+- # these are of course also okay
+- ;;
+- *)
+- #this is not
+- exit 1
+- ;;
+-esac
++# Source an auxiliary options file if we have one, and pick up NSCD_OPTIONS.
++[ -r /etc/sysconfig/nscd ] && . /etc/sysconfig/nscd
+
+ RETVAL=0
+ prog=nscd
+@@ -50,7 +39,7 @@ start () {
+ [ -d /var/run/nscd ] || mkdir /var/run/nscd
+ [ -d /var/db/nscd ] || mkdir /var/db/nscd
+ echo -n $"Starting $prog: "
+- daemon /usr/sbin/nscd
++ daemon /usr/sbin/nscd $NSCD_OPTIONS
+ RETVAL=$?
+ echo
+ [ $RETVAL -eq 0 ] && touch /var/lock/subsys/nscd
+@@ -83,11 +72,11 @@ restart() {
+ # See how we were called.
+ case "$1" in
+ start)
+- start
++ [ -e /var/lock/subsys/nscd ] || start
+ RETVAL=$?
+ ;;
+ stop)
+- stop
++ [ ! -e /var/lock/subsys/nscd ] || stop
+ RETVAL=$?
+ ;;
+ status)
+@@ -99,14 +88,17 @@ case "$1" in
+ RETVAL=$?
+ ;;
+ try-restart | condrestart)
+- [ -e /var/lock/subsys/nscd ] && restart
++ [ ! -e /var/lock/subsys/nscd ] || restart
+ RETVAL=$?
+ ;;
+ force-reload | reload)
+ echo -n $"Reloading $prog: "
+- killproc /usr/sbin/nscd -HUP
+- RETVAL=$?
+- echo
++ RETVAL=0
++ /usr/sbin/nscd -i passwd || RETVAL=$?
++ /usr/sbin/nscd -i group || RETVAL=$?
++ /usr/sbin/nscd -i hosts || RETVAL=$?
++ /usr/sbin/nscd -i services || RETVAL=$?
++ echo
+ ;;
+ *)
+ echo $"Usage: $0 {start|stop|status|restart|reload|condrestart}"
+diff -Nrup a/nscd/selinux.c b/nscd/selinux.c
+--- a/nscd/selinux.c 2012-01-01 05:16:32.000000000 -0700
++++ b/nscd/selinux.c 2012-01-01 20:41:26.678439836 -0700
+@@ -270,6 +270,18 @@ avc_create_thread (void (*run) (void))
+ {
+ int rc;
+
++#if defined HAVE_LIBAUDIT && defined HAVE_LIBCAP
++ if (server_user != NULL && getuid () == 0)
++ {
++ /* We need to preserve the capabilities in the AVC thread. */
++ if (prctl (PR_SET_KEEPCAPS, 1) == -1)
++ {
++ dbg_log (_("Failed to set keep-capabilities"));
++ error (EXIT_FAILURE, errno, _("prctl(KEEPCAPS) failed"));
++ }
++ }
++#endif
++
+ rc =
+ pthread_create (&avc_notify_thread, NULL, (void *(*) (void *)) run, NULL);
+ if (rc != 0)
+diff -Nrup a/nss/Makefile b/nss/Makefile
+--- a/nss/Makefile 2012-01-01 05:16:32.000000000 -0700
++++ b/nss/Makefile 2012-01-01 20:41:26.679439836 -0700
+@@ -88,6 +88,7 @@ endif
+
+ include ../Rules
+
++CFLAGS-files-hosts.c += -fno-strict-aliasing
+
+ ifeq (yes,$(build-static-nss))
+ $(objpfx)getent: $(objpfx)libnss_files.a
+diff -Nrup a/nss/nss_files/files-XXX.c b/nss/nss_files/files-XXX.c
+--- a/nss/nss_files/files-XXX.c 2012-01-01 05:16:32.000000000 -0700
++++ b/nss/nss_files/files-XXX.c 2012-01-01 20:41:26.679439836 -0700
+@@ -190,7 +190,7 @@ internal_getent (struct STRUCTURE *resul
+ {
+ char *p;
+ struct parser_data *data = (void *) buffer;
+- int linebuflen = buffer + buflen - data->linebuffer;
++ size_t linebuflen = buffer + buflen - data->linebuffer;
+ int parse_result;
+
+ if (buflen < sizeof *data + 2)
+diff -Nrup a/posix/Makefile b/posix/Makefile
+--- a/posix/Makefile 2012-01-01 05:16:32.000000000 -0700
++++ b/posix/Makefile 2012-01-01 20:41:26.680439836 -0700
+@@ -320,15 +320,8 @@ $(inst_libexecdir)/getconf: $(inst_bindi
+ mv -f $@/$$spec.new $@/$$spec; \
+ done < $(objpfx)getconf.speclist
+
+-$(objpfx)getconf.speclist: $(objpfx)getconf
+-ifeq (no,$(cross-compiling))
+- LC_ALL=C GETCONF_DIR=/dev/null \
+- $(run-program-prefix) $< _POSIX_V7_WIDTH_RESTRICTED_ENVS > $@.new
+- LC_ALL=C GETCONF_DIR=/dev/null \
+- $(run-program-prefix) $< _POSIX_V6_WIDTH_RESTRICTED_ENVS >> $@.new
+- LC_ALL=C GETCONF_DIR=/dev/null \
+- $(run-program-prefix) $< _XBS5_WIDTH_RESTRICTED_ENVS >> $@.new
+-else
+- > $@.new
+-endif
++$(objpfx)getconf.speclist: getconf.speclist.h
++ $(CC) -E $(CFLAGS) $(CPPFLAGS) $< \
++ | sed -n -e '/START_OF_STRINGS/,$${/\(POSIX_V[67]\|XBS5\)_/{s/^[^"]*"//;s/".*$$//;p}}' \
++ > $@.new
+ mv -f $@.new $@
+diff -Nrup a/posix/gai.conf b/posix/gai.conf
+--- a/posix/gai.conf 2012-01-01 05:16:32.000000000 -0700
++++ b/posix/gai.conf 2012-01-01 20:41:26.680439836 -0700
+@@ -41,7 +41,7 @@
+ #
+ # precedence <mask> <value>
+ # Add another rule to the RFC 3484 precedence table. See section 2.1
+-# and 10.3 in RFC 3484. The default is:
++# and 10.3 in RFC 3484. The RFC requires:
+ #
+ #precedence ::1/128 50
+ #precedence ::/0 40
+@@ -58,7 +58,7 @@
+ # Add another rule to the RFC 3484 scope table for IPv4 addresses.
+ # By default the scope IDs described in section 3.2 in RFC 3484 are
+ # used. Changing these defaults should hardly ever be necessary.
+-# The defaults are equivalent to:
++# The definitions in RFC 1918 are equivalent to:
+ #
+ #scopev4 ::ffff:169.254.0.0/112 2
+ #scopev4 ::ffff:127.0.0.0/104 2
+@@ -75,3 +75,5 @@
+ #scopev4 ::ffff:169.254.0.0/112 2
+ #scopev4 ::ffff:127.0.0.0/104 2
+ #scopev4 ::ffff:0.0.0.0/96 14
++#
++# This is what the Red Hat setting currently uses.
+diff -Nrup a/posix/getconf.speclist.h b/posix/getconf.speclist.h
+--- a/posix/getconf.speclist.h 1969-12-31 17:00:00.000000000 -0700
++++ b/posix/getconf.speclist.h 2012-01-01 20:41:26.680439836 -0700
+@@ -0,0 +1,39 @@
++#include <unistd.h>
++const char *START_OF_STRINGS =
++#if _POSIX_V7_ILP32_OFF32 == 1
++"POSIX_V7_ILP32_OFF32"
++#endif
++#if _POSIX_V7_ILP32_OFFBIG == 1
++"POSIX_V7_ILP32_OFFBIG"
++#endif
++#if _POSIX_V7_LP64_OFF64 == 1
++"POSIX_V7_LP64_OFF64"
++#endif
++#if _POSIX_V7_LPBIG_OFFBIG == 1
++"POSIX_V7_LPBIG_OFFBIG"
++#endif
++#if _POSIX_V6_ILP32_OFF32 == 1
++"POSIX_V6_ILP32_OFF32"
++#endif
++#if _POSIX_V6_ILP32_OFFBIG == 1
++"POSIX_V6_ILP32_OFFBIG"
++#endif
++#if _POSIX_V6_LP64_OFF64 == 1
++"POSIX_V6_LP64_OFF64"
++#endif
++#if _POSIX_V6_LPBIG_OFFBIG == 1
++"POSIX_V6_LPBIG_OFFBIG"
++#endif
++#if _XBS5_ILP32_OFF32 == 1
++"XBS5_ILP32_OFF32"
++#endif
++#if _XBS5_ILP32_OFFBIG == 1
++"XBS5_ILP32_OFFBIG"
++#endif
++#if _XBS5_LP64_OFF64 == 1
++"XBS5_LP64_OFF64"
++#endif
++#if _XBS5_LPBIG_OFFBIG == 1
++"XBS5_LPBIG_OFFBIG"
++#endif
++"";
+diff -Nrup a/posix/regcomp.c b/posix/regcomp.c
+--- a/posix/regcomp.c 2012-01-01 05:16:32.000000000 -0700
++++ b/posix/regcomp.c 2012-01-01 20:41:26.681439836 -0700
+@@ -2745,40 +2745,29 @@ parse_bracket_exp (re_string_t *regexp,
+
+ /* Local function for parse_bracket_exp used in _LIBC environement.
+ Seek the collating symbol entry correspondings to NAME.
+- Return the index of the symbol in the SYMB_TABLE. */
++ Return the index of the symbol in the SYMB_TABLE,
++ or -1 if not found. */
+
+ auto inline int32_t
+ __attribute ((always_inline))
+- seek_collating_symbol_entry (name, name_len)
+- const unsigned char *name;
+- size_t name_len;
++ seek_collating_symbol_entry (const unsigned char *name, size_t name_len)
+ {
+- int32_t hash = elem_hash ((const char *) name, name_len);
+- int32_t elem = hash % table_size;
+- if (symb_table[2 * elem] != 0)
+- {
+- int32_t second = hash % (table_size - 2) + 1;
++ int32_t elem;
+
+- do
+- {
+- /* First compare the hashing value. */
+- if (symb_table[2 * elem] == hash
+- /* Compare the length of the name. */
+- && name_len == extra[symb_table[2 * elem + 1]]
+- /* Compare the name. */
+- && memcmp (name, &extra[symb_table[2 * elem + 1] + 1],
+- name_len) == 0)
+- {
+- /* Yep, this is the entry. */
+- break;
+- }
+-
+- /* Next entry. */
+- elem += second;
+- }
+- while (symb_table[2 * elem] != 0);
+- }
+- return elem;
++ for (elem = 0; elem < table_size; elem++)
++ if (symb_table[2 * elem] != 0)
++ {
++ int32_t idx = symb_table[2 * elem + 1];
++ /* Skip the name of collating element name. */
++ idx += 1 + extra[idx];
++ if (/* Compare the length of the name. */
++ name_len == extra[idx]
++ /* Compare the name. */
++ && memcmp (name, &extra[idx + 1], name_len) == 0)
++ /* Yep, this is the entry. */
++ return elem;
++ }
++ return -1;
+ }
+
+ /* Local function for parse_bracket_exp used in _LIBC environment.
+@@ -2787,8 +2776,7 @@ parse_bracket_exp (re_string_t *regexp,
+
+ auto inline unsigned int
+ __attribute ((always_inline))
+- lookup_collation_sequence_value (br_elem)
+- bracket_elem_t *br_elem;
++ lookup_collation_sequence_value (bracket_elem_t *br_elem)
+ {
+ if (br_elem->type == SB_CHAR)
+ {
+@@ -2816,7 +2804,7 @@ parse_bracket_exp (re_string_t *regexp,
+ int32_t elem, idx;
+ elem = seek_collating_symbol_entry (br_elem->opr.name,
+ sym_name_len);
+- if (symb_table[2 * elem] != 0)
++ if (elem != -1)
+ {
+ /* We found the entry. */
+ idx = symb_table[2 * elem + 1];
+@@ -2834,7 +2822,7 @@ parse_bracket_exp (re_string_t *regexp,
+ /* Return the collation sequence value. */
+ return *(unsigned int *) (extra + idx);
+ }
+- else if (symb_table[2 * elem] == 0 && sym_name_len == 1)
++ else if (sym_name_len == 1)
+ {
+ /* No valid character. Match it as a single byte
+ character. */
+@@ -2856,11 +2844,8 @@ parse_bracket_exp (re_string_t *regexp,
+
+ auto inline reg_errcode_t
+ __attribute ((always_inline))
+- build_range_exp (sbcset, mbcset, range_alloc, start_elem, end_elem)
+- re_charset_t *mbcset;
+- int *range_alloc;
+- bitset_t sbcset;
+- bracket_elem_t *start_elem, *end_elem;
++ build_range_exp (bitset_t sbcset, re_charset_t *mbcset, int *range_alloc,
++ bracket_elem_t *start_elem, bracket_elem_t *end_elem)
+ {
+ unsigned int ch;
+ uint32_t start_collseq;
+@@ -2939,25 +2924,22 @@ parse_bracket_exp (re_string_t *regexp,
+
+ auto inline reg_errcode_t
+ __attribute ((always_inline))
+- build_collating_symbol (sbcset, mbcset, coll_sym_alloc, name)
+- re_charset_t *mbcset;
+- int *coll_sym_alloc;
+- bitset_t sbcset;
+- const unsigned char *name;
++ build_collating_symbol (bitset_t sbcset, re_charset_t *mbcset,
++ int *coll_sym_alloc, const unsigned char *name)
+ {
+ int32_t elem, idx;
+ size_t name_len = strlen ((const char *) name);
+ if (nrules != 0)
+ {
+ elem = seek_collating_symbol_entry (name, name_len);
+- if (symb_table[2 * elem] != 0)
++ if (elem != -1)
+ {
+ /* We found the entry. */
+ idx = symb_table[2 * elem + 1];
+ /* Skip the name of collating element name. */
+ idx += 1 + extra[idx];
+ }
+- else if (symb_table[2 * elem] == 0 && name_len == 1)
++ else if (name_len == 1)
+ {
+ /* No valid character, treat it as a normal
+ character. */
+diff -Nrup a/resolv/Makefile b/resolv/Makefile
+--- a/resolv/Makefile 2012-01-01 05:16:32.000000000 -0700
++++ b/resolv/Makefile 2012-01-01 20:41:26.682439836 -0700
+@@ -81,6 +81,7 @@ ifeq (yes,$(have-ssp))
+ CFLAGS-libresolv += -fstack-protector
+ endif
+ CFLAGS-res_hconf.c = -fexceptions
++CFLAGS-res_send.c += -fno-strict-aliasing
+
+ # The BIND code elicits some harmless warnings.
+ +cflags += -Wno-strict-prototypes -Wno-write-strings
+diff -Nrup a/resource/getrlimit.c b/resource/getrlimit.c
+--- a/resource/getrlimit.c 2012-01-01 05:16:32.000000000 -0700
++++ b/resource/getrlimit.c 2012-01-01 20:41:26.682439836 -0700
+@@ -28,6 +28,7 @@ __getrlimit (enum __rlimit_resource reso
+ __set_errno (ENOSYS);
+ return -1;
+ }
++libc_hidden_def (__getrlimit)
+ weak_alias (__getrlimit, getrlimit)
+
+ stub_warning (getrlimit)
+diff -Nrup a/scripts/check-local-headers.sh b/scripts/check-local-headers.sh
+--- a/scripts/check-local-headers.sh 2012-01-01 05:16:32.000000000 -0700
++++ b/scripts/check-local-headers.sh 2012-01-01 20:41:26.683439836 -0700
+@@ -29,7 +29,7 @@ exec ${AWK} -v includedir="$includedir"
+ BEGIN {
+ status = 0
+ exclude = "^" includedir \
+- "/(asm[-/]|linux/|selinux/|gd|nss3/|sys/capability\\.h|libaudit\\.h)"
++ "/(asm[-/]|linux/|selinux/|gd|nss3/|sys/capability\\.h|libaudit\\.h|sys/sdt(-config)?\\.h))"
+ }
+ /^[^ ]/ && $1 ~ /.*:/ { obj = $1 }
+ {
+diff -Nrup a/stdio-common/vfprintf.c b/stdio-common/vfprintf.c
+--- a/stdio-common/vfprintf.c 2012-01-01 05:16:32.000000000 -0700
++++ b/stdio-common/vfprintf.c 2012-01-01 20:41:26.683439836 -0700
+@@ -1161,41 +1161,9 @@ vfprintf (FILE *s, const CHAR_T *format,
+ else if (!is_long && spec != L_('S')) \
+ { \
+ if (prec != -1) \
+- { \
+- /* Search for the end of the string, but don't search past \
+- the length (in bytes) specified by the precision. Also \
+- don't use incomplete characters. */ \
+- if (_NL_CURRENT_WORD (LC_CTYPE, _NL_CTYPE_MB_CUR_MAX) == 1) \
+- len = __strnlen (string, prec); \
+- else \
+- { \
+- /* In case we have a multibyte character set the \
+- situation is more complicated. We must not copy \
+- bytes at the end which form an incomplete character. */\
+- size_t ignore_size = (unsigned) prec > 1024 ? 1024 : prec;\
+- wchar_t ignore[ignore_size]; \
+- const char *str2 = string; \
+- const char *strend = string + prec; \
+- if (strend < string) \
+- strend = (const char *) UINTPTR_MAX; \
+- \
+- mbstate_t ps; \
+- memset (&ps, '\0', sizeof (ps)); \
+- \
+- while (str2 != NULL && str2 < strend) \
+- if (__mbsnrtowcs (ignore, &str2, strend - str2, \
+- ignore_size, &ps) == (size_t) -1) \
+- { \
+- done = -1; \
+- goto all_done; \
+- } \
+- \
+- if (str2 == NULL) \
+- len = strlen (string); \
+- else \
+- len = str2 - string - (ps.__count & 7); \
+- } \
+- } \
++ /* Search for the end of the string, but don't search past \
++ the length (in bytes) specified by the precision. */ \
++ len = __strnlen (string, prec); \
+ else \
+ len = strlen (string); \
+ } \
+diff -Nrup a/streams/Makefile b/streams/Makefile
+--- a/streams/Makefile 2012-01-01 05:16:32.000000000 -0700
++++ b/streams/Makefile 2012-01-01 20:41:26.684439835 -0700
+@@ -21,7 +21,7 @@
+ #
+ subdir := streams
+
+-headers = stropts.h sys/stropts.h bits/stropts.h bits/xtitypes.h
++#headers = stropts.h sys/stropts.h bits/stropts.h bits/xtitypes.h
+ routines = isastream getmsg getpmsg putmsg putpmsg fattach fdetach
+
+ include ../Rules
+diff -Nrup a/sunrpc/Makefile b/sunrpc/Makefile
+--- a/sunrpc/Makefile 2012-01-01 05:16:32.000000000 -0700
++++ b/sunrpc/Makefile 2012-01-01 20:41:26.684439835 -0700
+@@ -53,7 +53,7 @@ headers-in-tirpc = $(addprefix rpc/,auth
+ des_crypt.h)
+ headers-not-in-tirpc = $(addprefix rpc/,key_prot.h rpc_des.h) \
+ $(rpcsvc:%=rpcsvc/%) rpcsvc/bootparam.h
+-headers = rpc/netdb.h
++headers = rpc/netdb.h $(headers-in-tirpc) $(headers-not-in-tirpc)
+ install-others = $(inst_sysconfdir)/rpc
+ generated = $(rpcsvc:%.x=rpcsvc/%.h) $(rpcsvc:%.x=x%.c) $(rpcsvc:%.x=x%.stmp) \
+ $(rpcsvc:%.x=rpcsvc/%.stmp) rpcgen
+@@ -152,6 +152,10 @@ CFLAGS-openchild.c = -fexceptions
+
+ CPPFLAGS += -D_RPC_THREAD_SAFE_
+
++CFLAGS-clnt_tcp.c += -fno-strict-aliasing
++CFLAGS-clnt_udp.c += -fno-strict-aliasing
++CFLAGS-clnt_unix.c += -fno-strict-aliasing
++
+ $(objpfx)tst-getmyaddr: $(common-objpfx)linkobj/libc.so
+ $(objpfx)tst-xdrmem: $(common-objpfx)linkobj/libc.so
+ $(objpfx)tst-xdrmem2: $(common-objpfx)linkobj/libc.so
+diff -Nrup a/sysdeps/generic/dl-cache.h b/sysdeps/generic/dl-cache.h
+--- a/sysdeps/generic/dl-cache.h 2012-01-01 05:16:32.000000000 -0700
++++ b/sysdeps/generic/dl-cache.h 2012-01-01 20:41:26.685439835 -0700
+@@ -36,6 +36,14 @@
+ # define add_system_dir(dir) add_dir (dir)
+ #endif
+
++#ifndef arch_startup
++# define arch_startup(argc, argv) do { } while (0)
++#endif
+
-+* New function `memory_warnings' lets you arrange to get warnings when
-+ malloc is running out of memory to allocate, like Emacs gives you.
++#ifndef add_arch_dirs
++# define add_arch_dirs(config_file) do { } while (0)
++#endif
+
-+* The C library now contains the relocating allocator used in Emacs 19 for
-+ its editing buffers. This allocator (ralloc) minimizes allocation
-+ overhead and fragmentation by moving allocated regions around whenever it
-+ needs to. You always refer to a ralloc'd region with a "handle" (a
-+ pointer to a pointer--an object of type `void **').
+ #define CACHEMAGIC "ld.so-1.7.0"
+
+ /* libc5 and glibc 2.0/2.1 use the same format. For glibc 2.2 another
+diff -Nrup a/sysdeps/i386/Makefile b/sysdeps/i386/Makefile
+--- a/sysdeps/i386/Makefile 2012-01-01 05:16:32.000000000 -0700
++++ b/sysdeps/i386/Makefile 2012-01-01 20:41:26.685439835 -0700
+@@ -2,6 +2,8 @@
+ # Every i386 port in use uses gas syntax (I think).
+ asm-CPPFLAGS += -DGAS_SYNTAX
+
++sysdep-ASFLAGS += -U__i686
+
-+* There is a new `printf' format: `%m' gives you the string corresponding
-+ to the error code in `errno'.
+ # The i386 `long double' is a distinct type we support.
+ long-double-fcts = yes
+
+@@ -68,6 +70,14 @@ endif
+
+ ifneq (,$(filter -mno-tls-direct-seg-refs,$(CFLAGS)))
+ defines += -DNO_TLS_DIRECT_SEG_REFS
++else
++# .a libraries are not performance critical and so we
++# build them without direct TLS segment references
++# always.
++CPPFLAGS-.o += -DNO_TLS_DIRECT_SEG_REFS
++CFLAGS-.o += -mno-tls-direct-seg-refs
++CPPFLAGS-.oS += -DNO_TLS_DIRECT_SEG_REFS
++CFLAGS-.oS += -mno-tls-direct-seg-refs
+ endif
+
+ ifeq ($(subdir),elf)
+diff -Nrup a/sysdeps/i386/__longjmp.S b/sysdeps/i386/__longjmp.S
+--- a/sysdeps/i386/__longjmp.S 2012-01-01 05:16:32.000000000 -0700
++++ b/sysdeps/i386/__longjmp.S 2012-01-01 20:41:26.686439835 -0700
+@@ -1,5 +1,5 @@
+ /* longjmp for i386.
+- Copyright (C) 1995-1998,2000,2002,2005,2006,2009
++ Copyright (C) 1995-1998,2000,2002,2005,2006,2009,2011
+ Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+@@ -21,6 +21,7 @@
+ #include <sysdep.h>
+ #include <jmpbuf-offsets.h>
+ #include <asm-syntax.h>
++#include <stap-probe.h>
+
+ .text
+ ENTRY (__longjmp)
+@@ -33,6 +34,7 @@ ENTRY (__longjmp)
+ movl (JB_SP*4)(%eax), %ecx
+ PTR_DEMANGLE (%edx)
+ PTR_DEMANGLE (%ecx)
++ LIBC_PROBE (longjmp, 3, 4@%eax, -4 at 8(%esp), 4@%edx)
+ cfi_def_cfa(%eax, 0)
+ cfi_register(%eip, %edx)
+ cfi_register(%esp, %ecx)
+@@ -50,6 +52,7 @@ ENTRY (__longjmp)
+ cfi_restore(%edi)
+ cfi_restore(%ebp)
+
++ LIBC_PROBE (longjmp_target, 3, 4@%eax, -4 at 8(%esp), 4@%edx)
+ movl 8(%esp), %eax /* Second argument is return value. */
+ movl %ecx, %esp
+ #else
+@@ -57,12 +60,14 @@ ENTRY (__longjmp)
+ movl 8(%esp), %eax /* Second argument is return value. */
+ /* Save the return address now. */
+ movl (JB_PC*4)(%ecx), %edx
++ LIBC_PROBE (longjmp, 3, 4@%ecx, -4@%eax, 4@%edx)
+ /* Restore registers. */
+ movl (JB_BX*4)(%ecx), %ebx
+ movl (JB_SI*4)(%ecx), %esi
+ movl (JB_DI*4)(%ecx), %edi
+ movl (JB_BP*4)(%ecx), %ebp
+ movl (JB_SP*4)(%ecx), %esp
++ LIBC_PROBE (longjmp_target, 3, 4@%ecx, -4@%ecx, 4@%edx)
+ #endif
+ /* Jump to saved PC. */
+ jmp *%edx
+diff -Nrup a/sysdeps/i386/bsd-_setjmp.S b/sysdeps/i386/bsd-_setjmp.S
+--- a/sysdeps/i386/bsd-_setjmp.S 2012-01-01 05:16:32.000000000 -0700
++++ b/sysdeps/i386/bsd-_setjmp.S 2012-01-01 20:41:26.686439835 -0700
+@@ -1,5 +1,6 @@
+ /* BSD `_setjmp' entry point to `sigsetjmp (..., 0)'. i386 version.
+- Copyright (C) 1994-1997,2000-2002,2005, 2006 Free Software Foundation, Inc.
++ Copyright (C) 1994-1997,2000-2002,2005,2006,2011
++ 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
+@@ -25,6 +26,7 @@
+ #include <jmpbuf-offsets.h>
+ #include "bp-sym.h"
+ #include "bp-asm.h"
++#include <stap-probe.h>
+
+ #define PARMS LINKAGE /* no space for saved regs */
+ #define JMPBUF PARMS
+@@ -47,6 +49,7 @@ ENTRY (BP_SYM (_setjmp))
+ #endif
+ movl %ecx, (JB_SP*4)(%edx)
+ movl PCOFF(%esp), %ecx /* Save PC we are returning to now. */
++ LIBC_PROBE (setjmp, 3, 4@%edx, -4@$0, 4@%ecx)
+ #ifdef PTR_MANGLE
+ PTR_MANGLE (%ecx)
+ #endif
+diff -Nrup a/sysdeps/i386/bsd-setjmp.S b/sysdeps/i386/bsd-setjmp.S
+--- a/sysdeps/i386/bsd-setjmp.S 2012-01-01 05:16:32.000000000 -0700
++++ b/sysdeps/i386/bsd-setjmp.S 2012-01-01 20:41:26.687439834 -0700
+@@ -1,5 +1,6 @@
+ /* BSD `setjmp' entry point to `sigsetjmp (..., 1)'. i386 version.
+- Copyright (C) 1994-1997,2000,2001,2005, 2006 Free Software Foundation, Inc.
++ Copyright (C) 1994-1997,2000,2001,2005,2006,2011
++ 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
+@@ -25,6 +26,7 @@
+ #include <jmpbuf-offsets.h>
+ #include "bp-sym.h"
+ #include "bp-asm.h"
++#include <stap-probe.h>
+
+ #define PARMS LINKAGE /* no space for saved regs */
+ #define JMPBUF PARMS
+@@ -49,6 +51,7 @@ ENTRY (BP_SYM (setjmp))
+ #endif
+ movl %ecx, (JB_SP*4)(%eax)
+ movl PCOFF(%esp), %ecx /* Save PC we are returning to now. */
++ LIBC_PROBE (setjmp, 3, 4@%eax, -4@$1, 4@%ecx)
+ #ifdef PTR_MANGLE
+ PTR_MANGLE (%ecx)
+ #endif
+diff -Nrup a/sysdeps/i386/i686/Makefile b/sysdeps/i386/i686/Makefile
+--- a/sysdeps/i386/i686/Makefile 2012-01-01 05:16:32.000000000 -0700
++++ b/sysdeps/i386/i686/Makefile 2012-01-01 20:41:26.687439834 -0700
+@@ -9,19 +9,3 @@ stack-align-test-flags += -msse
+ ifeq ($(subdir),string)
+ sysdep_routines += cacheinfo
+ endif
+-
+-ifeq (yes,$(config-asflags-i686))
+-CFLAGS-.o += -Wa,-mtune=i686
+-CFLAGS-.os += -Wa,-mtune=i686
+-CFLAGS-.op += -Wa,-mtune=i686
+-CFLAGS-.og += -Wa,-mtune=i686
+-CFLAGS-.ob += -Wa,-mtune=i686
+-CFLAGS-.oS += -Wa,-mtune=i686
+-
+-ASFLAGS-.o += -Wa,-mtune=i686
+-ASFLAGS-.os += -Wa,-mtune=i686
+-ASFLAGS-.op += -Wa,-mtune=i686
+-ASFLAGS-.og += -Wa,-mtune=i686
+-ASFLAGS-.ob += -Wa,-mtune=i686
+-ASFLAGS-.oS += -Wa,-mtune=i686
+-endif
+diff -Nrup a/sysdeps/i386/setjmp.S b/sysdeps/i386/setjmp.S
+--- a/sysdeps/i386/setjmp.S 2012-01-01 05:16:32.000000000 -0700
++++ b/sysdeps/i386/setjmp.S 2012-01-01 20:41:26.687439834 -0700
+@@ -1,5 +1,5 @@
+ /* setjmp for i386.
+- Copyright (C) 1995,1996,1997,2000,2001,2005,2006
++ Copyright (C) 1995,1996,1997,2000,2001,2005,2006,2011
+ Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+@@ -23,6 +23,7 @@
+ #include <asm-syntax.h>
+ #include "bp-sym.h"
+ #include "bp-asm.h"
++#include <stap-probe.h>
+
+ #define PARMS LINKAGE /* no space for saved regs */
+ #define JMPBUF PARMS
+@@ -44,6 +45,7 @@ ENTRY (BP_SYM (__sigsetjmp))
+ #endif
+ movl %ecx, (JB_SP*4)(%eax)
+ movl PCOFF(%esp), %ecx /* Save PC we are returning to now. */
++ LIBC_PROBE (setjmp, 3, 4@%eax, -4 at SIGMSK(%esp), 4@%ecx)
+ #ifdef PTR_MANGLE
+ PTR_MANGLE (%ecx)
+ #endif
+diff -Nrup a/sysdeps/ia64/Makefile b/sysdeps/ia64/Makefile
+--- a/sysdeps/ia64/Makefile 2012-01-01 05:16:32.000000000 -0700
++++ b/sysdeps/ia64/Makefile 2012-01-01 20:41:26.688439833 -0700
+@@ -12,8 +12,8 @@ elide-routines.os += hp-timing
+
+ ifeq (yes,$(build-shared))
+ # Compatibility
+-sysdep_routines += ia64libgcc
+-shared-only-routines += ia64libgcc
++sysdep_routines += libgcc-compat
++shared-only-routines += libgcc-compat
+ endif
+ endif
+
+diff -Nrup a/sysdeps/ia64/ia64libgcc.S b/sysdeps/ia64/ia64libgcc.S
+--- a/sysdeps/ia64/ia64libgcc.S 2012-01-01 05:16:32.000000000 -0700
++++ b/sysdeps/ia64/ia64libgcc.S 1969-12-31 17:00:00.000000000 -0700
+@@ -1,350 +0,0 @@
+-/* From the Intel IA-64 Optimization Guide, choose the minimum latency
+- alternative. */
+-
+-#include <sysdep.h>
+-#undef ret
+-
+-#include <shlib-compat.h>
+-
+-#if SHLIB_COMPAT(libc, GLIBC_2_2, GLIBC_2_2_6)
+-
+-/* __divtf3
+- Compute a 80-bit IEEE double-extended quotient.
+- farg0 holds the dividend. farg1 holds the divisor. */
+-
+-ENTRY(___divtf3)
+- cmp.eq p7, p0 = r0, r0
+- frcpa.s0 f10, p6 = farg0, farg1
+- ;;
+-(p6) cmp.ne p7, p0 = r0, r0
+- .pred.rel.mutex p6, p7
+-(p6) fnma.s1 f11 = farg1, f10, f1
+-(p6) fma.s1 f12 = farg0, f10, f0
+- ;;
+-(p6) fma.s1 f13 = f11, f11, f0
+-(p6) fma.s1 f14 = f11, f11, f11
+- ;;
+-(p6) fma.s1 f11 = f13, f13, f11
+-(p6) fma.s1 f13 = f14, f10, f10
+- ;;
+-(p6) fma.s1 f10 = f13, f11, f10
+-(p6) fnma.s1 f11 = farg1, f12, farg0
+- ;;
+-(p6) fma.s1 f11 = f11, f10, f12
+-(p6) fnma.s1 f12 = farg1, f10, f1
+- ;;
+-(p6) fma.s1 f10 = f12, f10, f10
+-(p6) fnma.s1 f12 = farg1, f11, farg0
+- ;;
+-(p6) fma.s0 fret0 = f12, f10, f11
+-(p7) mov fret0 = f10
+- br.ret.sptk rp
+-END(___divtf3)
+- .symver ___divtf3, __divtf3 at GLIBC_2.2
+-
+-/* __divdf3
+- Compute a 64-bit IEEE double quotient.
+- farg0 holds the dividend. farg1 holds the divisor. */
+-
+-ENTRY(___divdf3)
+- cmp.eq p7, p0 = r0, r0
+- frcpa.s0 f10, p6 = farg0, farg1
+- ;;
+-(p6) cmp.ne p7, p0 = r0, r0
+- .pred.rel.mutex p6, p7
+-(p6) fmpy.s1 f11 = farg0, f10
+-(p6) fnma.s1 f12 = farg1, f10, f1
+- ;;
+-(p6) fma.s1 f11 = f12, f11, f11
+-(p6) fmpy.s1 f13 = f12, f12
+- ;;
+-(p6) fma.s1 f10 = f12, f10, f10
+-(p6) fma.s1 f11 = f13, f11, f11
+- ;;
+-(p6) fmpy.s1 f12 = f13, f13
+-(p6) fma.s1 f10 = f13, f10, f10
+- ;;
+-(p6) fma.d.s1 f11 = f12, f11, f11
+-(p6) fma.s1 f10 = f12, f10, f10
+- ;;
+-(p6) fnma.d.s1 f8 = farg1, f11, farg0
+- ;;
+-(p6) fma.d fret0 = f8, f10, f11
+-(p7) mov fret0 = f10
+- br.ret.sptk rp
+- ;;
+-END(___divdf3)
+- .symver ___divdf3, __divdf3 at GLIBC_2.2
+-
+-/* __divsf3
+- Compute a 32-bit IEEE float quotient.
+- farg0 holds the dividend. farg1 holds the divisor. */
+-
+-ENTRY(___divsf3)
+- cmp.eq p7, p0 = r0, r0
+- frcpa.s0 f10, p6 = farg0, farg1
+- ;;
+-(p6) cmp.ne p7, p0 = r0, r0
+- .pred.rel.mutex p6, p7
+-(p6) fmpy.s1 f8 = farg0, f10
+-(p6) fnma.s1 f9 = farg1, f10, f1
+- ;;
+-(p6) fma.s1 f8 = f9, f8, f8
+-(p6) fmpy.s1 f9 = f9, f9
+- ;;
+-(p6) fma.s1 f8 = f9, f8, f8
+-(p6) fmpy.s1 f9 = f9, f9
+- ;;
+-(p6) fma.d.s1 f10 = f9, f8, f8
+- ;;
+-(p6) fnorm.s.s0 fret0 = f10
+-(p7) mov fret0 = f10
+- br.ret.sptk rp
+- ;;
+-END(___divsf3)
+- .symver ___divsf3, __divsf3 at GLIBC_2.2
+-
+-/* __divdi3
+- Compute a 64-bit integer quotient.
+- in0 holds the dividend. in1 holds the divisor. */
+-
+-ENTRY(___divdi3)
+- .regstk 2,0,0,0
+- /* Transfer inputs to FP registers. */
+- setf.sig f8 = in0
+- setf.sig f9 = in1
+- ;;
+- /* Convert the inputs to FP, so that they won't be treated as
+- unsigned. */
+- fcvt.xf f8 = f8
+- fcvt.xf f9 = f9
+- ;;
+- /* Compute the reciprocal approximation. */
+- frcpa.s1 f10, p6 = f8, f9
+- ;;
+- /* 3 Newton-Raphson iterations. */
+-(p6) fnma.s1 f11 = f9, f10, f1
+-(p6) fmpy.s1 f12 = f8, f10
+- ;;
+-(p6) fmpy.s1 f13 = f11, f11
+-(p6) fma.s1 f12 = f11, f12, f12
+- ;;
+-(p6) fma.s1 f10 = f11, f10, f10
+-(p6) fma.s1 f11 = f13, f12, f12
+- ;;
+-(p6) fma.s1 f10 = f13, f10, f10
+-(p6) fnma.s1 f12 = f9, f11, f8
+- ;;
+-(p6) fma.s1 f10 = f12, f10, f11
+- ;;
+- /* Round quotient to an integer. */
+- fcvt.fx.trunc.s1 f10 = f10
+- ;;
+- /* Transfer result to GP registers. */
+- getf.sig ret0 = f10
+- br.ret.sptk rp
+- ;;
+-END(___divdi3)
+- .symver ___divdi3, __divdi3 at GLIBC_2.2
+-
+-/* __moddi3
+- Compute a 64-bit integer modulus.
+- in0 holds the dividend (a). in1 holds the divisor (b). */
+-
+-ENTRY(___moddi3)
+- .regstk 2,0,0,0
+- /* Transfer inputs to FP registers. */
+- setf.sig f14 = in0
+- setf.sig f9 = in1
+- ;;
+- /* Convert the inputs to FP, so that they won't be treated as
+- unsigned. */
+- fcvt.xf f8 = f14
+- fcvt.xf f9 = f9
+- ;;
+- /* Compute the reciprocal approximation. */
+- frcpa.s1 f10, p6 = f8, f9
+- ;;
+- /* 3 Newton-Raphson iterations. */
+-(p6) fmpy.s1 f12 = f8, f10
+-(p6) fnma.s1 f11 = f9, f10, f1
+- ;;
+-(p6) fma.s1 f12 = f11, f12, f12
+-(p6) fmpy.s1 f13 = f11, f11
+- ;;
+-(p6) fma.s1 f10 = f11, f10, f10
+-(p6) fma.s1 f11 = f13, f12, f12
+- ;;
+- sub in1 = r0, in1
+-(p6) fma.s1 f10 = f13, f10, f10
+-(p6) fnma.s1 f12 = f9, f11, f8
+- ;;
+- setf.sig f9 = in1
+-(p6) fma.s1 f10 = f12, f10, f11
+- ;;
+- fcvt.fx.trunc.s1 f10 = f10
+- ;;
+- /* r = q * (-b) + a */
+- xma.l f10 = f10, f9, f14
+- ;;
+- /* Transfer result to GP registers. */
+- getf.sig ret0 = f10
+- br.ret.sptk rp
+- ;;
+-END(___moddi3)
+- .symver ___moddi3, __moddi3 at GLIBC_2.2
+-
+-/* __udivdi3
+- Compute a 64-bit unsigned integer quotient.
+- in0 holds the dividend. in1 holds the divisor. */
+-
+-ENTRY(___udivdi3)
+- .regstk 2,0,0,0
+- /* Transfer inputs to FP registers. */
+- setf.sig f8 = in0
+- setf.sig f9 = in1
+- ;;
+- /* Convert the inputs to FP, to avoid FP software-assist faults. */
+- fcvt.xuf.s1 f8 = f8
+- fcvt.xuf.s1 f9 = f9
+- ;;
+- /* Compute the reciprocal approximation. */
+- frcpa.s1 f10, p6 = f8, f9
+- ;;
+- /* 3 Newton-Raphson iterations. */
+-(p6) fnma.s1 f11 = f9, f10, f1
+-(p6) fmpy.s1 f12 = f8, f10
+- ;;
+-(p6) fmpy.s1 f13 = f11, f11
+-(p6) fma.s1 f12 = f11, f12, f12
+- ;;
+-(p6) fma.s1 f10 = f11, f10, f10
+-(p6) fma.s1 f11 = f13, f12, f12
+- ;;
+-(p6) fma.s1 f10 = f13, f10, f10
+-(p6) fnma.s1 f12 = f9, f11, f8
+- ;;
+-(p6) fma.s1 f10 = f12, f10, f11
+- ;;
+- /* Round quotient to an unsigned integer. */
+- fcvt.fxu.trunc.s1 f10 = f10
+- ;;
+- /* Transfer result to GP registers. */
+- getf.sig ret0 = f10
+- br.ret.sptk rp
+- ;;
+-END(___udivdi3)
+- .symver ___udivdi3, __udivdi3 at GLIBC_2.2
+-
+-/* __umoddi3
+- Compute a 64-bit unsigned integer modulus.
+- in0 holds the dividend (a). in1 holds the divisor (b). */
+-
+-ENTRY(___umoddi3)
+- .regstk 2,0,0,0
+- /* Transfer inputs to FP registers. */
+- setf.sig f14 = in0
+- setf.sig f9 = in1
+- ;;
+- /* Convert the inputs to FP, to avoid FP software assist faults. */
+- fcvt.xuf.s1 f8 = f14
+- fcvt.xuf.s1 f9 = f9
+- ;;
+- /* Compute the reciprocal approximation. */
+- frcpa.s1 f10, p6 = f8, f9
+- ;;
+- /* 3 Newton-Raphson iterations. */
+-(p6) fmpy.s1 f12 = f8, f10
+-(p6) fnma.s1 f11 = f9, f10, f1
+- ;;
+-(p6) fma.s1 f12 = f11, f12, f12
+-(p6) fmpy.s1 f13 = f11, f11
+- ;;
+-(p6) fma.s1 f10 = f11, f10, f10
+-(p6) fma.s1 f11 = f13, f12, f12
+- ;;
+- sub in1 = r0, in1
+-(p6) fma.s1 f10 = f13, f10, f10
+-(p6) fnma.s1 f12 = f9, f11, f8
+- ;;
+- setf.sig f9 = in1
+-(p6) fma.s1 f10 = f12, f10, f11
+- ;;
+- /* Round quotient to an unsigned integer. */
+- fcvt.fxu.trunc.s1 f10 = f10
+- ;;
+- /* r = q * (-b) + a */
+- xma.l f10 = f10, f9, f14
+- ;;
+- /* Transfer result to GP registers. */
+- getf.sig ret0 = f10
+- br.ret.sptk rp
+- ;;
+-END(___umoddi3)
+- .symver ___umoddi3, __umoddi3 at GLIBC_2.2
+-
+-/* __multi3
+- Compute a 128-bit multiply of 128-bit multiplicands.
+- in0/in1 holds one multiplicand (a), in2/in3 holds the other one (b). */
+-
+-ENTRY(___multi3)
+- .regstk 4,0,0,0
+- setf.sig f6 = in1
+- movl r19 = 0xffffffff
+- setf.sig f7 = in2
+- ;;
+- and r14 = r19, in0
+- ;;
+- setf.sig f10 = r14
+- and r14 = r19, in2
+- xmpy.l f9 = f6, f7
+- ;;
+- setf.sig f6 = r14
+- shr.u r14 = in0, 32
+- ;;
+- setf.sig f7 = r14
+- shr.u r14 = in2, 32
+- ;;
+- setf.sig f8 = r14
+- xmpy.l f11 = f10, f6
+- xmpy.l f6 = f7, f6
+- ;;
+- getf.sig r16 = f11
+- xmpy.l f7 = f7, f8
+- ;;
+- shr.u r14 = r16, 32
+- and r16 = r19, r16
+- getf.sig r17 = f6
+- setf.sig f6 = in0
+- ;;
+- setf.sig f11 = r14
+- getf.sig r21 = f7
+- setf.sig f7 = in3
+- ;;
+- xma.l f11 = f10, f8, f11
+- xma.l f6 = f6, f7, f9
+- ;;
+- getf.sig r18 = f11
+- ;;
+- add r18 = r18, r17
+- ;;
+- and r15 = r19, r18
+- cmp.ltu p7, p6 = r18, r17
+- ;;
+- getf.sig r22 = f6
+-(p7) adds r14 = 1, r19
+- ;;
+-(p7) add r21 = r21, r14
+- shr.u r14 = r18, 32
+- shl r15 = r15, 32
+- ;;
+- add r20 = r21, r14
+- ;;
+- add ret0 = r15, r16
+- add ret1 = r22, r20
+- br.ret.sptk rp
+- ;;
+-END(___multi3)
+- .symver ___multi3, __multi3 at GLIBC_2.2
+-
+-#endif
+diff -Nrup a/sysdeps/ia64/libgcc-compat.c b/sysdeps/ia64/libgcc-compat.c
+--- a/sysdeps/ia64/libgcc-compat.c 1969-12-31 17:00:00.000000000 -0700
++++ b/sysdeps/ia64/libgcc-compat.c 2012-01-01 20:41:26.694439833 -0700
+@@ -0,0 +1,84 @@
++/* pre-.hidden libgcc compatibility
++ Copyright (C) 2002 Free Software Foundation, Inc.
++ This file is part of the GNU C Library.
+
-+* In `scanf' formats, you can now use `%as' or `%a[' to do the normal `%s'
-+ or `%[' conversion, but instead of filling in a fixed-sized buffer you
-+ pass, the `a' modifier says to fill in a `char **' you pass with a
-+ malloc'd string.
++ 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 `fnmatch' function supports the new flag bits `FNM_LEADING_DIR' and
-+ `FNM_CASEFOLD'. `FNM_LEADING_DIR' lets a pattern like `foo*' match a
-+ name like `foo/bar'. `FNM_CASEFOLD' says to ignore case in matching.
++ 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.
+
-+* `mkstemp' is a traditional Unix function to atomically create and open a
-+ uniquely-named temporary file.
-+
-+Version 1.05
++ 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. */
+
-+* The standard location for the file that says what the local timezone is
-+ has changed again. It is now `/usr/local/etc/localtime' (or more
-+ precisely, `${prefix}/etc/localtime') rather than `/etc/localtime'.
+
-+* The distribution no longer contains any files with names longer than 14
-+ characters.
++#include <stdint.h>
++#include <shlib-compat.h>
+
-+* `struct ttyent' has two new flag bits: TTY_TRUSTED and TTY_CONSOLE.
-+ These are set by the new `trusted' and `console' keywords in `/etc/ttys'.
++#if SHLIB_COMPAT(libc, GLIBC_2_2, GLIBC_2_2_6)
+
-+* New functions `ttyslot' and `syslog' from 4.4 BSD.
-+
-+Version 1.04
++typedef int int128_t __attribute__((__mode__(TI)));
+
-+* The configuration process has changed quite a bit. The `configure'
-+ script is now used just like the configuration scripts for other GNU
-+ packages. The `sysdeps' directory hierarchy is much rearranged.
-+ The file `INSTALL' explains the new scheme in detail.
++extern long double __divtf3 (long double, long double) attribute_hidden;
++long double INTUSE (__divtf3) (long double x, long double y)
++{
++ return __divtf3 (x, y);
++}
++symbol_version (INTUSE (__divtf3), __divtf3, GLIBC_2.2);
+
-+* The header files no longer need to be processed into ANSI C and
-+ traditional C versions. There is just one set of files to install, and
-+ it will work with ANSI or old C compilers (including `gcc -traditional').
++extern double __divdf3 (double, double) attribute_hidden;
++double INTUSE (__divdf3) (double x, double y)
++{
++ return __divdf3 (x, y);
++}
++symbol_version (INTUSE (__divdf3), __divdf3, GLIBC_2.2);
+
-+* Brendan Kehoe and Ian Lance Taylor have ported the library to the
-+ MIPS DECStation running Ultrix 4.
-+
-+* The Sun 4 startup code (crt0) can now properly load SunOS 4 shared libraries.
-+ Tom Quinn contributed the initial code. The GNU C library can NOT yet be
-+ made itself into a shared library.
-+
-+* Yet further improved support for the i386, running 4.3 BSD-like systems
-+ (such as Mach 3 with the Unix single-server), or System V.
-+
-+* New function `strncasecmp' to do case-insensitive string comparison
-+ with limited length.
-+
-+* New function `strsep' is a reentrant alternative to `strtok'.
-+
-+* New functions `scandir' and `alphasort' for searching directories.
-+
-+* New function `setenv' is a better interface to `putenv'.
-+
-+* Ian Lance Taylor has contributed an implementation of the SVID `ftw'
-+ function for traversing a directory tree.
-+
-+* The GNU obstack package is now also part of the C library.
-+ The new function `open_obstack_stream' creates a stdio stream that
-+ writes onto an obstack; `obstack_printf' and `obstack_vprintf' do
-+ formatted output directly to an obstack.
-+
-+* Miscellaneous new functions: reboot, nice, sigaltstack (4.4 BSD only),
-+ cfmakeraw, getusershell, getpass, swab, getttyent, seteuid, setegid.
-+
-+* `FNM_FILE_NAME' is another name for `FNM_PATHNAME', used with `fnmatch'.
++extern float __divsf3 (float, float) attribute_hidden;
++float INTUSE (__divsf3) (float x, float y)
++{
++ return __divsf3 (x, y);
++}
++symbol_version (INTUSE (__divsf3), __divsf3, GLIBC_2.2);
+
-+* The new functions `strfry' and `memfrob' do mysterious and wonderful
-+ things to your strings.
++extern int64_t __divdi3 (int64_t, int64_t) attribute_hidden;
++int64_t INTUSE (__divdi3) (int64_t x, int64_t y)
++{
++ return __divdi3 (x, y);
++}
++symbol_version (INTUSE (__divdi3), __divdi3, GLIBC_2.2);
+
-+* There are some new test programs: test-fseek, testmb, and testrand.
++extern int64_t __moddi3 (int64_t, int64_t) attribute_hidden;
++int64_t INTUSE (__moddi3) (int64_t x, int64_t y)
++{
++ return __moddi3 (x, y);
++}
++symbol_version (INTUSE (__moddi3), __moddi3, GLIBC_2.2);
+
-+* Some work has been done to begin porting the library to 4.4 BSD and Linux.
-+ These ports are not finished, but are a good starting place for really
-+ supporting those systems.
++extern uint64_t __udivdi3 (uint64_t, uint64_t) attribute_hidden;
++uint64_t INTUSE (__udivdi3) (uint64_t x, uint64_t y)
++{
++ return __udivdi3 (x, y);
++}
++symbol_version (INTUSE (__udivdi3), __udivdi3, GLIBC_2.2);
+
-+* `/etc/localtime' is now the standard location for the file that says what
-+ the local timezone is, rather than `/usr/local/lib/zoneinfo/localtime'.
-+ This follows the general principle that `/etc' is the place for all local
-+ configuration files.
-+
-+* The C library header files now use `extern "C"' when used by the C++
-+ compiler, so the C library should now work with C++ code.
-+
-+* The header file <bstring.h> is gone. <string.h> now declares bcopy,
-+ bcmp, bzero, and ffs. (Update: nowadays these functions are declared
-+ in <strings.h>.)
-+
-+* Mike Haertel (of GNU e?grep and malloc fame) has written a new sorting
-+ function which uses the `merge sort' algorithm, and is said to be
-+ significantly faster than the old GNU `qsort' function. Merge sort is
-+ now the standard `qsort' function. The new algorithm can require a lot
-+ of temporary storage; so, the old sorting function is called when the
-+ required storage is not available.
++extern uint64_t __umoddi3 (uint64_t, uint64_t) attribute_hidden;
++uint64_t INTUSE (__umoddi3) (uint64_t x, uint64_t y)
++{
++ return __umoddi3 (x, y);
++}
++symbol_version (INTUSE (__umoddi3), __umoddi3, GLIBC_2.2);
+
-+* The C library now includes Michael Glad's Ultra Fast Crypt, which
-+ provides the Unix `crypt' function, plus some other entry points.
-+
-+* The code and header files taken from 4.4 BSD have been updated with the
-+ latest files released from Berkeley.
-+
-+----------------------------------------------------------------------
-+Copyright information:
-+
-+Copyright (C) 1992-2009, 2010, 2011 Free Software Foundation, Inc.
-+
-+ Permission is granted to anyone to make or distribute verbatim copies
-+ of this document as received, in any medium, provided that the
-+ copyright notice and this permission notice are preserved,
-+ thus giving the recipient permission to redistribute in turn.
++extern int128_t __multi3 (int128_t, int128_t) attribute_hidden;
++int128_t INTUSE (__multi3) (int128_t x, int128_t y)
++{
++ return __multi3 (x, y);
++}
++symbol_version (INTUSE (__multi3), __multi3, GLIBC_2.2);
+
-+ Permission is granted to distribute modified versions
-+ of this document, or of portions of it,
-+ under the above conditions, provided also that they
-+ carry prominent notices stating who last changed them.
-+
-+Local variables:
-+version-control: never
-+fill-column: 76
-+End:
-Common subdirectories: a/abilist and b/abilist
-Common subdirectories: a/aout and b/aout
-Common subdirectories: a/argp and b/argp
-Common subdirectories: a/assert and b/assert
-Common subdirectories: a/bits and b/bits
-Common subdirectories: a/c_stubs and b/c_stubs
-Common subdirectories: a/catgets and b/catgets
-Common subdirectories: a/conf and b/conf
-diff -Nup a/config.h.in b/config.h.in
---- a/config.h.in 2012-01-01 05:16:32.000000000 -0700
-+++ b/config.h.in 2012-01-01 13:08:53.292715874 -0700
-@@ -187,6 +187,9 @@
- /* Define if `.ctors' and `.dtors' sections shouldn't be used. */
- #undef NO_CTORS_DTORS_SECTIONS
++#endif
+diff -Nrup a/sysdeps/mach/hurd/getrlimit.c b/sysdeps/mach/hurd/getrlimit.c
+--- a/sysdeps/mach/hurd/getrlimit.c 2012-01-01 05:16:32.000000000 -0700
++++ b/sysdeps/mach/hurd/getrlimit.c 2012-01-01 20:41:26.694439833 -0700
+@@ -44,4 +44,5 @@ __getrlimit (enum __rlimit_resource reso
-+/* Define if Systemtap <sys/sdt.h> probes should be defined. */
-+#undef USE_STAP_PROBE
-+
- /*
- */
+ return 0;
+ }
++libc_hidden_def (__getrlimit)
+ weak_alias (__getrlimit, getrlimit)
+diff -Nrup a/sysdeps/posix/getaddrinfo.c b/sysdeps/posix/getaddrinfo.c
+--- a/sysdeps/posix/getaddrinfo.c 2012-01-01 05:16:32.000000000 -0700
++++ b/sysdeps/posix/getaddrinfo.c 2012-01-01 20:41:26.695439833 -0700
+@@ -565,8 +565,8 @@ gaih_inet (const char *name, const struc
-diff -Nup a/configure b/configure
---- a/configure 2012-01-01 13:08:19.157713463 -0700
-+++ b/configure 2012-01-01 13:08:53.294715875 -0700
-@@ -791,6 +791,7 @@ enable_kernel
- enable_all_warnings
- enable_multi_arch
- enable_nss_crypt
-+enable_systemtap
- with_cpu
- '
- ac_precious_vars='build_alias
-@@ -1450,6 +1451,7 @@ Optional Features:
- --enable-multi-arch enable single DSO with optimizations for multiple
- architectures
- --enable-nss-crypt enable libcrypt to use nss
-+ --enable-systemtap enable systemtap static probe points [default=no]
+ /* If we do not have to look for IPv6 addresses, use
+ the simple, old functions, which do not support
+- IPv6 scope ids. */
+- if (req->ai_family == AF_INET)
++ IPv6 scope ids, nor retrieving the canonical name. */
++ if (req->ai_family == AF_INET && (req->ai_flags & AI_CANONNAME) == 0)
+ {
+ size_t tmpbuflen = 512;
+ assert (tmpbuf == NULL);
+@@ -1105,68 +1105,10 @@ gaih_inet (const char *name, const struc
+ /* Only the first entry gets the canonical name. */
+ if (at2 == at && (req->ai_flags & AI_CANONNAME) != 0)
+ {
+- char *tmpbuf2 = NULL;
+- bool malloc_tmpbuf2 = false;
+-
+ if (canon == NULL)
+- {
+- struct hostent *h = NULL;
+- int herrno;
+- struct hostent th;
+- size_t tmpbuf2len = 512;
+-
+- do
+- {
+- if (__libc_use_alloca (alloca_used + 2 * tmpbuf2len))
+- tmpbuf2 = extend_alloca_account (tmpbuf2, tmpbuf2len,
+- tmpbuf2len * 2,
+- alloca_used);
+- else
+- {
+- char *newp = realloc (malloc_tmpbuf2 ? tmpbuf2 : NULL,
+- 2 * tmpbuf2len);
+- if (newp == NULL)
+- {
+- if (malloc_tmpbuf2)
+- free (tmpbuf2);
+- result = -EAI_MEMORY;
+- goto free_and_return;
+- }
+-
+- tmpbuf2 = newp;
+- tmpbuf2len = 2 * tmpbuf2len;
+- malloc_tmpbuf2 = true;
+- }
+-
+- rc = __gethostbyaddr_r (at2->addr,
+- ((at2->family == AF_INET6)
+- ? sizeof (struct in6_addr)
+- : sizeof (struct in_addr)),
+- at2->family, &th, tmpbuf2,
+- tmpbuf2len, &h, &herrno);
+- }
+- while (rc == ERANGE && herrno == NETDB_INTERNAL);
+-
+- if (rc != 0 && herrno == NETDB_INTERNAL)
+- {
+- if (malloc_tmpbuf2)
+- free (tmpbuf2);
+-
+- __set_h_errno (herrno);
+- result = -EAI_SYSTEM;
+- goto free_and_return;
+- }
+-
+- if (h != NULL)
+- canon = h->h_name;
+- else
+- {
+- assert (orig_name != NULL);
+- /* If the canonical name cannot be determined, use
+- the passed in string. */
+- canon = orig_name;
+- }
+- }
++ /* If the canonical name cannot be determined, use
++ the passed in string. */
++ canon = orig_name;
- Optional Packages:
- --with-PACKAGE[=ARG] use PACKAGE [ARG=yes]
-@@ -3804,6 +3806,51 @@ else
- fi
+ #ifdef HAVE_LIBIDN
+ if (req->ai_flags & AI_CANONIDN)
+@@ -1181,9 +1123,6 @@ gaih_inet (const char *name, const struc
+ int rc = __idna_to_unicode_lzlz (canon, &out, idn_flags);
+ if (rc != IDNA_SUCCESS)
+ {
+- if (malloc_tmpbuf2)
+- free (tmpbuf2);
+-
+ if (rc == IDNA_MALLOC_ERROR)
+ result = -EAI_MEMORY;
+ else if (rc == IDNA_DLOPEN_ERROR)
+@@ -1213,17 +1152,11 @@ gaih_inet (const char *name, const struc
+ canon = strdup (canon);
+ if (canon == NULL)
+ {
+- if (malloc_tmpbuf2)
+- free (tmpbuf2);
+-
+ result = -EAI_MEMORY;
+ goto free_and_return;
+ }
+ }
+ }
+-
+- if (malloc_tmpbuf2)
+- free (tmpbuf2);
+ }
+ family = at2->family;
+@@ -1360,10 +1293,12 @@ static const struct scopeentry
+ /* Link-local addresses: scope 2. */
+ { { { 169, 254, 0, 0 } }, htonl_c (0xffff0000), 2 },
+ { { { 127, 0, 0, 0 } }, htonl_c (0xff000000), 2 },
++#if 0
+ /* Site-local addresses: scope 5. */
+ { { { 10, 0, 0, 0 } }, htonl_c (0xff000000), 5 },
+ { { { 172, 16, 0, 0 } }, htonl_c (0xfff00000), 5 },
+ { { { 192, 168, 0, 0 } }, htonl_c (0xffff0000), 5 },
++#endif
+ /* Default: scope 14. */
+ { { { 0, 0, 0, 0 } }, htonl_c (0x00000000), 14 }
+ };
+diff -Nrup a/sysdeps/powerpc/powerpc64/Makefile b/sysdeps/powerpc/powerpc64/Makefile
+--- a/sysdeps/powerpc/powerpc64/Makefile 2012-01-01 05:16:32.000000000 -0700
++++ b/sysdeps/powerpc/powerpc64/Makefile 2012-01-01 20:41:26.695439833 -0700
+@@ -33,6 +33,7 @@ ifneq ($(elf),no)
+ # we use -fpic instead which is much better.
+ CFLAGS-initfini.s += -fpic -O1
+ endif
++CFLAGS-libc-start.c += -fno-asynchronous-unwind-tables
+ endif
-+# Check whether --enable-systemtap was given.
-+if test "${enable_systemtap+set}" = set; then :
-+ enableval=$enable_systemtap; systemtap=$enableval
-+else
-+ systemtap=no
-+fi
+ ifeq ($(subdir),elf)
+diff -Nrup a/sysdeps/powerpc/powerpc64/elf/Makefile b/sysdeps/powerpc/powerpc64/elf/Makefile
+--- a/sysdeps/powerpc/powerpc64/elf/Makefile 2012-01-01 05:16:32.000000000 -0700
++++ b/sysdeps/powerpc/powerpc64/elf/Makefile 2012-01-01 20:41:26.696439833 -0700
+@@ -9,3 +9,5 @@ CFLAGS-rtld-mempcpy.os = $(no-special-re
+ CFLAGS-rtld-memmove.os = $(no-special-regs)
+ CFLAGS-rtld-memchr.os = $(no-special-regs)
+ CFLAGS-rtld-strnlen.os = $(no-special-regs)
++
++CFLAGS-gmon-start.c = -fno-strict-aliasing
+diff -Nrup a/sysdeps/s390/s390-64/utf16-utf32-z9.c b/sysdeps/s390/s390-64/utf16-utf32-z9.c
+--- a/sysdeps/s390/s390-64/utf16-utf32-z9.c 2012-01-01 05:16:32.000000000 -0700
++++ b/sysdeps/s390/s390-64/utf16-utf32-z9.c 2012-01-01 20:41:26.696439833 -0700
+@@ -169,10 +169,7 @@ gconv_end (struct __gconv_step *data)
+ register unsigned long long outlen asm("11") = outend - outptr; \
+ uint64_t cc = 0; \
+ \
+- asm volatile (".machine push \n\t" \
+- ".machine \"z9-109\" \n\t" \
+- "0: " INSTRUCTION " \n\t" \
+- ".machine pop \n\t" \
++ asm volatile ("0: " INSTRUCTION " \n\t" \
+ " jo 0b \n\t" \
+ " ipm %2 \n" \
+ : "+a" (pOutput), "+a" (pInput), "+d" (cc), \
+diff -Nrup a/sysdeps/s390/s390-64/utf8-utf16-z9.c b/sysdeps/s390/s390-64/utf8-utf16-z9.c
+--- a/sysdeps/s390/s390-64/utf8-utf16-z9.c 2012-01-01 05:16:32.000000000 -0700
++++ b/sysdeps/s390/s390-64/utf8-utf16-z9.c 2012-01-01 20:41:26.697439833 -0700
+@@ -151,10 +151,7 @@ gconv_end (struct __gconv_step *data)
+ register unsigned long long outlen asm("11") = outend - outptr; \
+ uint64_t cc = 0; \
+ \
+- asm volatile (".machine push \n\t" \
+- ".machine \"z9-109\" \n\t" \
+- "0: " INSTRUCTION " \n\t" \
+- ".machine pop \n\t" \
++ asm volatile ("0: " INSTRUCTION " \n\t" \
+ " jo 0b \n\t" \
+ " ipm %2 \n" \
+ : "+a" (pOutput), "+a" (pInput), "+d" (cc), \
+diff -Nrup a/sysdeps/s390/s390-64/utf8-utf32-z9.c b/sysdeps/s390/s390-64/utf8-utf32-z9.c
+--- a/sysdeps/s390/s390-64/utf8-utf32-z9.c 2012-01-01 05:16:32.000000000 -0700
++++ b/sysdeps/s390/s390-64/utf8-utf32-z9.c 2012-01-01 20:41:26.697439833 -0700
+@@ -155,10 +155,7 @@ gconv_end (struct __gconv_step *data)
+ register unsigned long long outlen asm("11") = outend - outptr; \
+ uint64_t cc = 0; \
+ \
+- asm volatile (".machine push \n\t" \
+- ".machine \"z9-109\" \n\t" \
+- "0: " INSTRUCTION " \n\t" \
+- ".machine pop \n\t" \
++ asm volatile ("0: " INSTRUCTION " \n\t" \
+ " jo 0b \n\t" \
+ " ipm %2 \n" \
+ : "+a" (pOutput), "+a" (pInput), "+d" (cc), \
+diff -Nrup a/sysdeps/unix/nice.c b/sysdeps/unix/nice.c
+--- a/sysdeps/unix/nice.c 2012-01-01 05:16:32.000000000 -0700
++++ b/sysdeps/unix/nice.c 2012-01-01 20:41:26.698439833 -0700
+@@ -42,7 +42,12 @@ nice (int incr)
+ __set_errno (save);
+ }
+
+- result = setpriority (PRIO_PROCESS, 0, prio + incr);
++ prio += incr;
++ if (prio < PRIO_MIN)
++ prio = PRIO_MIN;
++ else if (prio >= PRIO_MAX)
++ prio = PRIO_MAX - 1;
++ result = setpriority (PRIO_PROCESS, 0, prio);
+ if (result == -1)
+ {
+ if (errno == EACCES)
+diff -Nrup a/sysdeps/unix/sysv/linux/check_pf.c b/sysdeps/unix/sysv/linux/check_pf.c
+--- a/sysdeps/unix/sysv/linux/check_pf.c 2012-01-01 05:16:32.000000000 -0700
++++ b/sysdeps/unix/sysv/linux/check_pf.c 2012-01-01 20:41:26.698439833 -0700
+@@ -27,16 +27,14 @@
+ #include <unistd.h>
+ #include <sys/socket.h>
+
+-#include <asm/types.h>
+-#include <linux/netlink.h>
+-#include <linux/rtnetlink.h>
+-
+ #include <not-cancel.h>
+ #include <kernel-features.h>
+ #include <bits/libc-lock.h>
+ #include <atomic.h>
+ #include <nscd/nscd-client.h>
+
++#include "netlinkaccess.h"
+
-+if test x$systemtap != xno; then
-+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking for systemtap static probe support" >&5
-+$as_echo_n "checking for systemtap static probe support... " >&6; }
-+if test "${libc_cv_sdt+set}" = set; then :
-+ $as_echo_n "(cached) " >&6
-+else
-+ old_CFLAGS="$CFLAGS"
-+ CFLAGS="-std=gnu99 $CFLAGS"
-+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-+/* end confdefs.h. */
-+#include <sys/sdt.h>
-+void foo (int i, void *p)
+
+ #ifndef IFA_F_HOMEADDRESS
+ # define IFA_F_HOMEADDRESS 0
+diff -Nrup a/sysdeps/unix/sysv/linux/futimesat.c b/sysdeps/unix/sysv/linux/futimesat.c
+--- a/sysdeps/unix/sysv/linux/futimesat.c 2012-01-01 05:16:32.000000000 -0700
++++ b/sysdeps/unix/sysv/linux/futimesat.c 2012-01-01 20:41:26.699439832 -0700
+@@ -37,14 +37,14 @@ futimesat (fd, file, tvp)
+ {
+ int result;
+
++ if (file == NULL)
++ return __futimes (fd, tvp);
++
+ #ifdef __NR_futimesat
+ # ifndef __ASSUME_ATFCTS
+ if (__have_atfcts >= 0)
+ # endif
+ {
+- if (file == NULL)
+- return __futimes (fd, tvp);
+-
+ result = INLINE_SYSCALL (futimesat, 3, fd, file, tvp);
+ # ifndef __ASSUME_ATFCTS
+ if (result == -1 && errno == ENOSYS)
+@@ -58,22 +58,7 @@ futimesat (fd, file, tvp)
+ #ifndef __ASSUME_ATFCTS
+ char *buf = NULL;
+
+- if (file == NULL)
+- {
+- static const char procfd[] = "/proc/self/fd/%d";
+- /* Buffer for the path name we are going to use. It consists of
+- - the string /proc/self/fd/
+- - the file descriptor number.
+- The final NUL is included in the sizeof. A bit of overhead
+- due to the format elements compensates for possible negative
+- numbers. */
+- size_t buflen = sizeof (procfd) + sizeof (int) * 3;
+- buf = alloca (buflen);
+-
+- __snprintf (buf, buflen, procfd, fd);
+- file = buf;
+- }
+- else if (fd != AT_FDCWD && file[0] != '/')
++ if (fd != AT_FDCWD && file[0] != '/')
+ {
+ size_t filelen = strlen (file);
+ if (__builtin_expect (filelen == 0, 0))
+diff -Nrup a/sysdeps/unix/sysv/linux/i386/____longjmp_chk.S b/sysdeps/unix/sysv/linux/i386/____longjmp_chk.S
+--- a/sysdeps/unix/sysv/linux/i386/____longjmp_chk.S 2012-01-01 05:16:32.000000000 -0700
++++ b/sysdeps/unix/sysv/linux/i386/____longjmp_chk.S 2012-01-01 20:41:26.699439832 -0700
+@@ -1,4 +1,5 @@
+-/* Copyright (C) 2001,2004,2005,2006,2009 Free Software Foundation, Inc.
++/* Copyright (C) 2001,2004,2005,2006,2009,2011
++ 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
+@@ -19,6 +20,7 @@
+ #include <sysdep.h>
+ #include <jmpbuf-offsets.h>
+ #include <asm-syntax.h>
++#include <stap-probe.h>
+
+
+ .section .rodata.str1.1,"aMS", at progbits,1
+@@ -79,7 +81,9 @@ ENTRY (____longjmp_chk)
+ cfi_adjust_cfa_offset(-12)
+ movl 4(%esp), %ecx
+
+-.Lok: /* We add unwind information for the target here. */
++.Lok:
++ LIBC_PROBE (longjmp, 3, 4@%ecx, -4 at 8(%esp), 4@%edx)
++ /* We add unwind information for the target here. */
+ cfi_def_cfa(%ecx, 0)
+ cfi_register(%eip, %edx)
+ cfi_register(%esp, %edi)
+@@ -102,5 +106,6 @@ ENTRY (____longjmp_chk)
+ cfi_restore(%ebp)
+
+ /* Jump to saved PC. */
++ LIBC_PROBE (longjmp_target, 3, 4@%ecx, -4@%eax, 4@%edx)
+ jmp *%edx
+ END (____longjmp_chk)
+diff -Nrup a/sysdeps/unix/sysv/linux/i386/dl-cache.h b/sysdeps/unix/sysv/linux/i386/dl-cache.h
+--- a/sysdeps/unix/sysv/linux/i386/dl-cache.h 1969-12-31 17:00:00.000000000 -0700
++++ b/sysdeps/unix/sysv/linux/i386/dl-cache.h 2012-01-01 20:41:26.700439831 -0700
+@@ -0,0 +1,59 @@
++/* Support for reading /etc/ld.so.cache files written by Linux ldconfig.
++ 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. */
++
++static inline int
++is_ia64 (void)
+{
-+ asm ("" STAP_PROBE_ASM (foo, bar, STAP_PROBE_ASM_TEMPLATE (2)) ""
-+ :: STAP_PROBE_ASM_OPERANDS (2, i, p));
++ unsigned int fl1, fl2;
++
++ /* See if we can use cpuid. */
++ __asm__ ("pushfl; pushfl; popl %0; movl %0,%1; xorl %2,%0;"
++ "pushl %0; popfl; pushfl; popl %0; popfl"
++ : "=&r" (fl1), "=&r" (fl2)
++ : "i" (0x00200000));
++ if (((fl1 ^ fl2) & 0x00200000) == 0)
++ return 0;
++
++ /* Host supports cpuid. See if cpuid gives capabilities, try
++ CPUID(0). Preserve %ebx and %ecx; cpuid insn clobbers these, we
++ don't need their CPUID values here, and %ebx may be the PIC
++ register. */
++ __asm__ ("pushl %%ecx; pushl %%ebx; cpuid; popl %%ebx; popl %%ecx"
++ : "=a" (fl1) : "0" (0) : "edx", "cc");
++ if (fl1 == 0)
++ return 0;
++
++ /* Invoke CPUID(1), return %edx; caller can examine bits to
++ determine what's supported. */
++ __asm__ ("pushl %%ecx; pushl %%ebx; cpuid; popl %%ebx; popl %%ecx"
++ : "=d" (fl2), "=a" (fl1) : "1" (1) : "cc");
++ return (fl2 & (1 << 30)) != 0;
+}
-+_ACEOF
-+if ac_fn_c_try_compile "$LINENO"; then :
-+ libc_cv_sdt=yes
-+else
-+ libc_cv_sdt=no
-+fi
-+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-+ CFLAGS="$old_CFLAGS"
-+fi
-+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $libc_cv_sdt" >&5
-+$as_echo "$libc_cv_sdt" >&6; }
-+ if test $libc_cv_sdt = yes; then
-+ $as_echo "#define USE_STAP_PROBE 1" >>confdefs.h
-+
-+ else
-+ { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
-+$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
-+as_fn_error $? "systemtap support needs sys/sdt.h with asm support
-+See \`config.log' for more details" "$LINENO" 5; }
-+ fi
-+fi
+
- # The way shlib-versions is used to generate soversions.mk uses a
- # fairly simplistic model for name recognition that can't distinguish
- # i486-pc-linux-gnu fully from i486-pc-gnu. So we mutate a $host_os
-diff -Nup a/configure.in b/configure.in
---- a/configure.in 2012-01-01 05:16:32.000000000 -0700
-+++ b/configure.in 2012-01-01 13:08:53.295715875 -0700
-@@ -290,6 +290,29 @@ else
- fi
- AC_SUBST(libc_cv_nss_crypt)
++#define arch_startup(argc, argv) \
++ do { \
++ /* On IA-64, try to execute 64-bit ldconfig if possible. \
++ This is because the badly designed /emul/ia32-linux hack \
++ will cause 32-bit ldconfig to do all sorts of weird things. */ \
++ if (is_ia64 ()) \
++ execv ("/emul/ia32-linux/../../sbin/ldconfig", \
++ (char *const *) argv); \
++ } while (0)
++
++#include_next <dl-cache.h>
+diff -Nrup a/sysdeps/unix/sysv/linux/i386/getrlimit.c b/sysdeps/unix/sysv/linux/i386/getrlimit.c
+--- a/sysdeps/unix/sysv/linux/i386/getrlimit.c 2012-01-01 05:16:32.000000000 -0700
++++ b/sysdeps/unix/sysv/linux/i386/getrlimit.c 2012-01-01 20:41:26.700439831 -0700
+@@ -79,4 +79,5 @@ __new_getrlimit (enum __rlimit_resource
+ }
-+AC_ARG_ENABLE([systemtap],
-+ [AS_HELP_STRING([--enable-systemtap],
-+ [enable systemtap static probe points @<:@default=no@:>@])],
-+ [systemtap=$enableval],
-+ [systemtap=no])
-+if test x$systemtap != xno; then
-+ AC_CACHE_CHECK([for systemtap static probe support], libc_cv_sdt, [dnl
-+ old_CFLAGS="$CFLAGS"
-+ CFLAGS="-std=gnu99 $CFLAGS"
-+ AC_COMPILE_IFELSE([#include <sys/sdt.h>
-+void foo (int i, void *p)
-+{
-+ asm ("" STAP_PROBE_ASM (foo, bar, STAP_PROBE_ASM_TEMPLATE (2)) ""
-+ :: STAP_PROBE_ASM_OPERANDS (2, i, p));
-+}], [libc_cv_sdt=yes], [libc_cv_sdt=no])
-+ CFLAGS="$old_CFLAGS"])
-+ if test $libc_cv_sdt = yes; then
-+ AC_DEFINE([USE_STAP_PROBE])
-+ else
-+ AC_MSG_FAILURE([systemtap support needs sys/sdt.h with asm support])
-+ fi
-+fi
-+
- # The way shlib-versions is used to generate soversions.mk uses a
- # fairly simplistic model for name recognition that can't distinguish
- # i486-pc-linux-gnu fully from i486-pc-gnu. So we mutate a $host_os
-Common subdirectories: a/conform and b/conform
-Common subdirectories: a/crypt and b/crypt
-Common subdirectories: a/csu and b/csu
-Common subdirectories: a/ctype and b/ctype
-Common subdirectories: a/debug and b/debug
-Common subdirectories: a/dirent and b/dirent
-Common subdirectories: a/dlfcn and b/dlfcn
-Common subdirectories: a/elf and b/elf
-diff -Nup a/extra-lib.mk b/extra-lib.mk
---- a/extra-lib.mk 2012-01-01 05:16:32.000000000 -0700
-+++ b/extra-lib.mk 2012-01-01 13:08:53.304715875 -0700
-@@ -101,4 +101,4 @@ ifneq (,$(cpp-srcs-left))
- include $(patsubst %,$(..)cppflags-iterator.mk,$(cpp-srcs-left))
- endif
+ weak_alias (__new_getrlimit, __getrlimit);
++libc_hidden_weak (__getrlimit)
+ versioned_symbol (libc, __new_getrlimit, getrlimit, GLIBC_2_2);
+diff -Nrup a/sysdeps/unix/sysv/linux/ia64/dl-cache.h b/sysdeps/unix/sysv/linux/ia64/dl-cache.h
+--- a/sysdeps/unix/sysv/linux/ia64/dl-cache.h 2012-01-01 05:16:32.000000000 -0700
++++ b/sysdeps/unix/sysv/linux/ia64/dl-cache.h 2012-01-01 20:41:26.701439831 -0700
+@@ -22,4 +22,31 @@
+ #define _dl_cache_check_flags(flags) \
+ ((flags) == _DL_CACHE_DEFAULT_ID)
--CPPFLAGS-$(lib) := -DNOT_IN_libc=1 -DIS_IN_$(lib)=1
-+CPPFLAGS-$(lib) := -DNOT_IN_libc=1 -DIS_IN_$(lib)=1 -DIN_LIB=$(lib)
-Common subdirectories: a/fedora and b/fedora
-Common subdirectories: a/gmon and b/gmon
-Common subdirectories: a/gnulib and b/gnulib
-Common subdirectories: a/grp and b/grp
-Common subdirectories: a/gshadow and b/gshadow
-Common subdirectories: a/hesiod and b/hesiod
-Common subdirectories: a/hurd and b/hurd
-Common subdirectories: a/iconv and b/iconv
-Common subdirectories: a/iconvdata and b/iconvdata
-Common subdirectories: a/include and b/include
-Common subdirectories: a/inet and b/inet
-Common subdirectories: a/intl and b/intl
-Common subdirectories: a/io and b/io
-Common subdirectories: a/libidn and b/libidn
-Common subdirectories: a/libio and b/libio
-Common subdirectories: a/locale and b/locale
-Common subdirectories: a/localedata and b/localedata
-Common subdirectories: a/login and b/login
-Common subdirectories: a/mach and b/mach
-Common subdirectories: a/malloc and b/malloc
-Common subdirectories: a/manual and b/manual
-Common subdirectories: a/math and b/math
-Common subdirectories: a/misc and b/misc
-Common subdirectories: a/nis and b/nis
-Common subdirectories: a/nptl and b/nptl
-Common subdirectories: a/nptl_db and b/nptl_db
-Common subdirectories: a/nscd and b/nscd
-Common subdirectories: a/nss and b/nss
-Common subdirectories: a/po and b/po
-Common subdirectories: a/posix and b/posix
-Common subdirectories: a/pwd and b/pwd
-Common subdirectories: a/resolv and b/resolv
-Common subdirectories: a/resource and b/resource
-Common subdirectories: a/rt and b/rt
-Common subdirectories: a/rtkaio and b/rtkaio
-Common subdirectories: a/scripts and b/scripts
-Common subdirectories: a/setjmp and b/setjmp
-Common subdirectories: a/shadow and b/shadow
-Common subdirectories: a/signal and b/signal
-Common subdirectories: a/socket and b/socket
-Common subdirectories: a/soft-fp and b/soft-fp
-Common subdirectories: a/stdio-common and b/stdio-common
-Common subdirectories: a/stdlib and b/stdlib
-Common subdirectories: a/streams and b/streams
-Common subdirectories: a/string and b/string
-Common subdirectories: a/sunrpc and b/sunrpc
-Common subdirectories: a/sysdeps and b/sysdeps
-Common subdirectories: a/sysvipc and b/sysvipc
-Common subdirectories: a/termios and b/termios
-Common subdirectories: a/time and b/time
-Common subdirectories: a/timezone and b/timezone
-Common subdirectories: a/wcsmbs and b/wcsmbs
-Common subdirectories: a/wctype and b/wctype
++#define EMUL_HACK "/emul/ia32-linux"
++
++#define arch_startup(argc, argv) unlink (EMUL_HACK LD_SO_CACHE)
++
++#define add_arch_dirs(config_file) \
++ do { \
++ int save_verbose = opt_verbose; \
++ opt_verbose = 0; \
++ \
++ parse_conf (config_file, EMUL_HACK, true); \
++ \
++ /* Always add the standard search paths. */ \
++ add_system_dir (EMUL_HACK SLIBDIR); \
++ if (strcmp (SLIBDIR, LIBDIR)) \
++ add_system_dir (EMUL_HACK LIBDIR); \
++ \
++ char emul_config_file[strlen (config_file) \
++ + sizeof EMUL_HACK]; \
++ strcpy (mempcpy (emul_config_file, EMUL_HACK, \
++ strlen (EMUL_HACK)), config_file); \
++ \
++ if (! access (emul_config_file, R_OK)) \
++ parse_conf (emul_config_file, EMUL_HACK, true); \
++ \
++ opt_verbose = save_verbose; \
++ } while (0)
++
+ #include_next <dl-cache.h>
+diff -Nrup a/sysdeps/unix/sysv/linux/ia64/dl-procinfo.c b/sysdeps/unix/sysv/linux/ia64/dl-procinfo.c
+--- a/sysdeps/unix/sysv/linux/ia64/dl-procinfo.c 1969-12-31 17:00:00.000000000 -0700
++++ b/sysdeps/unix/sysv/linux/ia64/dl-procinfo.c 2012-01-01 20:41:26.701439831 -0700
+@@ -0,0 +1,5 @@
++#ifdef IS_IN_ldconfig
++#include <sysdeps/i386/dl-procinfo.c>
++#else
++#include <sysdeps/generic/dl-procinfo.c>
++#endif
+diff -Nrup a/sysdeps/unix/sysv/linux/ia64/dl-procinfo.h b/sysdeps/unix/sysv/linux/ia64/dl-procinfo.h
+--- a/sysdeps/unix/sysv/linux/ia64/dl-procinfo.h 1969-12-31 17:00:00.000000000 -0700
++++ b/sysdeps/unix/sysv/linux/ia64/dl-procinfo.h 2012-01-01 20:41:26.701439831 -0700
+@@ -0,0 +1,5 @@
++#ifdef IS_IN_ldconfig
++#include <sysdeps/unix/sysv/linux/i386/dl-procinfo.h>
++#else
++#include <sysdeps/generic/dl-procinfo.h>
++#endif
+diff -Nrup a/sysdeps/unix/sysv/linux/ia64/ldd-rewrite.sed b/sysdeps/unix/sysv/linux/ia64/ldd-rewrite.sed
+--- a/sysdeps/unix/sysv/linux/ia64/ldd-rewrite.sed 2012-01-01 05:16:32.000000000 -0700
++++ b/sysdeps/unix/sysv/linux/ia64/ldd-rewrite.sed 2012-01-01 20:41:26.701439831 -0700
+@@ -1 +1 @@
+-s_^\(RTLDLIST=\)\([^ ]*\)-ia64\(\.so\.[0-9.]*\)[ ]*$_\1"\2-ia64\3 \2\3"_
++s_^\(RTLDLIST=\)\([^ ]*\)-ia64\(\.so\.[0-9.]*\)[ ]*$_\1"\2-ia64\3 /emul/ia32-linux\2\3"_
+diff -Nrup a/sysdeps/unix/sysv/linux/netlinkaccess.h b/sysdeps/unix/sysv/linux/netlinkaccess.h
+--- a/sysdeps/unix/sysv/linux/netlinkaccess.h 2012-01-01 05:16:32.000000000 -0700
++++ b/sysdeps/unix/sysv/linux/netlinkaccess.h 2012-01-01 20:41:26.702439831 -0700
+@@ -25,6 +25,24 @@
+
+ #include <kernel-features.h>
+
++#ifndef IFA_MAX
++/* 2.6.19 kernel headers helpfully removed some macros and
++ moved lots of stuff into new headers, some of which aren't
++ included by linux/rtnetlink.h. */
++#include <linux/if_addr.h>
++#endif
++
++#ifndef IFA_RTA
++# define IFA_RTA(r) \
++ ((struct rtattr*) ((char*)(r) + NLMSG_ALIGN (sizeof (struct ifaddrmsg))))
++# define IFA_PAYLOAD(n) NLMSG_PAYLOAD (n, sizeof (struct ifaddrmsg))
++#endif
++
++#ifndef IFLA_RTA
++# define IFLA_RTA(r) \
++ ((struct rtattr*) ((char*)(r) + NLMSG_ALIGN (sizeof (struct ifinfomsg))))
++# define IFLA_PAYLOAD(n) NLMSG_PAYLOAD (n, sizeof (struct ifinfomsg))
++#endif
+
+ struct netlink_res
+ {
+diff -Nrup a/sysdeps/unix/sysv/linux/paths.h b/sysdeps/unix/sysv/linux/paths.h
+--- a/sysdeps/unix/sysv/linux/paths.h 2012-01-01 05:16:32.000000000 -0700
++++ b/sysdeps/unix/sysv/linux/paths.h 2012-01-01 20:41:26.702439831 -0700
+@@ -62,7 +62,7 @@
+ #define _PATH_TTY "/dev/tty"
+ #define _PATH_UNIX "/boot/vmlinux"
+ #define _PATH_UTMP "/var/run/utmp"
+-#define _PATH_VI "/usr/bin/vi"
++#define _PATH_VI "/bin/vi"
+ #define _PATH_WTMP "/var/log/wtmp"
+
+ /* Provide trailing slash, since mostly used for building pathnames. */
+diff -Nrup a/sysdeps/unix/sysv/linux/tcsetattr.c b/sysdeps/unix/sysv/linux/tcsetattr.c
+--- a/sysdeps/unix/sysv/linux/tcsetattr.c 2012-01-01 05:16:32.000000000 -0700
++++ b/sysdeps/unix/sysv/linux/tcsetattr.c 2012-01-01 20:41:26.703439831 -0700
+@@ -49,6 +49,7 @@ tcsetattr (fd, optional_actions, termios
+ {
+ struct __kernel_termios k_termios;
+ unsigned long int cmd;
++ int retval;
+
+ switch (optional_actions)
+ {
+@@ -80,6 +81,35 @@ tcsetattr (fd, optional_actions, termios
+ memcpy (&k_termios.c_cc[0], &termios_p->c_cc[0],
+ __KERNEL_NCCS * sizeof (cc_t));
+
+- return INLINE_SYSCALL (ioctl, 3, fd, cmd, &k_termios);
++ retval = INLINE_SYSCALL (ioctl, 3, fd, cmd, &k_termios);
++
++ if (retval == 0 && cmd == TCSETS)
++ {
++ /* The Linux kernel has a bug which silently ignore the invalid
++ c_cflag on pty. We have to check it here. */
++ int save = errno;
++ retval = INLINE_SYSCALL (ioctl, 3, fd, TCGETS, &k_termios);
++ if (retval)
++ {
++ /* We cannot verify if the setting is ok. We don't return
++ an error (?). */
++ __set_errno (save);
++ retval = 0;
++ }
++ else if ((termios_p->c_cflag & (PARENB | CREAD))
++ != (k_termios.c_cflag & (PARENB | CREAD))
++ || ((termios_p->c_cflag & CSIZE)
++ && ((termios_p->c_cflag & CSIZE)
++ != (k_termios.c_cflag & CSIZE))))
++ {
++ /* It looks like the Linux kernel silently changed the
++ PARENB/CREAD/CSIZE bits in c_cflag. Report it as an
++ error. */
++ __set_errno (EINVAL);
++ retval = -1;
++ }
++ }
++
++ return retval;
+ }
+ libc_hidden_def (tcsetattr)
+diff -Nrup a/sysdeps/unix/sysv/linux/x86_64/____longjmp_chk.S b/sysdeps/unix/sysv/linux/x86_64/____longjmp_chk.S
+--- a/sysdeps/unix/sysv/linux/x86_64/____longjmp_chk.S 2012-01-01 05:16:32.000000000 -0700
++++ b/sysdeps/unix/sysv/linux/x86_64/____longjmp_chk.S 2012-01-01 20:41:26.703439831 -0700
+@@ -19,6 +19,7 @@
+ #include <sysdep.h>
+ #include <jmpbuf-offsets.h>
+ #include <asm-syntax.h>
++#include <stap-probe.h>
+
+ .section .rodata.str1.1,"aMS", at progbits,1
+ .type longjmp_msg, at object
+@@ -94,7 +95,9 @@ ENTRY(____longjmp_chk)
+ movl %ebx, %esi
+ cfi_restore (%rsi)
+
+-.Lok: /* We add unwind information for the target here. */
++.Lok:
++ LIBC_PROBE (longjmp, 3, 8@%rdi, -4@%esi, 8@%rdx)
++ /* We add unwind information for the target here. */
+ cfi_def_cfa(%rdi, 0)
+ cfi_register(%rsp,%r8)
+ cfi_register(%rbp,%r9)
+@@ -113,5 +116,6 @@ ENTRY(____longjmp_chk)
+ movl %esi, %eax
+ movq %r8,%rsp
+ movq %r9,%rbp
++ LIBC_PROBE (longjmp_target, 3, 8@%rdi, -4@%eax, 8@%rdx)
+ jmpq *%rdx
+ END (____longjmp_chk)
+diff -Nrup a/sysdeps/x86_64/__longjmp.S b/sysdeps/x86_64/__longjmp.S
+--- a/sysdeps/x86_64/__longjmp.S 2012-01-01 05:16:32.000000000 -0700
++++ b/sysdeps/x86_64/__longjmp.S 2012-01-01 20:41:26.703439831 -0700
+@@ -1,4 +1,4 @@
+-/* Copyright (C) 2001,2004,2005,2006,2009 Free Software Foundation, Inc.
++/* Copyright (C) 2001,2004,2005,2006,2009,2011 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
+@@ -19,6 +19,7 @@
+ #include <sysdep.h>
+ #include <jmpbuf-offsets.h>
+ #include <asm-syntax.h>
++#include <stap-probe.h>
+
+ /* Jump to the position specified by ENV, causing the
+ setjmp call there to return VAL, or 1 if VAL is 0.
+@@ -34,6 +35,7 @@ ENTRY(__longjmp)
+ PTR_DEMANGLE (%r9)
+ PTR_DEMANGLE (%rdx)
+ #endif
++ LIBC_PROBE (longjmp, 3, 8@%rdi, -4@%esi, 8@%rdx)
+ /* We add unwind information for the target here. */
+ cfi_def_cfa(%rdi, 0)
+ cfi_register(%rsp,%r8)
+@@ -53,5 +55,6 @@ ENTRY(__longjmp)
+ mov %esi, %eax
+ movq %r8,%rsp
+ movq %r9,%rbp
++ LIBC_PROBE (longjmp_target, 3, 8@%rdi, -4@%eax, 8@%rdx)
+ jmpq *%rdx
+ END (__longjmp)
+diff -Nrup a/sysdeps/x86_64/setjmp.S b/sysdeps/x86_64/setjmp.S
+--- a/sysdeps/x86_64/setjmp.S 2012-01-01 05:16:32.000000000 -0700
++++ b/sysdeps/x86_64/setjmp.S 2012-01-01 20:41:26.704439831 -0700
+@@ -1,5 +1,5 @@
+ /* setjmp for x86-64.
+- Copyright (C) 2001, 2003, 2005, 2006 Free Software Foundation, Inc.
++ Copyright (C) 2001,2003,2005,2006,2011 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
+@@ -20,6 +20,7 @@
+ #include <sysdep.h>
+ #include <jmpbuf-offsets.h>
+ #include <asm-syntax.h>
++#include <stap-probe.h>
+
+ ENTRY (__sigsetjmp)
+ /* Save registers. */
+@@ -41,6 +42,7 @@ ENTRY (__sigsetjmp)
+ #endif
+ movq %rdx, (JB_RSP*8)(%rdi)
+ movq (%rsp), %rax /* Save PC we are returning to now. */
++ LIBC_PROBE (setjmp, 3, 8@%rdi, -4@%esi, 8@%rax)
+ #ifdef PTR_MANGLE
+ PTR_MANGLE (%rax)
+ #endif
+diff -Nrup a/timezone/zic.c b/timezone/zic.c
+--- a/timezone/zic.c 2012-01-01 05:16:32.000000000 -0700
++++ b/timezone/zic.c 2012-01-01 20:41:26.705439831 -0700
+@@ -1921,7 +1921,7 @@ const int zonecount;
+ if (stdrp != NULL && stdrp->r_hiyear == 2037)
+ return;
+ }
+- if (stdrp == NULL && zp->z_nrules != 0)
++ if (stdrp == NULL && (zp->z_nrules != 0 || zp->z_stdoff != 0))
+ return;
+ abbrvar = (stdrp == NULL) ? "" : stdrp->r_abbrvar;
+ doabbr(result, zp->z_format, abbrvar, FALSE, TRUE);
diff --git a/glibc-rh769421.patch b/glibc-rh769421.patch
index 96ec3d7..996aba1 100644
--- a/glibc-rh769421.patch
+++ b/glibc-rh769421.patch
@@ -1,7 +1,7 @@
-diff -rNup a/nptl/sysdeps/unix/sysv/linux/i386/i486/pthread_cond_wait.S b/nptl/sysdeps/unix/sysv/linux/i386/i486/pthread_cond_wait.S
---- a/nptl/sysdeps/unix/sysv/linux/i386/i486/pthread_cond_wait.S 2012-01-01 05:16:32.000000000 -0700
-+++ b/nptl/sysdeps/unix/sysv/linux/i386/i486/pthread_cond_wait.S 2012-01-01 13:11:35.782727180 -0700
-@@ -134,7 +134,6 @@ __pthread_cond_wait:
+diff -Nrup a/nptl/sysdeps/unix/sysv/linux/i386/i486/pthread_cond_wait.S b/nptl/sysdeps/unix/sysv/linux/i386/i486/pthread_cond_wait.S
+--- a/nptl/sysdeps/unix/sysv/linux/i386/i486/pthread_cond_wait.S 2012-01-01 20:52:51.546347249 -0700
++++ b/nptl/sysdeps/unix/sysv/linux/i386/i486/pthread_cond_wait.S 2012-01-01 20:57:21.880320786 -0700
+@@ -137,7 +137,6 @@ __pthread_cond_wait:
cmpl $PI_BIT, %eax
jne 18f
@@ -9,7 +9,7 @@ diff -rNup a/nptl/sysdeps/unix/sysv/linux/i386/i486/pthread_cond_wait.S b/nptl/s
movl $(FUTEX_WAIT_REQUEUE_PI|FUTEX_PRIVATE_FLAG), %ecx
movl %ebp, %edx
xorl %esi, %esi
-@@ -148,9 +147,6 @@ __pthread_cond_wait:
+@@ -151,9 +150,6 @@ __pthread_cond_wait:
sete 16(%esp)
je 19f
@@ -19,7 +19,7 @@ diff -rNup a/nptl/sysdeps/unix/sysv/linux/i386/i486/pthread_cond_wait.S b/nptl/s
/* Normal and PI futexes dont mix. Use normal futex functions only
if the kernel does not support the PI futex functions. */
cmpl $-ENOSYS, %eax
-@@ -395,78 +391,6 @@ __pthread_cond_wait:
+@@ -398,78 +394,6 @@ __pthread_cond_wait:
#endif
call __lll_unlock_wake
jmp 11b
@@ -98,7 +98,7 @@ diff -rNup a/nptl/sysdeps/unix/sysv/linux/i386/i486/pthread_cond_wait.S b/nptl/s
.size __pthread_cond_wait, .-__pthread_cond_wait
versioned_symbol (libpthread, __pthread_cond_wait, pthread_cond_wait,
GLIBC_2_3_2)
-@@ -639,10 +563,6 @@ __condvar_w_cleanup:
+@@ -642,10 +566,6 @@ __condvar_w_cleanup:
.long .LcleanupEND-.Lsub_cond_futex
.long __condvar_w_cleanup-.LSTARTCODE
.uleb128 0
@@ -109,18 +109,10 @@ diff -rNup a/nptl/sysdeps/unix/sysv/linux/i386/i486/pthread_cond_wait.S b/nptl/s
.long .LcallUR-.LSTARTCODE
.long .LENDCODE-.LcallUR
.long 0
-diff -rNup a/nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S b/nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S
---- a/nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S 2012-01-01 05:16:32.000000000 -0700
-+++ b/nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S 2012-01-01 13:12:04.609729109 -0700
-@@ -24,6 +24,7 @@
- #include <tcb-offsets.h>
- #include <pthread-pi-defines.h>
- #include <pthread-errnos.h>
-+#include <stap-probe.h>
-
- #include <kernel-features.h>
-
-@@ -134,14 +135,11 @@ __pthread_cond_wait:
+diff -Nrup a/nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S b/nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S
+--- a/nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S 2012-01-01 20:52:51.550347247 -0700
++++ b/nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S 2012-01-01 20:57:21.883320786 -0700
+@@ -137,14 +137,11 @@ __pthread_cond_wait:
cmpl $PI_BIT, %eax
jne 61f
@@ -135,7 +127,7 @@ diff -rNup a/nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S b/nptl/sysd
#ifdef __ASSUME_REQUEUE_PI
jmp 62f
#else
-@@ -328,70 +326,6 @@ __pthread_cond_wait:
+@@ -331,70 +328,6 @@ __pthread_cond_wait:
13: movq %r10, %rax
jmp 14b
@@ -206,7 +198,7 @@ diff -rNup a/nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S b/nptl/sysd
.size __pthread_cond_wait, .-__pthread_cond_wait
versioned_symbol (libpthread, __pthread_cond_wait, pthread_cond_wait,
GLIBC_2_3_2)
-@@ -544,15 +478,11 @@ __condvar_cleanup1:
+@@ -547,15 +480,11 @@ __condvar_cleanup1:
.uleb128 .LcleanupSTART-.LSTARTCODE
.uleb128 .LcleanupEND-.LcleanupSTART
.uleb128 __condvar_cleanup1-.LSTARTCODE
More information about the scm-commits
mailing list