Skip to content
Permalink
Branch: master
Commits on Mar 29, 2016
  1. nss_db: Propagate ERANGE error if parse_line fails [BZ #19837]

    Florian Weimer
    Florian Weimer committed Mar 29, 2016
    Reproducer (needs to run as root):
    
    perl -e \
      'print "large999:" . join(",", map {"user$_"} (1 .. 135))."\n"' \
      >> /etc/group
    cd /var/db
    make
    getent -s db group
    
    After the fix, the last command should list the "large" group.
    
    The magic number 135 has been chosen so that the line is shorter than
    1024 bytes, but the pointers required to encode the member array will
    cross the threshold, triggering the bug.
  2. Initial Enhanced REP MOVSB/STOSB (ERMS) support

    H.J. Lu
    H.J. Lu committed Mar 29, 2016
    The newer Intel processors support Enhanced REP MOVSB/STOSB (ERMS) which
    has a feature bit in CPUID.  This patch adds the Enhanced REP MOVSB/STOSB
    (ERMS) bit to x86 cpu-features.
    
    	* sysdeps/x86/cpu-features.h (bit_cpu_ERMS): New.
    	(index_cpu_ERMS): Likewise.
    	(reg_ERMS): Likewise.
Commits on Mar 28, 2016
  1. Synchronize <sys/personality.h> with kernel headers

    Aurelien Jarno
    Aurelien Jarno committed Mar 28, 2016
    <sys/personality.h> is out of sync with kernel headers, missing the
    UNAME26, FDPIC_FUNCPTRS and PER_LINUX_FDPIC entries. Fix that.
    
    Changelog:
    	* sysdeps/unix/sysv/linux/sys/personality.h (UNAME26, FDPIC_FUNCPTRS,
    	PER_LINUX_FDPIC): Add.
  2. Make __memcpy_avx512_no_vzeroupper an alias

    H.J. Lu
    H.J. Lu committed Mar 28, 2016
    Since x86-64 memcpy-avx512-no-vzeroupper.S implements memmove, make
    __memcpy_avx512_no_vzeroupper an alias of __memmove_avx512_no_vzeroupper
    to reduce code size of libc.so.
    
    	* sysdeps/x86_64/multiarch/Makefile (sysdep_routines): Remove
    	memcpy-avx512-no-vzeroupper.
    	* sysdeps/x86_64/multiarch/memcpy-avx512-no-vzeroupper.S: Renamed
    	to ...
    	* sysdeps/x86_64/multiarch/memmove-avx512-no-vzeroupper.S: This.
    	(MEMCPY): Don't define.
    	(MEMCPY_CHK): Likewise.
    	(MEMPCPY): Likewise.
    	(MEMPCPY_CHK): Likewise.
    	(MEMPCPY_CHK): Renamed to ...
    	(__mempcpy_chk_avx512_no_vzeroupper): This.
    	(MEMPCPY_CHK): Renamed to ...
    	(__mempcpy_chk_avx512_no_vzeroupper): This.
    	(MEMCPY_CHK): Renamed to ...
    	(__memmove_chk_avx512_no_vzeroupper): This.
    	(MEMCPY): Renamed to ...
    	(__memmove_avx512_no_vzeroupper): This.
    	(__memcpy_avx512_no_vzeroupper): New alias.
    	(__memcpy_chk_avx512_no_vzeroupper): Likewise.
  3. Implement x86-64 multiarch mempcpy in memcpy

    H.J. Lu
    H.J. Lu committed Mar 28, 2016
    Implement x86-64 multiarch mempcpy in memcpy to share most of code.  It
    reduces code size of libc.so.
    
    	[BZ #18858]
    	* sysdeps/x86_64/multiarch/Makefile (sysdep_routines): Remove
    	mempcpy-ssse3, mempcpy-ssse3-back, mempcpy-avx-unaligned
    	and mempcpy-avx512-no-vzeroupper.
    	* sysdeps/x86_64/multiarch/memcpy-avx-unaligned.S (MEMPCPY_CHK):
    	New.
    	(MEMPCPY): Likewise.
    	* sysdeps/x86_64/multiarch/memcpy-avx512-no-vzeroupper.S
    	(MEMPCPY_CHK): New.
    	(MEMPCPY): Likewise.
    	* sysdeps/x86_64/multiarch/memcpy-ssse3-back.S (MEMPCPY_CHK): New.
    	(MEMPCPY): Likewise.
    	* sysdeps/x86_64/multiarch/memcpy-ssse3.S (MEMPCPY_CHK): New.
    	(MEMPCPY): Likewise.
    	* sysdeps/x86_64/multiarch/mempcpy-avx-unaligned.S: Removed.
    	* sysdeps/x86_64/multiarch/mempcpy-avx512-no-vzeroupper.S:
    	Likewise.
    	* sysdeps/x86_64/multiarch/mempcpy-ssse3-back.S: Likewise.
    	* sysdeps/x86_64/multiarch/mempcpy-ssse3.S: Likewise.
  4. [x86] Add a feature bit: Fast_Unaligned_Copy

    H.J. Lu
    H.J. Lu committed Mar 28, 2016
    On AMD processors, memcpy optimized with unaligned SSE load is
    slower than emcpy optimized with aligned SSSE3 while other string
    functions are faster with unaligned SSE load.  A feature bit,
    Fast_Unaligned_Copy, is added to select memcpy optimized with
    unaligned SSE load.
    
    	[BZ #19583]
    	* sysdeps/x86/cpu-features.c (init_cpu_features): Set
    	Fast_Unaligned_Copy with Fast_Unaligned_Load for Intel
    	processors.  Set Fast_Copy_Backward for AMD Excavator
    	processors.
    	* sysdeps/x86/cpu-features.h (bit_arch_Fast_Unaligned_Copy):
    	New.
    	(index_arch_Fast_Unaligned_Copy): Likewise.
    	* sysdeps/x86_64/multiarch/memcpy.S (__new_memcpy): Check
    	Fast_Unaligned_Copy instead of Fast_Unaligned_Load.
Commits on Mar 25, 2016
  1. resolv: Always set *resplen2 out parameter in send_dg [BZ #19791]

    Florian Weimer
    Florian Weimer committed Mar 25, 2016
    Since commit 44d20bc (Implement
    second fallback mode for DNS requests), there is a code path which
    returns early, before *resplen2 is initialized.  This happens if the
    name server address is immediately recognized as invalid (because of
    lack of protocol support, or if it is a broadcast address such
    255.255.255.255, or another invalid address).
    
    If this happens and *resplen2 was non-zero (which is the case if a
    previous query resulted in a failure), __libc_res_nquery would reuse
    an existing second answer buffer.  This answer has been previously
    identified as unusable (for example, it could be an NXDOMAIN
    response).  Due to the presence of a second answer, no name server
    switching will occur.  The result is a name resolution failure,
    although a successful resolution would have been possible if name
    servers have been switched and queries had proceeded along the search
    path.
    
    The above paragraph still simplifies the situation.  Before glibc
    2.23, if the second answer needed malloc, the stub resolver would
    still attempt to reuse the second answer, but this is not possible
    because __libc_res_nsearch has freed it, after the unsuccessful call
    to __libc_res_nquerydomain, and set the buffer pointer to NULL.  This
    eventually leads to an assertion failure in __libc_res_nquery:
    
    	/* Make sure both hp and hp2 are defined */
    	assert((hp != NULL) && (hp2 != NULL));
    
    If assertions are disabled, the consequence is a NULL pointer
    dereference on the next line.
    
    Starting with glibc 2.23, as a result of commit
    e9db92d (CVE-2015-7547: getaddrinfo()
    stack-based buffer overflow (Bug 18665)), the second answer is always
    allocated with malloc.  This means that the assertion failure happens
    with small responses as well because there is no buffer to reuse, as
    soon as there is a name resolution failure which triggers a search for
    an answer along the search path.
    
    This commit addresses the issue by ensuring that *resplen2 is
    initialized before the send_dg function returns.
    
    This commit also addresses a bug where an invalid second reply is
    incorrectly returned as a valid to the caller.
  2. tst-audit10: Fix compilation on compilers without bit_AVX512F [BZ #19…

    Florian Weimer
    Florian Weimer committed Mar 25, 2016
    …860]
    
    	[BZ# 19860]
    	* sysdeps/x86_64/tst-audit10.c (avx512_enabled): Always return
    	zero if the compiler does not provide the AVX512F bit.
Commits on Mar 24, 2016
  1. Fix x86_64 / x86 powl inaccuracy for integer exponents (bug 19848).

    Joseph Myers
    Joseph Myers committed Mar 24, 2016
    Bug 19848 reports cases where powl on x86 / x86_64 has error
    accumulation, for small integer exponents, larger than permitted by
    glibc's accuracy goals, at least in some rounding modes.  This patch
    further restricts the exponent range for which the
    small-integer-exponent logic is used to limit the possible error
    accumulation.
    
    Tested for x86_64 and x86 and ulps updated accordingly.
    
    	[BZ #19848]
    	* sysdeps/i386/fpu/e_powl.S (p3): Rename to p2 and change value
    	from 8 to 4.
    	(__ieee754_powl): Compare integer exponent against 4 not 8.
    	* sysdeps/x86_64/fpu/e_powl.S (p3): Rename to p2 and change value
    	from 8 to 4.
    	(__ieee754_powl): Compare integer exponent against 4 not 8.
    	* math/auto-libm-test-in: Add more tests of pow.
    	* math/auto-libm-test-out: Regenerated.
    	* sysdeps/i386/i686/fpu/multiarch/libm-test-ulps: Update.
    	* sysdeps/x86_64/fpu/libm-test-ulps: Likewise.
Commits on Mar 23, 2016
  1. Assume __NR_utimensat is always defined

    Aurelien Jarno
    Aurelien Jarno committed Mar 23, 2016
    With the 2.6.32 minimum kernel on x86 and 3.2 on other architectures,
    __NR_utimensat is always defined.
    
    Changelog:
    	* sysdeps/unix/sysv/linux/futimens.c (futimens) [__NR_utimensat]:
    	Make code unconditional.
    	[!__NR_utimensat]: Remove conditional code.
    	* sysdeps/unix/sysv/linux/lutimes.c (lutimes) [__NR_utimensat]:
    	Make code unconditional.
    	[!__NR_utimensat]: Remove conditional code.
    	* sysdeps/unix/sysv/linux/utimensat.c (utimensat) [__NR_utimensat]:
    	Make code unconditional.
    	[!__NR_utimensat]: Remove conditional code.
  2. Assume __NR_openat is always defined

    Aurelien Jarno
    Aurelien Jarno committed Mar 23, 2016
    With the 2.6.32 minimum kernel on x86 and 3.2 on other architectures,
    __NR_openat is always defined.
    
    Changelog:
    	* sysdeps/unix/sysv/linux/dl-openat64.c (openat64) [__NR_openat]:
    	Make code unconditional.
  3. x86, pthread_cond_*wait: Do not depend on %eax not being clobbered

    Nick Alcock Florian Weimer
    Nick Alcock authored and Florian Weimer committed Mar 23, 2016
    The x86-specific versions of both pthread_cond_wait and
    pthread_cond_timedwait have (in their fall-back-to-futex-wait slow
    paths) calls to __pthread_mutex_cond_lock_adjust followed by
    __pthread_mutex_unlock_usercnt, which load the parameters before the
    first call but then assume that the first parameter, in %eax, will
    survive unaffected.  This happens to have been true before now, but %eax
    is a call-clobbered register, and this assumption is not safe: it could
    change at any time, at GCC's whim, and indeed the stack-protector canary
    checking code clobbers %eax while checking that the canary is
    uncorrupted.
    
    So reload %eax before calling __pthread_mutex_unlock_usercnt.  (Do this
    unconditionally, even when stack-protection is not in use, because it's
    the right thing to do, it's a slow path, and anything else is dicing
    with death.)
    
    	* sysdeps/unix/sysv/linux/i386/pthread_cond_timedwait.S: Reload
    	call-clobbered %eax on retry path.
    	* sysdeps/unix/sysv/linux/i386/pthread_cond_wait.S: Likewise.
Commits on Mar 22, 2016
  1. Don't set %rcx twice before "rep movsb"

    H.J. Lu
    H.J. Lu committed Mar 22, 2016
    	* sysdeps/x86_64/multiarch/memcpy-avx-unaligned.S (MEMCPY):
    	Don't set %rcx twice before "rep movsb".
  2. Set index_arch_AVX_Fast_Unaligned_Load only for Intel processors

    H.J. Lu
    H.J. Lu committed Mar 22, 2016
    Since only Intel processors with AVX2 have fast unaligned load, we
    should set index_arch_AVX_Fast_Unaligned_Load only for Intel processors.
    
    Move AVX, AVX2, AVX512, FMA and FMA4 detection into get_common_indeces
    and call get_common_indeces for other processors.
    
    Add CPU_FEATURES_CPU_P and CPU_FEATURES_ARCH_P to aoid loading
    GLRO(dl_x86_cpu_features) in cpu-features.c.
    
    	[BZ #19583]
    	* sysdeps/x86/cpu-features.c (get_common_indeces): Remove
    	inline.  Check family before setting family, model and
    	extended_model.  Set AVX, AVX2, AVX512, FMA and FMA4 usable
    	bits here.
    	(init_cpu_features): Replace HAS_CPU_FEATURE and
    	HAS_ARCH_FEATURE with CPU_FEATURES_CPU_P and
    	CPU_FEATURES_ARCH_P.  Set index_arch_AVX_Fast_Unaligned_Load
    	for Intel processors with usable AVX2.  Call get_common_indeces
    	for other processors with family == NULL.
    	* sysdeps/x86/cpu-features.h (CPU_FEATURES_CPU_P): New macro.
    	(CPU_FEATURES_ARCH_P): Likewise.
    	(HAS_CPU_FEATURE): Use CPU_FEATURES_CPU_P.
    	(HAS_ARCH_FEATURE): Use CPU_FEATURES_ARCH_P.
  3. Fix malloc threaded tests link on non-Linux

    Samuel Thibault
    Samuel Thibault committed Mar 22, 2016
    	* malloc/Makefile ($(objpfx)tst-malloc-backtrace,
    	$(objpfx)tst-malloc-thread-exit, $(objpfx)tst-malloc-thread-fail): Use
    	$(shared-thread-library) instead of hardcoding the path to libpthread.
  4. Remove __ASSUME_GETDENTS64_SYSCALL.

    Joseph Myers
    Joseph Myers committed Mar 22, 2016
    This patch removes the __ASSUME_GETDENTS64_SYSCALL macro, as its
    definition is constant given the new kernel version requirements (and
    was constant anyway before those requirements except for MIPS n32).
    
    Note that the "#ifdef __NR_getdents64" conditional *is* still needed,
    because MIPS n64 only has the getdents syscall (being a 64-bit ABI,
    that syscall is 64-bit; the difference between the two on 64-bit
    architectures is where d_type goes).  If MIPS n64 were to gain the
    getdents64 syscall and we wanted to use it conditionally on the kernel
    version at runtime we'd have to revert this patch, but I think that's
    unlikely (and in any case, we could follow the simpler approach of
    undefining __NR_getdents64 if the syscall can't be assumed, just like
    we do for accept4 / recvmmsg / sendmmsg syscalls on architectures
    where socketcall support came first).
    
    Most of the getdents.c changes are reindentation.
    
    Tested for x86_64 and x86 that installed stripped shared libraries are
    unchanged by the patch.
    
    	* sysdeps/unix/sysv/linux/kernel-features.h
    	(__ASSUME_GETDENTS64_SYSCALL): Remove macro.
    	* sysdeps/unix/sysv/linux/getdents.c
    	[!__ASSUME_GETDENTS64_SYSCALL]: Remove conditional code.
    	[!have_no_getdents64_defined]: Likewise.
    	(__GETDENTS): Remove __have_no_getdents64 conditional.
Commits on Mar 21, 2016
  1. Remove __ASSUME_SIGNALFD4.

    Joseph Myers
    Joseph Myers committed Mar 21, 2016
    Current Linux kernel version requirements mean the signalfd4 syscall
    can always be assumed to be available.  This patch removes
    __ASSUME_SIGNALFD4 and associated conditionals.
    
    Tested for x86_64 and x86 that installed stripped shared libraries are
    unchanged by the patch.
    
    	* sysdeps/unix/sysv/linux/kernel-features.h (__ASSUME_SIGNALFD4):
    	Remove macro.
    	* sysdeps/unix/sysv/linux/signalfd.c: Do not include
    	<kernel-features.h>.
    	(signalfd) [__NR_signalfd4]: Make code unconditional.
    	(signalfd) [!__ASSUME_SIGNALFD4]: Remove conditional code.
  2. posix: Fix posix_spawn implict check style

    Adhemerval Zanella
    Adhemerval Zanella committed Mar 21, 2016
    This patch fixes the implicit check style add in 2a69f85 for the
    general convention one.
    
    Checked on x86_64.
    
    	* sysdeps/unix/sysv/linux/spawni.c (__spawnix): Fix implict checks
    	style.
  3. Use JUMPTARGET in x86-64 pthread

    H.J. Lu
    H.J. Lu committed Mar 21, 2016
    When PLT may be used, JUMPTARGET should be used instead calling the
    function directly.
    
    	* sysdeps/unix/sysv/linux/x86_64/cancellation.S
    	(__pthread_enable_asynccancel): Use JUMPTARGET to call
    	__pthread_unwind.
    	* sysdeps/unix/sysv/linux/x86_64/pthread_cond_timedwait.S
    	(__condvar_cleanup2): Use JUMPTARGET to call _Unwind_Resume.
    	* sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S
    	(__condvar_cleanup1): Likewise.
  4. localedata: standardize copyright/license information [BZ #11213]

    Mike Frysinger
    Mike Frysinger committed Feb 20, 2016
    Use the language from the FSF in all locale files to disclaim any
    license/copyright on locale data.
    
    See https://sourceware.org/ml/libc-locales/2013-q1/msg00048.html
  5. math: don't clobber old libm.so on install [BZ #19822]

    Dylan Alex Simon Mike Frysinger
    Dylan Alex Simon authored and Mike Frysinger committed Mar 15, 2016
    When installing glibc (w/mathvec enabled) in-place on a system with
    a glibc w/out mathvec enabled, the install will clobber the existing
    libm.so (e.g., /lib64/libm-2.21.so) with a linker script.  This is
    because libm.so is a symlink to libm.so.6 which is a symlink to the
    final libm-2.21.so file.  When the makefile writes the linker script
    directly to libm.so, it gets clobbered.
    
    The simple patch below to math/Makefile fixes this.  It is based on
    the nptl Makefile, which does exactly the same thing in a safer way.
  6. localedata: standardize first few lines

    Mike Frysinger
    Mike Frysinger committed Feb 20, 2016
    Purely a style touchup to make sure the headers all look the same.
Commits on Mar 20, 2016
  1. posix: Fix posix_spawn invalid memory access

    Adhemerval Zanella
    Adhemerval Zanella committed Mar 20, 2016
    Current Linux posix_spawn spawn do not test if the pid argument is
    valid before trying to update it for success case.  This patch fixes
    it.
    
    Tested on x86_64 and i686.
    
    	* sysdeps/unix/sysv/linux/spawni.c (__spawnix): Fix invalid memory
    	access where posix_spawn success and pid argument is null.
    	* posix/tst-spawn.c (do_test): Add posix_spawn null pid argument for
    	success case.
  2. hurd: Add c++-types expected result

    Samuel Thibault
    Samuel Thibault committed Mar 20, 2016
    	* sysdeps/mach/hurd/i386/c++-types.data: New file.
  3. hurd: Allow inlining IO locks

    Samuel Thibault
    Samuel Thibault committed Mar 20, 2016
    	* sysdeps/mach/hurd/libc-lock.h (_IO_lock_inexpensive): Define to 1.
  4. hurd: Do not hide rtld symbols which need to be preempted

    Samuel Thibault
    Samuel Thibault committed Mar 20, 2016
    	* sysdeps/generic/dl-fcntl.h: New file, adds attribute_hidden to __open
    	and __fcntl.
    	* sysdeps/mach/hurd/dl-fcntl.h: New file, adds attribute_hidden to
    	__fcntl only.
    	* include/fcntl.h [IS_IN (rtld)]: Include <dl-fcntl.h> instead of
    	adding attribute_hidden to __open and __fcntl.
  5. Fix mach-syscalls.mk build

    Samuel Thibault
    Samuel Thibault committed Mar 20, 2016
    	* mach/Makefile ($(objpfx)mach-syscalls.mk): Depend on libc-modules.h.
  6. hurd: Break errnos.d / libc-modules.h dependency loop

    Samuel Thibault
    Samuel Thibault committed Mar 20, 2016
    Generating errnos.d does not actually need libc-modules.h.
    
    * sysdeps/mach/hurd/Makefile ($(common-objpfx)errnos.d): Strip
    "-include $(common-objpfx)libc-modules.h" from CPPFLAGS, and do not
    depend on libc-modules.h,
Commits on Mar 17, 2016
  1. Remove __ASSUME_EVENTFD2, move eventfd to syscalls.list.

    Joseph Myers
    Joseph Myers committed Mar 17, 2016
    Given current Linux kernel version requirements, we can assume the
    presence of the eventfd2 syscall.  This means that __ASSUME_EVENTFD2
    can be removed, and a syscalls.list entry suffices for eventfd instead
    of needing a .c file.  This patch implements those changes.
    
    Tested for x86_64 and x86 (not that that means much, given the lack of
    testsuite coverage for eventfd).
    
    	* sysdeps/unix/sysv/linux/kernel-features.h (__ASSUME_EVENTFD2):
    	Remove macro.
    	* sysdeps/unix/sysv/linux/eventfd.c: Remove file.
    	* sysdeps/unix/sysv/linux/syscalls.list (eventfd): New syscall
    	entry.
  2. Remove __ASSUME_FALLOCATE.

    Joseph Myers
    Joseph Myers committed Mar 17, 2016
    Given current Linux kernel version requirements, we can always assume
    the fallocate syscall to be available.  This patch removes
    __ASSUME_FALLOCATE and a test for whether __NR_fallocate is defined.
    
    Tested for x86_64 and x86 that installed stripped shared libraries are
    unchanged by the patch.
    
    	* sysdeps/unix/sysv/linux/kernel-features.h (__ASSUME_FALLOCATE):
    	Remove macro.
    	* sysdeps/unix/sysv/linux/wordsize-64/posix_fallocate.c: Do not
    	include <kernel-features.h>.
    	[!__ASSUME_FALLOCATE]: Remove conditional code.
    	(posix_fallocate) [__NR_fallocate]: Make code unconditional.
Commits on Mar 16, 2016
  1. Use JUMPTARGET in x86-64 mathvec

    H.J. Lu
    H.J. Lu committed Mar 16, 2016
    When PLT may be used, JUMPTARGET should be used instead calling the
    function directly.
    
    	* sysdeps/x86_64/fpu/multiarch/svml_d_cos2_core_sse4.S
    	(_ZGVbN2v_cos_sse4): Use JUMPTARGET to call cos.
    	* sysdeps/x86_64/fpu/multiarch/svml_d_cos4_core_avx2.S
    	(_ZGVdN4v_cos_avx2): Likewise.
    	* sysdeps/x86_64/fpu/multiarch/svml_d_cos8_core_avx512.S
    	(_ZGVdN4v_cos): Likewise.
    	* sysdeps/x86_64/fpu/multiarch/svml_d_exp2_core_sse4.S
    	(_ZGVbN2v_exp_sse4): Use JUMPTARGET to call exp.
    	* sysdeps/x86_64/fpu/multiarch/svml_d_exp4_core_avx2.S
    	(_ZGVdN4v_exp_avx2): Likewise.
    	* sysdeps/x86_64/fpu/multiarch/svml_d_exp8_core_avx512.S
    	(_ZGVdN4v_exp): Likewise.
    	* sysdeps/x86_64/fpu/multiarch/svml_d_log2_core_sse4.S
    	(_ZGVbN2v_log_sse4): Use JUMPTARGET to call log.
    	* sysdeps/x86_64/fpu/multiarch/svml_d_log4_core_avx2.S
    	(_ZGVdN4v_log_avx2): Likewise.
    	* sysdeps/x86_64/fpu/multiarch/svml_d_log8_core_avx512.S
    	(_ZGVdN4v_log): Likewise.
    	* sysdeps/x86_64/fpu/multiarch/svml_d_pow2_core_sse4.S
    	(_ZGVbN2vv_pow_sse4): Use JUMPTARGET to call pow.
    	* sysdeps/x86_64/fpu/multiarch/svml_d_pow4_core_avx2.S
    	(_ZGVdN4vv_pow_avx2): Likewise.
    	* sysdeps/x86_64/fpu/multiarch/svml_d_pow8_core_avx512.S
    	(_ZGVdN4vv_pow): Likewise.
    	* sysdeps/x86_64/fpu/multiarch/svml_d_sin2_core_sse4.S
    	(_ZGVbN2v_sin_sse4): Use JUMPTARGET to call sin.
    	* sysdeps/x86_64/fpu/multiarch/svml_d_sin4_core_avx2.S
    	(_ZGVdN4v_sin_avx2): Likewise.
    	* sysdeps/x86_64/fpu/multiarch/svml_d_sin8_core_avx512.S
    	(_ZGVdN4v_sin): Likewise.
    	* sysdeps/x86_64/fpu/multiarch/svml_d_sincos2_core_sse4.S
    	(_ZGVbN2vvv_sincos_sse4): Use JUMPTARGET to call sin and cos.
    	* sysdeps/x86_64/fpu/multiarch/svml_d_sincos4_core_avx2.S
    	(_ZGVdN4vvv_sincos_avx2): Likewise.
    	* sysdeps/x86_64/fpu/multiarch/svml_d_sincos8_core_avx512.S
    	(_ZGVdN4vvv_sincos): Likewise.
    	* sysdeps/x86_64/fpu/multiarch/svml_s_cosf16_core_avx512.S
    	(_ZGVdN8v_cosf): Use JUMPTARGET to call cosf.
    	* sysdeps/x86_64/fpu/multiarch/svml_s_cosf4_core_sse4.S
    	(_ZGVbN4v_cosf_sse4): Likewise.
    	* sysdeps/x86_64/fpu/multiarch/svml_s_cosf8_core_avx2.S
    	(_ZGVdN8v_cosf_avx2): Likewise.
    	* sysdeps/x86_64/fpu/multiarch/svml_s_expf16_core_avx512.S
    	(_ZGVdN8v_expf): Use JUMPTARGET to call expf.
    	* sysdeps/x86_64/fpu/multiarch/svml_s_expf4_core_sse4.S
    	(_ZGVbN4v_expf_sse4): Likewise.
    	* sysdeps/x86_64/fpu/multiarch/svml_s_expf8_core_avx2.S
    	(_ZGVdN8v_expf_avx2): Likewise.
    	* sysdeps/x86_64/fpu/multiarch/svml_s_logf16_core_avx512.S
    	(_ZGVdN8v_logf): Use JUMPTARGET to call logf.
    	* sysdeps/x86_64/fpu/multiarch/svml_s_logf4_core_sse4.S
    	(_ZGVbN4v_logf_sse4): Likewise.
    	* sysdeps/x86_64/fpu/multiarch/svml_s_logf8_core_avx2.S
    	(_ZGVdN8v_logf_avx2): Likewise.
    	* sysdeps/x86_64/fpu/multiarch/svml_s_powf16_core_avx512.S
    	(_ZGVdN8vv_powf): Use JUMPTARGET to call powf.
    	* sysdeps/x86_64/fpu/multiarch/svml_s_powf4_core_sse4.S
    	(_ZGVbN4vv_powf_sse4): Likewise.
    	* sysdeps/x86_64/fpu/multiarch/svml_s_powf8_core_avx2.S
    	(_ZGVdN8vv_powf_avx2): Likewise.
    	* sysdeps/x86_64/fpu/multiarch/svml_s_sincosf16_core_avx512.S
    	(_ZGVdN8vv_powf): Use JUMPTARGET to call sinf and cosf.
    	* sysdeps/x86_64/fpu/multiarch/svml_s_sincosf4_core_sse4.S
    	(_ZGVbN4vvv_sincosf_sse4): Likewise.
    	* sysdeps/x86_64/fpu/multiarch/svml_s_sincosf8_core_avx2.S
    	(_ZGVdN8vvv_sincosf_avx2): Likewise.
    	* sysdeps/x86_64/fpu/multiarch/svml_s_sinf16_core_avx512.S
    	(_ZGVdN8v_sinf): Use JUMPTARGET to call sinf.
    	* sysdeps/x86_64/fpu/multiarch/svml_s_sinf4_core_sse4.S
    	(_ZGVbN4v_sinf_sse4): Likewise.
    	* sysdeps/x86_64/fpu/multiarch/svml_s_sinf8_core_avx2.S
    	(_ZGVdN8v_sinf_avx2): Likewise.
    	* sysdeps/x86_64/fpu/svml_d_wrapper_impl.h (WRAPPER_IMPL_SSE2):
    	Use JUMPTARGET to call callee.
    	(WRAPPER_IMPL_SSE2_ff): Likewise.
    	(WRAPPER_IMPL_SSE2_fFF): Likewise.
    	(WRAPPER_IMPL_AVX): Likewise.
    	(WRAPPER_IMPL_AVX_ff): Likewise.
    	(WRAPPER_IMPL_AVX_fFF): Likewise.
    	(WRAPPER_IMPL_AVX512): Likewise.
    	(WRAPPER_IMPL_AVX512_ff): Likewise.
    	* sysdeps/x86_64/fpu/svml_s_wrapper_impl.h (WRAPPER_IMPL_SSE2):
    	Likewise.
    	(WRAPPER_IMPL_SSE2_ff): Likewise.
    	(WRAPPER_IMPL_SSE2_fFF): Likewise.
    	(WRAPPER_IMPL_AVX): Likewise.
    	(WRAPPER_IMPL_AVX_ff): Likewise.
    	(WRAPPER_IMPL_AVX_fFF): Likewise.
    	(WRAPPER_IMPL_AVX512): Likewise.
    	(WRAPPER_IMPL_AVX512_ff): Likewise.
    	(WRAPPER_IMPL_AVX512_fFF): Likewise.
  2. add ChangeLog entry

    Mike Frysinger
    Mike Frysinger committed Mar 16, 2016
  3. localedata: use same comment_char/escape_char in these files

    Mike Frysinger
    Mike Frysinger committed Feb 20, 2016
    These files are small and easy to convert to what most others use.
  4. localedata: an_ES: fix case of lang_ab

    Carlos O'Donell Mike Frysinger
    Carlos O'Donell authored and Mike Frysinger committed Mar 16, 2016
    This needs to be lowercase to match the local ISO 639 database.
  5. Fix hurd build

    Samuel Thibault
    Samuel Thibault committed Mar 16, 2016
    	* sysdeps/mach/hurd/openat.c (__openat): Add missing ellipsis.
    	* resolv/gai_sigqueue.c (__gai_sigqueue): Add missing internal_function
    	qualifier.
    	* /rt/aio_sigqueue.c (__aio_sigqueue): Add missing attribute_hidden
    	internal_function qualifiers.
You can’t perform that action at this time.