Bug 16619 - [ldbl-128ibm] frexpl bad results on some denormal arguments
Summary: [ldbl-128ibm] frexpl bad results on some denormal arguments
Status: RESOLVED FIXED
Alias: None
Product: glibc
Classification: Unclassified
Component: math (show other bugs)
Version: 2.19
: P2 normal
Target Milestone: 2.20
Assignee: Alan Modra
URL: https://sourceware.org/ml/libc-alpha/...
Keywords:
Depends on:
Blocks:
 
Reported: 2014-02-21 02:08 UTC by Joseph Myers
Modified: 2015-02-23 14:23 UTC (History)
1 user (show)

See Also:
Host: powerpc*-*-linux*
Target:
Build:
Last reconfirmed:
fweimer: security-


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Joseph Myers 2014-02-21 02:08:47 UTC
ldbl-128ibm frexpl generates bad results on some arguments where there is a large gap between the exponents of the high and low parts.

#include <math.h>
#include <stdio.h>

union u { long double ld; double d[2]; };

int
main (void)
{
  union u x, y;
  int i;
  x.d[0] = 0x1p127;
  x.d[1] = 0x1p-1074;
  y.ld = frexpl (x.ld, &i);
  printf ("%d %a %a\n", i, y.d[0], y.d[1]);
  return 0;
}

prints

128 0x1p-1 -0x1p+846

(that's a valid input long double producing an invalid output long double).

I believe this is causing large errors of clog10l seen in glibc testing (hypotl produces such long doubles, then clog10l passes them to log10l which uses frexpl).
Comment 1 Alan Modra 2014-03-25 14:20:23 UTC
Fixed by the patch for pr16740
Comment 2 Sourceware Commits 2014-04-16 10:04:50 UTC
This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "GNU C Library master sources".

The branch, master has been updated
       via  aa5f0ff11ad2cc85277c64cf65c723a9664e1149 (commit)
      from  bb9c256fb01b09bc13a58ada3ea045ac9efd4834 (commit)

Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.

- Log -----------------------------------------------------------------
https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=aa5f0ff11ad2cc85277c64cf65c723a9664e1149

commit aa5f0ff11ad2cc85277c64cf65c723a9664e1149
Author: Alan Modra <amodra@gmail.com>
Date:   Wed Apr 16 19:33:32 2014 +0930

    Correct IBM long double frexpl.
    
    Besides fixing the bugzilla, this also fixes corner-cases where the high
    and low double differ greatly in magnitude, and handles a denormal
    input without resorting to a fp rescale.
    
    	[BZ #16740]
    	[BZ #16619]
    	* sysdeps/ieee754/ldbl-128ibm/s_frexpl.c (__frexpl): Rewrite.
    	* math/libm-test.inc (frexp_test_data): Add tests.

-----------------------------------------------------------------------

Summary of changes:
 ChangeLog                              |    7 ++
 math/libm-test.inc                     |    9 ++
 sysdeps/ieee754/ldbl-128ibm/s_frexpl.c |  146 ++++++++++++++++++++++----------
 3 files changed, 118 insertions(+), 44 deletions(-)
Comment 3 Alan Modra 2014-04-16 10:19:20 UTC
Patch applied, and belatedly updated NEWS.
Comment 4 Sourceware Commits 2014-04-25 17:02:53 UTC
This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "GNU C Library master sources".

The branch, ibm/2.19/master has been updated
       via  a8050d789589b73e7908b806d5c929facf76cc6b (commit)
      from  154d4d95f48061d5ab890c85b6015221c1accc6e (commit)

Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.

- Log -----------------------------------------------------------------
https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=a8050d789589b73e7908b806d5c929facf76cc6b

commit a8050d789589b73e7908b806d5c929facf76cc6b
Author: Alan Modra <amodra@gmail.com>
Date:   Wed Apr 16 19:33:32 2014 +0930

    Correct IBM long double frexpl.
    
    Besides fixing the bugzilla, this also fixes corner-cases where the high
    and low double differ greatly in magnitude, and handles a denormal
    input without resorting to a fp rescale.
    
    	[BZ #16740]
    	[BZ #16619]
    	* sysdeps/ieee754/ldbl-128ibm/s_frexpl.c (__frexpl): Rewrite.
    	* math/libm-test.inc (frexp_test_data): Add tests.
    
    Backport of aa5f0ff11ad2cc85277c64cf65c723a9664e1149 and
    9860b0450275ad2b69cb9360fd01d5c122a65fc5.

-----------------------------------------------------------------------

Summary of changes:
 ChangeLog                              |    7 ++
 NEWS                                   |    2 +-
 math/libm-test.inc                     |    9 ++
 sysdeps/ieee754/ldbl-128ibm/s_frexpl.c |  146 ++++++++++++++++++++++----------
 4 files changed, 119 insertions(+), 45 deletions(-)
Comment 5 Sourceware Commits 2014-11-26 13:55:53 UTC
This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "GNU C Library master sources".

The branch, master has been updated
       via  706688aaefdeb48e63519525f11108ce14844a26 (commit)
      from  12da14a59135fe331f294b91488c1bdf55b35b4e (commit)

Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.

- Log -----------------------------------------------------------------
https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=706688aaefdeb48e63519525f11108ce14844a26

commit 706688aaefdeb48e63519525f11108ce14844a26
Author: Joseph Myers <joseph@codesourcery.com>
Date:   Wed Nov 26 13:54:55 2014 +0000

    FIx ldbl-128ibm frexpl for 32-bit systems (bug 16619, bug 16740).
    
    This patch fixes bugs in ldbl-128ibm frexpl for 32-bit systems shown
    up by warnings:
    
    ../sysdeps/ieee754/ldbl-128ibm/s_frexpl.c:82:4: warning: left shift count >= width of type
    ../sysdeps/ieee754/ldbl-128ibm/s_frexpl.c:129:5: warning: left shift count >= width of type
    
    This did in fact show up in test-ldouble.out (alongside all the other
    problems there ... maybe we should again consider running the libm
    tests at finer granularity from the makefiles) as already covered by
    the testsuite after the previous patch that fixed these bugs for
    64-bit systems.  The fix is simply using 1LL instead of 1L when
    shifting by 52.
    
    Tested for powerpc32 (soft float).
    
    	[BZ #16619]
    	[BZ #16740]
    	* sysdeps/ieee754/ldbl-128ibm/s_frexpl.c (__frexpl): Use 1LL << 52
    	instead of 1L << 52.

-----------------------------------------------------------------------

Summary of changes:
 ChangeLog                              |    5 +++++
 NEWS                                   |    8 ++++----
 sysdeps/ieee754/ldbl-128ibm/s_frexpl.c |    4 ++--
 3 files changed, 11 insertions(+), 6 deletions(-)
Comment 6 Sourceware Commits 2015-01-16 17:02:22 UTC
This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "GNU C Library master sources".

The branch, ibm/2.19/master has been created
        at  88a8a351f3a6a95205a1499fd68b79fc3d0b9d19 (commit)

- Log -----------------------------------------------------------------
https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=88a8a351f3a6a95205a1499fd68b79fc3d0b9d19

commit 88a8a351f3a6a95205a1499fd68b79fc3d0b9d19
Author: Carlos O'Donell <carlos@redhat.com>
Date:   Wed Nov 19 11:44:12 2014 -0500

    CVE-2014-7817: wordexp fails to honour WRDE_NOCMD.
    
    The function wordexp() fails to properly handle the WRDE_NOCMD
    flag when processing arithmetic inputs in the form of "$((... ``))"
    where "..." can be anything valid. The backticks in the arithmetic
    epxression are evaluated by in a shell even if WRDE_NOCMD forbade
    command substitution. This allows an attacker to attempt to pass
    dangerous commands via constructs of the above form, and bypass
    the WRDE_NOCMD flag. This patch fixes this by checking for WRDE_NOCMD
    in exec_comm(), the only place that can execute a shell. All other
    checks for WRDE_NOCMD are superfluous and removed.
    
    We expand the testsuite and add 3 new regression tests of roughly
    the same form but with a couple of nested levels.
    
    On top of the 3 new tests we add fork validation to the WRDE_NOCMD
    testing. If any forks are detected during the execution of a wordexp()
    call with WRDE_NOCMD, the test is marked as failed. This is slightly
    heuristic since vfork might be used in the future, but it provides a
    higher level of assurance that no shells were executed as part of
    command substitution with WRDE_NOCMD in effect. In addition it doesn't
    require libpthread or libdl, instead we use the public implementation
    namespace function __register_atfork (already part of the public ABI
    for libpthread).
    
    Tested on x86_64 with no regressions.

https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=32404a33a03747951daafde164e3b14464c28fe9

commit 32404a33a03747951daafde164e3b14464c28fe9
Author: Allan McRae <allan@archlinux.org>
Date:   Thu Dec 18 11:01:43 2014 +1000

    Label CVE-2014-9402 in NEWS

https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=d2a6f3a27b791d91beec2ea91f293ec898080904

commit d2a6f3a27b791d91beec2ea91f293ec898080904
Author: Florian Weimer <fweimer@redhat.com>
Date:   Mon Dec 15 17:41:13 2014 +0100

    Avoid infinite loop in nss_dns getnetbyname [BZ #17630]

https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=39700792d4224af99ab52ea26e98a0a2a2ed6ac6

commit 39700792d4224af99ab52ea26e98a0a2a2ed6ac6
Author: Jeff Law <law@redhat.com>
Date:   Mon Dec 15 10:09:32 2014 +0100

    CVE-2012-3406: Stack overflow in vfprintf [BZ #16617]
    
    A larger number of format specifiers coudld cause a stack overflow,
    potentially allowing to bypass _FORTIFY_SOURCE format string
    protection.

https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=5cefe3fc8f35b50eb84cbb740268539a40651173

commit 5cefe3fc8f35b50eb84cbb740268539a40651173
Author: Allan McRae <allan@archlinux.org>
Date:   Sat Jun 21 17:23:55 2014 +1000

    Mention CVE-2014-4043 in NEWS

https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=eece504424b59a1d8de7b4da9c64e24acaa6fbe0

commit eece504424b59a1d8de7b4da9c64e24acaa6fbe0
Author: Florian Weimer <fweimer@redhat.com>
Date:   Wed Jun 11 23:12:52 2014 +0200

    posix_spawn_file_actions_addopen needs to copy the path argument (BZ 17048)
    
    POSIX requires that we make a copy, so we allocate a new string
    and free it in posix_spawn_file_actions_destroy.
    
    Reported by David Reid, Alex Gaynor, and Glyph Lefkowitz.  This bug
    may have security implications.

https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=dcf0cce30d91100005e9aeb002096236325648fb

commit dcf0cce30d91100005e9aeb002096236325648fb
Author: Florian Weimer <fweimer@redhat.com>
Date:   Mon May 12 15:24:12 2014 +0200

    _nl_find_locale: Improve handling of crafted locale names [BZ #17137]
    
    Prevent directory traversal in locale-related environment variables
    (CVE-2014-0475).

https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=a5da5d74ff2e0a6ee267f283be8dbccc92cec59a

commit a5da5d74ff2e0a6ee267f283be8dbccc92cec59a
Author: Florian Weimer <fweimer@redhat.com>
Date:   Tue Aug 26 19:38:59 2014 +0200

    __gconv_translit_find: Disable function [BZ #17187]
    
    This functionality has never worked correctly, and the implementation
    contained a security vulnerability (CVE-2014-5119).

https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=e6cbfc1fa2c64cad3c599f419dd154cec5af23cc

commit e6cbfc1fa2c64cad3c599f419dd154cec5af23cc
Author: Florian Weimer <fweimer@redhat.com>
Date:   Wed Sep 3 19:45:43 2014 +0200

    CVE-2014-6040: Crashes on invalid input in IBM gconv modules [BZ #17325]
    
    These changes are based on the fix for BZ #14134 in commit
    6e230d11837f3ae7b375ea69d7905f0d18eb79e5.

https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=fa7cc069f4eb29c00ec3a833d73ec4a473b11c8a

commit fa7cc069f4eb29c00ec3a833d73ec4a473b11c8a
Author: Adhemerval Zanella <azanella@linux.vnet.ibm.com>
Date:   Tue Jul 29 13:56:44 2014 -0500

    PowerPC: Fix gprof entry point for LE
    
    This patch fixes the ELFv2 gprof entry point since the ABI
    does not define function descriptors.  It fixes BZ#17213.
    
    This is a backport of a53fbd8e6cd2f69bdfa3431d616a5f332aea6664.

https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=3c640c4acb9bc2c2cc7fa77d5ce1254953761dc1

commit 3c640c4acb9bc2c2cc7fa77d5ce1254953761dc1
Author: Alan Modra <amodra@gmail.com>
Date:   Mon Jul 14 21:14:50 2014 +0930

    Correct DT_PPC64_NUM
    
    	[BZ #17153]
    	* elf/elf.h (DT_PPC64_NUM): Correct value.
    	* NEWS: Add to fixed bug list.
    
    This is a backport of f6c44d475104e931bab2b4ffa499961088de673c.

https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=957afa3407c426969eaaa348981b9648d5191ae2

commit 957afa3407c426969eaaa348981b9648d5191ae2
Author: Adhemerval Zanella <azanella@linux.vnet.ibm.com>
Date:   Tue Jul 8 08:54:09 2014 -0500

    PowerPC: Cleanup powerpc memmove
    
    Now that MEMCPY_OK_FOR_FWD_MEMMOVE should be define on memcopy.h there
    is no need to specialized powerpc memmove implementation.  This patch
    moves the define set to powerpc memcopy and cleanup its definition on
    powerpc code.

https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=8d9513a103bdd202ffa4884bdedc2c3c0dbab210

commit 8d9513a103bdd202ffa4884bdedc2c3c0dbab210
Author: Adhemerval Zanella <azanella@linux.vnet.ibm.com>
Date:   Tue Jul 8 08:49:54 2014 -0500

    PowerPC: Fix compiler warnings
    
    This patch fixes some compiler due trailing data in #undef directives
    and due missing prototypes.

https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=b00ec143897f076ecbcedc7369b4b74e0c7f6d14

commit b00ec143897f076ecbcedc7369b4b74e0c7f6d14
Author: Adhemerval Zanella <azanella@linux.vnet.ibm.com>
Date:   Tue Jul 8 08:35:44 2014 -0500

    PowerPC: Add ifunc tests for memmove
    
    This patch add the missing ifunc tests definition for memmove ppc32
    optimization patch (commit 07aedd7).
    
    This is a backport of 91f4b564bd7bedcd93e7047cad570ce292d6330b.

https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=565e3d6c8230affd7089bf5ebfcebbf72f32a27c

commit 565e3d6c8230affd7089bf5ebfcebbf72f32a27c
Author: Adhemerval Zanella <azanella@linux.vnet.ibm.com>
Date:   Wed Jun 25 11:54:31 2014 -0500

    PowerPC: Align power7 memcpy using VSX to quadword
    
    This patch changes power7 memcpy to use VSX instructions only when
    memory is aligned to quardword.  It is to avoid unaligned kernel traps
    on non-cacheable memory (for instance, memory-mapped I/O).

https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=6fae3527af330c32399e3a4cdfac3958fc440eb8

commit 6fae3527af330c32399e3a4cdfac3958fc440eb8
Author: Adhemerval Zanella <azanella@linux.vnet.ibm.com>
Date:   Tue Jun 24 08:47:52 2014 -0500

    PowerPC: optimized memmove for POWER7/PPC32
    
    This patch adds a optimized memmove for power7 by using the optimized
    power7 memcpy for forward copying.

https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=5d55f9b05ecb85b7a543f641829479cfb081f380

commit 5d55f9b05ecb85b7a543f641829479cfb081f380
Author: Adhemerval Zanella <azanella@linux.vnet.ibm.com>
Date:   Fri Jun 20 12:55:16 2014 -0500

    PowerPC: optimized memmove for POWER7/PPC64
    
    This patch adds an optimized memmove optimization for POWER7/powerpc64.
    Basically the idea is to use the memcpy for POWER7 on non-overlapped
    memory regions and a optimized backward memcpy for memory regions
    that overlap (similar to the idea of string/memmove.c).
    
    The backward memcpy algorithm used is similar the one use for memcpy for
    POWER7, with adjustments done for alignment.  The difference is memory
    is always aligned to 16 bytes before using VSX/altivec instructions.

https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=dde00e9914370ddd90c9bbc4f3f0e455efae4b47

commit dde00e9914370ddd90c9bbc4f3f0e455efae4b47
Author: Adhemerval Zanella <azanella@linux.vnet.ibm.com>
Date:   Tue Jun 24 06:42:31 2014 -0500

    PowerPC: memmove default implementation cleanup
    
    This patch removes the powerpc specific logic in memmove and instead
    include default implementation with MEMCPY_OK_FOR_FWD_MEMMOVE defined.
    This lead in a increase performance, since the constraints to use
    memcpy in powerpc code are too restrictive and memcpy can be used for
    any forward memmove.
    
    This is a backport of d6f68bbef4427850c2901728a1d13efc0e687297.

https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=9841a0850ed3be4310ec6b49c3349e39a6f0f481

commit 9841a0850ed3be4310ec6b49c3349e39a6f0f481
Author: Vidya Ranganathan <vidya@linux.vnet.ibm.com>
Date:   Wed Jun 11 22:21:20 2014 -0500

    PowerPC: strcat optimization for PPC64/POWER7
    
    This patch adds an ifunc power7 strcat symbol that uses the logic on
    sysdeps/powerpc/strcat.c but call power7 strlen/strcpy symbols instead
    of default ones.
    
    This is a backport of bc8ea38590070604006399e42469087e943fc8ec.

https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=ded8852b37f673b8e66163b44f70504dc5af0985

commit ded8852b37f673b8e66163b44f70504dc5af0985
Author: Adhemerval Zanella <azanella@linux.vnet.ibm.com>
Date:   Mon Jun 23 09:38:47 2014 -0500

    PowerPC: sync hwcap.h capabilities
    
    Linux commit dd58a092c4202f2bd490adab7285b3ff77f8e467 added the
    PPC_FEATURE2_VEC_CRYPTO auvx capability to indicate whether to
    hardware supports vector crypto hardware instructions.  This patch
    adds its definition to powerpc hwcap bits.
    
    This is a backport of db22400947e1c82153e5270d23fed53fc1e3a659.

https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=7e986751f5c05f3363c01c717972f87a681da0d0

commit 7e986751f5c05f3363c01c717972f87a681da0d0
Author: Rajalakshmi Srinivasaraghavan <raji@linux.vnet.ibm.com>
Date:   Tue Jun 17 08:46:25 2014 -0500

    PowerPC: Fix nearbyintl failure for few inputs
    
    This patch fixes few failures in nearbyintl() where the fraction part is
    close to 0.5.i  The new tests added report few extra failures in
    nearbyint_downward and nearbyint_towardzero which is a known issue.
    
    Fixes #17031.
    
    This is a backport of 754c5a08aacb44895d1ab97c553ce424eb43f761.

https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=2289a56644fc05786e2d5637c76d47afea7d38b9

commit 2289a56644fc05786e2d5637c76d47afea7d38b9
Author: Vidya Ranganathan <vidya@linux.vnet.ibm.com>
Date:   Fri Jun 6 07:56:07 2014 -0500

    PowerPC: Optimized strcmp for PPC64/POWER7
    
    Optimization is achieved on 8 byte aligned strings with double word
    comparison using cmpb instruction. On unaligned strings loop unrolling
    is applied for Power7 gain.
    
    It is a backport of e23d3d2690bf63207b1a47e83a94693daebbbfe5.

https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=010c023685495f4cd907b7bf7d15375edcbe1ead

commit 010c023685495f4cd907b7bf7d15375edcbe1ead
Author: Adhemerval Zanella <azanella@linux.vnet.ibm.com>
Date:   Fri Jun 6 09:37:07 2014 -0500

    PowerPC: Fix optimized strncat strlen call
    
    This patch fixes the optimized ppc64/power7 strncat strlen call for
    static build without ifunc enabled.  The strlen symbol to call in such
    situation is just strlen, instead of __GI_strlen (since the __GI_
    alias is just created for shared objects).
    
    It is a backport of ed36bfa18faf9be457575568e64b8409e46caa22.

https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=6f0aba1acab171bd853905b66c551336aa0adcf9

commit 6f0aba1acab171bd853905b66c551336aa0adcf9
Author: Adhemerval Zanella <azanella@linux.vnet.ibm.com>
Date:   Tue Apr 8 17:25:14 2014 -0500

    PowerPC: Fix --disable-multi-arch builds
    
    This patch fixes some powerpc32 and powerpc64 builds with
    --disable-multi-arch option along with different --with-cpu=powerN.
    It cleanups the Implies directories by removing the multiarch
    folder for non multiarch config and also fixing two assembly
    implementations: powerpc64/power7/strncat.S that is calling the
    wrong strlen; and power8/fpu/s_isnan.S that misses the hidden_def and
    weak_alias directives.
    
    It is a backport of de21c33c068c8e39afb5711613a7c083c11ce6a1.

https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=e40df8c4677611afc48601472675593dfd087e4b

commit e40df8c4677611afc48601472675593dfd087e4b
Author: Adhemerval Zanella <azanella@linux.vnet.ibm.com>
Date:   Thu May 22 14:48:38 2014 -0500

    PowerPC: Remove 64 bits instructions in PPC32 code
    
    This patch replaces the insrdi by insrwi in powerpc32 assembly.
    
    It is a backport of d298c41635ce7f2dc7c3eccc842fe3aa754c0c8e.

https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=a448439dfffc0878121e0941be9717e05786b1fe

commit a448439dfffc0878121e0941be9717e05786b1fe
Author: Adhemerval Zanella <azanella@linux.vnet.ibm.com>
Date:   Thu May 22 07:53:44 2014 -0500

    PowerPC: Fix memchr ifunc hidden symbol for PPC32
    
    This patch fixes a similar issue to
    736c304a1ab4cee36a2f3343f1698bc0abae4608, where for PPC32 if the symbol
    is defined as hidden (memchr) then compiler will create a local branc
    (symbol@local) and the linker will not create a required PLT call to
    make the ifunc work.  It changes the default hidden symbol (__GI_memchr)
    to default memchr symbol for powerpc32 (__memchr_ppc32).
    
    Backport of 3d2badacf185fac740a2992240a817fb2ca325af.

https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=c725f80591aa98c5c0270feb80e857c5943c861a

commit c725f80591aa98c5c0270feb80e857c5943c861a
Author: Adhemerval Zanella <azanella@linux.vnet.ibm.com>
Date:   Mon May 19 17:56:55 2014 -0500

    PowerPC: Fix multiarch hypotf PPC64 path
    
    This patch moves the hypotf multiarch implementation to correct path.

https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=1db8c8c873e6112ee4ecddf1eff54f4abaab91a7

commit 1db8c8c873e6112ee4ecddf1eff54f4abaab91a7
Author: Vidya Ranganathan <vidya@linux.vnet.ibm.com>
Date:   Mon May 5 19:10:45 2014 -0500

    PowerPC: strncpy/stpncpy optimization for PPC64/POWER7
    
    The optimization is achieved by following techniques:
      > data alignment [gain from aligned memory access on read/write]
      > POWER7 gains performance with loop unrolling/unwinding
        [gain by reduction of branch penalty].
      > zero padding done by calling optimized memset

https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=08111251bbd7275024d9c945f442f61b06d98910

commit 08111251bbd7275024d9c945f442f61b06d98910
Author: Adhemerval Zanella <azanella@linux.vnet.ibm.com>
Date:   Fri May 2 12:00:36 2014 -0500

    PowerPC: ifunc improvement for internal calls
    
    This patch changes de default symbol redirection for internal call of
    memcpy, memset, memchr, and strlen to the IFUNC resolved ones.  The
    performance improvement is noticeable in algorithms that uses these
    symbols extensible, like the regex functions.
    
    This is a backport of 19c4bec0f43599eecc2f32de96ae179cd7d64053.

https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=a8050d789589b73e7908b806d5c929facf76cc6b

commit a8050d789589b73e7908b806d5c929facf76cc6b
Author: Alan Modra <amodra@gmail.com>
Date:   Wed Apr 16 19:33:32 2014 +0930

    Correct IBM long double frexpl.
    
    Besides fixing the bugzilla, this also fixes corner-cases where the high
    and low double differ greatly in magnitude, and handles a denormal
    input without resorting to a fp rescale.
    
    	[BZ #16740]
    	[BZ #16619]
    	* sysdeps/ieee754/ldbl-128ibm/s_frexpl.c (__frexpl): Rewrite.
    	* math/libm-test.inc (frexp_test_data): Add tests.
    
    Backport of aa5f0ff11ad2cc85277c64cf65c723a9664e1149 and
    9860b0450275ad2b69cb9360fd01d5c122a65fc5.

https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=154d4d95f48061d5ab890c85b6015221c1accc6e

commit 154d4d95f48061d5ab890c85b6015221c1accc6e
Author: Adhemerval Zanella <azanella@linux.vnet.ibm.com>
Date:   Sun Apr 6 14:50:11 2014 -0500

    PowerPC: Fix nearbyint/nearbyintf result for FE_DOWNWARD
    
    This patch fixes the powerpc32 optimized nearbyint/nearbyintf bogus
    results for FE_DOWNWARD rounding mode.  This is due wrong instructions
    sequence used in the rounding calculation (two subtractions instead of
    adition and a subtraction).
    
    Fixes BZ#16815.
    
    Backport of 8bd70862e11023e7f827f240a5a214f847ae982d.

https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=e266b71770050a4d0cb276f4afea1c5b05215184

commit e266b71770050a4d0cb276f4afea1c5b05215184
Author: Alan Modra <amodra@gmail.com>
Date:   Wed Apr 2 13:46:19 2014 +1030

    Correct IBM long double nextafterl.
    
    Fix for values near a power of two, and some tidies.
    
    	[BZ #16739]
    	* sysdeps/ieee754/ldbl-128ibm/s_nextafterl.c (__nextafterl): Correct
    	output when value is near a power of two.  Use int64_t for lx and
    	remove casts.  Use decimal rather than hex exponent constants.
    	Don't use long double multiplication when double will suffice.
    	* math/libm-test.inc (nextafter_test_data): Add tests.
    	* NEWS: Add 16739 and 16786 to bug list.
    
    Backport of b0abbc21034f0e5edc49023d8fda0616173faf17.

https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=b23fc92895aff0ce3d3134a91adaa253bffd187a

commit b23fc92895aff0ce3d3134a91adaa253bffd187a
Author: Alan Modra <amodra@gmail.com>
Date:   Wed Apr 2 13:42:27 2014 +1030

    Correct prefetch hint in power7 memrchr.
    
    Typo fix.
    
    	* sysdeps/powerpc/powerpc64/power7/memrchr.S: Correct stream hint.
    
    Backport of af6b17973cbc07ac06cfb40eeab5cc2391fb489a.

https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=acd56f757b4e5ab8737b9564bd7a4ad1009acd8d

commit acd56f757b4e5ab8737b9564bd7a4ad1009acd8d
Author: Alan Modra <amodra@gmail.com>
Date:   Wed Apr 2 13:40:21 2014 +1030

    Fix reference to toc symbol.
    
    https://sourceware.org/ml/binutils/2014-03/msg00033.html removes the
    "magic" treatment of symbols defined in a .toc section.
    
    	* sysdeps/powerpc/powerpc64/start.S: Add @toc to toc symbol reference.
    
    Backport of 483818d768ed99a5edf4114298a75ebedaee8d5c.

https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=fd5100c480beef3d36c4bf74b6a23529695d036c

commit fd5100c480beef3d36c4bf74b6a23529695d036c
Author: Alan Modra <amodra@gmail.com>
Date:   Tue Apr 1 14:07:42 2014 +1030

    Fix s_copysign stack temp for PowerPC64 ELFv2
    
    	[BZ #16786]
    	* sysdeps/powerpc/powerpc64/fpu/s_copysign.S: Don't trash stack.
    
    Backport of c859b32e9d76afe8a3f20bb9528961a573c06937.

https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=a51aafa398ed7dd2a0a846c1b2ed8a37909609eb

commit a51aafa398ed7dd2a0a846c1b2ed8a37909609eb
Author: Adhemerval Zanella <azanella@linux.vnet.ibm.com>
Date:   Mon Mar 31 08:07:55 2014 -0500

    PowerPC: Fix little endian enconding for mfvsrd
    
    This patch fixes the MFVSRD_R3_V1 macro that encodes 'mfvsrd  r3,vs1'
    (to support old binutils) for little endian.
    
    Backport of 757d9dd5c3efa56fac75965abc014faaae7b7895.

https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=62caa3eed2a154a61a01df3a5f3dde3ff400f4d4

commit 62caa3eed2a154a61a01df3a5f3dde3ff400f4d4
Author: Adhemerval Zanella <azanella@linux.vnet.ibm.com>
Date:   Thu Mar 20 15:28:07 2014 -0500

    PowerPC: optimized strpbrk for POWER7
    
    This patch add an optimized strpbrk for POWER7 by using a different
    algorithm than default implementation: it constructs a table based on
    the 'accept' argument and use this table to check for any occurance on
    the input string. The idea is similar as x86_64 uses.
    For PowerPC some tunings were added, such as unroll loops and memory
    clear using VSX instructions.
    
    Backport of 6f23d0939e9651d8ac3c77a835fb6464b35a1dc4

https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=c0afc58657f482f4c31ccade06e7b059e761186c

commit c0afc58657f482f4c31ccade06e7b059e761186c
Author: Adhemerval Zanella <azanella@linux.vnet.ibm.com>
Date:   Thu Mar 20 11:24:52 2014 -0500

    PowerPC: optimized strcspn for PPC64/POWER7
    
    This patch add a optimized strcspn for POWER7 by using a different
    algorithm than default implementation: it constructs a table based on
    the 'accept' argument and use this table to check for any occurance
    on the input string. The idea is similar as x86_64 uses.
    For PowerPC some tunings were added, such as unroll loops and align
    stack memory to table to 16 bytes (so VSX clean can ran without
    alignment issues).
    
    Backport of 6eaf95cbfa0031ea267682dc2c9c17ed3e3dc167

https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=ac6d8452be2d582e4a2b14525c839c71b9351991

commit ac6d8452be2d582e4a2b14525c839c71b9351991
Author: Adhemerval Zanella <azanella@linux.vnet.ibm.com>
Date:   Fri Mar 14 12:49:45 2014 -0500

    PowerPC: remove wrong roundl implementation for PowerPC64
    
    The roundl assembly implementation
    (sysdeps/powerpc/powerpc64/fpu/s_roundl.S)
    returns wrong results for some inputs where first double is a exact
    integer and the precision is determined by second long double.
    
    Checking on implementation comments and history, I am very confident the
    assembly implementation was based on a version before commit
    5c68d401698a58cf7da150d9cce769fa6679ba5f that fixes BZ#2423 (Errors in
    long double (ldbl-128ibm) rounding functions in glibc-2.4).
    
    By just removing the implementation and make the build select
    sysdeps/ieee754/ldbl-128ibm/s_roundl.c instead fixes the failing math.
    
    This fixes 16707.
    
    Backport of c7de50250367167d8c9f35594b264f6a0af8dd0c

https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=c5ac422010eb6b384c3b4e45ab0049172f0ad688

commit c5ac422010eb6b384c3b4e45ab0049172f0ad688
Author: Adhemerval Zanella <azanella@linux.vnet.ibm.com>
Date:   Fri Mar 14 12:27:52 2014 -0500

    PowerPC: remove wrong nearbyintl implementation for PPC64
    
    The nearbyintl assembly implementation
    (sysdeps/powerpc/powerpc64/fpu/s_nearbyintl.S)
    returns wrong results for some inputs where first double is a exact
    integer and the precision is determined by second long double.
    
    Checking on implementation comments and history, I am very confident the
    assembly implementation was based on a version before commit
    5c68d401698a58cf7da150d9cce769fa6679ba5f that fixes BZ#2423 (Errors in
    long double (ldbl-128ibm) rounding functions in glibc-2.4).
    
    By just removing the implementation and make the build select
    sysdeps/ieee754/ldbl-128ibm/s_nearbyintl.c instead fixes the failing
    math.
    
    Fixes BZ#16706.
    
    Backport of 98fb27a373f37554232e0060eef1a5bb00a07eb0

https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=7986a2d12b7ea0653f0366200c703a3905edffd9

commit 7986a2d12b7ea0653f0366200c703a3905edffd9
Author: Adhemerval Zanella <azanella@linux.vnet.ibm.com>
Date:   Fri Mar 14 07:35:43 2014 -0500

    PowerPC: remove wrong ceill implementation for PowerPC64
    
    The ceill assembly implementation (sysdeps/powerpc/powerpc64/fpu/s_ceill.S)
    returns wrong results for some inputs where first double is a exact
    integer and the precision is determined by second long double.
    
    Checking on implementation comments and history, I am very confident the
    assembly implementation was based on a version before commit
    5c68d401698a58cf7da150d9cce769fa6679ba5f that fixes BZ#2423 (Errors in
    long double (ldbl-128ibm) rounding functions in glibc-2.4).
    
    By just removing the implementation and make the build select
    sysdeps/ieee754/ldbl-128ibm/s_ceill.c instead fixes the failing math.
    
    Fixes BZ#16701.
    
    Backport of 374f7f61214967bb4e2257695aeeeecc2a77f369

https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=a56198dbb21767bde0003d3062d5ec7a8e1279f1

commit a56198dbb21767bde0003d3062d5ec7a8e1279f1
Author: Adhemerval Zanella <azanella@linux.vnet.ibm.com>
Date:   Fri Mar 14 12:15:40 2014 -0500

    Add truncl tests related to BZ#16414
    
    Backport of 4655c291d1808c35b7c54236ae62be7a3aaa0a2d

https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=a52b3f7e4c4de8705370adda4b390293780dc768

commit a52b3f7e4c4de8705370adda4b390293780dc768
Author: Adhemerval Zanella <azanella@linux.vnet.ibm.com>
Date:   Wed Mar 12 08:55:50 2014 -0500

    PowerPC: Fix bzero definition for static libc for PPC32
    
    This patch fixes an issue for powerpc32-fpu static build which fails
    with an 'bzero' undefined reference. This patch adds bzero ifunc selector
    for static builds and fixes the '__bzero_ppc' reference to default
    memset symbol (since static memset build does not provide ifunc
    selector).
    
    Fixes BZ#16689.
    
    Backport of dd3946c615184e1957a0cb09352cac72be5d6d5b.

https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=09e09c2872ab52c8a42b907105343520019ca1d1

commit 09e09c2872ab52c8a42b907105343520019ca1d1
Author: Adhemerval Zanella <azanella@linux.vnet.ibm.com>
Date:   Tue Mar 11 16:17:50 2014 -0500

    PowerPC: Fix strspn for static build
    
    This patch makes the strspn ifunc selector build for static builds.
    
    This is a backport of 27c7220a483bda576533aa9a0a9b42175644b1a1

https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=f510d35c58d16c32ce988d053c9a525b8e38fe47

commit f510d35c58d16c32ce988d053c9a525b8e38fe47
Author: Adhemerval Zanella <azanella@linux.vnet.ibm.com>
Date:   Mon Mar 10 15:26:20 2014 -0500

    PowerPC: Fix bzero definition for static libc for PPC64
    
    This patch fixes an issue for powerpc64[le] static build where __bzero
    is definied in multiple places (memset-ppc64.o and bzero.o). It is now
    defined only in bzero.o and memset-ppc64.o only defined __bzero_ppc for
    both dynamic and static library.
    
    Fixes BZ#16683.
    
    Backport of 4facea473059914983b7da8dd654c06b8e3dcc41

https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=afd75351c2f3cae4a2daf88c50faad889e3a0f2b

commit afd75351c2f3cae4a2daf88c50faad889e3a0f2b
Author: Vidya Ranganathan <vidya@linux.vnet.ibm.com>
Date:   Mon Mar 10 12:20:36 2014 -0400

    PowerPC: strspn optimization for PPC64/POWER7
    
    The optimization is achieved by following techniques:
      > hashing of needle.
      > hashing avoids scanning of duplicate entries in needle across the string.
      > initializing the hash table with Vector instructions (VSX) by quadword access.
      > unrolling when scanning for character in string across hash table.

https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=e5829d82c88117c9f4752cedfefc8516cb9ffdf7

commit e5829d82c88117c9f4752cedfefc8516cb9ffdf7
Author: Adhemerval Zanella <azanella@linux.vnet.ibm.com>
Date:   Fri Mar 7 06:09:47 2014 -0600

    PowerPC: strncat optimization for PPC64
    
    The optimization is achieved by following techniques:
    1. Doubleword aligned memory access and compares using
       cmpb instruction.
    2. Loop unrolling for byte load/store.
    3. CPU pre-fetch to avoid cache miss.
    
    Backport of ba9cc0714e58a9e8fa73cf6b0e205cbf1e6b71f2

https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=e032058ea756e396c4ed1395a44d8b321e370b2f

commit e032058ea756e396c4ed1395a44d8b321e370b2f
Author: Rajalakshmi Srinivasaraghavan <raji@linux.vnet.ibm.com>
Date:   Mon Mar 3 08:06:41 2014 -0600

    PowerPC: strrchr optimization for POWER7/PPC64
    
    This patch optimizes strrchr() for ppc64. It uses aligned memory
    access along with cmpb instruction and CPU prefetch to avoid
    cache misses for speed improvement.
    
    Backport of c7debbdfacbef150aaf9113eb05ccaf2b9e7af6c

https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=54dd35c59cda5f59c2f3ae783468da4b94f30dff

commit 54dd35c59cda5f59c2f3ae783468da4b94f30dff
Author: Adhemerval Zanella <azanella@linux.vnet.ibm.com>
Date:   Mon Feb 17 10:44:08 2014 -0600

    PowerPC: llround/llroundf POWER8 optimization
    
    This patch add a optimized llround/llroundf implementation for POWER8
    using the new Move From VSR Doubleword instruction to gains some
    cycles from FP to GRP register move.
    
    Backport fe13a20c37578f08ce393ccaeb45caeb48815ca5

https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=b34f8e9fcd1274e69a9a59a28c270e2cada39c95

commit b34f8e9fcd1274e69a9a59a28c270e2cada39c95
Author: Adhemerval Zanella <azanella@linux.vnet.ibm.com>
Date:   Tue Feb 18 09:29:29 2014 -0500

    PowerPC: llrint/llrintf POWER8 optimization
    
    This patch add a optimized llrint/llrintf implementation for POWER8
    using the new Move From VSR Doubleword instruction to gains some
    cycles from FP to GRP register move.
    
    Backport of 1ad8950a3ea4056ed343d681b5146f4b4aa27e10

https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=c3241bcd73c47d2bcd2a5ffe84a21d4853c8c938

commit c3241bcd73c47d2bcd2a5ffe84a21d4853c8c938
Author: Adhemerval Zanella <azanella@linux.vnet.ibm.com>
Date:   Thu Feb 27 09:46:46 2014 -0600

    PowerPC: Optimized finite/finitef for POWER8
    
    This patch add a optimized finite/finitef implementation for POWER8
    using the new Move From VSR Doubleword instruction to gains some
    cycles from FP to GRP register move.
    
    Backport of cac626d60a863e48ab75417064984769e58c5719.

https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=1cd3b05dda2dab30cb7658193cb1af8f594f52f3

commit 1cd3b05dda2dab30cb7658193cb1af8f594f52f3
Author: Adhemerval Zanella <azanella@linux.vnet.ibm.com>
Date:   Thu Feb 27 09:45:41 2014 -0600

    PowerPC: Optimized isinf/isinff for POWER8
    
    This patch add a optimized isinf/isinff implementation for POWER8
    using the new Move From VSR Doubleword instruction to gains some
    cycles from FP to GRP register move.
    
    Backport of 4393fc119c34e97519b9b7a4fc94066b283be452

https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=65c8daedb68b74eae860f91dca226215cd80e348

commit 65c8daedb68b74eae860f91dca226215cd80e348
Author: Adhemerval Zanella <azanella@linux.vnet.ibm.com>
Date:   Thu Feb 27 09:43:51 2014 -0600

    PowerPC: Optimized isnan/isnanf for POWER8
    
    This patch add a optimized isnan/isnanf implementation for POWER8
    using the new Move From VSR Doubleword instruction to gains some
    cycles from FP to GRP register move.
    
    Backport of 487972aea52004f604c2878c8c9d3e77670f2c32

https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=55e71ccf31c29a7839344f03e0a7437ea0f5f211

commit 55e71ccf31c29a7839344f03e0a7437ea0f5f211
Author: Tulio Magno Quites Machado Filho <tuliom@linux.vnet.ibm.com>
Date:   Fri Nov 15 07:44:20 2013 -0600

    Partially revert commit 2663b74f8103a2a8a46b4896439b7a452480fc7c
    
    This change is necessary in order to avoid the issue documented at
    http://sourceware.org/ml/libc-alpha/2013-05/msg00350.html.

https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=fbed4f13980bf4ebd7df59b0e52bd2a16875f0db

commit fbed4f13980bf4ebd7df59b0e52bd2a16875f0db
Author: Ryan S. Arnold <rsa@linux.vnet.ibm.com>
Date:   Fri Nov 15 07:42:33 2013 -0600

    Remove assert() if DT_RUNPATH and DT_RPATH flags are found in ld.so.

-----------------------------------------------------------------------
Comment 7 Sourceware Commits 2015-02-06 15:35:31 UTC
This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "GNU C Library master sources".

The annotated tag, glibc-2.21 has been created
        at  dee233133daf497cdb3a507a7da9d88414820a1f (tag)
   tagging  4e42b5b8f89f0e288e68be7ad70f9525aebc2cff (commit)
  replaces  glibc-2.20
 tagged by  Carlos O'Donell
        on  Fri Feb 6 01:42:58 2015 -0500

- Log -----------------------------------------------------------------
The GNU C Library
=================

The GNU C Library version 2.21 is now available.

The GNU C Library is used as *the* C library in the GNU system and
in GNU/Linux systems, as well as many other systems that use Linux
as the kernel.

The GNU C Library is primarily designed to be a portable
and high performance C library.  It follows all relevant
standards including ISO C11 and POSIX.1-2008.  It is also
internationalized and has one of the most complete
internationalization interfaces known.

The GNU C Library webpage is at http://www.gnu.org/software/libc/

Packages for the 2.21 release may be downloaded from:
        http://ftpmirror.gnu.org/libc/
        http://ftp.gnu.org/gnu/libc/

The mirror list is at http://www.gnu.org/order/ftp.html

NEWS for version 2.21
=====================

* The following bugs are resolved with this release:

  6652, 10672, 12674, 12847, 12926, 13862, 14132, 14138, 14171, 14498,
  15215, 15378, 15884, 16009, 16418, 16191, 16469, 16576, 16617, 16618,
  16619, 16657, 16740, 16857, 17192, 17266, 17273, 17344, 17363, 17370,
  17371, 17411, 17460, 17475, 17485, 17501, 17506, 17508, 17522, 17555,
  17570, 17571, 17572, 17573, 17574, 17582, 17583, 17584, 17585, 17589,
  17594, 17601, 17608, 17616, 17625, 17630, 17633, 17634, 17635, 17647,
  17653, 17657, 17658, 17664, 17665, 17668, 17682, 17702, 17717, 17719,
  17722, 17723, 17724, 17725, 17732, 17733, 17744, 17745, 17746, 17747,
  17748, 17775, 17777, 17780, 17781, 17782, 17791, 17793, 17796, 17797,
  17801, 17803, 17806, 17834, 17844, 17848, 17868, 17869, 17870, 17885,
  17892.

* CVE-2015-1472 Under certain conditions wscanf can allocate too little
  memory for the to-be-scanned arguments and overflow the allocated
  buffer.  The implementation now correctly computes the required buffer
  size when using malloc.

* A new semaphore algorithm has been implemented in generic C code for all
  machines. Previous custom assembly implementations of semaphore were
  difficult to reason about or ensure that they were safe. The new version
  of semaphore supports machines with 64-bit or 32-bit atomic operations.
  The new semaphore algorithm is used by sem_init, sem_open, sem_post,
  sem_wait, sem_timedwait, sem_trywait, and sem_getvalue.

* Port to Altera Nios II has been contributed by Mentor Graphics.

* Optimized strcpy, stpcpy, strncpy, stpncpy, strcmp, and strncmp
  implementations for powerpc64/powerpc64le.
  Implemented by Adhemerval Zanella (IBM).

* Added support for TSX lock elision of pthread mutexes on powerpc32, powerpc64
  and powerpc64le.  This may improve lock scaling of existing programs on
  HTM capable systems.  The lock elision code is only enabled with
  --enable-lock-elision=yes.  Also, the TSX lock elision implementation for
  powerpc will issue a transaction abort on every syscall to avoid side
  effects being visible outside transactions.

* Optimized strcpy, stpcpy, strchrnul and strrchr implementations for
  AArch64.  Contributed by ARM Ltd.

* i386 memcpy functions optimized with SSE2 unaligned load/store.

* CVE-2104-7817 The wordexp function could ignore the WRDE_NOCMD flag
  under certain input conditions resulting in the execution of a shell for
  command substitution when the applicaiton did not request it. The
  implementation now checks WRDE_NOCMD immediately before executing the
  shell and returns the error WRDE_CMDSUB as expected.

* CVE-2012-3406 printf-style functions could run into a stack overflow when
  processing format strings with a large number of format specifiers.

* CVE-2014-9402 The nss_dns implementation of getnetbyname could run into an
  infinite loop if the DNS response contained a PTR record of an unexpected
  format.

* The minimum GCC version that can be used to build this version of the GNU
  C Library is GCC 4.6.  Older GCC versions, and non-GNU compilers, can
  still be used to compile programs using the GNU C Library.

* The GNU C Library is now built with -Werror by default.  This can be
  disabled by configuring with --disable-werror.

* New locales: tu_IN, bh_IN, raj_IN, ce_RU.

* The obsolete sigvec function has been removed.  This was the original
  4.2BSD interface that inspired the POSIX.1 sigaction interface, which
  programs have been using instead for about 25 years.  Of course, ABI
  compatibility for old binaries using sigvec remains intact.

* Merged gettext 0.19.3 into the intl subdirectory.  This fixes building
  with newer versions of bison.

* Support for MIPS o32 FPXX, FP64A and FP64 ABI Extensions.
  The original MIPS o32 hard-float ABI requires an FPU where double-precision
  registers overlay two consecutive single-precision registers.  MIPS32R2
  introduced a new FPU mode (FR=1) where double-precision registers extend the
  corresponding single-precision registers which is incompatible with the
  o32 hard-float ABI.  The MIPS SIMD ASE and the MIPSR6 architecture both
  require the use of FR=1 making a transition necessary.  New o32 ABI
  extensions enable users to migrate over time from the original o32 ABI
  through to the updated o32 FP64 ABI.  To achieve this the dynamic linker now
  tracks the ABI of any loaded object and verifies that new objects are
  compatible.  Mode transitions will also be requested as required and
  unsupportable objects will be rejected.  The ABI checks include both soft and
  hard float ABIs for o32, n32 and n64.

  GCC 5 with GNU binutils 2.25 onwards:
  It is strongly recommended that all o32 system libraries are built using the
  new o32 FPXX ABI (-mfpxx) to facilitate the transition as this is compatible
  with the original and all new o32 ABI extensions.  Configure a MIPS GCC
  compiler using --with-fp-32=xx to set this by default.

Contributors
============

This release was made possible by the contributions of many people.
The maintainers are grateful to everyone who has contributed
changes or bug reports.  These include:

Adhemerval Zanella
Alan Hayward
Alexandre Oliva
Allan McRae
Anders Kaseorg
Andreas Krebbel
Andreas Schwab
Andrew Pinski
Andrew Senkevich
Anton Blanchard
Arjun Shankar
Aurelien Jarno
Bram
Brooks Moses
Carlos O'Donell
Chris Metcalf
Chung-Lin Tang
David Holsgrove
David S. Miller
Eric Biggers
Florian Weimer
Gratian Crisan
H.J. Lu
J. Brown
James Lemke
Jeff Law
Jose E. Marchesi
Joseph Myers
Kaz Kojima
Kostya Serebryany
Leonhard Holz
Ma Shimiao
Maciej W. Rozycki
Marcus Shawcroft
Marek Polacek
Martin Sebor
Matthew Fortune
Mike Frysinger
Ondřej Bílka
Paul Eggert
Paul Pluzhnikov
Petar Jovanovic
Pravin Satpute
Rajalakshmi Srinivasaraghavan
Rasmus Villemoes
Renlin Li
Richard Earnshaw
Richard Henderson
Roland McGrath
Ryan Cumming
Samuel Thibault
Siddhesh Poyarekar
Stefan Liebler
Steve Ellcey
Tatiana Udalova
Tim Lammens
Tom de Vries
Torvald Riegel
Vladimir A. Nazarenko
Wilco Dijkstra
Will Newton
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1

iQEcBAABAgAGBQJU1GKVAAoJECXvCkNsKkr/4IYIAMfU5+NN2z44R2SeRlH+bSZG
rGCF7rUzUOY+ePVNdgOH2cUKfxuLyMU6aao/IVQ863VHW1Ct/x2goVU22oqnVmvP
FeElVxZyzx7iCqipqyaobj0Fm/b563/4yQ+BEOjH39Sj5Ii5kY6PcQQslMJWIH5R
/nHmO048ZAlx/vGWTczAR50HOW1z8H1gilWm8SBkq2BJ8UndhSXCVpThCdMGfeBF
NUxUl2aSt3eghA0SWD3WgRzRR0vU9RHuNQ5k5ggjjRPtipa8DP04t0Bk7/QiLhj1
M2upSS7r4ceZZuFGX8oYVn3f0lTajpOOeuX7SBnKIgQ8cDXtSHST6yPMAbsJRB4=
=odoa
-----END PGP SIGNATURE-----

Adhemerval Zanella (35):
      PowerPC: multiarch bzero cleanup for PPC64
      PowerPC: memset optimization for POWER8/PPC64
      powerpc: remove linux lowlevellock.h
      powerpc: Fix encoding of POWER8 instruction
      powerpc: Simplify encoding of POWER8 instruction
      libio: Refactor tst-fmemopen to use test-skeleton.c
      powerpc: Fix missing barriers in atomic_exchange_and_add_{acq,rel}
      powerpc: Add powerpc64 strspn optimization
      powerpc: Add powerpc64 strcspn optimization
      powerpc: Add powerpc64 strpbrk optimization
      libio: Fix buffer overrun in tst-ftell-active-handler
      libio: Fix variable aligment in tst-ftell-active-handler
      powerpc: Fix lgammal_r overflow warnings
      Fix __sendmmsg prototype guards
      stdio-common: Include <libc-internal.h> in some tests
      Function declaration cleanup
      mips: Fix __libc_pread prototype
      powerpc: Fix compiler warning on some syscalls
      powerpc: Add the lock elision using HTM
      powerpc: Add adaptive elision to rwlocks
      powerpc: abort transaction in syscalls
      powerpc: Fix Copyright dates and CL entry
      Add x86 32 bit vDSO time function support
      powerpc: Optimized st{r,p}cpy for POWER8/PPC64
      powerpc: Optimized strcat for POWER8/PPC64
      powerpc: Optimized strncat for POWER7/PPC64
      powerpc: Optimized st{r,p}ncpy for POWER8/PPC64
      powerpc: Optimized strcmp for POWER8/PPC64
      powerpc: Optimized strncmp for POWER8/PPC64
      powerpc: Fix POWER7/PPC64 performance regression on LE
      BZ #16418: Fix powerpc get_clockfreq raciness
      powerpc: Fix ifuncmain6pie failure with GCC 4.9
      powerpc: Fix powerpc64 build failure with binutils 2.22
      powerpc: Fix fsqrt build in libm [BZ#16576]
      powerpc: Fix fesetexceptflag [BZ#17885]

Alan Hayward (1):
      [AArch64] Add ipc.h.

Alexandre Oliva (6):
      Require check-safety.sh to pass; wish for check that all fns are documented
      manual: cuserid is mtasurace if not passed a string
      ctermid: return string literal, document MT-Safety pitfall
      BZ#14498: fix infinite loop in nss_db_getservbyname
      BZ#16469: don't drop trailing dot in res_nquerydomain(..., name, NULL, ...)
      BZ#16469: resolv: skip leading dot in domain to search

Allan McRae (5):
      Open development for 2.21
      Update Russian translation
      Update French translation
      stdio-common/Makefile: readd bug26 testcase
      Label CVE-2014-9402 in NEWS

Anders Kaseorg (2):
      manual: Remove incorrect claim that qsort() can be stabilized
      manual: Correct guarantee about pointers compared by qsort()

Andreas Krebbel (2):
      stdlib/longlong.h: Add __udiv_w_sdiv prototype.
      iconv: Suppress array out of bounds warning.

Andreas Schwab (20):
      Handle zero prefix length in getifaddrs (BZ #17371)
      Fix misdetected Slow_SSE4_2 cpu feature bit (bug 17501)
      Don't error out writing a multibyte character to an unbuffered stream (bug 17522)
      Remove unused include
      m68k: don't expect PLT reference to __tls_get_addr
      Don't touch user-controlled stdio locks in forked child (bug 12847)
      Update NEWS
      Remove duplication from gconv-modules
      Properly handle forced elision in pthread_mutex_trylock (bug 16657)
      Remove obsolete comment
      Constify string parameters
      Fix printf format error
      Fix changelog typo
      m68k: remove @PLTPC from _dl_init call
      Remove 17581 from NEWS
      m68k: force inlining bswap functions
      m68k: fix missing definition of __feraiseexcept
      m68k/coldfire: avoid warning about volatile register variables
      ia64: avoid set-but-not-used warning
      Include <signal.h> in sysdeps/nptl/allocrtsig.c

Andrew Pinski (1):
      AArch64: Reformat inline-asm in elf_machine_load_address

Andrew Senkevich (4):
      Update minimal required bunutils version to 2.22
      i386: memcpy functions with SSE2 unaligned load/store
      i386: Fix build by GCC 5.0
      Remove duplicated -frounding-math

Anton Blanchard (1):
      powerpc: Fix __arch_compare_and_exchange_bool_64_rel

Arjun Shankar (6):
      New test for ftime
      Write errors to stdout and not stderr in nptl/tst-setuid3.c
      Modify several tests to use test-skeleton.c
      Modify stdio-common/tst-fseek.c to use test-skeleton.c
      Modify stdlib/tst-bsearch.c to use test-skeleton.c
      Modify libio/tst-fopenloc.c to use test-skeleton.c

Aurelien Jarno (2):
      resolv: improve comments about nserv and nservall
      resolv: fix rotate option

Bram (1):
      Fix segmentation fault when LD_LIBRARY_PATH contains only non-existings paths

Brooks Moses (1):
      sysdeps/x86_64/start.S doesn't have a .size elf directive for _start.

Carlos O'Donell (22):
      HPPA: Transition to new non-addon NPTL.
      HPPA: Add c++-types.data.
      Correctly size profiling reloc table (bug 17411)
      hppa: Make __SIGRTMIN 32 (ABI break).
      elf/dl-load.c: Use __strdup.
      manual/llio.texi: Add Linux-specific comments for write().
      Run check-localpltk/textrel/execstack over ld.so.
      manual/llio.texi: Comment on write atomicity.
      CVE-2014-7817: wordexp fails to honour WRDE_NOCMD.
      Expand comments in elf/ldconfig.c (search_dir)
      Use ALIGN_UP in nptl/nptl-init.c
      Fix indenting in bits/ioctl-types.h.
      Update libc.pot:
      Regenerate INSTALL.
      Fix semaphore destruction (bug 12674).
      Fix recursive dlopen.
      tst-getpw: Rewrite.
      Update copyright year to 2015 for new files.
      hppa: Remove warnings and fix conformance errors.
      glibc 2.21 pre-release update.
      hppa: Sync with pthread.h.
      Update version.h and include/features.h for 2.21 release

Chris Metcalf (32):
      tile: remove linux lowlevellock.h
      tilegx: optimize string copy_byte() internal function
      tilegx: provide optimized strnlen, strstr, and strcasestr
      tile: add support for _SC_LEVEL*CACHE* sysconf() queries
      tile: optimize memcmp
      tile: make the prolog of clone() more conformant
      tile: add clock_gettime support via vDSO
      tile: fix copyright header blocks in just-committed files
      tile: add inhibit_loop_to_libcall to string functions
      math: increase timeout for math/atest-*.c
      iconvdata/tst-loading: bump up timeout to 10s
      tilegx: fix strstr to build and link better
      tile: provide localplt.data with __tls_get_addr optional
      tile: remove localplt.data and use generic one again.
      tile: separate ffsll from ffs
      Update NEWS and ChangeLog with two tile bug fixes.
      tilegx: remove implicit boolean conversion in strstr.
      Fix namespace conformance issue with Bessel functions.
      NEWS: mention bug fix for 17747.
      tilegx: enable wordsize-64 support for ieee745 dbl-64.
      tilegx32: avoid a a -Werror warning from unwinding
      tilegx: fix sysdep.h to avoid a redefinition warning
      linux/clock_settime: remove unnecessary vDSO definitions
      tile: add no-op fe*() routines for libc internal use
      posix/Makefile: use $(objpfx) for files in before-compile.
      tile: prefer inlines to macros in math_private.h.
      Fix a couple of -Wundef warnings.
      Fix some warnings in the absence of FP round/exception support
      lround: provide cast for wordsize-64 version if needed
      tile: check error properly for vDSO calls
      posix/regcomp: initialize union structure tag to avoid warning
      tilegx32: set __HAVE_64B_ATOMICS to 0

Chung-Lin Tang (4):
      Add Nios II definitions to elf/elf.h.
      Remove divide from _ELF_DYNAMIC_DO_RELOC in elf/dynamic-link.h.
      Commit nios2 port to master.
      Function name typo error in non-PIC case, fixed in this patch.

David Holsgrove (3):
      MicroBlaze: Fix integer-pointer conversion warning
      MicroBlaze: Fix volatile-register-var warning in READ_THREAD_POINTER
      MicroBlaze: Avoid pointer to integer conversion warning

David S. Miller (6):
      Fix sparc build.
      Fix array bounds warnings in elf_get_dyanmic_info() on sparc with gcc-4.6
      Fix soft-fp build warning on sparc about strict aliasing.
      Fix scanf15.c testsuite build on sparc.
      Fix sparc semaphore implementation after recent changes.
      Fix two bugs in sparc atomics.

Eric Biggers (1):
      setenv fix memory leak when setting large, duplicate string (BZ #17658)

Florian Weimer (6):
      Turn on -Werror=implicit-function-declaration
      malloc: additional unlink hardening for non-small bins [BZ #17344]
      Complete the removal of __gconv_translit_find
      Update NEWS for bug 17608
      Avoid infinite loop in nss_dns getnetbyname [BZ #17630]
      iconvdata/run-iconv-test.sh: Actually test iconv modules

Gratian Crisan (1):
      arm: Re-enable PI futex support for ARM kernels >= 3.14.3

H.J. Lu (27):
      Require autoconf 2.69
      Resize DTV if the current DTV isn't big enough
      Mention fix for PR 13862
      Replace 1L with (mp_limb_t) 1
      Compile s_llround.c with -Wno-error for x32 build
      Replace -Wno-error with -fno-builtin-lround
      Remove @PLT from "call _dl_init@PLT" in _dl_start_user
      Add hidden __tls_get_addr/___tls_get_addr alias
      Replace %ld with %jd and cast to intmax_t
      Replace %ld with %jd and cast to intmax_t
      Replace %ld with %jd and cast to intmax_t
      Replace %ld with %jd and cast to intmax_t
      Replace %ld/%lu with %jd/%ju and cast to intmax_t/uintmax_t
      Replace %ld with %jd and cast to intmax_t
      Replace %ld with %jd and cast to intmax_t
      Replace %ld with %jd and cast to intmax_t
      Replace %ld with %jd and cast to intmax_t
      Mention fix for BZ #17732
      Mention i386 memcpy with SSE2 unaligned load/store
      Don't check PI_STATIC_AND_HIDDEN in i386 dl-machine.h
      Define CLOCKS_PER_SEC type to the type clock_t
      Mention bug fix for BZ #17806
      Use uint64_t and (uint64_t) 1 for 64-bit int
      Also use uint64_t in __new_sem_wait_fast
      Treat model numbers 0x4a/0x4d as Silvermont
      Also treat model numbers 0x5a/0x5d as Silvermont
      Use AVX unaligned memcpy only if AVX2 is available

J. Brown (1):
      Recognize recent x86 CPUs in string.h

James Lemke (2):
      Fix for test "malloc_usable_size: expected 7 but got 11"
      Fix for test "malloc_usable_size: expected 7 but got 11"

Jeff Law (1):
      CVE-2012-3406: Stack overflow in vfprintf [BZ #16617]

Jose E. Marchesi (1):
      Fix sparc struct fpu definition.

Joseph Myers (141):
      Add new Linux 3.16 constants to netinet/udp.h.
      Move architecture-specific shlib-versions entries to sysdeps files.
      Move OS-specific shlib-versions entries to sysdeps files.
      Use %ifdef in sysdeps/unix/sysv/linux/powerpc/powerpc64/shlib-versions.
      Remove configuration name patterns from shlib-versions.
      Remove bitrotten --enable-oldest-abi (bug 6652).
      soft-fp: Correct _FP_TO_INT formatting.
      soft-fp: Fix comment formatting.
      Move some setrlimit definitions to syscalls.list (bug 14138).
      Clean up gnu/lib-names.h generation (bug 14171).
      Remove shlib-versions entries redundant with DEFAULT entries.
      Run tst-ld-sse-use.sh with bash.
      Move some *at definitions to syscalls.list (bug 14138).
      Move execve to syscalls.list (bug 14138).
      Move some chown / lchown / fchown definitions to syscalls.list (bug 14138).
      Support and use mixed compat/non-compat aliases in syscalls.list.
      Don't use INTUSE with __adjtimex (bug 14132).
      soft-fp: Remove FP_CLEAR_EXCEPTIONS.
      soft-fp: Make extensions of subnormals from XFmode to TFmode signal underflow if traps enabled.
      soft-fp: Refactor exception handling for comparisons.
      soft-fp: Fix _FP_TO_INT latent bug in overflow handling.
      soft-fp: Add FP_DENORM_ZERO.
      Remove stray *_internal aliases (bug 14132).
      Don't use INTDEF/INTUSE with __cxa_atexit (bug 14132).
      soft-fp: Support more precise "invalid" exceptions.
      soft-fp: Support rsigned == 2 in _FP_TO_INT.
      soft-fp: Use parentheses around macro arguments.
      Don't use INTVARDEF/INTUSE with __libc_enable_secure (bug 14132).
      Remove CANCEL-FCT-WAIVE and CANCEL-FILE-WAIVE.
      conformtest: clean up POSIX expections for sys/utsname.h, sys/wait.h.
      Move readv and writev definitions to syscalls.list (bug 14138).
      Don't use INTDEF with __ldexpf (bug 14132).
      Don't use INTDEF for powerpc32 compat symbols (bug 14132).
      Move some chown / lchown / fchown definitions to syscalls.list (bug 14138).
      Move get*id and getgroups definitions to syscalls.list (bug 14138).
      Move setfsgid/setfsuid definitions to syscalls.list (bug 14138).
      Don't use INTDEF/INTUSE in unwind-dw2-fde.c (bug 14132).
      Remove __libc_creat function name.
      Remove __libc_readv and __libc_writev function names.
      Move powerpc64 pread/pwrite definitions to syscalls.list (bug 14138).
      Add bug 15215 to NEWS; move bug 17344 to correct version's list in NEWS.
      Remove __libc_pselect alias.
      Update autoconf version requirement in install.texi.
      Make aclocal.m4 comment mention updating install.texi for autoconf version.
      Remove __libc_nanosleep function name.
      soft-fp: Add _FP_TO_INT_ROUND.
      Don't use INTDEF/INTUSE with _dl_argv (bug 14132).
      Don't use INTDEF/INTUSE with _dl_init (bug 14132).
      Don't use INTDEF/INTUSE with _dl_mcount (bug 14132).
      Remove INTDEF / INTUSE / INTVARDEF (bug 14132).
      Remove __libc_waitpid function name.
      Fix tzfile.c namespace (bug 17583).
      Fix __getcwd rewinddir namespace (bug 17584).
      Fix malloc_info namespace (bug 17570).
      Fix qsort_r namespace (bug 17571).
      Fix x86_64 rawmemchr namespace (bug 17572).
      Fix stpcpy / mempcpy namespace (bug 17573).
      Fix __printf_fp wmemset namespace (bug 17574).
      Fix __get_nprocs fgets_unlocked namespace (bug 17582).
      Fix locale memmem namespace (bug 17585).
      Fix localealias.c fgets_unlocked namespace (bug 17589).
      Add tests for namespace for static linking.
      Fix strtoll / strtoull namespace for 32-bit (bug 17594).
      Use prototype definition for __strtol.
      Fix build of C mempcpy and stpcpy.
      Require GCC 4.6 or later to build glibc.
      Only declare __sigpause in installed signal.h when necessary.
      Remove ARM __GNUC_PREREQ(4,4) conditionals.
      Remove x86_64 __GNUC_PREREQ (4, 6) conditional.
      Fix libm mpone, mptwo namespace (bug 17616).
      Fix perror fileno namespace (bug 17633).
      Fix warning in posix/bug-regex31.c.
      Fix warning in stdio-common/tst-printf-round.c.
      Fix warning in setjmp/jmpbug.c.
      Fix test-strchr.c warnings for wide string testing.
      Remove TEST_IFUNC, tests-ifunc and *-ifunc.c tests.
      Fix warnings in fwscanf / rewind tests.
      FIx ldbl-128ibm frexpl for 32-bit systems (bug 16619, bug 16740).
      Fix sysdeps/unix/sysv/linux/arm/libc-do-syscall.S warning.
      Fix nptl/tst-cancel-self-cancelstate.c warning.
      Fix sysdeps/mips/__longjmp.c warning.
      Avoid warnings for unused results in nscd/connections.c.
      Fix nss/tst-nss-test1.c format warning.
      Fix stdio-common/tst-fmemopen.c format warnings.
      Fix dlfcn/failtestmod.c warning.
      Fix libio/bug-ungetwc1.c warning.
      Avoid deprecated sigblock in misc/tst-pselect.c.
      Make linknamespace tests check only relevant libraries.
      Fix elf/tst-unique4lib.cc warning.
      Fix fgets_unlocked namespace issues (bug 17664).
      Remove excess declarations from unistd.h for XPG3/XPG4 (bug 17665).
      Fix warning in posix/tst-getopt_long1.c.
      Fix -Waddress warnings in nptl/tst-mutex1.c.
      Fix warning in nptl/tst-stack4.c.
      Fix getifaddrs, freeifaddrs namespace (bug 17668).
      Remove some linknamespace test XFAILs.
      Fix linknamespace getdate_err handling.
      Fix linknamespace h_errno handling.
      Fix pthreads getrlimit, gettimeofday namespace (bug 17682).
      Add macros for diagnostic control, use for scanf %a tests.
      Disable -Wdiv-by-zero for some tests in stdio-common/tst-unlockedio.c.
      Disable -Wdeprecated-declarations for register_printf_function calls in tst-printfsz.c.
      Use -Werror by default, add --disable-werror.
      Fix tst-ftell-active-handler.c warning.
      Fix strftime wcschr namespace (bug 17634).
      Fix MIPS sigaction build.
      Fix MIPS waitid build.
      Clean up localedata tests printf formats, don't use -Wno-format.
      Add more headers to include/ for conform tests.
      Move semaphore.h to sysdeps/pthread/.
      Remove some semaphore.h linknamespace XFAILs.
      Fix resolver if_* namespace (bug 17717).
      Fix x86_64 memrchr namespace (bug 17719).
      Fix resolver inet_* namespace (bug 17722).
      Fix profil_counter namespace (bug 17725).
      Fix resolver bind, getsockname namespace (bug 17733).
      Split __kernel_standard* functions (fixes bug 17724).
      Make __ASSUME_UTIMES hppa-specific.
      Fix libm feraiseexcept namespace (bug 17723).
      Clean up powerpc fegetround / __fegetround inlines.
      Fix libm fegetenv namespace (bug 17748).
      Update copyright dates with scripts/update-copyrights.
      Update copyright dates not handled by scripts/update-copyrights.
      Use single year in copyright notice in banner in ntpl/version.c.
      Fix MIPS bits/fcntl.h namespace (bug 17780).
      Fix MIPS sa_flags type (bug 17781).
      Fix MIPS TIOCSER_TEMT namespace (bug 17782).
      Fix libm fegetround namespace (bug 17748).
      Fix wordsize-64 posix_fadvise64, posix_fallocate64 namespace (bug 17777).
      Fix isblank / isascii / toascii namespace (bug 17635).
      Fix ARM posix_fadvise64 namespace (bug 17793).
      Fix MIPS n64 posix_fadvise namespace (bug 17796).
      Fix libm feholdexcept namespace (bug 17748).
      Fix libm fesetenv namespace (bug 17748).
      Fix libm fesetround namespace (bug 17748).
      Fix libm feupdateenv namespace (bug 17748).
      Fix ldbl-96 scalblnl for subnormal arguments (bug 17834).
      Fix ldbl-96 scalblnl underflowing results (bug 17803).
      Fix powerpc-nofpu fesetenv namespace (bug 17748).
      soft-fp: Use __label__ for all labels within macros.
      Disable 64-bit atomics for MIPS n32.

Kaz Kojima (1):
      * Fix SH specific compiler warnings which are for integer-pointer

Kostya Serebryany (3):
      remove nested function hack_digit
      remove nested functions from elf/dl-deps.c
      remove nested functions from elf/dl-load.c

Leonhard Holz (4):
      strcoll: improve performance by removing the cache (#15884)
      Fix tst-strcoll-overflow returning before timeout (BZ #17506)
      Speed up strcoll by inlining
      Fix memory handling in strxfrm_l [BZ #16009]

Ma Shimiao (1):
      manual: fix addmntent's MT-Safety race annotation

Maciej W. Rozycki (1):
      MIPS: Avoid a dangling `vfork@GLIBC_2.0' reference

Marcus Shawcroft (1):
      Fix ChangeLog formatting of previous commit.

Marek Polacek (1):
      Fix tst_wcscpy.c test.

Martin Sebor (1):
      Clarify math/README.libm-test. Add "How to read the test output."

Matthew Fortune (5):
      Add a hook to enable load-time inspection of program headers
      Add support for MIPS O32 FPXX and .MIPS.abiflags
      Fix MIPS variable PAGE_SIZE bug (16191)
      NEWS for MIPS ABIs
      MicroBlaze: Fix BZ17791 - Remove fixed page size macros and others

Mike Frysinger (1):
      arm: drop EABI check

Ondřej Bílka (8):
      Sync recvmmsg prototype with kernel usage.
      Fix typo in changelog.
      Return allocated array instead of unallocated.
      Simplify strncat.
      Clean up check_pf allocation pattern. addresses
      Add changelog
      Suppress warning in string/tester.c for gcc 4.9
      Revert "Suppress warning in string/tester.c for gcc 4.9"

Paul Eggert (1):
      fnmatch: work around GCC compiler warning bug with uninit var

Paul Pluzhnikov (1):
      CVE-2015-1472: wscanf allocates too little memory

Petar Jovanovic (1):
      mips: Do not use jal to reach __libc_start_main

Pravin Satpute (2):
      New locale ce_RU (BZ #17192)
      New locale raj_IN (#16857)

Rajalakshmi Srinivasaraghavan (3):
      powerpc: strtok{_r} optimization for powerpc64
      powerpc: POWER7 strcpy optimization for unaligned strings
      powerpc: Optimize POWER7 strcmp trailing checks

Rasmus Villemoes (1):
      Fix prototype of eventfd.

Renlin Li (1):
      [AArch64] End frame record chain correctly.

Richard Earnshaw (5):
      [AArch64] Add optimized strchrnul.
      [AArch64] Fix strchrnul clobbering v15
      * string/stpcpy.c (__stpcpy): Rewrite using strlen and memcpy.
      AArch64 optimized implementation of strrchr.
      AArch64: Optimized implementations of strcpy and stpcpy.

Richard Henderson (2):
      alpha: Fix soft-fp breakage
      Add -Wno-trampolines as needed

Roland McGrath (62):
      Move findidx nested functions to top-level.
      Don't use a nested function in rpmatch.
      Minor cleanup in ld-ctype.c
      Minor cleanup in locale.c
      Remove unnecessarily nested function in do_lookup_unique.
      BZ#17460: Fix buffer overrun in nscd --help.
      Remove sysdeps/arm/soft-fp directory.
      Fix NPTL build error when missing __NR_set_robust_list.
      NPTL: Conditionalize more uses of SIGCANCEL and SIGSETXID.
      NPTL: Conditionalize direct futex syscall uses.
      NPTL: Clean up THREAD_SYSINFO macros.
      Remove obsolete TLS_DEFINE_INIT_TP fallback.
      Make internal lock-init macros return void.
      NPTL: Add some missing #include's
      NPTL: Clean up gratuitous Linuxism in libpthread.so entry point.
      Tiny refactoring in fts to eliminate a warning.
      Avoid local PLT reference in __nptl_main.
      ARM: Use movw/movt more when available
      Rework some nscd code not to use variable-length struct types.
      Prototypify htonl and htons definitions.
      Rework compiler version check in configure.
      Clean up wchar_t conversion code in iconv program.
      Clean up internal ctype.h header.
      BZ#17496: Fix gnu/lib-names.h dependency.
      NPTL: Move __libc_multiple_threads_ptr defn to nptl-init.c
      Remove sigvec.
      NPTL: Refactor createthread.c
      NPTL: Move Linux-specific createthread.c to sysdeps.
      NPTL: Add stub createthread.c
      Test that pthread_create diagnoses invalid scheduling parameters.
      NPTL: Don't (re)validate sched_priority in pthread_create.
      NPTL: Refactor scheduler setup in pthread_create.
      NPTL: Conditionalize asynchronous cancellation support on [SIGCANCEL].
      NPTL: Use __libc_fatal in unwind.c.
      NPTL: Fix pthread_create regression from default-sched.h refactoring.
      De-warning a few stubs.
      Fix -Wformat-security warnings in posix/regexbug1.c
      Eliminate -Wno-format from printf/scanf tests.
      Suppress -Wformat-security in tst-error1.c.
      Refactor shm_{open,unlink} code to separate Linux-specific directory choice from POSIX-generic code.
      Fix NPTL build for !__ASSUME_SET_ROBUST_LIST case.
      NPTL: Add stubs for Linux-only extension functions.
      NPTL: Refactor named semaphore code to use shm-directory.h
      Use pragmas rather than makefiles for necessary options for unwind code.
      Revert "Use pragmas rather than makefiles for necessary options for unwind code."
      Use PTR_MANGLE on libgcc unwinder function pointers.
      Remove explicit inline on malloc perturb functions.
      Fix stub __if_freenameindex build error.
      NPTL: Remove gratuitous Linuxisms from gai_misc.h.
      NPTL: Move fork state variables to initializer files.
      ARM: Consolidate with generic unwinder wrapper code
      NPTL: Refactor cpu_set_t validation to be sysdeps-controlled
      Add stub sys/procfs.h file
      NPTL: Fixed missed conditionalization of setxid hooey.
      NPTL: Fix generic pthread_sigmask.
      Fix copyright year on new stub sys/procfs.h file.
      Clean up allocrtsig code.
      Some #include cleanup in aio/timer code.
      Fix shm-directory.h #include.
      Remove some references to bcopy/bcmp/bzero.
      Add missing libc_hidden_def to stub getrlimit64.
      Add missing libc_hidden_weak to stub if_nameindex, if_freenameindex.

Ryan Cumming (1):
      Define CLOCK_TAI on Linux (bug 17608)

Samuel Thibault (1):
      hurd: Fix dlopening libraries from static programs

Siddhesh Poyarekar (53):
      Return failure in getnetgrent only when all netgroups have been searched (#17363)
      Enhance tst-xmmymm.sh to detect zmm register usage in ld.so (BZ #16194)
      Fix typo in macro names in sysconf.c
      Add correct variable names for _POSIX_IPV6 and _POSIX_RAW_SOCKETS
      Remove _POSIX_REGEX_VERSION
      Revert to defining __extern_inline only for gcc-4.3+ (BZ #17266)
      Add NEWS entry for previous commit
      Fix memory leak in error path of do_ftell_wide (BZ #17370)
      Make __extern_always_inline usable on clang++ again
      Assume that all _[PS]C_* and _CS_* macros are always defined
      Include .interp section only for libc.so
      Remove CFLAGS for interp.c
      Fix infinite loop in check_pf (BZ #12926)
      Fix up incorrect formatting in last commit
      Fix stack alignment when loader is invoked directly
      Use GOT instead of GOT12 all over
      Add new macro IN_MODULE to identify module in which source is built
      Fix -Wundef warning in SHLIB_COMPAT
      Auto-generate libc-modules.h
      Use MODULE_NAME in stap-probe instead of IN_LIB
      Remove IN_LIB
      Define IN_MODULE for translation units that define NOT_IN_libc
      Remove IS_IN_libc
      Remove IS_IN_ldconfig
      Remove IS_IN_nscd
      Remove IS_IN_libdl
      Remove IS_IN_librt
      Remove IS_IN_libpthread
      Remove IS_IN_libm
      Remove IS_IN_rtld
      Remove last place for definition of IS_IN_* macros
      Remove NOT_IN_libc
      Use IS_IN internally only
      Don't use __warn_memset_zero_len for gcc-5.0 or newer
      Update NEWS for previous two commits
      ftell: seek to end only when there are unflushed bytes (BZ #17647)
      tst-ftell-active-handler: Open file with O_TRUNC for w modes
      Reset cached offset when reading to end of stream (BZ #17653)
      Fix up function definition style
      Fix date in ChangeLog
      Fix another typo in the ChangeLog
      Fix 'array subscript is above array bounds' warning in res_send.c
      Fix the 'array subscript is above array bounds' warning correctly
      Remove Wundef warnings for specification macros
      Add _POSIX namespace SYSCONF macros to posix-conf-vars.list
      Use posix-conf-vars.list to generate spec array
      Make type for spec variable size as size_t
      Use one-dimension arrays in gen-posix-conf-vars.awk
      Remove uses of sprintf in gen-posix-conf-vars.awk
      Fix typo in ChangeLog
      [s390] Define a __tls_get_addr macro to avoid declaring it again
      Initialize nscd stats data [BZ #17892]
      Fix up ChangeLog formatting

Stefan Liebler (13):
      S/390: Get rid of warning: the comparision will always evaluate as false.
      S/390: Get rid of warning unused variable in dl-machine.h.
      S/390: Add SystemTap probes to longjmp and setjmp.
      S/390: dl-machine.h: Use numbered labels in inline assembly.
      Add missing include of libc-internal.h.
      S/390: Get rid of assembler warning value truncated.
      Get rid of warning inlining failed in call to maybe_swap_uint32
      Get rid of warning comparision will always evaluate as true
      resolv: Suppress maybe uninitialized warning
      Get rid of format warning in tst-widetext.c.
      Get rid of format warning in bug-vfprintf-nargs.c.
      S390: Get rid of linknamespace failures for string functions.
      S390: Get rid of linknamespace failures for utmp functions.

Steve Ellcey (19):
      Modify ABI tests in MIPS preconfigure.
      Put mips preconfigure code inside mips* case statement.
      * sysdeps/mips/strcmp.S: New.
      Remove extra whitespace from end of line.
      2014-12-10  Steve Ellcey  <sellcey@imgtec.com>
      2014-12-11  Steve Ellcey  <sellcey@imgtec.com>
      * sysdeps/mips/dl-trampoline.c: Modify switch expression to have
      2014-12-17  Steve Ellcey  <sellcey@imgtec.com>
      2014-12-19  Steve Ellcey  <sellcey@imgtec.com>
      2014-12-19  Steve Ellcey  <sellcey@imgtec.com>
      Remove trailing white space.
      Add missing ChangeLog entries from Friday (Dec 19, 2014).
      Remove trailing whitespace.
      2014-12-22  Steve Ellcey  <sellcey@imgtec.com>
      Fix preprocessor indentation in sysdeps/mips/memcpy.S.
      2015-01-05  Steve Ellcey  <sellcey@imgtec.com>
      2015-01-05  Steve Ellcey  <sellcey@imgtec.com>
      2015-01-05  Steve Ellcey  <sellcey@imgtec.com>
      Merge branch 'master' of ssh://sourceware.org/git/glibc

Tatiana Udalova (1):
      New Bhilodi and Tulu locales (BZ #17475)

Tim Lammens (1):
      Fix memory leak in libio/wfileops.c do_ftell_wide [BZ #17370]

Tom de Vries (1):
      Fix crossreference to nonexistent node BSD Handler

Torvald Riegel (24):
      pthread_once: Clean up constants.
      pthread_once: Add fast path and remove x86 variants.
      Fix SPARC atomic_write_barrier.
      powerpc: Change atomic_write_barrier to have release semantics.
      Add arch-specific configuration for C11 atomics support.
      Add atomic operations similar to those provided by C11.
      Add tests for C11-like atomic operations.
      Use C11 atomics in pthread_once.
      microblaze: 64b atomic operations are not supported.
      Fix synchronization of TPP min/max priorities.
      Remove custom pthread_once implementation on sh.
      Remove custom pthread_once implementation on s390.
      Fix nptl/tst-mutex5.c: Do not skip tests if elision is enabled.
      Fix nptl/tst-sem4: always start with a fresh semaphore.
      Add comments for the generic lowlevellock implementation.
      Fix warning in elf/tst-unique4lib.cc.
      Fix warning in misc/tst-mntent2.c.
      Ignore warning in string/tester.c.
      sh: Remove custom lowlevellock, barrier, condvar, and rwlock implementations.
      Use generic lowlevellock-futex.h in x86_64 lowlevellock.h.
      i386: Move futex functions from lowlevellock.h to lowlevellock-futex.h.
      MicroBlaze: Remove custom pthread_once implementation on microblaze.
      MicroBlaze: Remove custom lowlevellock.h.
      Fix wake-up in sysdeps/nptl/fork.c.

Vladimir A. Nazarenko (1):
      Fix incorrect mount table entry parsing in __getmntent_r

Wilco Dijkstra (18):
      Remove spaces.
      Remove an unused include.
      Cleanup fesetexceptflag to use the same logic as the ARM version. No functional changes.
      Cleanup feclearexcept to use the same logic as the ARM version. No functional changes.
      Cleanup fedisableexcept to use the same logic as the ARM version. No functional changes.
      Cleanup feenableexcept to use the same logic as the ARM version. No functional changes.
      Call get_rounding_mode rather than duplicating functionality.
      Call libc_feholdexcept_aarch64 from math_private.h rather than duplicating functionality.
      Call libc_fetestexcept_aarch64 from math_private.h rather than duplicating functionality.
      This patch improves strcat performance by using strlen and strcpy. Strlen has a fast C
      This patch improves strncat performance by using strlen. Strlen has a fast C implementation, so
      Improve strcpy performance.
      Improve performance of strncpy.
      Fix typo.
      Call libc_fesetround_aarch64.
      Call libc_fetestexcept_aarch64.
      Optimize to reduce FPCR/FPSR accesses.
      Optimize to avoid an unnecessary FPCR read.

Will Newton (10):
      ARM: Don't define _SYS_AUXV_H in sysdep.h
      Allow cross-building of tests
      stdlib/tst-strtod-round.c: Fix build on ARM
      benchtests: Add malloc microbenchmark
      AArch64: Update relocations for ILP32
      AArch64: Use ELF macros rather than Elf64 throughout
      intl: Merge with gettext version 0.19.3
      Bump required version of texinfo to 4.7
      Require bison 2.7 or newer for regenerating intl/plural.y
      ARM: Remove configure check for binutils 2.21 for ARMv7

-----------------------------------------------------------------------
Comment 8 Sourceware Commits 2015-02-23 14:23:39 UTC
This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "GNU C Library master sources".

The branch, ibm/2.19/master has been created
        at  b5faf032c4c6a2260a9a93d8d4df611caa8b54cc (commit)

- Log -----------------------------------------------------------------
https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=b5faf032c4c6a2260a9a93d8d4df611caa8b54cc

commit b5faf032c4c6a2260a9a93d8d4df611caa8b54cc
Author: Paul Pluzhnikov <ppluzhnikov@google.com>
Date:   Fri Feb 6 00:30:42 2015 -0500

    CVE-2015-1472: wscanf allocates too little memory
    
    BZ #16618
    
    Under certain conditions wscanf can allocate too little memory for the
    to-be-scanned arguments and overflow the allocated buffer.  The
    implementation now correctly computes the required buffer size when
    using malloc.
    
    A regression test was added to tst-sscanf.
    
    Conflicts:
    	ChangeLog
    	NEWS

https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=88a8a351f3a6a95205a1499fd68b79fc3d0b9d19

commit 88a8a351f3a6a95205a1499fd68b79fc3d0b9d19
Author: Carlos O'Donell <carlos@redhat.com>
Date:   Wed Nov 19 11:44:12 2014 -0500

    CVE-2014-7817: wordexp fails to honour WRDE_NOCMD.
    
    The function wordexp() fails to properly handle the WRDE_NOCMD
    flag when processing arithmetic inputs in the form of "$((... ``))"
    where "..." can be anything valid. The backticks in the arithmetic
    epxression are evaluated by in a shell even if WRDE_NOCMD forbade
    command substitution. This allows an attacker to attempt to pass
    dangerous commands via constructs of the above form, and bypass
    the WRDE_NOCMD flag. This patch fixes this by checking for WRDE_NOCMD
    in exec_comm(), the only place that can execute a shell. All other
    checks for WRDE_NOCMD are superfluous and removed.
    
    We expand the testsuite and add 3 new regression tests of roughly
    the same form but with a couple of nested levels.
    
    On top of the 3 new tests we add fork validation to the WRDE_NOCMD
    testing. If any forks are detected during the execution of a wordexp()
    call with WRDE_NOCMD, the test is marked as failed. This is slightly
    heuristic since vfork might be used in the future, but it provides a
    higher level of assurance that no shells were executed as part of
    command substitution with WRDE_NOCMD in effect. In addition it doesn't
    require libpthread or libdl, instead we use the public implementation
    namespace function __register_atfork (already part of the public ABI
    for libpthread).
    
    Tested on x86_64 with no regressions.

https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=32404a33a03747951daafde164e3b14464c28fe9

commit 32404a33a03747951daafde164e3b14464c28fe9
Author: Allan McRae <allan@archlinux.org>
Date:   Thu Dec 18 11:01:43 2014 +1000

    Label CVE-2014-9402 in NEWS

https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=d2a6f3a27b791d91beec2ea91f293ec898080904

commit d2a6f3a27b791d91beec2ea91f293ec898080904
Author: Florian Weimer <fweimer@redhat.com>
Date:   Mon Dec 15 17:41:13 2014 +0100

    Avoid infinite loop in nss_dns getnetbyname [BZ #17630]

https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=39700792d4224af99ab52ea26e98a0a2a2ed6ac6

commit 39700792d4224af99ab52ea26e98a0a2a2ed6ac6
Author: Jeff Law <law@redhat.com>
Date:   Mon Dec 15 10:09:32 2014 +0100

    CVE-2012-3406: Stack overflow in vfprintf [BZ #16617]
    
    A larger number of format specifiers coudld cause a stack overflow,
    potentially allowing to bypass _FORTIFY_SOURCE format string
    protection.

https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=5cefe3fc8f35b50eb84cbb740268539a40651173

commit 5cefe3fc8f35b50eb84cbb740268539a40651173
Author: Allan McRae <allan@archlinux.org>
Date:   Sat Jun 21 17:23:55 2014 +1000

    Mention CVE-2014-4043 in NEWS

https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=eece504424b59a1d8de7b4da9c64e24acaa6fbe0

commit eece504424b59a1d8de7b4da9c64e24acaa6fbe0
Author: Florian Weimer <fweimer@redhat.com>
Date:   Wed Jun 11 23:12:52 2014 +0200

    posix_spawn_file_actions_addopen needs to copy the path argument (BZ 17048)
    
    POSIX requires that we make a copy, so we allocate a new string
    and free it in posix_spawn_file_actions_destroy.
    
    Reported by David Reid, Alex Gaynor, and Glyph Lefkowitz.  This bug
    may have security implications.

https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=dcf0cce30d91100005e9aeb002096236325648fb

commit dcf0cce30d91100005e9aeb002096236325648fb
Author: Florian Weimer <fweimer@redhat.com>
Date:   Mon May 12 15:24:12 2014 +0200

    _nl_find_locale: Improve handling of crafted locale names [BZ #17137]
    
    Prevent directory traversal in locale-related environment variables
    (CVE-2014-0475).

https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=a5da5d74ff2e0a6ee267f283be8dbccc92cec59a

commit a5da5d74ff2e0a6ee267f283be8dbccc92cec59a
Author: Florian Weimer <fweimer@redhat.com>
Date:   Tue Aug 26 19:38:59 2014 +0200

    __gconv_translit_find: Disable function [BZ #17187]
    
    This functionality has never worked correctly, and the implementation
    contained a security vulnerability (CVE-2014-5119).

https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=e6cbfc1fa2c64cad3c599f419dd154cec5af23cc

commit e6cbfc1fa2c64cad3c599f419dd154cec5af23cc
Author: Florian Weimer <fweimer@redhat.com>
Date:   Wed Sep 3 19:45:43 2014 +0200

    CVE-2014-6040: Crashes on invalid input in IBM gconv modules [BZ #17325]
    
    These changes are based on the fix for BZ #14134 in commit
    6e230d11837f3ae7b375ea69d7905f0d18eb79e5.

https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=fa7cc069f4eb29c00ec3a833d73ec4a473b11c8a

commit fa7cc069f4eb29c00ec3a833d73ec4a473b11c8a
Author: Adhemerval Zanella <azanella@linux.vnet.ibm.com>
Date:   Tue Jul 29 13:56:44 2014 -0500

    PowerPC: Fix gprof entry point for LE
    
    This patch fixes the ELFv2 gprof entry point since the ABI
    does not define function descriptors.  It fixes BZ#17213.
    
    This is a backport of a53fbd8e6cd2f69bdfa3431d616a5f332aea6664.

https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=3c640c4acb9bc2c2cc7fa77d5ce1254953761dc1

commit 3c640c4acb9bc2c2cc7fa77d5ce1254953761dc1
Author: Alan Modra <amodra@gmail.com>
Date:   Mon Jul 14 21:14:50 2014 +0930

    Correct DT_PPC64_NUM
    
    	[BZ #17153]
    	* elf/elf.h (DT_PPC64_NUM): Correct value.
    	* NEWS: Add to fixed bug list.
    
    This is a backport of f6c44d475104e931bab2b4ffa499961088de673c.

https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=957afa3407c426969eaaa348981b9648d5191ae2

commit 957afa3407c426969eaaa348981b9648d5191ae2
Author: Adhemerval Zanella <azanella@linux.vnet.ibm.com>
Date:   Tue Jul 8 08:54:09 2014 -0500

    PowerPC: Cleanup powerpc memmove
    
    Now that MEMCPY_OK_FOR_FWD_MEMMOVE should be define on memcopy.h there
    is no need to specialized powerpc memmove implementation.  This patch
    moves the define set to powerpc memcopy and cleanup its definition on
    powerpc code.

https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=8d9513a103bdd202ffa4884bdedc2c3c0dbab210

commit 8d9513a103bdd202ffa4884bdedc2c3c0dbab210
Author: Adhemerval Zanella <azanella@linux.vnet.ibm.com>
Date:   Tue Jul 8 08:49:54 2014 -0500

    PowerPC: Fix compiler warnings
    
    This patch fixes some compiler due trailing data in #undef directives
    and due missing prototypes.

https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=b00ec143897f076ecbcedc7369b4b74e0c7f6d14

commit b00ec143897f076ecbcedc7369b4b74e0c7f6d14
Author: Adhemerval Zanella <azanella@linux.vnet.ibm.com>
Date:   Tue Jul 8 08:35:44 2014 -0500

    PowerPC: Add ifunc tests for memmove
    
    This patch add the missing ifunc tests definition for memmove ppc32
    optimization patch (commit 07aedd7).
    
    This is a backport of 91f4b564bd7bedcd93e7047cad570ce292d6330b.

https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=565e3d6c8230affd7089bf5ebfcebbf72f32a27c

commit 565e3d6c8230affd7089bf5ebfcebbf72f32a27c
Author: Adhemerval Zanella <azanella@linux.vnet.ibm.com>
Date:   Wed Jun 25 11:54:31 2014 -0500

    PowerPC: Align power7 memcpy using VSX to quadword
    
    This patch changes power7 memcpy to use VSX instructions only when
    memory is aligned to quardword.  It is to avoid unaligned kernel traps
    on non-cacheable memory (for instance, memory-mapped I/O).

https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=6fae3527af330c32399e3a4cdfac3958fc440eb8

commit 6fae3527af330c32399e3a4cdfac3958fc440eb8
Author: Adhemerval Zanella <azanella@linux.vnet.ibm.com>
Date:   Tue Jun 24 08:47:52 2014 -0500

    PowerPC: optimized memmove for POWER7/PPC32
    
    This patch adds a optimized memmove for power7 by using the optimized
    power7 memcpy for forward copying.

https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=5d55f9b05ecb85b7a543f641829479cfb081f380

commit 5d55f9b05ecb85b7a543f641829479cfb081f380
Author: Adhemerval Zanella <azanella@linux.vnet.ibm.com>
Date:   Fri Jun 20 12:55:16 2014 -0500

    PowerPC: optimized memmove for POWER7/PPC64
    
    This patch adds an optimized memmove optimization for POWER7/powerpc64.
    Basically the idea is to use the memcpy for POWER7 on non-overlapped
    memory regions and a optimized backward memcpy for memory regions
    that overlap (similar to the idea of string/memmove.c).
    
    The backward memcpy algorithm used is similar the one use for memcpy for
    POWER7, with adjustments done for alignment.  The difference is memory
    is always aligned to 16 bytes before using VSX/altivec instructions.

https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=dde00e9914370ddd90c9bbc4f3f0e455efae4b47

commit dde00e9914370ddd90c9bbc4f3f0e455efae4b47
Author: Adhemerval Zanella <azanella@linux.vnet.ibm.com>
Date:   Tue Jun 24 06:42:31 2014 -0500

    PowerPC: memmove default implementation cleanup
    
    This patch removes the powerpc specific logic in memmove and instead
    include default implementation with MEMCPY_OK_FOR_FWD_MEMMOVE defined.
    This lead in a increase performance, since the constraints to use
    memcpy in powerpc code are too restrictive and memcpy can be used for
    any forward memmove.
    
    This is a backport of d6f68bbef4427850c2901728a1d13efc0e687297.

https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=9841a0850ed3be4310ec6b49c3349e39a6f0f481

commit 9841a0850ed3be4310ec6b49c3349e39a6f0f481
Author: Vidya Ranganathan <vidya@linux.vnet.ibm.com>
Date:   Wed Jun 11 22:21:20 2014 -0500

    PowerPC: strcat optimization for PPC64/POWER7
    
    This patch adds an ifunc power7 strcat symbol that uses the logic on
    sysdeps/powerpc/strcat.c but call power7 strlen/strcpy symbols instead
    of default ones.
    
    This is a backport of bc8ea38590070604006399e42469087e943fc8ec.

https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=ded8852b37f673b8e66163b44f70504dc5af0985

commit ded8852b37f673b8e66163b44f70504dc5af0985
Author: Adhemerval Zanella <azanella@linux.vnet.ibm.com>
Date:   Mon Jun 23 09:38:47 2014 -0500

    PowerPC: sync hwcap.h capabilities
    
    Linux commit dd58a092c4202f2bd490adab7285b3ff77f8e467 added the
    PPC_FEATURE2_VEC_CRYPTO auvx capability to indicate whether to
    hardware supports vector crypto hardware instructions.  This patch
    adds its definition to powerpc hwcap bits.
    
    This is a backport of db22400947e1c82153e5270d23fed53fc1e3a659.

https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=7e986751f5c05f3363c01c717972f87a681da0d0

commit 7e986751f5c05f3363c01c717972f87a681da0d0
Author: Rajalakshmi Srinivasaraghavan <raji@linux.vnet.ibm.com>
Date:   Tue Jun 17 08:46:25 2014 -0500

    PowerPC: Fix nearbyintl failure for few inputs
    
    This patch fixes few failures in nearbyintl() where the fraction part is
    close to 0.5.i  The new tests added report few extra failures in
    nearbyint_downward and nearbyint_towardzero which is a known issue.
    
    Fixes #17031.
    
    This is a backport of 754c5a08aacb44895d1ab97c553ce424eb43f761.

https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=2289a56644fc05786e2d5637c76d47afea7d38b9

commit 2289a56644fc05786e2d5637c76d47afea7d38b9
Author: Vidya Ranganathan <vidya@linux.vnet.ibm.com>
Date:   Fri Jun 6 07:56:07 2014 -0500

    PowerPC: Optimized strcmp for PPC64/POWER7
    
    Optimization is achieved on 8 byte aligned strings with double word
    comparison using cmpb instruction. On unaligned strings loop unrolling
    is applied for Power7 gain.
    
    It is a backport of e23d3d2690bf63207b1a47e83a94693daebbbfe5.

https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=010c023685495f4cd907b7bf7d15375edcbe1ead

commit 010c023685495f4cd907b7bf7d15375edcbe1ead
Author: Adhemerval Zanella <azanella@linux.vnet.ibm.com>
Date:   Fri Jun 6 09:37:07 2014 -0500

    PowerPC: Fix optimized strncat strlen call
    
    This patch fixes the optimized ppc64/power7 strncat strlen call for
    static build without ifunc enabled.  The strlen symbol to call in such
    situation is just strlen, instead of __GI_strlen (since the __GI_
    alias is just created for shared objects).
    
    It is a backport of ed36bfa18faf9be457575568e64b8409e46caa22.

https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=6f0aba1acab171bd853905b66c551336aa0adcf9

commit 6f0aba1acab171bd853905b66c551336aa0adcf9
Author: Adhemerval Zanella <azanella@linux.vnet.ibm.com>
Date:   Tue Apr 8 17:25:14 2014 -0500

    PowerPC: Fix --disable-multi-arch builds
    
    This patch fixes some powerpc32 and powerpc64 builds with
    --disable-multi-arch option along with different --with-cpu=powerN.
    It cleanups the Implies directories by removing the multiarch
    folder for non multiarch config and also fixing two assembly
    implementations: powerpc64/power7/strncat.S that is calling the
    wrong strlen; and power8/fpu/s_isnan.S that misses the hidden_def and
    weak_alias directives.
    
    It is a backport of de21c33c068c8e39afb5711613a7c083c11ce6a1.

https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=e40df8c4677611afc48601472675593dfd087e4b

commit e40df8c4677611afc48601472675593dfd087e4b
Author: Adhemerval Zanella <azanella@linux.vnet.ibm.com>
Date:   Thu May 22 14:48:38 2014 -0500

    PowerPC: Remove 64 bits instructions in PPC32 code
    
    This patch replaces the insrdi by insrwi in powerpc32 assembly.
    
    It is a backport of d298c41635ce7f2dc7c3eccc842fe3aa754c0c8e.

https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=a448439dfffc0878121e0941be9717e05786b1fe

commit a448439dfffc0878121e0941be9717e05786b1fe
Author: Adhemerval Zanella <azanella@linux.vnet.ibm.com>
Date:   Thu May 22 07:53:44 2014 -0500

    PowerPC: Fix memchr ifunc hidden symbol for PPC32
    
    This patch fixes a similar issue to
    736c304a1ab4cee36a2f3343f1698bc0abae4608, where for PPC32 if the symbol
    is defined as hidden (memchr) then compiler will create a local branc
    (symbol@local) and the linker will not create a required PLT call to
    make the ifunc work.  It changes the default hidden symbol (__GI_memchr)
    to default memchr symbol for powerpc32 (__memchr_ppc32).
    
    Backport of 3d2badacf185fac740a2992240a817fb2ca325af.

https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=c725f80591aa98c5c0270feb80e857c5943c861a

commit c725f80591aa98c5c0270feb80e857c5943c861a
Author: Adhemerval Zanella <azanella@linux.vnet.ibm.com>
Date:   Mon May 19 17:56:55 2014 -0500

    PowerPC: Fix multiarch hypotf PPC64 path
    
    This patch moves the hypotf multiarch implementation to correct path.

https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=1db8c8c873e6112ee4ecddf1eff54f4abaab91a7

commit 1db8c8c873e6112ee4ecddf1eff54f4abaab91a7
Author: Vidya Ranganathan <vidya@linux.vnet.ibm.com>
Date:   Mon May 5 19:10:45 2014 -0500

    PowerPC: strncpy/stpncpy optimization for PPC64/POWER7
    
    The optimization is achieved by following techniques:
      > data alignment [gain from aligned memory access on read/write]
      > POWER7 gains performance with loop unrolling/unwinding
        [gain by reduction of branch penalty].
      > zero padding done by calling optimized memset

https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=08111251bbd7275024d9c945f442f61b06d98910

commit 08111251bbd7275024d9c945f442f61b06d98910
Author: Adhemerval Zanella <azanella@linux.vnet.ibm.com>
Date:   Fri May 2 12:00:36 2014 -0500

    PowerPC: ifunc improvement for internal calls
    
    This patch changes de default symbol redirection for internal call of
    memcpy, memset, memchr, and strlen to the IFUNC resolved ones.  The
    performance improvement is noticeable in algorithms that uses these
    symbols extensible, like the regex functions.
    
    This is a backport of 19c4bec0f43599eecc2f32de96ae179cd7d64053.

https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=a8050d789589b73e7908b806d5c929facf76cc6b

commit a8050d789589b73e7908b806d5c929facf76cc6b
Author: Alan Modra <amodra@gmail.com>
Date:   Wed Apr 16 19:33:32 2014 +0930

    Correct IBM long double frexpl.
    
    Besides fixing the bugzilla, this also fixes corner-cases where the high
    and low double differ greatly in magnitude, and handles a denormal
    input without resorting to a fp rescale.
    
    	[BZ #16740]
    	[BZ #16619]
    	* sysdeps/ieee754/ldbl-128ibm/s_frexpl.c (__frexpl): Rewrite.
    	* math/libm-test.inc (frexp_test_data): Add tests.
    
    Backport of aa5f0ff11ad2cc85277c64cf65c723a9664e1149 and
    9860b0450275ad2b69cb9360fd01d5c122a65fc5.

https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=154d4d95f48061d5ab890c85b6015221c1accc6e

commit 154d4d95f48061d5ab890c85b6015221c1accc6e
Author: Adhemerval Zanella <azanella@linux.vnet.ibm.com>
Date:   Sun Apr 6 14:50:11 2014 -0500

    PowerPC: Fix nearbyint/nearbyintf result for FE_DOWNWARD
    
    This patch fixes the powerpc32 optimized nearbyint/nearbyintf bogus
    results for FE_DOWNWARD rounding mode.  This is due wrong instructions
    sequence used in the rounding calculation (two subtractions instead of
    adition and a subtraction).
    
    Fixes BZ#16815.
    
    Backport of 8bd70862e11023e7f827f240a5a214f847ae982d.

https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=e266b71770050a4d0cb276f4afea1c5b05215184

commit e266b71770050a4d0cb276f4afea1c5b05215184
Author: Alan Modra <amodra@gmail.com>
Date:   Wed Apr 2 13:46:19 2014 +1030

    Correct IBM long double nextafterl.
    
    Fix for values near a power of two, and some tidies.
    
    	[BZ #16739]
    	* sysdeps/ieee754/ldbl-128ibm/s_nextafterl.c (__nextafterl): Correct
    	output when value is near a power of two.  Use int64_t for lx and
    	remove casts.  Use decimal rather than hex exponent constants.
    	Don't use long double multiplication when double will suffice.
    	* math/libm-test.inc (nextafter_test_data): Add tests.
    	* NEWS: Add 16739 and 16786 to bug list.
    
    Backport of b0abbc21034f0e5edc49023d8fda0616173faf17.

https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=b23fc92895aff0ce3d3134a91adaa253bffd187a

commit b23fc92895aff0ce3d3134a91adaa253bffd187a
Author: Alan Modra <amodra@gmail.com>
Date:   Wed Apr 2 13:42:27 2014 +1030

    Correct prefetch hint in power7 memrchr.
    
    Typo fix.
    
    	* sysdeps/powerpc/powerpc64/power7/memrchr.S: Correct stream hint.
    
    Backport of af6b17973cbc07ac06cfb40eeab5cc2391fb489a.

https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=acd56f757b4e5ab8737b9564bd7a4ad1009acd8d

commit acd56f757b4e5ab8737b9564bd7a4ad1009acd8d
Author: Alan Modra <amodra@gmail.com>
Date:   Wed Apr 2 13:40:21 2014 +1030

    Fix reference to toc symbol.
    
    https://sourceware.org/ml/binutils/2014-03/msg00033.html removes the
    "magic" treatment of symbols defined in a .toc section.
    
    	* sysdeps/powerpc/powerpc64/start.S: Add @toc to toc symbol reference.
    
    Backport of 483818d768ed99a5edf4114298a75ebedaee8d5c.

https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=fd5100c480beef3d36c4bf74b6a23529695d036c

commit fd5100c480beef3d36c4bf74b6a23529695d036c
Author: Alan Modra <amodra@gmail.com>
Date:   Tue Apr 1 14:07:42 2014 +1030

    Fix s_copysign stack temp for PowerPC64 ELFv2
    
    	[BZ #16786]
    	* sysdeps/powerpc/powerpc64/fpu/s_copysign.S: Don't trash stack.
    
    Backport of c859b32e9d76afe8a3f20bb9528961a573c06937.

https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=a51aafa398ed7dd2a0a846c1b2ed8a37909609eb

commit a51aafa398ed7dd2a0a846c1b2ed8a37909609eb
Author: Adhemerval Zanella <azanella@linux.vnet.ibm.com>
Date:   Mon Mar 31 08:07:55 2014 -0500

    PowerPC: Fix little endian enconding for mfvsrd
    
    This patch fixes the MFVSRD_R3_V1 macro that encodes 'mfvsrd  r3,vs1'
    (to support old binutils) for little endian.
    
    Backport of 757d9dd5c3efa56fac75965abc014faaae7b7895.

https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=62caa3eed2a154a61a01df3a5f3dde3ff400f4d4

commit 62caa3eed2a154a61a01df3a5f3dde3ff400f4d4
Author: Adhemerval Zanella <azanella@linux.vnet.ibm.com>
Date:   Thu Mar 20 15:28:07 2014 -0500

    PowerPC: optimized strpbrk for POWER7
    
    This patch add an optimized strpbrk for POWER7 by using a different
    algorithm than default implementation: it constructs a table based on
    the 'accept' argument and use this table to check for any occurance on
    the input string. The idea is similar as x86_64 uses.
    For PowerPC some tunings were added, such as unroll loops and memory
    clear using VSX instructions.
    
    Backport of 6f23d0939e9651d8ac3c77a835fb6464b35a1dc4

https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=c0afc58657f482f4c31ccade06e7b059e761186c

commit c0afc58657f482f4c31ccade06e7b059e761186c
Author: Adhemerval Zanella <azanella@linux.vnet.ibm.com>
Date:   Thu Mar 20 11:24:52 2014 -0500

    PowerPC: optimized strcspn for PPC64/POWER7
    
    This patch add a optimized strcspn for POWER7 by using a different
    algorithm than default implementation: it constructs a table based on
    the 'accept' argument and use this table to check for any occurance
    on the input string. The idea is similar as x86_64 uses.
    For PowerPC some tunings were added, such as unroll loops and align
    stack memory to table to 16 bytes (so VSX clean can ran without
    alignment issues).
    
    Backport of 6eaf95cbfa0031ea267682dc2c9c17ed3e3dc167

https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=ac6d8452be2d582e4a2b14525c839c71b9351991

commit ac6d8452be2d582e4a2b14525c839c71b9351991
Author: Adhemerval Zanella <azanella@linux.vnet.ibm.com>
Date:   Fri Mar 14 12:49:45 2014 -0500

    PowerPC: remove wrong roundl implementation for PowerPC64
    
    The roundl assembly implementation
    (sysdeps/powerpc/powerpc64/fpu/s_roundl.S)
    returns wrong results for some inputs where first double is a exact
    integer and the precision is determined by second long double.
    
    Checking on implementation comments and history, I am very confident the
    assembly implementation was based on a version before commit
    5c68d401698a58cf7da150d9cce769fa6679ba5f that fixes BZ#2423 (Errors in
    long double (ldbl-128ibm) rounding functions in glibc-2.4).
    
    By just removing the implementation and make the build select
    sysdeps/ieee754/ldbl-128ibm/s_roundl.c instead fixes the failing math.
    
    This fixes 16707.
    
    Backport of c7de50250367167d8c9f35594b264f6a0af8dd0c

https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=c5ac422010eb6b384c3b4e45ab0049172f0ad688

commit c5ac422010eb6b384c3b4e45ab0049172f0ad688
Author: Adhemerval Zanella <azanella@linux.vnet.ibm.com>
Date:   Fri Mar 14 12:27:52 2014 -0500

    PowerPC: remove wrong nearbyintl implementation for PPC64
    
    The nearbyintl assembly implementation
    (sysdeps/powerpc/powerpc64/fpu/s_nearbyintl.S)
    returns wrong results for some inputs where first double is a exact
    integer and the precision is determined by second long double.
    
    Checking on implementation comments and history, I am very confident the
    assembly implementation was based on a version before commit
    5c68d401698a58cf7da150d9cce769fa6679ba5f that fixes BZ#2423 (Errors in
    long double (ldbl-128ibm) rounding functions in glibc-2.4).
    
    By just removing the implementation and make the build select
    sysdeps/ieee754/ldbl-128ibm/s_nearbyintl.c instead fixes the failing
    math.
    
    Fixes BZ#16706.
    
    Backport of 98fb27a373f37554232e0060eef1a5bb00a07eb0

https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=7986a2d12b7ea0653f0366200c703a3905edffd9

commit 7986a2d12b7ea0653f0366200c703a3905edffd9
Author: Adhemerval Zanella <azanella@linux.vnet.ibm.com>
Date:   Fri Mar 14 07:35:43 2014 -0500

    PowerPC: remove wrong ceill implementation for PowerPC64
    
    The ceill assembly implementation (sysdeps/powerpc/powerpc64/fpu/s_ceill.S)
    returns wrong results for some inputs where first double is a exact
    integer and the precision is determined by second long double.
    
    Checking on implementation comments and history, I am very confident the
    assembly implementation was based on a version before commit
    5c68d401698a58cf7da150d9cce769fa6679ba5f that fixes BZ#2423 (Errors in
    long double (ldbl-128ibm) rounding functions in glibc-2.4).
    
    By just removing the implementation and make the build select
    sysdeps/ieee754/ldbl-128ibm/s_ceill.c instead fixes the failing math.
    
    Fixes BZ#16701.
    
    Backport of 374f7f61214967bb4e2257695aeeeecc2a77f369

https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=a56198dbb21767bde0003d3062d5ec7a8e1279f1

commit a56198dbb21767bde0003d3062d5ec7a8e1279f1
Author: Adhemerval Zanella <azanella@linux.vnet.ibm.com>
Date:   Fri Mar 14 12:15:40 2014 -0500

    Add truncl tests related to BZ#16414
    
    Backport of 4655c291d1808c35b7c54236ae62be7a3aaa0a2d

https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=a52b3f7e4c4de8705370adda4b390293780dc768

commit a52b3f7e4c4de8705370adda4b390293780dc768
Author: Adhemerval Zanella <azanella@linux.vnet.ibm.com>
Date:   Wed Mar 12 08:55:50 2014 -0500

    PowerPC: Fix bzero definition for static libc for PPC32
    
    This patch fixes an issue for powerpc32-fpu static build which fails
    with an 'bzero' undefined reference. This patch adds bzero ifunc selector
    for static builds and fixes the '__bzero_ppc' reference to default
    memset symbol (since static memset build does not provide ifunc
    selector).
    
    Fixes BZ#16689.
    
    Backport of dd3946c615184e1957a0cb09352cac72be5d6d5b.

https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=09e09c2872ab52c8a42b907105343520019ca1d1

commit 09e09c2872ab52c8a42b907105343520019ca1d1
Author: Adhemerval Zanella <azanella@linux.vnet.ibm.com>
Date:   Tue Mar 11 16:17:50 2014 -0500

    PowerPC: Fix strspn for static build
    
    This patch makes the strspn ifunc selector build for static builds.
    
    This is a backport of 27c7220a483bda576533aa9a0a9b42175644b1a1

https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=f510d35c58d16c32ce988d053c9a525b8e38fe47

commit f510d35c58d16c32ce988d053c9a525b8e38fe47
Author: Adhemerval Zanella <azanella@linux.vnet.ibm.com>
Date:   Mon Mar 10 15:26:20 2014 -0500

    PowerPC: Fix bzero definition for static libc for PPC64
    
    This patch fixes an issue for powerpc64[le] static build where __bzero
    is definied in multiple places (memset-ppc64.o and bzero.o). It is now
    defined only in bzero.o and memset-ppc64.o only defined __bzero_ppc for
    both dynamic and static library.
    
    Fixes BZ#16683.
    
    Backport of 4facea473059914983b7da8dd654c06b8e3dcc41

https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=afd75351c2f3cae4a2daf88c50faad889e3a0f2b

commit afd75351c2f3cae4a2daf88c50faad889e3a0f2b
Author: Vidya Ranganathan <vidya@linux.vnet.ibm.com>
Date:   Mon Mar 10 12:20:36 2014 -0400

    PowerPC: strspn optimization for PPC64/POWER7
    
    The optimization is achieved by following techniques:
      > hashing of needle.
      > hashing avoids scanning of duplicate entries in needle across the string.
      > initializing the hash table with Vector instructions (VSX) by quadword access.
      > unrolling when scanning for character in string across hash table.

https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=e5829d82c88117c9f4752cedfefc8516cb9ffdf7

commit e5829d82c88117c9f4752cedfefc8516cb9ffdf7
Author: Adhemerval Zanella <azanella@linux.vnet.ibm.com>
Date:   Fri Mar 7 06:09:47 2014 -0600

    PowerPC: strncat optimization for PPC64
    
    The optimization is achieved by following techniques:
    1. Doubleword aligned memory access and compares using
       cmpb instruction.
    2. Loop unrolling for byte load/store.
    3. CPU pre-fetch to avoid cache miss.
    
    Backport of ba9cc0714e58a9e8fa73cf6b0e205cbf1e6b71f2

https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=e032058ea756e396c4ed1395a44d8b321e370b2f

commit e032058ea756e396c4ed1395a44d8b321e370b2f
Author: Rajalakshmi Srinivasaraghavan <raji@linux.vnet.ibm.com>
Date:   Mon Mar 3 08:06:41 2014 -0600

    PowerPC: strrchr optimization for POWER7/PPC64
    
    This patch optimizes strrchr() for ppc64. It uses aligned memory
    access along with cmpb instruction and CPU prefetch to avoid
    cache misses for speed improvement.
    
    Backport of c7debbdfacbef150aaf9113eb05ccaf2b9e7af6c

https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=54dd35c59cda5f59c2f3ae783468da4b94f30dff

commit 54dd35c59cda5f59c2f3ae783468da4b94f30dff
Author: Adhemerval Zanella <azanella@linux.vnet.ibm.com>
Date:   Mon Feb 17 10:44:08 2014 -0600

    PowerPC: llround/llroundf POWER8 optimization
    
    This patch add a optimized llround/llroundf implementation for POWER8
    using the new Move From VSR Doubleword instruction to gains some
    cycles from FP to GRP register move.
    
    Backport fe13a20c37578f08ce393ccaeb45caeb48815ca5

https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=b34f8e9fcd1274e69a9a59a28c270e2cada39c95

commit b34f8e9fcd1274e69a9a59a28c270e2cada39c95
Author: Adhemerval Zanella <azanella@linux.vnet.ibm.com>
Date:   Tue Feb 18 09:29:29 2014 -0500

    PowerPC: llrint/llrintf POWER8 optimization
    
    This patch add a optimized llrint/llrintf implementation for POWER8
    using the new Move From VSR Doubleword instruction to gains some
    cycles from FP to GRP register move.
    
    Backport of 1ad8950a3ea4056ed343d681b5146f4b4aa27e10

https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=c3241bcd73c47d2bcd2a5ffe84a21d4853c8c938

commit c3241bcd73c47d2bcd2a5ffe84a21d4853c8c938
Author: Adhemerval Zanella <azanella@linux.vnet.ibm.com>
Date:   Thu Feb 27 09:46:46 2014 -0600

    PowerPC: Optimized finite/finitef for POWER8
    
    This patch add a optimized finite/finitef implementation for POWER8
    using the new Move From VSR Doubleword instruction to gains some
    cycles from FP to GRP register move.
    
    Backport of cac626d60a863e48ab75417064984769e58c5719.

https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=1cd3b05dda2dab30cb7658193cb1af8f594f52f3

commit 1cd3b05dda2dab30cb7658193cb1af8f594f52f3
Author: Adhemerval Zanella <azanella@linux.vnet.ibm.com>
Date:   Thu Feb 27 09:45:41 2014 -0600

    PowerPC: Optimized isinf/isinff for POWER8
    
    This patch add a optimized isinf/isinff implementation for POWER8
    using the new Move From VSR Doubleword instruction to gains some
    cycles from FP to GRP register move.
    
    Backport of 4393fc119c34e97519b9b7a4fc94066b283be452

https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=65c8daedb68b74eae860f91dca226215cd80e348

commit 65c8daedb68b74eae860f91dca226215cd80e348
Author: Adhemerval Zanella <azanella@linux.vnet.ibm.com>
Date:   Thu Feb 27 09:43:51 2014 -0600

    PowerPC: Optimized isnan/isnanf for POWER8
    
    This patch add a optimized isnan/isnanf implementation for POWER8
    using the new Move From VSR Doubleword instruction to gains some
    cycles from FP to GRP register move.
    
    Backport of 487972aea52004f604c2878c8c9d3e77670f2c32

https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=55e71ccf31c29a7839344f03e0a7437ea0f5f211

commit 55e71ccf31c29a7839344f03e0a7437ea0f5f211
Author: Tulio Magno Quites Machado Filho <tuliom@linux.vnet.ibm.com>
Date:   Fri Nov 15 07:44:20 2013 -0600

    Partially revert commit 2663b74f8103a2a8a46b4896439b7a452480fc7c
    
    This change is necessary in order to avoid the issue documented at
    http://sourceware.org/ml/libc-alpha/2013-05/msg00350.html.

https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=fbed4f13980bf4ebd7df59b0e52bd2a16875f0db

commit fbed4f13980bf4ebd7df59b0e52bd2a16875f0db
Author: Ryan S. Arnold <rsa@linux.vnet.ibm.com>
Date:   Fri Nov 15 07:42:33 2013 -0600

    Remove assert() if DT_RUNPATH and DT_RPATH flags are found in ld.so.

-----------------------------------------------------------------------