2017-10-03 H.J. Lu * sysdeps/i386/dl-machine.h (elf_machine_load_address): Don't allow undefined _DYNAMIC in PIE libc.a. * sysdeps/x86_64/dl-machine.h (elf_machine_load_address): Likewse. 2017-10-03 H.J. Lu * sysdeps/mips/dl-machine.h (elf_machine_load_address): Don't check _DYNAMIC. 2017-10-03 H.J. Lu * sysdeps/arm/dl-machine.h (elf_machine_load_address): Don't check _DYNAMIC. 2017-10-03 H.J. Lu * math/test-math-iscanonical.cc (error): Replace bool with int. 2017-10-03 Joseph Myers * sysdeps/ieee754/dbl-64/s_modf.c: Include . (modf): Define using libm_alias_double, only if [!__modf]. * sysdeps/ieee754/dbl-64/wordsize-64/s_modf.c: Include . (modf): Define using libm_alias_double, only if [!__modf]. * sysdeps/ieee754/ldbl-opt/s_modf.c (modfl): Only define libc compat symbol here. * sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_modf-ppc32.c (weak_alias): Do not undefine and redefine. (strong_alias): Likewise. * sysdeps/powerpc/powerpc64/fpu/multiarch/s_modf-ppc64.c (weak_alias): Likewise. (strong_alias): Likewise. * sysdeps/ieee754/dbl-64/s_logb.c: Include . (logb): Define using libm_alias_double, only if [!__logb]. * sysdeps/ieee754/dbl-64/wordsize-64/s_logb.c: Include . (logb): Define using libm_alias_double, only if [!__logb]. * sysdeps/ieee754/ldbl-opt/s_logb.c: Remove file. * sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_logb-ppc32.c (weak_alias): Do not undefine and redefine. (strong_alias): Likewise. * sysdeps/powerpc/powerpc64/fpu/multiarch/s_logb-ppc64.c (weak_alias): Likewise. (strong_alias): Likewise. 2017-10-03 H.J. Lu * sysdeps/unix/sysv/linux/tile/sysdep.h (SYSCALL_ERROR_NAME): Check SHARED instead PIC. 2017-10-03 Joseph Myers * sysdeps/ieee754/dbl-64/s_fmaf.c: Include . [!__fmaf] (fmaf): Define using libm_alias_float. * sysdeps/ieee754/dbl-64/s_frexp.c: Include . (frexp): Define using libm_alias_double. * sysdeps/ieee754/dbl-64/wordsize-64/s_frexp.c: Include . (frexp): Define using libm_alias_double. * sysdeps/ieee754/ldbl-opt/s_frexp.c (frexpl): Only define libc compat symbol here. 2017-10-03 Gabriel F. T. Gomes [BZ #22235] * math/math.h: Trivial fix for unbalanced parentheses in comment. * math/Makefile [CXX] (tests): Add test-math-iscanonical.cc. (CFLAGS-test-math-iscanonical.cc): New variable. * math/test-math-iscanonical.cc: New file. * sysdeps/ieee754/ldbl-96/bits/iscanonical.h (iscanonical): Provide a C++ implementation based on function overloading, rather than using __MATH_TG, which uses C-only builtins. * sysdeps/ieee754/ldbl-128ibm/bits/iscanonical.h (iscanonical): Likewise. * sysdeps/powerpc/powerpc64le/Makefile (CFLAGS-test-math-iscanonical.cc): New variable. 2017-10-03 Joseph Myers * sysdeps/ieee754/dbl-64/s_ceil.c: Include . (ceil): Define using libm_alias_double. * sysdeps/ieee754/dbl-64/s_floor.c: Include . (floor): Define using libm_alias_double. * sysdeps/ieee754/dbl-64/s_llround.c: Include . (llround): Define using libm_alias_double. * sysdeps/ieee754/dbl-64/s_lround.c: Include . (lround): Define using libm_alias_double. * sysdeps/ieee754/dbl-64/s_nearbyint.c: Include . (nearbyint): Define using libm_alias_double. * sysdeps/ieee754/dbl-64/s_remquo.c: Include . (remquo): Define using libm_alias_double. * sysdeps/ieee754/dbl-64/s_rint.c: Include . (rint): Define using libm_alias_double. * sysdeps/ieee754/dbl-64/s_round.c: Include . (round): Define using libm_alias_double. * sysdeps/ieee754/dbl-64/s_trunc.c: Include . (trunc): Define using libm_alias_double. * sysdeps/ieee754/dbl-64/wordsize-64/s_ceil.c: Include . (ceil): Define using libm_alias_double. * sysdeps/ieee754/dbl-64/wordsize-64/s_floor.c: Include . (floor): Define using libm_alias_double. * sysdeps/ieee754/dbl-64/wordsize-64/s_llround.c: Include . (llround): Define using libm_alias_double. [_LP64] (lround): Likewise. * sysdeps/ieee754/dbl-64/wordsize-64/s_lround.c: Include . [!_LP64] (lround): Define using libm_alias_double. * sysdeps/ieee754/dbl-64/wordsize-64/s_nearbyint.c: Include . (nearbyint): Define using libm_alias_double. * sysdeps/ieee754/dbl-64/wordsize-64/s_remquo.c: Include . (remquo): Define using libm_alias_double. * sysdeps/ieee754/dbl-64/wordsize-64/s_rint.c: Include . (rint): Define using libm_alias_double. * sysdeps/ieee754/dbl-64/wordsize-64/s_round.c: Include . (round): Define using libm_alias_double. * sysdeps/ieee754/dbl-64/wordsize-64/s_trunc.c: Include . (trunc): Define using libm_alias_double. * sysdeps/ieee754/ldbl-opt/s_ceil.c: Remove file. * sysdeps/ieee754/ldbl-opt/s_floor.c: Likewise. * sysdeps/ieee754/ldbl-opt/s_llround.c: Likewise. * sysdeps/ieee754/ldbl-opt/s_lround.c: Likewise. * sysdeps/ieee754/ldbl-opt/s_nearbyint.c: Likewise. * sysdeps/ieee754/ldbl-opt/s_remquo.c: Likewise. * sysdeps/ieee754/ldbl-opt/s_rint.c: Likewise. * sysdeps/ieee754/ldbl-opt/s_round.c: Likewise. * sysdeps/ieee754/ldbl-opt/s_trunc.c: Likewise. 2017-10-03 Szabolcs Nagy * math/w_remainder.c: New file. * math/w_remainderf.c: New file. * math/w_remainderl.c: New file. 2017-10-03 H.J. Lu * elf/rtld.c (BOOTSTRAP_MAP): New. (RESOLVE_MAP): Replace (&bootstrap_map) with BOOTSTRAP_MAP. * sysdeps/hppa/dl-machine.h (ELF_MACHINE_BEFORE_RTLD_RELOC): Likewise. * sysdeps/ia64/dl-machine.h (ELF_MACHINE_BEFORE_RTLD_RELOC): Likewise. * sysdeps/mips/dl-machine.h (ELF_MACHINE_BEFORE_RTLD_RELOC): Likewise. 2017-10-03 Samuel Thibault * include/libc-symbols.h [NO_RTLD_HIDDEN] (rtld_hidden_proto, rtld_hidden_tls_proto, rtld_hidden_def, rtld_hidden_weak, rtld_hidden_rtld_hidden_ver, data_def, rtld_hidden_data_weak, rtld_hidden_data_ver): Define to empty. * include/assert.h [IS_IN(rtld) && NO_RTLD_HIDDEN] (__assert_fail, __assert_perror_fail): Likewise. * include/dirent.h [IS_IN(rtld) && NO_RTLD_HIDDEN] (__rewinddir): Likewise. * include/libc-internal.h [IS_IN(rtld) && NO_RTLD_HIDDEN] (__profile_frequency): Likewise. * include/setjmp.h (__sigsetjmp): Likewise. * include/signal.h [IS_IN(rtld) && NO_RTLD_HIDDEN] (__sigaction, __libc_sigaction): Likewise. * include/stdlib.h [NO_RTLD_HIDDEN] (unsetenv, __strtoul_internal): Do not set hidden attribute. * include/string.h [IS_IN(rtld) && NO_RTLD_HIDDEN] (__stpcpy, __strdup, __strerror_t, __strsep_g, memchr, memcmp, memcpy, memmove, memset, rawmemchr, stpcpy, strchr, strcmp, strlen, strnlen, strsep): Likewise. * include/sys/stat.h [IS_IN(rtld) && NO_RTLD_HIDDEN] (__fxstat, __fxstat64, __lxstat, __lxstat64, __xstat, __xstat64, __fxstatat64): Likewise. * include/sys/utsname.h [IS_IN(rtld) && NO_RTLD_HIDDEN] (__uname): Likewise. * include/sysdeps/generic/_itoa.h [IS_IN(rtld) && NO_RTLD_HIDDEN] (_itoa_upper_digits, _itoa_lower_digits): Likewise. * sysdeps/mach/hurd/configure.ac (NO_HIDDEN): Do not set. (NO_RTLD_HIDDEN): Set. * sysdeps/mach/hurd/configure: Refresh. * config.h.in: Refresh. 2017-10-02 Joseph Myers * sysdeps/ieee754/dbl-64/s_atan.c: Include . (atan): Define using libm_alias_double. * sysdeps/ieee754/dbl-64/s_tan.c: Include . (tan): Define using libm_alias_double. * sysdeps/ieee754/ldbl-opt/s_atan.c: Remove file. * sysdeps/ieee754/ldbl-opt/s_tan.c: Likewise. * sysdeps/ieee754/dbl-64/s_atan.c (atan): Rename to __atan and define as weak alias of __atan. Do not define any aliases if [__atan]. [NO_LONG_DOUBLE] (__atanl): Define as strong alias of __atan. [NO_LONG_DOUBLE] (atanl): Define as weak alias of __atanl. * sysdeps/ieee754/dbl-64/s_tan.c (tan): Rename to __tan and define as weak alias of __tan. Do not define any aliases if [__tan]. [NO_LONG_DOUBLE] (__tanl): Define as strong alias of __tan. [NO_LONG_DOUBLE] (tanl): Define as weak alias of __tanl. * sysdeps/x86_64/fpu/multiarch/s_atan-avx.c (atan): Rename to __atan. * sysdeps/x86_64/fpu/multiarch/s_atan-fma.c (atan): Likewise. * sysdeps/x86_64/fpu/multiarch/s_atan-fma4.c (atan): Likewise. * sysdeps/x86_64/fpu/multiarch/s_atan.c (atan): Rename to __atan and define as weak alias of __atan. * sysdeps/x86_64/fpu/multiarch/s_tan-avx.c (tan): Rename to __atan. * sysdeps/x86_64/fpu/multiarch/s_tan-fma.c (tan): Likewise. * sysdeps/x86_64/fpu/multiarch/s_tan-fma4.c (tan): Likewise. * sysdeps/x86_64/fpu/multiarch/s_tan.c (tan): Rename to __tan and define as weak alias of __tan. 2017-10-02 Szabolcs Nagy * math/w_lgamma.c: New file. * math/w_lgammaf.c: New file. * math/w_lgammal.c: New file. 2017-10-02 Szabolcs Nagy * sysdeps/ieee754/flt-32/e_log2f.c (__log2f): Define without wrapper. * sysdeps/ieee754/flt-32/e_logf.c (__logf): Likewise * sysdeps/ieee754/flt-32/e_powf.c (__powf): Likewise * sysdeps/ieee754/flt-32/w_log2f.c: New file. * sysdeps/ieee754/flt-32/w_logf.c: New file. * sysdeps/ieee754/flt-32/w_powf.c: New file. * sysdeps/i386/fpu/w_log2f.c: New file. * sysdeps/i386/fpu/w_logf.c: New file. * sysdeps/i386/fpu/w_powf.c: New file. * sysdeps/m68k/m680x0/fpu/w_log2f.c: New file. * sysdeps/m68k/m680x0/fpu/w_logf.c: New file. * sysdeps/m68k/m680x0/fpu/w_powf.c: New file. 2017-10-02 Szabolcs Nagy H.J. Lu * sysdeps/ieee754/flt-32/e_exp2f.c (__exp2f): Define without wrapper. * sysdeps/ieee754/flt-32/e_expf.c (__expf): Likewise * sysdeps/ieee754/flt-32/w_exp2f.c: New file. * sysdeps/ieee754/flt-32/w_expf.c: New file. * sysdeps/powerpc/powerpc64/fpu/multiarch/e_expf-ppc64.c: Update for the new expf code. * sysdeps/powerpc/powerpc64/fpu/multiarch/w_expf.c: New file. * sysdeps/powerpc/powerpc64/power8/fpu/w_expf.c: New file. * sysdeps/m68k/m680x0/fpu/w_exp2f.c: New file. * sysdeps/m68k/m680x0/fpu/w_expf.c: New file. * sysdeps/i386/fpu/w_exp2f.c: New file. * sysdeps/i386/fpu/w_expf.c: New file. * sysdeps/i386/i686/fpu/multiarch/w_expf.c: New file. * sysdeps/x86_64/fpu/w_expf.c: New file. 2017-10-02 Szabolcs Nagy * math/Versions (logf): New libm symbol at GLIBC_2.27. (log2f): Likewise. (powf): Likewise. * math/w_log2f.c: New file. * math/w_logf.c: New file. * math/w_powf.c: New file. * math/w_log2f_compat.c (__log2f_compat): For compat symbol only. * math/w_logf_compat.c (__logf_compat): Likewise. * math/w_powf_compat.c (__powf_compat): Likewise. * sysdeps/ia64/fpu/e_log2f.S: Add versioned symbols. * sysdeps/ia64/fpu/e_logf.S: Likewise. * sysdeps/ia64/fpu/e_powf.S: Likewise. * sysdeps/unix/sysv/linux/aarch64/libm.abilist: Update. * sysdeps/unix/sysv/linux/alpha/libm.abilist: Likewise. * sysdeps/unix/sysv/linux/arm/libm.abilist: Likewise. * sysdeps/unix/sysv/linux/hppa/libm.abilist: Likewise. * sysdeps/unix/sysv/linux/i386/libm.abilist: Likewise. * sysdeps/unix/sysv/linux/ia64/libm.abilist: Likewise. * sysdeps/unix/sysv/linux/m68k/coldfire/libm.abilist: Likewise. * sysdeps/unix/sysv/linux/m68k/m680x0/libm.abilist: Likewise. * sysdeps/unix/sysv/linux/microblaze/libm.abilist: Likewise. * sysdeps/unix/sysv/linux/mips/mips32/libm.abilist: Likewise. * sysdeps/unix/sysv/linux/mips/mips64/libm.abilist: Likewise. * sysdeps/unix/sysv/linux/nios2/libm.abilist: Likewise. * sysdeps/unix/sysv/linux/powerpc/powerpc32/fpu/libm.abilist: Likewise. * sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/libm.abilist: Likewise. * sysdeps/unix/sysv/linux/powerpc/powerpc64/libm-le.abilist: Likewise. * sysdeps/unix/sysv/linux/powerpc/powerpc64/libm.abilist: Likewise. * sysdeps/unix/sysv/linux/s390/s390-32/libm.abilist: Likewise. * sysdeps/unix/sysv/linux/s390/s390-64/libm.abilist: Likewise. * sysdeps/unix/sysv/linux/sh/libm.abilist: Likewise. * sysdeps/unix/sysv/linux/sparc/sparc32/libm.abilist: Likewise. * sysdeps/unix/sysv/linux/sparc/sparc64/libm.abilist: Likewise. * sysdeps/unix/sysv/linux/tile/tilegx/tilegx32/libm.abilist: Likewise. * sysdeps/unix/sysv/linux/tile/tilegx/tilegx64/libm.abilist: Likewise. * sysdeps/unix/sysv/linux/tile/tilepro/libm.abilist: Likewise. * sysdeps/unix/sysv/linux/x86_64/64/libm.abilist: Likewise. * sysdeps/unix/sysv/linux/x86_64/x32/libm.abilist: Likewise. 2017-10-02 Rajalakshmi Srinivasaraghavan * sysdeps/powerpc/powerpc64/multiarch/Makefile (sysdep_routines): Add memrchr_power8. * sysdeps/powerpc/powerpc64/multiarch/ifunc-impl-list.c (memrchr): Add __memrchr_power8 to list of memrchr functions. * sysdeps/powerpc/powerpc64/multiarch/memrchr-power8.S: New file. * sysdeps/powerpc/powerpc64/multiarch/memrchr.c (memrchr): Add __memrchr_power8 to ifunc list. * sysdeps/powerpc/powerpc64/power8/memrchr.S: New file. 2017-10-01 H.J. Lu [BZ #18822] * sysdeps/unix/sysv/linux/posix_fadvise64.c (__posix_fadvise64_l64): Add Add libc_hidden_proto and libc_hidden_def. * sysdeps/unix/sysv/linux/posix_fallocate64.c (__posix_fallocate64_l64): Likewise. 2017-10-01 H.J. Lu [BZ #18822] * sysdeps/unix/sysv/linux/sched_setaffinity.c (__sched_setaffinity_new): Add libc_hidden_proto and libc_hidden_def. 2017-10-01 H.J. Lu [BZ #18822] * include/glob.h (__glob64): Add libc_hidden_proto. * sysdeps/unix/sysv/linux/glob64.c (__glob64): Add libc_hidden_def. 2017-10-01 H.J. Lu [BZ #18822] * sysdeps/unix/sysv/linux/getrlimit64.c (__new_getrlimit): Add attribute_hidden. 2017-10-01 H.J. Lu [BZ #18822] * stdlib/exit.h (__new_exitfn): Add attribute_hidden. 2017-10-01 H.J. Lu [BZ #18822] * mon/gmon.c (__moncontrol): Add libc_hidden_proto and libc_hidden_def. 2017-10-01 H.J. Lu [BZ #18822] * csu/version.c (__libc_print_version): Add attribute_hidden. 2017-10-01 H.J. Lu [BZ #18822] * include/libc-internal.h (__init_misc): Add attribute_hidden. 2017-10-01 H.J. Lu [BZ #18822] * include/fpu_control.h (__setfpucw): Add attribute_hidden. 2017-10-01 H.J. Lu [BZ #18822] * nscd/nscd_helper.c (__nis_hash): New prototype. 2017-10-01 H.J. Lu [BZ #18822] * include/termios.h (__tcgetattr): Add libc_hidden_proto. * sysdeps/unix/bsd/tcgetattr.c (__tcgetattr): Add libc_hidden_def. * sysdeps/unix/sysv/linux/tcgetattr.c (__tcgetattr): Likewise. * termios/tcgetattr.c (__tcgetattr): Likewise. 2017-10-01 H.J. Lu [BZ #18822] * include/sys/resource.h (__setrlimit): Add libc_hidden_proto. * resource/setrlimit.c (__setrlimit): Add libc_hidden_def. * sysdeps/mach/hurd/setrlimit.c (__setrlimit): Likewise. * sysdeps/unix/sysv/linux/setrlimit.c (__setrlimit): Likewise. * sysdeps/unix/sysv/linux/setrlimit64.c (__GI___setrlimit): New. 2017-10-01 H.J. Lu [BZ #18822] * include/monetary.h (__vstrfmon_l): Add attribute_hidden. 2017-10-01 H.J. Lu [BZ #18822] * include/sched.h (__sched_setparam): Add libc_hidden_proto. * posix/sched_setp.c (__sched_setparam): Add libc_hidden_def. 2017-10-01 H.J. Lu [BZ #18822] * intl/hash-string.h (__hash_string): Add attribute_hidden. 2017-10-01 H.J. Lu [BZ #18822] * include/mntent.h (__hasmntopt): Add libc_hidden_proto. * misc/mntent_r.c (__hasmntopt): Add libc_hidden_def. 2017-10-01 H.J. Lu [BZ #18822] * include/ifreq.h: New file. * sysdeps/generic/ifreq.h (__if_nextreq): Removed. (__ifreq): Likewise. * sysdeps/mach/hurd/ifreq.h (__if_nextreq): Removed. (__ifreq): Likewise. 2017-10-01 H.J. Lu [BZ #18822] * include/idna.h: New file. * inet/getnameinfo.c: Include instead of . (__idna_to_unicode_lzlz): Removed. * sysdeps/posix/getaddrinfo.c: Include instead of . (__idna_to_ascii_lz): Removed. (__idna_to_unicode_lzlz): Likewise. 2017-10-01 H.J. Lu [BZ #18822] * include/plural-exp.h: New file. * intl/plural-exp.c: Include instead of "plural-exp.h". 2017-10-01 H.J. Lu [BZ #18822] * sysdeps/unix/sysv/linux/getsourcefilter.c: Include "getsourcefilter.h". * sysdeps/unix/sysv/linux/getsourcefilter.h: New file. * sysdeps/unix/sysv/linux/setsourcefilter.c: Include "getsourcefilter.h". (__get_sol): Removed. 2017-10-01 H.J. Lu [BZ #18822] * elf/dl-iteratephdr.c (hidden_proto (__dl_iterate_phdr)): Moved to ... * include/link.h (hidden_proto (__dl_iterate_phdr)): Here. 2017-10-01 H.J. Lu [BZ #18822] * sysdeps/unix/sysv/linux/getpt.c (__bsd_getpt): Add attribute_hidden. 2017-10-01 H.J. Lu [BZ #18822] * libio/iolibio.h (__fopen_maybe_mmap): Add attribute_hidden. 2017-10-01 H.J. Lu [BZ #18822] * include/search.h (__tdestroy): Add libc_hidden_proto. * misc/tsearch.c (__tdestroy): Add libc_hidden_def. 2017-10-01 H.J. Lu [BZ #18822] * include/assert.h (__assert_fail_base): Add attribute_hidden. 2017-10-01 H.J. Lu [BZ #18822] * sysdeps/unix/sysv/linux/include/sys/sysinfo.h (__sysinfo): Add attribute_hidden. 2017-10-01 H.J. Lu [BZ #18822] * include/signal.h (__kill): Add libc_hidden_proto. (__sigblock): Likewise. (__sigprocmask): Likewise. (__sigaltstack): Likewise. * signal/kill.c (__kill): Add libc_hidden_def. * signal/sigblock.c (__sigblock): Likewise. * signal/sigprocmask.c (__sigprocmask): Likewise. * sysdeps/mach/hurd/kill.c (__kill): Likewise. * sysdeps/mach/hurd/sigaltstack.c (__sigaltstack): Likewise. * sysdeps/mach/hurd/sigprocmask.c (__sigprocmask): Likewise. * sysdeps/posix/sigblock.c (__sigblock): Likewise. * sysdeps/unix/sysv/linux/alpha/sigprocmask.c (__sigprocmask): Likewise. * sysdeps/unix/sysv/linux/ia64/sigprocmask.c (__sigprocmask): Likewise. * sysdeps/unix/sysv/linux/s390/s390-64/sigprocmask.c (__sigprocmask): Likewise. * sysdeps/unix/sysv/linux/sigprocmask.c (__sigprocmask): Likewise. * /sysdeps/unix/sysv/linux/sparc/sparc64/sigprocmask.c (__sigprocmask): Likewise. * sysdeps/unix/sysv/linux/x86_64/sigprocmask.c (__sigprocmask): Likewise. 2017-10-01 H.J. Lu [BZ #18822] * include/string.h (__strsep): Add libc_hidden_proto. * string/strsep.c (__strsep): Add libc_hidden_def. 2017-10-01 H.J. Lu [BZ #18822] * posix/spawn_int.h (__posix_spawn_file_actions_realloc): Add attribute_hidden. (__spawni): Likewise. 2017-10-01 H.J. Lu [BZ #18822] * include/sys/mman.h (__mremap): Add libc_hidden_proto. * sysdeps/unix/sysv/linux/m68k/mremap.S (__mremap): Add libc_hidden_def. 2017-10-01 H.J. Lu [BZ #18822] * include/malloc.h (__malloc_check_init): Add attribute_hidden. 2017-10-01 H.J. Lu [BZ #18822] * include/sys/ioctl.h (__ioctl): Add libc_hidden_proto. * misc/ioctl.c (__ioctl): Add libc_hidden_def. * sysdeps/mach/hurd/ioctl.c (__ioctl): Likewise. * sysdeps/unix/sysv/linux/aarch64/ioctl.S (__ioctl): Likewise. * sysdeps/unix/sysv/linux/mips/mips64/n64/ioctl.S (__ioctl): Likewise. * sysdeps/unix/sysv/linux/powerpc/ioctl.c (__ioctl): Likewise. * sysdeps/unix/sysv/linux/tile/tilegx/ioctl.S (__ioctl): Likewise. 2017-10-01 H.J. Lu [BZ #18822] * intl/gettextP.h (__dcngettext): Add attribute_hidden. (__dcigettext): Likewise. 2017-10-01 H.J. Lu [BZ #18822] * include/sys/sysinfo.h (__get_nprocs_conf): Add libc_hidden_proto. (__get_nprocs): Likewise. (__get_phys_pages): Likewise. (__get_avphys_pages): Likewise. (__get_child_max): Add attribute_hidden. * misc/getsysstats.c (__get_nprocs_conf): Add libc_hidden_def. (__get_nprocs): Likewise. (__get_phys_pages): Likewise. (__get_avphys_pages): Likewise. * sysdeps/mach/getsysstats.c (__get_nprocs_conf): Add libc_hidden_def. (__get_nprocs): Likewise. (__get_phys_pages): Likewise. (__get_avphys_pages): Likewise. * sysdeps/unix/sysv/linux/getsysstats.c (__get_nprocs): Add libc_hidden_def. (__get_nprocs_conf): Likewise. (__get_phys_pages): Likewise. (__get_avphys_pages): Likewise. 2017-10-01 H.J. Lu [BZ #18822] * sysdeps/unix/sysv/linux/netlinkaccess.h (__netlink_open): Add attribute_hidden. (__netlink_close): Likewise. (__netlink_free_handle): Likewise. (__netlink_request): Likewise. 2017-10-01 H.J. Lu [BZ #18822] * include/rpc/rpc.h (__rpc_thread_variables): Add attribute_hidden. (__rpc_thread_svc_cleanup): Likewise. (__rpc_thread_clnt_cleanup): Likewise. (__rpc_thread_key_cleanup): Likewise. 2017-10-01 H.J. Lu [BZ #18822] * include/sys/uio.h (__readv): Add libc_hidden_proto. (__writev): Likewise. * misc/readv.c (__readv): Add libc_hidden_def. * misc/writev.c (__writev): Likewise. * sysdeps/posix/readv.c (__readv): Likewise. * sysdeps/posix/writev.c (__writev): Likewise. * sysdeps/unix/sysv/linux/readv.c: Include . (__readv): Likewise. * sysdeps/unix/sysv/linux/writev.c: Include . (__writev): Likewise. 2017-10-01 H.J. Lu [BZ #18822] * include/regex.h (__re_compile_fastmap): Add attribute_hidden. (__regcomp): Add libc_hidden_proto. (__regexec): Likewise. (__regfree): Likewise. * posix/regcomp.c (__regcomp): Add libc_hidden_def. (__regfree): Likewise. * posix/regexec.c (__regexec): Likewise. 2017-10-01 H.J. Lu [BZ #18822] * include/utmp.h (__updwtmp): Add libc_hidden_proto. (__getutent): Likewise. (__getutid): Likewise. (__getutline): Likewise. (__pututline): Likewise. (__getutent_r): Likewise. (__getutid_r): Likewise. (__getutline_r): Likewise. (__utmpname): Add attribute_hidden. (__setutent): Likewise. (__endutent): Likewise. * login/getutent.c (__getutent): Add libc_hidden_def. * login/getutent_r.c (__getutent_r): Likewise. (__pututline): Likewise. * login/getutid.c (__getutid): Likewise. * login/getutid_r.c (__getutid_r): Likewise. * login/getutline.c (__getutline): Likewise. * login/getutline_r.c (__getutline_r): Likewise. * login/updwtmp.c (__updwtmp): Likewise. 2017-10-01 H.J. Lu [BZ #18822] * include/dirent.h (__opendir): Always add attribute_hidden. (__fdopendir): Likewise. (__closedir): Likewise. (__readdir): Likewise. (__readdir64): Add libc_hidden_proto. * sysdeps/mach/hurd/readdir64.c (__readdir64): Add libc_hidden_def. * sysdeps/unix/sysv/linux/i386/readdir64.c (__readdir64): Likewise. * sysdeps/unix/sysv/linux/readdir64.c (__readdir64): Likewise. * sysdeps/unix/sysv/linux/wordsize-64/readdir.c (__GI___readdir64): New alias. 2017-10-01 H.J. Lu [BZ #18822] * include/aliases.h (__getaliasbyname_r): Add attribute_hidden. * include/netdb.h (__gethostbyaddr_r): Likewise. (__gethostbyname_r): Likewise. (__gethostbyname2_r): Likewise. (__getnetbyaddr_r): Likewise. (__getnetbyname_r): Likewise. (__getservbyname_r): Likewise. (__getservbyport_r): Likewise. (__getprotobyname_r): Likewise. (__getprotobynumber_r): Likewise. (__getnetgrent_r): Likewise. * include/rpc/netdb.h (__getrpcbyname_r): Likewise. (__getrpcbynumber_r): Likewise. * nss/getXXbyYY.c (INTERNAL (REENTRANT_NAME)): Likewise. 2017-10-01 H.J. Lu [BZ #18822] * include/stdio.h (__fcloseall): Add attribute_hidden. (__getline): Likewise. (__path_search): Likewise. (__gen_tempname): Likewise. (__libc_message): Likewise. (__flockfile): Likewise. (__funlockfile): Likewise. (__fxprintf): Likewise. (__fxprintf_nocancel): Likewise. 2017-10-01 H.J. Lu [BZ #18822] * include/gshadow.h (__fgetsgent_r): Add attribute_hidden. (__sgetsgent_r): Likewise. 2017-10-01 H.J. Lu [BZ #18822] * include/sys/statfs.h (__fstatfs): Add attribute_hidden. (__statfs64): Likewise. (__fstatfs64): Likewise. * include/sys/statvfs.h (__statvfs64): Likewise. (__fstatvfs64): Likewise. * sysdeps/unix/sysv/linux/pathconf.h (__statfs_link_max): Likewise. (__statfs_filesize_max): Likewise. (__statfs_symlinks): Likewise. (__statfs_chown_restricted): Likewise. 2017-10-01 H.J. Lu [BZ #18822] * include/time.h (__tzstring): Add attribute_hidden. (__tzfile_read): Likewise. (__tzfile_compute): Likewise. (__tzfile_default): Likewise. (__tzset_parse_tz): Likewise. (__offtime): Likewise. (__asctime_r): Likewise. (__tzset): Likewise. (__tz_convert): Likewise. (__getdate_r): Likewise. (__getclktck): Likewise. 2017-10-01 H.J. Lu [BZ #18822] * nscd/nscd-client.h (__nscd_get_map_ref): Add attribute_hidden. (__nscd_unmap): Likewise. (__nscd_cache_search): Likewise. (__nscd_get_nl_timestamp): Likewise. (__nscd_getpwnam_r): Likewise. (__nscd_getpwuid_r): Likewise. (__nscd_getgrnam_r): Likewise. (__nscd_getgrgid_r): Likewise. (__nscd_gethostbyname_r): Likewise. (__nscd_gethostbyname2_r): Likewise. (__nscd_gethostbyaddr_r): Likewise. (__nscd_getai): Likewise. (__nscd_getgrouplist): Likewise. (__nscd_getservbyname_r): Likewise. (__nscd_getservbyport_r): Likewise. (__nscd_innetgr): Likewise. (__nscd_setnetgrent): Likewise. 2017-10-01 H.J. Lu [BZ #18822] * include/gmp.h: Declare internal functions only if _ISOMAC is undefined. (__mpn_extract_double): Add attribute_hidden. (__mpn_extract_long_double): Likewise. (__mpn_extract_float128): Likewise. (__mpn_construct_float): Likewise. (__mpn_construct_double): Likewise. (__mpn_construct_long_double): Likewise. (__mpn_construct_float128): Likewise. (mpn_add_1): Likewise. (mpn_addmul_1): Likewise. (mpn_add_n): Likewise. (mpn_cmp): Likewise. (mpn_divrem): Likewise. (mpn_lshift): Likewise. (mpn_mul): Likewise. (mpn_mul_1): Likewise. (mpn_rshift): Likewise. (mpn_sub_1): Likewise. (mpn_submul_1): Likewise. (mpn_sub_n): Likewise. 2017-10-01 H.J. Lu [BZ #18822] * include/wchar.h (__wcsnlen): Add attribute_hidden. (__wcscat): Likewise. (__btowc): Likewise. (__wcrtomb): Likewise. (__mbsrtowcs): Likewise. (__wcsrtombs): Likewise. (__mbsnrtowcs): Likewise. (__wcsnrtombs): Likewise. (__wcsncpy): Likewise. (__wcpncpy): Likewise. (__wmemcpy): Likewise. (__wmempcpy): Likewise. (__wmemmove): Likewise. (__wcschrnul): Likewise. (__vfwscanf): Likewise. (__vswprintf): Likewise. (__fwprintf): Likewise. (__vfwprintf): Likewise. 2017-10-01 H.J. Lu [BZ #18822] * include/grp.h (__fgetgrent_r): Add attribute_hidden. (__getgrgid_r): Likewise. (__getgrnam_r): Likewise. * include/pwd.h (__getpwuid_r): Likewise. (__getpwnam_r): Likewise. (__fgetpwent_r): Likewise. * include/shadow.h (__getspnam_r): Likewise. (__sgetspent_r): Likewise. (__fgetspent_r): Likewise. 2017-10-01 H.J. Lu [BZ #18822] * include/unistd.h (__access): Add attribute_hidden. (__lseek64): Likewise. (__libc_pread64): Likewise. (__pipe2): Likewise. (__sleep): Likewise. (__chdir): Likewise. (__fchdir): Likewise. (__getcwd): Likewise. (__rmdir): Likewise. (__execvpe): Likewise. (__execve): Likewise. (__setsid): Likewise. (__getuid): Likewise. (__geteuid): Likewise. (__getgid): Likewise. (__getegid): Likewise. (__getgroups): Likewise. (__group_member): Likewise. (__ttyname_r): Likewise. (__isatty): Likewise. (__readlink): Likewise. (__unlink): Likewise. (__gethostname): Likewise. (__profil): Likewise. (__getdtablesize): Likewise. (__brk): Likewise. (__ftruncate): Likewise. (__ftruncate64): Likewise. 2017-10-01 H.J. Lu [BZ #18822] * argp/argp-fmtstream.c: Include . * argp/argp-fs-xinl.c: Likewise. * argp/argp-help.c: Include and . * argp/argp-parse.c: Include . * argp/argp-xinl.c: Likewise. * include/argp-fmtstream.h: New file. * include/argp.h (__argp_error): Add attribute_hidden. (__argp_failure): Likewise. (__argp_input): Likewise. (__argp_state_help): Likewise. 2017-10-01 H.J. Lu [BZ #18822] * include/wchar.h (____wcstof_l_internal): New prototype. (____wcstod_l_internal): Likewise. (____wcstold_l_internal): Likewise. (____wcstol_l_internal): Likewise. (____wcstoul_l_internal): Likewise. (____wcstoll_l_internal): Likewise. (____wcstoull_l_internal): Likewise. (____wcstof128_l_internal): Likewise. * sysdeps/ieee754/float128/wcstof128.c (____wcstof128_l_internal): Removed. * sysdeps/ieee754/float128/wcstof128_l.c (____wcstof128_l_internal): Likewise. * wcsmbs/wcstod.c (____wcstod_l_internal): Likewise. * wcsmbs/wcstod_l.c (____wcstod_l_internal): Likewise. * wcsmbs/wcstof.c (____wcstof_l_internal): Likewise. * wcsmbs/wcstof_l.c (____wcstof_l_internal): Likewise. * wcsmbs/wcstol_l.c (____wcstol_l_internal): Likewise. * wcsmbs/wcstold.c (____wcstold_l_internal): Likewise. * wcsmbs/wcstold_l.c (____wcstold_l_internal): Likewise. * wcsmbs/wcstoll_l.c (____wcstoll_l_internal): Likewise. * wcsmbs/wcstoul_l.c (____wcstoul_l_internal): Likewise. * wcsmbs/wcstoull_l.c (____wcstoull_l_internal): Likewise. 2017-10-01 H.J. Lu [BZ #18822] * sysdeps/unix/sysv/linux/fstatvfs.c: Include "internal_statvfs.h" instead of . (__internal_statvfs): Removed. * sysdeps/unix/sysv/linux/fstatvfs64.c Include "internal_statvfs.h" instead of . (__internal_statvfs64): Removed. * sysdeps/unix/sysv/linux/internal_statvfs.c: Include "internal_statvfs.h" instead of . * sysdeps/unix/sysv/linux/internal_statvfs.h: New file. * sysdeps/unix/sysv/linux/statvfs.c Include "internal_statvfs.h" instead of . (__internal_statvfs): Removed. * sysdeps/unix/sysv/linux/statvfs64.c Include "internal_statvfs.h" instead of . (__internal_statvfs64): Removed. 2017-10-01 H.J. Lu [BZ #18822] * iconv/gconv_int.h (__gconv_open): Add attribute_hidden. (__gconv_close): Likewise. (__gconv): Likewise. (__gconv_find_transform): Likewise. (__gconv_lookup_cache): Likewise. (__gconv_compare_alias_cache): Likewise. (__gconv_load_cache): Likewise. (__gconv_get_path): Likewise. (__gconv_close_transform): Likewise. (__gconv_release_cache): Likewise. (__gconv_find_shlib): Likewise. (__gconv_release_shlib): Likewise. (__gconv_get_builtin_trans): Likewise. (__gconv_compare_alias): Likewise. * include/dlfcn.h (_dlerror_run): Likewise. * include/stdio.h (__fortify_fail_abort): Likewise. * include/time.h (__tz_compute): Likewise. (__strptime_internal): Likewise. * intl/gettextP.h (_nl_find_domain): Likewise. (_nl_load_domain): Likewise. (_nl_find_msg): Likewise. * intl/plural-exp.h (FREE_EXPRESSION): Likewise. (EXTRACT_PLURAL_EXPRESSION): Likewise. * locale/coll-lookup.h (__collidx_table_lookup): Likewise. * resolv/gai_misc.h (__gai_enqueue_request): Likewise. (__gai_find_request): Likewise. (__gai_remove_request): Likewise. (__gai_notify): Likewise. (__gai_notify_only): Likewise. * sysdeps/generic/aio_misc.h (__aio_sigqueue): Likewise. * sysdeps/generic/ldsodefs.h (_dl_fini): Likewise. (_dl_non_dynamic_init): Likewise. (_dl_aux_init): Likewise. * sysdeps/i386/machine-gmon.h (mcount_internal): Likewise. * sysdeps/unix/sysv/linux/i386/olddirent.h (__old_getdents64): Likewise. * wcsmbs/wcsmbsload.h (__wcsmbs_load_conv): Likewise. (__wcsmbs_clone_conv): Likewise. (__wcsmbs_named_conv): Likewise. 2017-10-01 H.J. Lu [BZ #18822] * include/stdlib.h (__random): Add attribute_hidden. (__random_r): Likewise. (__srandom_r): Likewise. (__initstate_r): Likewise. (__setstate_r): Likewise. (__erand48_r): Likewise. (__nrand48_r): Likewise. (__jrand48_r): Likewise. (__srand48_r): Likewise. (__seed48_r): Likewise. (__lcong48_r): Likewise. (__drand48_iterate): Likewise. (__setenv): Likewise. (__unsetenv): Likewise. (__clearenv): Likewise. (__ptsname_r): Likewise. (__posix_openpt): Likewise. (__add_to_environ): Likewise. (__realpath): Add libc_hidden_proto. (__ecvt_r): Likewise. (__fcvt_r): Likewise. (__qecvt_r): Likewise. (__qfcvt_r): Likewise. * misc/efgcvt_r.c (cvt_symbol_1): Add libc_hidden_def (local). * stdlib/canonicalize.c (__realpath): Add libc_hidden_def. 2017-10-01 H.J. Lu [BZ #18822] * include/stdlib.h (__ptsname_internal): Add attribute_hidden. * include/time.h (__mktime_internal): Likewise. * libio/iolibio.h (__fopen_internal): Likewise. 2017-10-01 John David Anglin * sysdeps/unix/sysv/linux/hppa/getcontext.S (__getcontext): Save return pointer in frame. * sysdeps/unix/sysv/linux/hppa/setcontext.S (__setcontext): Likewise. Correct offset used to restore PIC register. 2017-09-30 John David Anglin [BZ libc/22165] * sysdeps/unix/sysv/linux/hppa/getcontext.S (__getcontext): Use PIC code to load address of __getcontext_ret when generating PIC code. 2017-09-30 H.J. Lu * elf/Makefile (tests-static-internal): Add tst-tls1-static-non-pie. (LDFLAGS-tst-tls1-static-non-pie): New. * elf/tst-tls1-static-non-pie.c: New file. 2017-09-29 Joseph Myers * sysdeps/ieee754/dbl-64/s_asinh.c: Include . (asinh): Define using libm_alias_double. * sysdeps/ieee754/dbl-64/s_cbrt.c: Include . (cbrt): Define using libm_alias_double. * sysdeps/ieee754/dbl-64/s_copysign.c: Include . (copysign): Define using libm_alias_double. * sysdeps/ieee754/dbl-64/s_erf.c: Include . (erf): Define using libm_alias_double. (erfc): Likewise. * sysdeps/ieee754/dbl-64/s_expm1.c: Include . (expm1): Define using libm_alias_double. * sysdeps/ieee754/dbl-64/s_fabs.c: Include . (fabs): Define using libm_alias_double. * sysdeps/ieee754/dbl-64/s_fromfp.c (fromfp): Define using libm_alias_double. * sysdeps/ieee754/dbl-64/s_fromfp_main.c: Include . * sysdeps/ieee754/dbl-64/s_fromfpx.c (fromfpx): Define using libm_alias_double. * sysdeps/ieee754/dbl-64/s_getpayload.c: Include . (getpayload): Define using libm_alias_double. * sysdeps/ieee754/dbl-64/s_llrint.c: Include . (llrint): Define using libm_alias_double. * sysdeps/ieee754/dbl-64/s_lrint.c: Include . (lrint): Define using libm_alias_double. * sysdeps/ieee754/dbl-64/s_nextup.c: Include . (nextup): Define using libm_alias_double. * sysdeps/ieee754/dbl-64/s_roundeven.c: Include . (roundeven): Define using libm_alias_double. * sysdeps/ieee754/dbl-64/s_setpayload.c (setpayload): Define using libm_alias_double. * sysdeps/ieee754/dbl-64/s_setpayload_main.c: Include . * sysdeps/ieee754/dbl-64/s_setpayloadsig.c (setpayloadsig): Define using libm_alias_double. * sysdeps/ieee754/dbl-64/s_sin.c: Include . (cos): Define using libm_alias_double. (sin): Likewise. * sysdeps/ieee754/dbl-64/s_sincos.c: Include . (sincos): Define using libm_alias_double. * sysdeps/ieee754/dbl-64/s_tanh.c: Include . (tanh): Define using libm_alias_double. * sysdeps/ieee754/dbl-64/s_totalorder.c: Include . (totalorder): Define using libm_alias_double. * sysdeps/ieee754/dbl-64/s_totalordermag.c: Include . (totalordermag): Define using libm_alias_double. * sysdeps/ieee754/dbl-64/s_ufromfp.c (ufromfp): Define using libm_alias_double. * sysdeps/ieee754/dbl-64/s_ufromfpx.c (ufromfpx): Define using libm_alias_double. * sysdeps/ieee754/dbl-64/wordsize-64/s_getpayload.c: Include . (getpayload): Define using libm_alias_double. * sysdeps/ieee754/dbl-64/wordsize-64/s_roundeven.c: Include . (roundeven): Define using libm_alias_double. * sysdeps/ieee754/dbl-64/wordsize-64/s_setpayload_main.c: Include . * sysdeps/ieee754/dbl-64/wordsize-64/s_totalorder.c: Include . (totalorder): Define using libm_alias_double. * sysdeps/ieee754/dbl-64/wordsize-64/s_totalordermag.c: Include . (totalordermag): Define using libm_alias_double. * sysdeps/ieee754/ldbl-opt/s_copysign.c (copysignl): Only define libc compat symbol here. * sysdeps/ieee754/ldbl-opt/s_asinh.c: Remove file. * sysdeps/ieee754/ldbl-opt/s_cbrt.c: Likewise. * sysdeps/ieee754/ldbl-opt/s_erf.c: Likewise. * sysdeps/ieee754/ldbl-opt/s_expm1.c: Likewise. * sysdeps/ieee754/ldbl-opt/s_fabs.c: Likewise. * sysdeps/ieee754/ldbl-opt/s_llrint.c: Likewise. * sysdeps/ieee754/ldbl-opt/s_lrint.c: Likewise. * sysdeps/ieee754/ldbl-opt/s_sin.c: Likewise. * sysdeps/ieee754/ldbl-opt/s_sincos.c: Likewise. * sysdeps/ieee754/ldbl-opt/s_tanh.c: Likewise. 2017-09-29 H.J. Lu * sysdeps/arm/dl-machine.h (elf_machine_load_address): Use _dl_relocate_static_pie instead of _dl_start to compute load address in static PIE. Return 0 if _DYNAMIC is undefined for static executable. 2017-09-29 H.J. Lu * sysdeps/mips/dl-machine.h (elf_machine_dynamic): Return 0 if _DYNAMIC is undefined for static executable. 2017-09-29 H.J. Lu * sysdeps/arm/start.S (_start): Check PIC instead of SHARED. 2017-09-29 Joseph Myers * sysdeps/x86_64/fpu/libm-test-ulps: Update. 2017-09-29 Wilco Dijkstra * sysdeps/ieee754/dbl-64/e_lgamma_r.c (__ieee754_lgamma_r): Use fabs rather than __fabs. * sysdeps/ieee754/dbl-64/e_log10.c (__ieee754_log10): Likewise. * sysdeps/ieee754/dbl-64/e_log2.c (__ieee754_log2): Likewise. * sysdeps/ieee754/flt-32/e_lgammaf_r.c (__ieee754_lgammaf_r): Use fabsf rather than __fabsf. * sysdeps/ieee754/flt-32/e_log10f.c (__ieee754_log10f): Likewise. * sysdeps/ieee754/flt-32/e_log2f.c (__ieee754_log2f): Likewise. * sysdeps/ieee754/ldbl-128/e_lgammal_r.c (__ieee754_lgammal_r): Use fabsl rather than __fabsl. * sysdeps/ieee754/ldbl-128/e_log10l.c (__ieee754_log10l): Likewise. * sysdeps/ieee754/ldbl-128/e_log2l.c (__ieee754_log2l): Likewise. * sysdeps/ieee754/ldbl-128ibm/e_lgammal_r.c (__ieee754_lgammal_r): Use fabsl rather than __fabsl. * sysdeps/ieee754/ldbl-128ibm/e_log10l.c (__ieee754_log10l): Likewise. * sysdeps/ieee754/ldbl-128ibm/e_log2l.c (__ieee754_log2l): Likewise. * sysdeps/powerpc/nofpu/Makefile: Add -fno-builtin-fabsl for BZ #29253. 2017-09-29 Wilco Dijkstra * math/bits/cmathcalls.h (cimag): Remove inline. (creal): Remove inline. (conj): Remove inline. 2017-09-29 Szabolcs Nagy * math/Makefile (type-float-routines): Add e_powf_log2_data. * sysdeps/ieee754/flt-32/e_powf.c: New implementation. * sysdeps/ieee754/flt-32/e_powf_log2_data.c: New file. * sysdeps/ieee754/flt-32/math_config.h (__powf_log2_data): Define. (issignalingf_inline): Likewise. (POWF_LOG2_TABLE_BITS): Likewise. (POWF_LOG2_POLY_ORDER): Likewise. (POWF_SCALE_BITS): Likewise. (POWF_SCALE): Likewise. * sysdeps/i386/fpu/e_powf_log2_data.c: New file. * sysdeps/ia64/fpu/e_powf_log2_data.c: New file. * sysdeps/m68k/m680x0/fpu/e_powf_log2_data.c: New file. 2017-09-29 Szabolcs Nagy * math/Makefile (type-float-routines): Add e_log2f_data. * sysdeps/ieee754/flt-32/e_log2f.c: New implementation. * sysdeps/ieee754/flt-32/e_log2f_data.c: New file. * sysdeps/ieee754/flt-32/math_config.h (__log2f_data): Define. (LOG2F_TABLE_BITS, LOG2F_POLY_ORDER): Define. * sysdeps/i386/fpu/e_log2f_data.c: New file. * sysdeps/ia64/fpu/e_log2f_data.c: New file. * sysdeps/m68k/m680x0/fpu/e_log2f_data.c: New file. 2017-09-29 Szabolcs Nagy * math/Makefile (type-float-routines): Add e_logf_data. * sysdeps/ieee754/flt-32/e_logf.c: New implementation. * sysdeps/ieee754/flt-32/e_logf_data.c: New file. * sysdeps/ieee754/flt-32/math_config.h (__logf_data): Define. (LOGF_TABLE_BITS, LOGF_POLY_ORDER): Define. * sysdeps/i386/fpu/e_logf_data.c: New file. * sysdeps/ia64/fpu/e_logf_data.c: New file. * sysdeps/m68k/m680x0/fpu/e_logf_data.c: New file. 2017-09-28 H.J. Lu * sysdeps/i386/dl-machine.h (elf_machine_load_address): Allow undefined _DYNAMIC in PIE libc.a. * sysdeps/x86_64/dl-machine.h (elf_machine_load_address): Likewse. 2017-09-28 Wilco Dijkstra * sysdeps/alpha/fpu/bits/mathinline.h: Delete file. * sysdeps/ia64/fpu/bits/mathinline.h: Delete file. * sysdeps/m68k/coldfire/fpu/bits/mathinline.h: Delete file. * sysdeps/m68k/m680x0/fpu/bits/mathinline.h: (__signbitf): Remove. (__signbit): Remove. (__signbitl): Remove. * sysdeps/powerpc/bits/mathinline.h (__signbitf): Remove. (__signbit): Remove. (__signbitl): Remove. * sysdeps/s390/fpu/bits/mathinline.h: (__signbitf): Remove. (__signbit): Remove. (__signbitl): Remove. * sysdeps/sparc/fpu/bits/mathinline.h (__signbitf): Remove. (__signbit): Remove. (__signbitl): Remove. * sysdeps/tile/bits/mathinline.h: Delete file. * sysdeps/x86/fpu/bits/mathinline.h (__signbitf): Remove. (__signbit): Remove. (__signbitl): Remove. 2017-09-28 Wilco Dijkstra * math/math.h: Improve handling of C99 isgreater macros. * sysdeps/alpha/fpu/bits/mathinline.h: Remove isgreater macros. * sysdeps/m68k/m680x0/fpu/bits/mathinline.h: Likewise. * sysdeps/powerpc/bits/mathinline.h: Likewise. * sysdeps/sparc/fpu/bits/mathinline.h: Likewise. * sysdeps/x86/fpu/bits/mathinline.h: Likewise. 2017-09-28 Szabolcs Nagy * sysdeps/aarch64/libm-test-ulps: Update. 2017-09-28 Joseph Myers [BZ #22225] * sysdeps/ieee754/dbl-64/s_nearbyint.c (__nearbyint): Use math_opt_barrier on argument when doing arithmetic on it. * sysdeps/ieee754/dbl-64/wordsize-64/s_nearbyint.c (__nearbyint): Likewise. Use math_force_eval not math_opt_barrier after arithmetic. * sysdeps/ieee754/flt-32/s_nearbyintf.c (__nearbyintf): Use math_opt_barrier on argument when doing arithmetic on it. * sysdeps/ieee754/ldbl-128/s_nearbyintl.c (__nearbyintl): Likewise. 2017-09-27 H.J. Lu * sysdeps/unix/sysv/linux/ifaddrs.c (__getifaddrs): Add libc_hidden_def. (__freeifaddrs): Likewise. 2017-09-27 Samuel Thibault * include/dirent.h (__dirfd): New declaration. * dirent/dirfd.c (dirfd): Rename to __dirfd, and redefine as weak alias. * sysdeps/posix/dirfd/dirfd.c (dirfd): Likewise. * sysdeps/mach/hurd/dirfd.c (dirfd): Likewise. * io/ftw.c (open_dir_stream, ftw_dir): Use __dirfd instead of dirfd. * include/unistd.h (__revoke): New declaration. * misc/revoke.c (revoke): Rename to __revoke, and redefine as weak alias. * sysdeps/mach/hurd/revoke.c (revoke): Likewise. * sysdeps/unix/bsd/unlockpt.c (unlockpt): Use __revoke instead of revoke. * include/dirent.h (__seekdir): New declaration. * sysdeps/mach/hurd/seekdir.c (seekdir): Rename to __seekdir and redefine as weak alias. * sysdeps/mach/hurd/rewinddir.c (__rewinddir): Use __seekdir instead of seekdir. * include/ifaddrs.h (__getifaddrs, __freeifaddrs): New declarations, and use libc_hidden_def on them. * inet/ifaddrs.c (__getifaddrs, __freeifaddrs): Use libc_hidden_def on them. * sysdeps/gnu/ifaddrs.c (__getifaddrs, __freeifaddrs): Likewise. * inet/check_pf.c (__check_pf): Use __getifaddrs and __freeifaddrs instead of getifaddrs and freeifaddrs. 2017-09-26 H.J. Lu [BZ #18822] * dlfcn/modatexit.c (foo): Remove __dso_handle check. * dlfcn/modcxaatexit.c: Include . (__dso_handle): Remove declaration. * dlfcn/tstatexit.c (__dso_handle): Removed. (main): Don't check __dso_handle. * dlfcn/tstcxaatexit.c (__dso_handle): Removed. (main): Don't check __dso_handle. * include/dso_handle.h: New file. * malloc/mtrace.c: Include . (mtrace): Pass __dso_handle directly. * nptl/pthread_atfork.c: Include . (__dso_handle): Remove declaration. (__pthread_atfork): Pass __dso_handle directly. * nptl/tst-atfork2mod.c: Include . (__dso_handle): Removed. * posix/wordexp-test.c: Include . (__dso_handle): Remove declaration. (__app_register_atfork): Pass __dso_handle directly. * stdlib/at_quick_exit.c: Include . (__dso_handle): Remove declaration. (at_quick_exit): Pass __dso_handle directly. * stdlib/atexit.c: Include . (__dso_handle): Remove declaration. (atexit): Pass __dso_handle directly. * stdlib/tst-tls-atexit-lib.c: Include . (__dso_handle): Removed. 2017-09-26 Joseph Myers * sysdeps/unix/make-syscalls.sh: Use __ifunc to define symbols using VDSO. 2017-09-26 Alexey Makhalov * elf/dl-tunables.c (do_tunable_update_val): Range checking fix. * scripts/gen-tunables.awk: Set unspecified minval and/or maxval values to correct default value for given type. 2017-09-26 H.J. Lu [BZ #22101] * elf/Makefile (tests): Add tst-debug1. ($(objpfx)tst-debug1): New. ($(objpfx)tst-debug1.out): Likewise. ($(objpfx)tst-debug1mod1.so): Likewise. * elf/dl-load.c (_dl_map_object_from_fd): Skip PT_DYNAMIC segment with p_filesz == 0. * elf/tst-debug1.c: New file. 2017-09-26 Joseph Myers * sysdeps/sparc/sparc-ifunc.h [!__ASSEMBLER__] (sparc_libm_ifunc): Define using __ifunc. 2017-09-26 Tulio Magno Quites Machado Filho * sysdeps/powerpc/fpu/libm-test-ulps: Regenerate expf() and exp2f() values. 2017-09-26 Joseph Myers [BZ #22156] * sysdeps/ia64/stackinfo.h (DEFAULT_STACK_PERMS): Likewise. 2017-09-26 Florian Weimer * resolv/Makefile (tests-internal): Fix typo in comment. 2017-09-26 Florian Weimer * resolv/nss_dns/dns-host.c: Fix typo in comment. 2017-09-25 Adhemerval Zanella * lib/malloc/scratch_buffer.h (struct scratch_buffer): Use an union instead of a max_align_t array for __space, so that __space is the same size on all platforms. * malloc/scratch_buffer_grow_preserve.c (__libc_scratch_buffer_grow_preserve): Likewise. [BZ #22183] * include/gnu-versions.h (_GNU_GLOB_INTERFACE_VERSION): Increase version to 2. * posix/Makefile (routines): Add glob-lstat-compat and glob64-lstat-compat. * posix/Versions (GLIBC_2.27, glob, glob64): Add symbol version. * posix/glob-lstat-compat.c: New file. * posix/glob64-lstat-compat.c: Likewise. * posix/tst-glob_lstat_compat.c: Likewise. * sysdeps/unix/sysv/linux/glob-lstat-compat.c: Likewise. * sysdeps/unix/sysv/linux/alpha/glob-lstat-compat.c: Likewise. * sysdeps/unix/sysv/linux/glob64-lstat-compat.c: Likewise. * sysdeps/unix/sysv/linux/s390/s390-32/glob64-lstat-compat.c: Likewise. * sysdeps/unix/sysv/linux/alpha/glob.c: Remove file. * sysdeps/unix/sysv/linux/s390/s390-32/glob64.c: Likewise. * posix/glob.c (glob_lstat): New function. (glob): Rename to __glob and add versioned symbol to 2.27. (glob_in_dir): Use glob_lstat. * posix/glob64.c (glob64): Add GLOB_ATTRIBUTE. * sysdeps/unix/sysv/linux/arm/libc.abilist: Likewise. * sysdeps/unix/sysv/linux/glob.c (glob): Add versioned symbol for 2.27. * sysdeps/unix/sysv/linux/glob64.c (glob64): Likewise. * sysdeps/unix/sysv/linux/oldglob.c (GLOB_NO_LSTAT): Define. * sysdeps/unix/sysv/linux/alpha/oldglob.c (__old_glob): Do not use gl_lstat on glob call. * sysdeps/unix/sysv/linux/aarch64/libc.abilist: Add GLIBC_2.27 glob and glob64 symbols. * sysdeps/unix/sysv/linux/alpha/libc.abilist: Likewise. * sysdeps/unix/sysv/linux/hppa/libc.abilist: Likewise. * sysdeps/unix/sysv/linux/i386/libc.abilist: Likewise. * sysdeps/unix/sysv/linux/ia64/libc.abilist: Likewise. * sysdeps/unix/sysv/linux/m68k/coldfire/libc.abilist: Likewise. * sysdeps/unix/sysv/linux/m68k/m680x0/libc.abilist: Likewise. * sysdeps/unix/sysv/linux/microblaze/libc.abilist: Likewise. * sysdeps/unix/sysv/linux/mips/mips32/fpu/libc.abilist: Likewise. * sysdeps/unix/sysv/linux/mips/mips32/nofpu/libc.abilist: Likewise. * sysdeps/unix/sysv/linux/mips/mips64/n32/libc.abilist: Likewise. * sysdeps/unix/sysv/linux/mips/mips64/n64/libc.abilist: Likewise. * sysdeps/unix/sysv/linux/nios2/libc.abilist: Likewise. * sysdeps/unix/sysv/linux/powerpc/powerpc32/fpu/libc.abilist: Likewise. * sysdeps/unix/linux/powerpc/powerpc32/nofpu/libc.abilist: Likewise. * sysdeps/unix/sysv/linux/powerpc/powerpc64/libc.abilist: Likewise. * sysdeps/unix/sysv/linux/s390/s390-32/libc.abilist: Likewise. * sysdeps/unix/sysv/linux/s390/s390-64/libc.abilist: Likewise. * sysdeps/unix/sysv/linux/sh/libc.abilist: Likewise. * sysdeps/unix/sysv/linux/sparc/sparc32/libc.abilist: Likewise. * sysdeps/unix/sysv/linux/sparc/sparc64/libc.abilist: Likewise. * sysdeps/unix/sysv/linux/tile/tilegx/tilegx32/libc.abilist: Likewise. * sysdeps/unix/sysv/linux/tile/tilegx/tilegx64/libc.abilist: Likewise. * sysdeps/unix/sysv/linux/tile/tilepro/libc.abilist: Likewise. * sysdeps/unix/sysv/linux/x86_64/64/libc.abilist: Likewise. * sysdeps/unix/sysv/linux/x86_64/x32/libc.abilist: Likewise. 2017-09-25 H.J. Lu * configure.ac (AS): Require binutils 2.25 or later. * configure: Regenerated. 2017-09-25 Paul Pluzhnikov [BZ #22207] * stdlib/test-atexit-race-common.c (do_test): Minimize required VM size. 2017-09-25 DJ Delorie [BZ #22161] * nscd/netgroupcache.c (addinnetgrX): Release read lock after resetting timeout. 2017-09-25 Stefan Liebler * sysdeps/ieee754/dbl-64/sincos32.h [SINCCOS32_H]: Remove define. [SINCOS32_H]: Define. 2017-09-25 Szabolcs Nagy * math/Versions (expf): New libm symbol at GLIBC_2.27. (exp2f): Likewise. * math/w_exp2f.c: New file. * math/w_expf.c: New file. * math/w_exp2f_compat.c (__exp2f_compat): For compat symbol only. * math/w_expf_compat.c (__expf_compat): Likewise. * sysdeps/ia64/fpu/e_exp2f.S: Add versioned symbols. * sysdeps/ia64/fpu/e_expf.S: Likewise. * sysdeps/unix/sysv/linux/aarch64/libm.abilist: Update. * sysdeps/unix/sysv/linux/alpha/libm.abilist: Likewise. * sysdeps/unix/sysv/linux/arm/libm.abilist: Likewise. * sysdeps/unix/sysv/linux/hppa/libm.abilist: Likewise. * sysdeps/unix/sysv/linux/i386/libm.abilist: Likewise. * sysdeps/unix/sysv/linux/ia64/libm.abilist: Likewise. * sysdeps/unix/sysv/linux/m68k/coldfire/libm.abilist: Likewise. * sysdeps/unix/sysv/linux/m68k/m680x0/libm.abilist: Likewise. * sysdeps/unix/sysv/linux/microblaze/libm.abilist: Likewise. * sysdeps/unix/sysv/linux/mips/mips32/libm.abilist: Likewise. * sysdeps/unix/sysv/linux/mips/mips64/libm.abilist: Likewise. * sysdeps/unix/sysv/linux/nios2/libm.abilist: Likewise. * sysdeps/unix/sysv/linux/powerpc/powerpc32/fpu/libm.abilist: Likewise. * sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/libm.abilist: Likewise. * sysdeps/unix/sysv/linux/powerpc/powerpc64/libm-le.abilist: Likewise. * sysdeps/unix/sysv/linux/powerpc/powerpc64/libm.abilist: Likewise. * sysdeps/unix/sysv/linux/s390/s390-32/libm.abilist: Likewise. * sysdeps/unix/sysv/linux/s390/s390-64/libm.abilist: Likewise. * sysdeps/unix/sysv/linux/sh/libm.abilist: Likewise. * sysdeps/unix/sysv/linux/sparc/sparc32/libm.abilist: Likewise. * sysdeps/unix/sysv/linux/sparc/sparc64/libm.abilist: Likewise. * sysdeps/unix/sysv/linux/tile/tilegx/tilegx32/libm.abilist: Likewise. * sysdeps/unix/sysv/linux/tile/tilegx/tilegx64/libm.abilist: Likewise. * sysdeps/unix/sysv/linux/tile/tilepro/libm.abilist: Likewise. * sysdeps/unix/sysv/linux/x86_64/64/libm.abilist: Likewise. * sysdeps/unix/sysv/linux/x86_64/x32/libm.abilist: Likewise. 2017-09-25 Szabolcs Nagy * math/Makefile (type-float-routines): Add math_errf and e_exp2f_data. * sysdeps/aarch64/fpu/math_private.h (TOINT_INTRINSICS): Define. (roundtoint, converttoint): Likewise. * sysdeps/ieee754/flt-32/e_expf.c: New implementation. * sysdeps/ieee754/flt-32/e_exp2f.c: New implementation. * sysdeps/ieee754/flt-32/e_exp2f_data.c: New file. * sysdeps/ieee754/flt-32/math_config.h: New file. * sysdeps/ieee754/flt-32/math_errf.c: New file. * sysdeps/ieee754/flt-32/t_exp2f.h: Remove. * sysdeps/i386/fpu/e_exp2f_data.c: New file. * sysdeps/i386/fpu/math_errf.c: New file. * sysdeps/ia64/fpu/e_exp2f_data.c: New file. * sysdeps/ia64/fpu/math_errf.c: New file. * sysdeps/m68k/m680x0/fpu/e_exp2f_data.c: New file. * sysdeps/m68k/m680x0/fpu/math_errf.c: New file. 2017-09-24 Samuel Thibault * sysdeps/mach/hurd/dl-sysdep.c (check_no_hidden): New macro. (__open, __close, __libc_read, __libc_write, __writev, __libc_lseek64, __mmap, __fxstat64, __xstat64, __access, __access_noerrno, __getpid, __getcwd, __sbrk, __strtoul_internal, _exit, abort): Use check_no_hidden to make sure that these symbols are defined. * sysdeps/mach/hurd/bits/socket.h: Include instead of (__need_NULL): Do not define. (__ss_aligntype): Use __WORDSIZE instead of ULONG_MAX to determine alignment. [!__USE_MISC] (pseudo_AF_XTP, pseudo_AF_RTIP, pseudo_AF_PIP, CMGROUP_MAX, cmsgcred): Do not define. (CMSG_FIRSTHDR, __cmsg_nxthdr): Use (struct cmsghdr *) 0 instead of NULL. * bits/socket.h: Likewise. * sysdeps/unix/clock_gettime.c (realtime_gettime, __clock_gettime): Use __gettimeofday instead of gettimeofday. * sysdeps/unix/clock_settime.c (__clock_settime): Use __settimeofday instead of settimeofday. 2017-09-22 Joseph Myers * sysdeps/ieee754/flt-32/s_asinhf.c: Include . (asinhf): Define using libm_alias_float. * sysdeps/ieee754/flt-32/s_atanf.c: Include . (atanf): Define using libm_alias_float. * sysdeps/ieee754/flt-32/s_cbrtf.c: Include . (cbrtf): Define using libm_alias_float. * sysdeps/ieee754/flt-32/s_ceilf.c: Include . (ceilf): Define using libm_alias_float. * sysdeps/ieee754/flt-32/s_copysignf.c: Include . (copysignf): Define using libm_alias_float. * sysdeps/ieee754/flt-32/s_cosf.c: Include . (cosf): Define using libm_alias_float. * sysdeps/ieee754/flt-32/s_erff.c: Include . (erff): Define using libm_alias_float. (erfcf): Likewise. * sysdeps/ieee754/flt-32/s_expm1f.c: Include . (expm1f): Define using libm_alias_float. * sysdeps/ieee754/flt-32/s_fabsf.c: Include . (fabsf): Define using libm_alias_float. * sysdeps/ieee754/flt-32/s_floorf.c: Include . (floorf): Define using libm_alias_float. * sysdeps/ieee754/flt-32/s_frexpf.c: Include . (frexpf): Define using libm_alias_float. * sysdeps/ieee754/flt-32/s_fromfpf.c (fromfpf): Define using libm_alias_float. * sysdeps/ieee754/flt-32/s_fromfpf_main.c: Include . * sysdeps/ieee754/flt-32/s_fromfpxf.c (fromfpxf): Define using libm_alias_float. * sysdeps/ieee754/flt-32/s_getpayloadf.c: Include . (getpayloadf): Define using libm_alias_float. * sysdeps/ieee754/flt-32/s_llrintf.c: Include . (llrintf): Define using libm_alias_float. * sysdeps/ieee754/flt-32/s_llroundf.c: Include . (llroundf): Define using libm_alias_float. * sysdeps/ieee754/flt-32/s_logbf.c: Include . (logbf): Define using libm_alias_float. * sysdeps/ieee754/flt-32/s_lrintf.c: Include . (lrintf): Define using libm_alias_float. * sysdeps/ieee754/flt-32/s_lroundf.c: Include . (lroundf): Define using libm_alias_float. * sysdeps/ieee754/flt-32/s_modff.c: Include . (modff): Define using libm_alias_float. * sysdeps/ieee754/flt-32/s_nearbyintf.c: Include . (nearbyintf): Define using libm_alias_float. * sysdeps/ieee754/flt-32/s_nextafterf.c: Include . (nextafterf): Define using libm_alias_float. * sysdeps/ieee754/flt-32/s_nextupf.c: Include . (nextupf): Define using libm_alias_float. * sysdeps/ieee754/flt-32/s_remquof.c: Include . (remquof): Define using libm_alias_float. * sysdeps/ieee754/flt-32/s_rintf.c: Include . (rintf): Define using libm_alias_float. * sysdeps/ieee754/flt-32/s_roundevenf.c: Include . (roundevenf): Define using libm_alias_float. * sysdeps/ieee754/flt-32/s_roundf.c: Include . (roundf): Define using libm_alias_float. * sysdeps/ieee754/flt-32/s_setpayloadf.c (setpayloadf): Define using libm_alias_float. * sysdeps/ieee754/flt-32/s_setpayloadf_main.c: Include . * sysdeps/ieee754/flt-32/s_setpayloadsigf.c (setpayloadsigf): Define using libm_alias_float. * sysdeps/ieee754/flt-32/s_sincosf.c: Include . (sincosf): Define using libm_alias_float. * sysdeps/ieee754/flt-32/s_sinf.c: Include . (sinf): Define using libm_alias_float. * sysdeps/ieee754/flt-32/s_tanf.c: Include . (tanf): Define using libm_alias_float. * sysdeps/ieee754/flt-32/s_tanhf.c: Include . (tanhf): Define using libm_alias_float. * sysdeps/ieee754/flt-32/s_totalorderf.c: Include . (totalorderf): Define using libm_alias_float. * sysdeps/ieee754/flt-32/s_totalordermagf.c: Include . (totalordermagf): Define using libm_alias_float. * sysdeps/ieee754/flt-32/s_truncf.c: Include . (truncf): Define using libm_alias_float. * sysdeps/ieee754/flt-32/s_ufromfpf.c (ufromfpf): Define using libm_alias_float. * sysdeps/ieee754/flt-32/s_ufromfpxf.c (ufromfpxf): Define using libm_alias_float. 2017-09-22 Gabriel F. T. Gomes [BZ #22146] math/math.h: Let fpclassify use the builtin in C++ mode, even when optimazing for size. 2017-09-22 Joseph Myers * csu/Makefile (generated): Do not add version-info.h. (before-compile): Likewise. (all-Banner-files): Remove variable. ($(objpfx)version-info.h): Remove rule. * csu/version.c (banner): Do not include "version-info.h". * libidn/Banner: Remove. * manual/contrib.texi (Simon Josefsson): New entry. 2017-09-21 Gabriel F. T. Gomes * sysdeps/ieee754/ldbl-128/e_lgammal_r.c (__ieee754_lgammal_r): Remove conditionals on LDBL_MANT_DIG. * sysdeps/ieee754/ldbl-128ibm/e_lgammal_r.c (__ieee754_lgammal_r): Likewise. 2017-09-21 Gabriel F. T. Gomes * sysdeps/ieee754/ldbl-128ibm/e_expl.c: Remove definitions of _Float128 and L(). * sysdeps/ieee754/ldbl-128ibm/e_j0l.c: Remove definitions of _Float128 and L(). Replace _Float128 with long double and L(x) with xL, throughout the file. * sysdeps/ieee754/ldbl-128ibm/e_j1l.c: Likewise. * sysdeps/ieee754/ldbl-128ibm/e_lgammal_r.c: Likewise. * sysdeps/ieee754/ldbl-128ibm/s_cbrtl.c: Likewise. * sysdeps/ieee754/ldbl-128ibm/t_expl.h: Likewise. 2017-09-21 Gabriel F. T. Gomes * sysdeps/ieee754/ldbl-128ibm/e_expl.c: Include tables from sysdeps/ieee754/ldbl-128ibm. * sysdeps/ieee754/ldbl-128ibm/e_j0l.c: Copy contents from the equivalent implementation in sysdeps/ieee754/ldbl-128/ instead of including it. Keep _Float128 and L() intact. These will be reviewed by a separate patch. * sysdeps/ieee754/ldbl-128ibm/e_j1l.c: Likewise. * sysdeps/ieee754/ldbl-128ibm/e_lgammal_r.c: Likewise. * sysdeps/ieee754/ldbl-128ibm/s_cbrtl.c: Likewise. * sysdeps/ieee754/ldbl-128ibm/t_expl.h: Likewise. 2017-09-21 Gabriel F. T. Gomes * sysdeps/powerpc/powerpc64/fpu/multiarch/s_finite.c (__finitef128): Define to __redirect___finitef128. * sysdeps/powerpc/powerpc64/fpu/multiarch/s_isinf.c (__isinff128): Define to __redirect___isinff128. * sysdeps/powerpc/powerpc64/fpu/multiarch/s_isnan.c (__isnanf128): Define to __redirect___isnanf128. 2017-09-21 Gabriel F. T. Gomes * sysdeps/powerpc/powerpc64le/Makefile (CFLAGS-tst-strtod-nan-locale.c): New variable. (CFLAGS-tst-wcstod-nan-locale.c): New variable. 2017-09-21 Paul Pluzhnikov Carlos O'Donell [BZ #22180] * stdlib/Makefile (tests): Add test-dlclose-exit-race. * stdlib/test-dlclose-exit-race.c: New file. * stdlib/test-dlclose-exit-race-helper.c: New file. * stdlib/exit.c (__run_exit_handlers): Mark slot as free. 2017-09-21 Joseph Myers * crypt/Banner: Remove file. * nptl/Banner: Likewise. * resolv/Banner: Likewise. * soft-fp/Banner: Likewise. * nptl/Makefile ($(objpfx)banner.h): Remove rule. ($(objpfx)version.d): Remove dependency on banner.h. ($(objpfx)version.os): Likewise. * nptl/version.c (banner): Do not include banner.h. * manual/contrib.texi: Update entries for Richard Henderson, Jakub Jelinek and BIND code. 2017-09-20 Paul Pluzhnikov Carlos O'Donell * support/xdlfcn.h: New file. * support/xdlfcn.c: New file. * support/Makefile (libsupport-routines): Add xdlfcn. * stdlib/tst-tls-atexit.c: Use xdlopen, xdlsym, xdlclose. 2017-09-20 Joseph Myers [BZ #20142] * sysdeps/x86_64/fpu/multiarch/Makefile (libm-sysdep_routines): Add s_trunc-c, s_truncf-c, s_trunc-sse4_1 and s_truncf-sse4_1. * sysdeps/x86_64/fpu/multiarch/s_trunc-c.c: New file. * sysdeps/x86_64/fpu/multiarch/s_trunc-sse4_1.S: Likewise. * sysdeps/x86_64/fpu/multiarch/s_trunc.c: Likewise. * sysdeps/x86_64/fpu/multiarch/s_truncf-c.c: Likewise. * sysdeps/x86_64/fpu/multiarch/s_truncf-sse4_1.S: Likewise. * sysdeps/x86_64/fpu/multiarch/s_truncf.c: Likewise. 2017-09-20 Paul Pluzhnikov Ricky Zhou Anoop V Chakkalakkal [BZ #14333] * stdlib/cxa_atexit.c (__internal_atexit): Use __exit_funcs_lock. Remove atomics. (__new_exitfn): Fail registration when we finished at_exit processing. * stdlib/cxa_finalize.c (__cxa_finalize): Likewise. * stdlib/on_exit.c (__on_exit): Likewise. * stdlib/exit.c (__exit_funcs_done): New variable. (__run_exit_handlers): Use __exit_funcs_lock. * stdlib/exit.h (__exit_funcs_lock, __exit_funcs_done): New declarations. * stdlib/Makefile (test-atexit-race, test-quick_at_exit-race) (test-cxa_atexit-race, test-on_exit-race): New tests. * stdlib/test-atexit-race-common.c: New file. * stdlib/test-atexit-race.c: New file. * stdlib/test-at_quick_exit-race.c: New file. * stdlib/test-cxa_atexit-race.c: New file. * stdlib/test-on_exit-race.c: New file. 2017-09-20 Szabolcs Nagy * benchtests/Makefile: Add exp2f and log2f benchmarks. * benchtests/exp2f-inputs: Copy of expf-inputs. * benchtests/log2f-inputs: Copy of logf-inputs. 2017-09-19 Joseph Myers * sysdeps/unix/sysv/linux/fexecve.c (fexecve) [__NR_execveat]: Explicitly take address of first element of array arguments in call to INLINE_SYSCALL. 2017-09-19 Andreas Schwab [BZ #22134] * sysdeps/unix/sysv/linux/fexecve.c (fexecve) [__NR_execveat]: Try execveat first. [!__ASSUME_EXECVEAT]: Fall back to /proc if execveat is unimplemented. * sysdeps/unix/sysv/linux/kernel-features.h (__ASSUME_EXECVEAT) [__LINUX_KERNEL_VERSION >= 0x031300]: Define. * sysdeps/unix/sysv/linux/alpha/kernel-features.h (__ASSUME_EXECVEAT) [__LINUX_KERNEL_VERSION < 0x040200]: Undef. * sysdeps/unix/sysv/linux/hppa/kernel-features.h (__ASSUME_EXECVEAT) [__LINUX_KERNEL_VERSION < 0x040000]: Undef. * sysdeps/unix/sysv/linux/microblaze/kernel-features.h (__ASSUME_EXECVEAT) [__LINUX_KERNEL_VERSION < 0x040000]: Undef. * posix/Makefile (tests): Add tst-fexecve. * posix/tst-fexecve.c: New file. 2017-09-19 Wilco Dijkstra * benchtests/Makefile: Add logf benchmark. * benchtests/logf-inputs: Add reduced trace from wrf_r. 2017-09-19 Wilco Dijkstra * benchtests/Makefile: Add expf benchmark. * benchtests/expf-inputs: Add reduced trace from wrf_r. 2017-09-19 Wilco Dijkstra * csu/Makefile: Add -funwind-tables to libc-start.c. * debug/Makefile: Add -funwind-tables to backtrace.c. * sysdeps/aarch64/Makefile: Remove CFLAGS-backtrace.c. * sysdeps/arm/Makefile: Likewise. * sysdeps/i386/Makefile: Likewise. * sysdeps/m68k/Makefile: Likewise. * sysdeps/mips/Makefile: Likewise. * sysdeps/nios2/Makefile: Likewise. * sysdeps/sh/Makefile: Likewise. * sysdeps/sparc/Makefile: Likewise. 2017-09-19 Joseph Myers * benchtests/Makefile (bench-math): Add trunc and truncf. (CFLAGS-bench-trunc.c): New variable. (CFLAGS-bench-truncf.c): Likewise. * benchtests/trunc-inputs: New file. * benchtests/truncf-inputs: Likewise. 2017-09-19 Rajalakshmi Srinivasaraghavan * sysdeps/powerpc/powerpc64/power8/memset.S: Avoid misaligned stores. 2017-09-18 Joseph Myers * sysdeps/ieee754/ldbl-opt/w_exp10l_compat.c [LIBM_SVID_COMPAT && !LONG_DOUBLE_COMPAT (libm, GLIBC_2_1)] (weak_alias): Undefine and redefine. [LIBM_SVID_COMPAT && !LONG_DOUBLE_COMPAT (libm, GLIBC_2_1)] (exp10l): Define as weak alias. * sysdeps/ieee754/ldbl-opt/w_remainderl_compat.c [LIBM_SVID_COMPAT && !LONG_DOUBLE_COMPAT (libm, GLIBC_2_0)] (weak_alias): Undefine and redefine. [LIBM_SVID_COMPAT && !LONG_DOUBLE_COMPAT (libm, GLIBC_2_0)] (remainderl): Define as weak alias. * math/s_fmal.c: Include . (fmal): Define using libm_alias_ldouble. * math/w_acoshl_compat.c: Include . (acoshl): Define using libm_alias_ldouble. * math/w_acosl_compat.c: Include . (acosl): Define using libm_alias_ldouble. * math/w_asinl_compat.c: Include . (asinl): Define using libm_alias_ldouble. * math/w_atan2l_compat.c: Include . (atan2l): Define using libm_alias_ldouble. * math/w_atanhl_compat.c: Include . (atanhl): Define using libm_alias_ldouble. * math/w_coshl_compat.c: Include . (coshl): Define using libm_alias_ldouble. * math/w_exp10l_compat.c: Include . (exp10l): Define using libm_alias_ldouble. * math/w_exp2l_compat.c: Include . (exp2l): Define using libm_alias_ldouble. * math/w_expl_compat.c: Include . (expl): Define using libm_alias_ldouble. * math/w_fmodl_compat.c: Include . (fmodl): Define using libm_alias_ldouble. * math/w_hypotl_compat.c: Include . (hypotl): Define using libm_alias_ldouble. * math/w_j0l_compat.c: Include . (j0l): Define using libm_alias_ldouble. (y0l): Likewise. * math/w_j1l_compat.c: Include . (j1l): Define using libm_alias_ldouble. (y1l): Likewise. * math/w_jnl_compat.c: Include . (jnl): Define using libm_alias_ldouble. (ynl): Likewise. * math/w_log10l_compat.c: Include . (log10l): Define using libm_alias_ldouble. * math/w_log2l_compat.c: Include . (log2l): Define using libm_alias_ldouble. * math/w_logl_compat.c: Include . (logl): Define using libm_alias_ldouble. * math/w_powl_compat.c: Include . (powl): Define using libm_alias_ldouble. * math/w_remainderl_compat.c: Include . (remainderl): Define using libm_alias_ldouble. * math/w_sinhl_compat.c: Include . (sinhl): Define using libm_alias_ldouble. * math/w_sqrtl_compat.c: Include . (sqrtl): Define using libm_alias_ldouble. * math/w_tgammal_compat.c: Include . (tgammal): Define using libm_alias_ldouble. * sysdeps/ieee754/ldbl-opt/w_exp10l_compat.c [LIBM_SVID_COMPAT] (exp10l): Do not use long_double_symbol here. * sysdeps/ieee754/ldbl-opt/w_remainderl_compat.c [LIBM_SVID_COMPAT] (remainderl): Likewise. * sysdeps/ieee754/ldbl-opt/s_fmal.c: Remove. * sysdeps/ieee754/ldbl-opt/w_acoshl_compat.c: Likewise. * sysdeps/ieee754/ldbl-opt/w_acosl_compat.c: Likewise. * sysdeps/ieee754/ldbl-opt/w_asinl_compat.c: Likewise. * sysdeps/ieee754/ldbl-opt/w_atan2l_compat.c: Likewise. * sysdeps/ieee754/ldbl-opt/w_atanhl_compat.c: Likewise. * sysdeps/ieee754/ldbl-opt/w_coshl_compat.c: Likewise. * sysdeps/ieee754/ldbl-opt/w_expl_compat.c: Likewise. * sysdeps/ieee754/ldbl-opt/w_fmodl_compat.c: Likewise. * sysdeps/ieee754/ldbl-opt/w_hypotl_compat.c: Likewise. * sysdeps/ieee754/ldbl-opt/w_j0l_compat.c: Likewise. * sysdeps/ieee754/ldbl-opt/w_j1l_compat.c: Likewise. * sysdeps/ieee754/ldbl-opt/w_jnl_compat.c: Likewise. * sysdeps/ieee754/ldbl-opt/w_log10l_compat.c: Likewise. * sysdeps/ieee754/ldbl-opt/w_log2l_compat.c: Likewise. * sysdeps/ieee754/ldbl-opt/w_logl_compat.c: Likewise. * sysdeps/ieee754/ldbl-opt/w_powl_compat.c: Likewise. * sysdeps/ieee754/ldbl-opt/w_sinhl_compat.c: Likewise. * sysdeps/ieee754/ldbl-opt/w_sqrtl_compat.c: Likewise. * sysdeps/ieee754/ldbl-opt/w_tgammal_compat.c: Likewise. 2017-09-18 Wang Boshi (tiny change) * sysdeps/aarch64/start.S: Use MOVL instead of literal pools. * sysdeps/aarch64/sysdep.h (MOVL): Add MOVL macro. 2017-09-17 Samuel Thibault * io/read.c (read): Add libc_hidden_weak. * sysdeps/mach/hurd/read.c (read): Likewise. * io/write.c (write): Likewise. * sysdeps/mach/hurd/write.c (write): Likewise. * io/pread64.c (__pread64): Likewise. * sysdeps/mach/hurd/pread64.c (__pread64): Likewise. * posix/pread64.c (__pread64): Add libc_hidden_def. 2017-09-16 Siddhesh Poyarekar * benchtests/scripts/compare_strings.py: New option -g. (draw_graph): Print a message that a graph is being generated. (process_results): Generate graph only if -g is passed. (main): Process option -g. * benchtests/scripts/compare_strings.py (process_results): Better spacing for output. * benchtests/scripts/compare_strings.py: Use argparse. * benchtests/README: Document existence of compare_strings.py. 2017-09-15 Joseph Myers * math/s_fma.c: Include . (fma): Define using libm_alias_double. * math/s_nextafter.c: Include . (nextafter): Define using libm_alias_double. * math/w_acos_compat.c: Include . (acos): Define using libm_alias_double. * math/w_acosh_compat.c: Include . (aocsh): Define using libm_alias_double. * math/w_asin_compat.c: Include . (asin): Define using libm_alias_double. * math/w_atan2_compat.c: Include . (atan2): Define using libm_alias_double. * math/w_atanh_compat.c: Include . (atanh): Define using libm_alias_double. * math/w_cosh_compat.c: Include . (cosh): Define using libm_alias_double. * math/w_exp10_compat.c: Include . (exp10): Define using libm_alias_double. * math/w_exp2_compat.c: Include . (exp2): Define using libm_alias_double. * math/w_exp_compat.c: Include . (exp): Define using libm_alias_double. * math/w_fmod_compat.c: Include . (fmod): Define using libm_alias_double. * math/w_hypot_compat.c: Include . (hypot): Define using libm_alias_double. * math/w_j0_compat.c: Include . (j0): Define using libm_alias_double. (y0): Likewise. * math/w_j1_compat.c: Include . (j1): Define using libm_alias_double. (y1): Likewise. * math/w_jn_compat.c: Include . (jn): Define using libm_alias_double. (yn): Likewise. * math/w_log10_compat.c: Include . (log10): Define using libm_alias_double. * math/w_log2_compat.c: Include . (log2): Define using libm_alias_double. * math/w_log_compat.c: Include . (log): Define using libm_alias_double. * math/w_pow_compat.c: Include . (pow): Define using libm_alias_double. * math/w_remainder_compat.c: Include . (remainder): Define using libm_alias_double. * math/w_sinh_compat.c: Include . (sinh): Define using libm_alias_double. * math/w_sqrt_compat.c: Include . (sqrt): Define using libm_alias_double. * math/w_tgamma_compat.c: Include . (tgamma): Define using libm_alias_double. * sysdeps/ieee754/ldbl-opt/s_nextafter.c [LONG_DOUBLE_COMPAT(libm, GLIBC_2_0)] (nextafterl): Do not define compat symbol here. * sysdeps/ieee754/ldbl-opt/w_exp10_compat.c [LONG_DOUBLE_COMPAT(libm, GLIBC_2_1)] (exp10l): Likewise. * sysdeps/ieee754/ldbl-opt/w_remainder_compat.c [LONG_DOUBLE_COMPAT(libm, GLIBC_2_0)] (remainderl): Likewise. * sysdeps/ieee754/ldbl-opt/w_acos_compat.c: Remove. * sysdeps/ieee754/ldbl-opt/w_acosh_compat.c: Likewise. * sysdeps/ieee754/ldbl-opt/w_asin_compat.c: Likewise. * sysdeps/ieee754/ldbl-opt/w_atan2_compat.c: Likewise. * sysdeps/ieee754/ldbl-opt/w_atanh_compat.c: Likewise. * sysdeps/ieee754/ldbl-opt/w_cosh_compat.c: Likewise. * sysdeps/ieee754/ldbl-opt/w_exp_compat.c: Likewise. * sysdeps/ieee754/ldbl-opt/w_fmod_compat.c: Likewise. * sysdeps/ieee754/ldbl-opt/w_hypot_compat.c: Likewise. * sysdeps/ieee754/ldbl-opt/w_j0_compat.c: Likewise. * sysdeps/ieee754/ldbl-opt/w_j1_compat.c: Likewise. * sysdeps/ieee754/ldbl-opt/w_jn_compat.c: Likewise. * sysdeps/ieee754/ldbl-opt/w_log10_compat.c: Likewise. * sysdeps/ieee754/ldbl-opt/w_log2_compat.c: Likewise. * sysdeps/ieee754/ldbl-opt/w_log_compat.c: Likewise. * sysdeps/ieee754/ldbl-opt/w_pow_compat.c: Likewise. * sysdeps/ieee754/ldbl-opt/w_sinh_compat.c: Likewise. * sysdeps/ieee754/ldbl-opt/w_sqrt_compat.c: Likewise. * sysdeps/ieee754/ldbl-opt/w_tgamma_compat.c: Likewise. * math/e_acoshl.c: Remove. * math/e_acosl.c: Likewise. * math/e_asinl.c: Likewise. * math/e_atan2l.c: Likewise. * math/e_atanhl.c: Likewise. * math/e_coshl.c: Likewise. * math/e_expl.c: Likewise. * math/e_fmodl.c: Likewise. * math/e_gammal_r.c: Likewise. * math/e_hypotl.c: Likewise. * math/e_j0l.c: Likewise. * math/e_j1l.c: Likewise. * math/e_jnl.c: Likewise. * math/e_lgammal_r.c: Likewise. * math/e_log10l.c: Likewise. * math/e_log2l.c: Likewise. * math/e_logl.c: Likewise. * math/e_powl.c: Likewise. * math/e_rem_pio2l.c: Likewise. * math/e_sinhl.c: Likewise. * math/e_sqrtf128.c: Likewise. * math/e_sqrtl.c: Likewise. * math/k_cosl.c: Likewise. * math/k_sinl.c: Likewise. * math/k_tanl.c: Likewise. * math/s_asinhl.c: Likewise. * math/s_atanl.c: Likewise. * math/s_cbrtl.c: Likewise. * math/s_erfl.c: Likewise. * math/s_expm1l.c: Likewise. * math/s_log1pl.c: Likewise. * math/s_tanhl.c: Likewise. 2017-09-15 Tulio Magno Quites Machado Filho [BZ #21745] * sysdeps/powerpc/powerpc64/fpu/multiarch/Makefile: [$(subdir) = math] (sysdep_calls): New variable. Has the previous contents of sysdep_routines, but re-sorted.. [$(subdir) = math] (sysdep_routines): Re-use the contents from sysdep_calls. [$(subdir) = math] (libm-sysdep_routines): Remove the functions defined in sysdep_calls and replace by the respective m_* names. * sysdeps/powerpc/powerpc64/fpu/multiarch/s_isnan-ppc64.S: (compat_symbol): Undefine to avoid duplicated compat symbols in libc. 2017-09-15 Joseph Myers * math/s_fmaf.c: Include . (fmaf): Define using libm_alias_float. * math/w_acosf_compat.c: Include . (acosf): Define using libm_alias_float. * math/w_acoshf_compat.c: Include . (acoshf): Define using libm_alias_float. * math/w_asinf_compat.c: Include . (asinf): Define using libm_alias_float. * math/w_atan2f_compat.c: Include . (atan2f): Define using libm_alias_float. * math/w_atanhf_compat.c: Include . (atanhf): Define using libm_alias_float. * math/w_coshf_compat.c: Include . (coshf): Define using libm_alias_float. * math/w_exp10f_compat.c: Include . (exp10f): Define using libm_alias_float. * math/w_fmodf_compat.c: Include . (fmodf): Define using libm_alias_float. * math/w_hypotf_compat.c: Include . (hypotf): Define using libm_alias_float. * math/w_j0f_compat.c: Include . (j0f): Define using libm_alias_float. (y0f): Likewise. * math/w_j1f_compat.c: Include . (j1f): Define using libm_alias_float. (y1f): Likewise. * math/w_jnf_compat.c: Include . (jnf): Define using libm_alias_float. (ynf): Likewise. * math/w_log10f_compat.c: Include . (log10f): Define using libm_alias_float. * math/w_log2f_compat.c: Include . (log2f): Define using libm_alias_float. * math/w_logf_compat.c: Include . (logf): Define using libm_alias_float. * math/w_powf_compat.c: Include . (powf): Define using libm_alias_float. * math/w_remainderf_compat.c: Include . (remainderf): Define using libm_alias_float. * math/w_sinhf_compat.c: Include . (sinhf): Define using libm_alias_float. * math/w_sqrtf_compat.c: Include . (sqrtf): Define using libm_alias_float. * math/w_tgammaf_compat.c: Include . (tgammaf): Define using libm_alias_float. 2017-09-14 Joseph Myers * include/math.h (roundeven): Change hidden_proto call to __roundeven. * math/w_j0_compat.c (j0): Rename to __j0 and define as weak alias. [NO_LONG_DOUBLE] (__j0l): New strong alias. (y0): Rename to __y0 and define as weak alias. [NO_LONG_DOUBLE] (__y0l): New strong alias. * math/w_j0f_compat.c (j0f): Rename to __j0f and define as weak alias. (y0f): Rename to __y0f and define as weak alias. * math/w_j1_compat.c (j1): Rename to __j1 and define as weak alias. [NO_LONG_DOUBLE] (__j1l): New strong alias. (y1): Rename to __y1 and define as weak alias. [NO_LONG_DOUBLE] (__y1l): New strong alias. * math/w_j1f_compat.c (j1f): Rename to __j1f and define as weak alias. (y1f): Rename to __y1f and define as weak alias. * math/w_jn_compat.c (jn): Rename to __jn and define as weak alias. [NO_LONG_DOUBLE] (__jnl): New strong alias. (yn): Rename to __yn and define as weak alias. [NO_LONG_DOUBLE] (__ynl): New strong alias. * math/w_jnf_compat.c (jnf): Rename to __jnf and define as weak alias. (ynf): Rename to __ynf and define as weak alias. * sysdeps/ieee754/dbl-64/s_fromfp.c (FUNC): Define to __fromfp. (fromfp): Define as weak alias. [NO_LONG_DOUBLE] (__fromfpl): New strong alias. * sysdeps/ieee754/dbl-64/s_fromfpx.c (FUNC): Define to __fromfpx. (fromfpx): Define as weak alias. [NO_LONG_DOUBLE] (__fromfpxl): New strong alias. * sysdeps/ieee754/dbl-64/s_getpayload.c (getpayload): Rename to __getpayload and define as weak alias. [NO_LONG_DOUBLE] (__getpayloadl): New strong alias. * sysdeps/ieee754/dbl-64/s_roundeven.c (roundeven): Rename to __roundeven and define as weak alias. [NO_LONG_DOUBLE] (__roundevenl): New strong alias. * sysdeps/ieee754/dbl-64/s_setpayload.c (FUNC): Define to __setpayload. (setpayload): Define as weak alias. [NO_LONG_DOUBLE] (__setpayloadl): New strong alias. * sysdeps/ieee754/dbl-64/s_setpayloadsig.c (FUNC): Define to __setpayloadsig. (setpayloadsig): Define as weak alias. [NO_LONG_DOUBLE] (__setpayloadsigl): New strong alias. * sysdeps/ieee754/dbl-64/s_totalorder.c (totalorder): Rename to __totalorder and define as weak alias. [NO_LONG_DOUBLE] (__totalorderl): New strong alias. * sysdeps/ieee754/dbl-64/s_totalordermag.c (totalordermag): Rename to __totalordermag and define as weak alias. [NO_LONG_DOUBLE] (__totalordermagl): New strong alias. * sysdeps/ieee754/dbl-64/s_ufromfp.c (FUNC): Define to __ufromfp. (ufromfp): Define as weak alias. [NO_LONG_DOUBLE] (__ufromfpl): New strong alias. * sysdeps/ieee754/dbl-64/s_ufromfpx.c (FUNC): Define to __ufromfpx. (ufromfpx): Define as weak alias. [NO_LONG_DOUBLE] (__ufromfpxl): New strong alias. * sysdeps/ieee754/dbl-64/wordsize-64/s_getpayload.c (getpayload): Rename to __getpayload and define as weak alias. [NO_LONG_DOUBLE] (__getpayloadl): New strong alias. * sysdeps/ieee754/dbl-64/wordsize-64/s_roundeven.c (roundeven): Rename to __roundeven and define as weak alias. [NO_LONG_DOUBLE] (__roundevenl): New strong alias. * sysdeps/ieee754/dbl-64/wordsize-64/s_totalorder.c (totalorder): Rename to __totalorder and define as weak alias. [NO_LONG_DOUBLE] (__totalorderl): New strong alias. * sysdeps/ieee754/dbl-64/wordsize-64/s_totalordermag.c (totalordermag): Rename to __totalordermag and define as weak alias. [NO_LONG_DOUBLE] (__totalordermagl): New strong alias. * sysdeps/ieee754/float128/float128_private.h (__getpayloadl): New macro. (__roundevenl): Likewise. (__totalorderl): Likewise. (__totalordermagl): Likewise * sysdeps/ieee754/float128/s_fromfpf128.c (FUNC): Define to __fromfpf128. (fromfpf128): Define as weak alias. * sysdeps/ieee754/float128/s_fromfpxf128.c (FUNC): Define to __fromfpxf128. (fromfpxf128): Define as weak alias. * sysdeps/ieee754/float128/s_setpayloadf128.c (FUNC): Define to __setpayloadf128. (setpayloadf128): Define as weak alias. * sysdeps/ieee754/float128/s_setpayloadsigf128.c (FUNC): Define to __setpayloadsigf128. (setpayloadsigf128): Define as weak alias. * sysdeps/ieee754/float128/s_ufromfpf128.c (FUNC): Define to __ufromfpf128. (ufromfpf128): Define as weak alias. * sysdeps/ieee754/float128/s_ufromfpxf128.c (FUNC): Define to __ufromfpxf128. (ufromfpxf128): Define as weak alias. * sysdeps/ieee754/flt-32/s_fromfpf.c (FUNC): Define to __fromfpf. (fromfpf): Define as weak alias. * sysdeps/ieee754/flt-32/s_fromfpxf.c (FUNC): Define to __fromfpxf. (fromfpxf): Define as weak alias. * sysdeps/ieee754/flt-32/s_getpayloadf.c (getpayloadf): Rename to __getpayloadf and define as weak alias. * sysdeps/ieee754/flt-32/s_roundevenf.c (roundevenf): Rename to __roundevenf and define as weak alias. * sysdeps/ieee754/flt-32/s_setpayloadf.c (FUNC): Define to __setpayloadf. (setpayloadf): Define as weak alias. * sysdeps/ieee754/flt-32/s_setpayloadsigf.c (FUNC): Define to __setpayloadsigf. (setpayloadsigf): Define as weak alias. * sysdeps/ieee754/flt-32/s_totalorderf.c (totalorderf): Rename to __totalorderf and define as weak alias. * sysdeps/ieee754/flt-32/s_totalordermagf.c (totalordermagf): Rename to __totalordermagf and define as weak alias. * sysdeps/ieee754/flt-32/s_ufromfpf.c (FUNC): Define to __ufromfpf. (ufromfpf): Define as weak alias. * sysdeps/ieee754/flt-32/s_ufromfpxf.c (FUNC): Define to __ufromfpxf. (ufromfpxf): Define as weak alias. * sysdeps/ieee754/ldbl-128/s_fromfpl.c (FUNC): Define to __fromfpl. (fromfpl): Define as weak alias. * sysdeps/ieee754/ldbl-128/s_fromfpxl.c (FUNC): Define to __fromfpxl. (fromfpxl): Define as weak alias. * sysdeps/ieee754/ldbl-128/s_getpayloadl.c (getpayloadl): Rename to __getpayloadl and define as weak alias. * sysdeps/ieee754/ldbl-128/s_roundevenl.c (roundevenl): Rename to __roundevenl and define as weak alias. * sysdeps/ieee754/ldbl-128/s_setpayloadl.c (FUNC): Define to __setpayloadl. (setpayloadl): Define as weak alias. * sysdeps/ieee754/ldbl-128/s_setpayloadsigl.c (FUNC): Define to __setpayloadsigl. (setpayloadsigl): Define as weak alias. * sysdeps/ieee754/ldbl-128/s_totalorderl.c (totalorderl): Rename to __totalorderl and define as weak alias. * sysdeps/ieee754/ldbl-128/s_totalordermagl.c (totalordermagl): Rename to __totalordermagl and define as weak alias. * sysdeps/ieee754/ldbl-128/s_ufromfpl.c (FUNC): Define to __ufromfpl. (ufromfpl): Define as weak alias. * sysdeps/ieee754/ldbl-128/s_ufromfpxl.c (FUNC): Define to __ufromfpxl. (ufromfpxl): Define as weak alias. * sysdeps/ieee754/ldbl-128ibm/s_fromfpl.c (FUNC): Define to __fromfpl. (fromfpl): Define as weak alias. * sysdeps/ieee754/ldbl-128ibm/s_fromfpxl.c (FUNC): Define to __fromfpxl. (fromfpxl): Define as weak alias. * sysdeps/ieee754/ldbl-128ibm/s_getpayloadl.c (getpayloadl): Rename to __getpayloadl and define as weak alias. * sysdeps/ieee754/ldbl-128ibm/s_roundevenl.c (roundevenl): Rename to __roundevenl and define as weak alias. Call __roundeven instead of roundeven. * sysdeps/ieee754/ldbl-128ibm/s_setpayloadl.c (FUNC): Define to __setpayloadl. (setpayloadl): Define as weak alias. * sysdeps/ieee754/ldbl-128ibm/s_setpayloadsigl.c (FUNC): Define to __setpayloadsigl. (setpayloadsigl): Define as weak alias. * sysdeps/ieee754/ldbl-128ibm/s_totalorderl.c (totalorderl): Rename to __totalorderl and define as weak alias. * sysdeps/ieee754/ldbl-128ibm/s_totalordermagl.c (totalordermagl): Rename to __totalordermagl and define as weak alias. * sysdeps/ieee754/ldbl-128ibm/s_ufromfpl.c (FUNC): Define to __ufromfpl. (ufromfpl): Define as weak alias. * sysdeps/ieee754/ldbl-128ibm/s_ufromfpxl.c (FUNC): Define to __ufromfpxl. (ufromfpxl): Define as weak alias. * sysdeps/ieee754/ldbl-96/s_fromfpl.c (FUNC): Define to __fromfpl. (fromfpl): Define as weak alias. * sysdeps/ieee754/ldbl-96/s_fromfpxl.c (FUNC): Define to __fromfpxl. (fromfpxl): Define as weak alias. * sysdeps/ieee754/ldbl-96/s_getpayloadl.c (getpayloadl): Rename to __getpayloadl and define as weak alias. * sysdeps/ieee754/ldbl-96/s_roundevenl.c (roundevenl): Rename to __roundevenl and define as weak alias. * sysdeps/ieee754/ldbl-96/s_setpayloadl.c (FUNC): Define to __setpayloadl. (setpayloadl): Define as weak alias. * sysdeps/ieee754/ldbl-96/s_setpayloadsigl.c (FUNC): Define to __setpayloadsigl. (setpayloadsigl): Define as weak alias. * sysdeps/ieee754/ldbl-96/s_totalorderl.c (totalorderl): Rename to __totalorderl and define as weak alias. * sysdeps/ieee754/ldbl-96/s_totalordermagl.c (totalordermagl): Rename to __totalordermagl and define as weak alias. * sysdeps/ieee754/ldbl-96/s_ufromfpl.c (FUNC): Define to __ufromfpl. (ufromfpl): Define as weak alias. * sysdeps/ieee754/ldbl-96/s_ufromfpxl.c (FUNC): Define to __ufromfpxl. (ufromfpxl): Define as weak alias. 2017-09-14 Siddhesh Poyarekar * benchtests/bench-string.h (realloc_bufs): New function. (test_init): Call it. * benchtests/bench-memset-large.c (do_test): Likewise. * benchtests/bench-memset.c (do_test): Likewise. * benchtests/bench-memset-large.c: Print output in JSON format. * benchtests/bench-memset.c: Likewise. 2017-09-14 Mike FABIAN [BZ #21084] * benchtests/strcoll-inputs/filelist#en_US.UTF-8: Add IBM858 and ibm858.c. * iconvdata/Makefile: Add IBM858. * iconvdata/gconv-modules: Likewise. * iconvdata/tst-tables.sh: Likewise. * iconvdata/ibm858.c: New file. * localedata/charmaps/IBM858: Likewise. 2017-09-14 Akhilesh Kumar [BZ #22023] * locales/niu_NZ (LC_TIME): copy "niu_NU". * locales/niu_NZ (LC_MESSAGES): copy "niu_NU". 2017-09-14 Mike FABIAN [BZ #22112] * localedata/locales/az_AZ(LC_TELEPHONE): Fix int_select and add tel_int_fmt. 2017-09-14 Joseph Myers * sysdeps/generic/libm-alias-float128.h: New file. * sysdeps/generic/math-type-macros-float128.h: Include . [!declare_mgen_alias] (declare_mgen_alias): Define macro. 2017-09-13 Joseph Myers * sysdeps/generic/libm-alias-ldouble.h: New file. * sysdeps/ieee754/ldbl-opt/libm-alias-ldouble.h: Likewise. * sysdeps/ieee754/ldbl-opt/math-type-macros-ldouble.h: Remove. * sysdeps/generic/math-type-macros-ldouble.h: Include . [!declare_mgen_alias] (declare_mgen_alias): Define to use libm_alias_ldouble. 2017-09-13 Szabolcs Nagy * sysdeps/ieee754/dbl-64/w_exp_compat.c: Move to... * math/w_exp_compat.c: ... here. * sysdeps/ieee754/flt-32/w_expf_compat.c: Move to... * math/w_expf_compat.c: ... here. * sysdeps/ieee754/ldbl-128/w_expl_compat.c: Move to... * math/w_expl_compat.c: ... here. * sysdeps/ieee754/ldbl-128ibm/w_expl_compat.c: Remove. * sysdeps/ieee754/ldbl-96/w_expl_compat.c: Remove. * sysdeps/ieee754/ldbl-opt/w_exp_compat.c: Use the new path. * sysdeps/ieee754/ldbl-opt/w_expl_compat.c: Likewise. 2017-09-13 Joseph Myers * math/w_scalbln_template.c (strong_alias): Do not undefine and redefine. * sysdeps/ieee754/ldbl-opt/s_ldexp.c (declare_mgen_alias): Remove macro. (ldexpl): Only define as compat symbol for libc, not libm. (scalbnl): Define as compat symbol for libc here. * sysdeps/ieee754/ldbl-opt/s_ldexpl.c (declare_mgen_alias): Only define for [IS_IN (libc)]. (__ldexpl_2): Remove alias. (ldexpl): Only define with long_double_symbol if [IS_IN (libc)]. (scalbnl): Likewise. Use __wrap_scalbnl not __ldexpl_2 as base name in long_double_symbol call. * sysdeps/ieee754/ldbl-opt/s_log1p.c: Remove file. * sysdeps/ieee754/ldbl-opt/s_scalbln.c: Likewise. * sysdeps/ieee754/ldbl-opt/s_scalbn.c: Likewise. * sysdeps/ieee754/ldbl-opt/w_log1p.c: Likewise. * sysdeps/ieee754/ldbl-opt/w_scalbln.c (declare_mgen_alias): Remove macro. [IS_IN (libc) && LONG_DOUBLE_COMPAT (libc, GLIBC_2_1)] (scalblnl): Define as compat symbol. 2017-09-13 Adhemerval Zanella * sysdeps/unix/sysv/linux/s390/s390-32/oldglob.c: New file. * sysdeps/unix/sysv/linux/alpha/Makefile [$(subdir) = csu] (sysdep_routines): Remove rule. 2017-09-13 Joseph Myers * sysdeps/generic/libm-alias-double.h: New file. * sysdeps/ieee754/ldbl-opt/libm-alias-double.h: Likewise. * sysdeps/generic/math-type-macros-double.h: Include . [declare_mgen_alias] (declare_mgen_alias): Define to use libm_alias_double. * sysdeps/generic/math-type-macros.h [!M_LIBM_NEED_COMPAT] (M_LIBM_NEED_COMPAT): Remove macro. [!M_LIBM_NEED_COMPAT] (declare_mgen_libm_compat): Likewise. * sysdeps/ieee754/ldbl-opt/math-type-macros-double.h: Remove. * math/cabs_template.c [M_LIBM_NEED_COMPAT]: Remove conditional code. * math/carg_template.c [M_LIBM_NEED_COMPAT]: Likewise. * math/cimag_template.c [M_LIBM_NEED_COMPAT]: Likewise. * math/conj_template.c [M_LIBM_NEED_COMPAT]: Likewise. * math/creal_template.c [M_LIBM_NEED_COMPAT]: Likewise. * math/s_cacos_template.c [M_LIBM_NEED_COMPAT]: Likewise. * math/s_cacosh_template.c [M_LIBM_NEED_COMPAT]: Likewise. * math/s_casin_template.c [M_LIBM_NEED_COMPAT]: Likewise. * math/s_casinh_template.c [M_LIBM_NEED_COMPAT]: Likewise. * math/s_catan_template.c [M_LIBM_NEED_COMPAT]: Likewise. * math/s_catanh_template.c [M_LIBM_NEED_COMPAT]: Likewise. * math/s_ccos_template.c [M_LIBM_NEED_COMPAT]: Likewise. * math/s_ccosh_template.c [M_LIBM_NEED_COMPAT]: Likewise. * math/s_cexp_template.c [M_LIBM_NEED_COMPAT]: Likewise. * math/s_clog10_template.c [M_LIBM_NEED_COMPAT]: Likewise. * math/s_clog_template.c [M_LIBM_NEED_COMPAT]: Likewise. * math/s_cpow_template.c [M_LIBM_NEED_COMPAT]: Likewise. * math/s_cproj_template.c [M_LIBM_NEED_COMPAT]: Likewise. * math/s_csin_template.c [M_LIBM_NEED_COMPAT]: Likewise. * math/s_csinh_template.c [M_LIBM_NEED_COMPAT]: Likewise. * math/s_csqrt_template.c [M_LIBM_NEED_COMPAT]: Likewise. * math/s_ctan_template.c [M_LIBM_NEED_COMPAT]: Likewise. * math/s_ctanh_template.c [M_LIBM_NEED_COMPAT]: Likewise. * math/s_fdim_template.c [M_LIBM_NEED_COMPAT]: Likewise. * math/s_fmax_template.c [M_LIBM_NEED_COMPAT]: Likewise. * math/s_fmin_template.c [M_LIBM_NEED_COMPAT]: Likewise. * math/s_nan_template.c [M_LIBM_NEED_COMPAT]: Likewise. * math/w_ilogb_template.c [M_LIBM_NEED_COMPAT]: Likewise. * sysdeps/ieee754/ldbl-opt/s_clog10.c: New file. * sysdeps/ieee754/ldbl-opt/s_ldexp.c (M_LIBM_NEED_COMPAT): Remove macro. (declare_mgen_alias): New macro. * sysdeps/ieee754/ldbl-opt/w_log1p.c: New file. * sysdeps/ieee754/ldbl-opt/w_scalbln.c: Likewise. * sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/s_fdim-vis3.c (M_LIBM_NEED_COMPAT): Remove macro. * sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/s_fdim.c [HAVE_AS_VIS3_SUPPORT]: Include and . [HAVE_AS_VIS3_SUPPORT && LONG_DOUBLE_COMPAT (libm, FIRST_VERSION_libm_fdiml)]: Define fdiml as compat symbol. 2017-09-12 Joseph Myers * sysdeps/generic/math-type-macros.h [!declare_mgen_alias_2] (declare_mgen_alias_2): Remove. * sysdeps/generic/math-type-macros-double.h [NO_LONG_DOUBLE && !declare_mgen_alias_2] (declare_mgen_alias_2): Likewise. * math/s_ldexp_template.c (M_SUF (__wrap_scalbn)): Define strong alias. (ldexp): Define with declare_mgen_alias. (scalbn): Likewise. 2017-09-12 Steve Ellcey * grp/initgroups.c: Include config.h. (DEFAULT_CONFIG): New macro. (internal_getgrouplist): Use DEFAULT_CONFIG. * nscd/initgrcache.c (addinitgroupsX): Likewise. * nss/nsswitch.c (__nss_disable_nscd): Likewise. (DEFAULT_DEFCONFIG): New macro. (__nss_database_lookup): Use DEFAULT_DEFCONFIG. * nss/grp-lookup.c: Include config.h (DEFAULT_CONFIG): Set definition based on LINK_OBSOLETE_NSL. * nss/pwd-lookup.c (DEFAULT_CONFIG): Likewise. * nss/spwd-lookup.c (DEFAULT_CONFIG): Likewise. * manual/nss.texi: Update default values section. 2017-09-12 H.J. Lu [BZ #21967] * sysdeps/x86/cpu-features.h (bit_arch_MathVec_Prefer_No_AVX512): New. (index_arch_MathVec_Prefer_No_AVX512): Likewise. * sysdeps/x86/cpu-tunables.c (TUNABLE_CALLBACK (set_hwcaps)): Handle MathVec_Prefer_No_AVX512. * sysdeps/x86_64/fpu/multiarch/ifunc-mathvec-avx512.h (IFUNC_SELECTOR): Return AVX2 version if MathVec_Prefer_No_AVX512 is set. 2017-09-12 Samuel Thibault * posix/sched_primax.c (__sched_get_priority_max): Add libc_hidden_def. * posix/sched_primin.c (__sched_get_priority_min): Likewise. * sysdeps/mach/hurd/mmap.c (__mmap): Likewise. * sysdeps/mach/hurd/mmap64.c (__mmap64): Likewise. * sysdeps/mach/hurd/mprotect.c (__mprotect): Likewise. * sysdeps/mach/hurd/munmap.c (__munmap): Likewise. * sysdeps/mach/hurd/dl-sysdep.c (__GI___getpid, __GI___strtoul_internal, __GI_____strtoul_internal, __GI___chk_fail, __GI___fortify_fail, __GI___assert_fail, __GI___assert_perror_fail): Add aliases. 2017-09-11 Joseph Myers * sysdeps/generic/libm-alias-float.h: New file. * sysdeps/generic/math-type-macros-float.h: Include . [!declare_mgen_alias] (declare_mgen_alias): Define macro. 2017-09-11 H.J. Lu [BZ #22093] * sysdeps/x86/cpu-features.c (init_cpu_features): Initialize GLRO(dl_hwcap) to HWCAP_X86_64 for x86-64. * sysdeps/x86/dl-hwcap.h (HWCAP_COUNT): Updated. (HWCAP_IMPORTANT): Likewise. (HWCAP_X86_64): New enum. (HWCAP_X86_AVX512_1): Updated. * sysdeps/x86/dl-procinfo.c (_dl_x86_hwcap_flags): Add "x86_64". * sysdeps/x86_64/Makefile (tests): Add tst-x86_64-1. (modules-names): Add x86_64/tst-x86_64mod-1. (LDFLAGS-tst-x86_64mod-1.so): New. ($(objpfx)tst-x86_64-1): Likewise. ($(objpfx)x86_64/tst-x86_64mod-1.os): Likewise. (tst-x86_64-1-clean): Likewise. * sysdeps/x86_64/tst-x86_64-1.c: New file. * sysdeps/x86_64/tst-x86_64mod-1.c: Likewise. 2017-09-11 Siddhesh Poyarekar * po/sv.po: Update translations. * po/fr.po: Likewise. 2017-09-10 Samuel Thibault * sunrpc/tst-udp-timeout.c (test_udp_server): Increase timeout to 2.5 seconds. * sunrpc/tst-udp-nonblocking.c (do_test): Increase timeout to 0.75 seconds. * elf/rtld-Rules: Fix $(error) use. 2017-09-09 Mike FABIAN [BZ #14925] * libio/tst-widetext.input: Change “Bengali” to “Bangla”. * locale/iso-639.def: Change “Bengali” to “Bangla”. * localedata/locales/bn_BD: “Bengali” was still used in some comments. Change it to “Bangla”. 2017-09-08 Markus Trippelsdorf * sysdeps/x86_64/fpu/libm-test-ulps: Update for AMD Ryzen. 2017-09-08 Steve Ellcey * manual/tunables.texi (glibc.tune.cpu): Add thunderx2t99 and thunderx2t99p1 to list of cpu names. * sysdeps/unix/sysv/linux/aarch64/cpu-features.c (cpu_list): Add thunderx2t99 and thunderx2t99p1 entries to cpu_list. 2017-09-08 Steve Ellcey * sysdeps/unix/sysv/linux/aarch64/cpu-features.c (get_midr_from_mcpu): Use strcmp instead of tunable_is_name. 2017-09-08 Joseph Myers * sysdeps/unix/sysv/linux/bits/fcntl-linux.h [__USE_GNU] (F_GET_RW_HINT): New macro. [__USE_GNU] (F_SET_RW_HINT): Likewise. [__USE_GNU] (F_GET_FILE_RW_HINT): Likewise. [__USE_GNU] (F_SET_FILE_RW_HINT): Likewise. [__USE_GNU] (RWF_WRITE_LIFE_NOT_SET): Likewise. [__USE_GNU] (RWH_WRITE_LIFE_NONE): Likewise. [__USE_GNU] (RWH_WRITE_LIFE_SHORT): Likewise. [__USE_GNU] (RWH_WRITE_LIFE_MEDIUM): Likewise. [__USE_GNU] (RWH_WRITE_LIFE_LONG): Likewise. [__USE_GNU] (RWH_WRITE_LIFE_EXTREME): Likewise. * sysdeps/unix/sysv/linux/bits/fcntl-linux.h [__USE_GNU] (F_ADD_SEALS): New macro. [__USE_GNU] (F_GET_SEALS): Likewise. [__USE_GNU] (F_SEAL_SEAL): Likewise. [__USE_GNU] (F_SEAL_SHRINK): Likewise. [__USE_GNU] (F_SEAL_GROW): Likewise. [__USE_GNU] (F_SEAL_WRITE): Likewise. 2017-09-08 Adhemerval Zanella * posix/glob_internal.h (GLOBPAT_NONE, GLOBPAT_SPECIAL) (GLOBPAT_BACKSLASH, GLOBPAT_BRACKET): New constants. * posix/glob_internal.h (__glob_pattern_type): * posix/glob.c (glob): * posix/glob_pattern_p.c (__glob_pattern_p): Use them. * sysdeps/unix/sysv/linux/arm/glob64.c: Remove file. * sysdeps/unix/sysv/linux/i386/glob64.c: Likewise. * sysdeps/unix/sysv/linux/m68k/glob64.c: Likewise. * sysdeps/unix/sysv/linux/mips/mips64/n64/glob64.c: Likewise. * sysdeps/unix/sysv/linux/mips/mips64/n64/globfree64.c: Likewise. * sysdeps/unix/sysv/linux/powerpc/powerpc32/glob64.c: Likewise. * sysdeps/unix/sysv/linux/sparc/sparc32/glob64.c: Likewise. * sysdeps/unix/sysv/linux/wordsize-64/glob64.c: Likewise. * sysdeps/unix/sysv/linux/wordsize-64/globfree64.c: Likewise. * sysdeps/unix/sysv/linux/x86_64/x32/glob.c: Likewise. * sysdeps/unix/sysv/linux/x86_64/x32/globfree.c: Likewise. * sysdeps/wordsize-64/glob.c: Likewise. * sysdeps/wordsize-64/glob64.c: Likewise. * sysdeps/wordsize-64/globfree.c: Likewise. * sysdeps/wordsize-64/globfree64.c: Likewise. * sysdeps/unix/sysv/linux/glob.c: New file. * sysdeps/unix/sysv/linux/glob64.c: Likewise. * sysdeps/unix/sysv/linux/globfree.c: Likewise. * sysdeps/unix/sysv/linux/globfree64.c: Likewise. * sysdeps/unix/sysv/linux/s390/s390-32/glob64.c: Likewise. * sysdeps/unix/sysv/linux/oldglob.c [SHLIB_COMPAT]: Also adds !GLOB_NO_OLD_VERSION as an extra condition. * sysdeps/unix/sysv/linux/i386/alphasort64.c: Include olddirent.h using relative path instead of absolute one. * sysdeps/unix/sysv/linux/i386/getdents64.c: Likewise. * sysdeps/unix/sysv/linux/i386/readdir64.c: Likewise. * sysdeps/unix/sysv/linux/i386/readdir64_r.c: Likewise. * sysdeps/unix/sysv/linux/i386/versionsort64.c: Likewise. * sysdeps/unix/sysv/linux/i386/olddirent.h: Move to ... * sysdeps/unix/sysv/linux//olddirent.h: ... here. [BZ #1062] * posix/glob.c (GET_LOGIN_NAME_MAX): Remove. (glob): Use the same scratch buffer for both getlogin_r and getpwnam_r. Don’t require preallocation of the login name. This simplifies storage allocation, and corrects the handling of long login names. [BZ #1062] * posix/glob.c (glob): Port recent patches to platforms lacking getpwnam_r. (glob): Fix longstanding misuse of errno after getpwnam_r, which returns an error number rather than setting errno. * include/scratch_buffer.h (scratch_buffer): Use a C99 align method instead of GCC extension. * malloc/scratch_buffer_grow.c [!_LIBC]: Include libc-config.h. * malloc/scratch_buffer_grow_preserve.c [!_LIBC]: Likewise. * malloc/scratch_buffer_set_array_size.c [!_LIBC]: Likewise. [BZ #866] [BZ #1062] * posix/Makefile (tests): Remove bug-glob1 and tst-glob_symlinks. * posix/bug-glob1.c: Remove file. * posix/tst-glob_symlinks.c: New file. * posix/glob.c (__lstat64): New macro. (is_dir): New function. (glob, glob_in_dir): Match symlinks even if they are dangling. (link_stat, link_exists_p): Remove. All uses removed. [BZ #1062] [BZ #19971] * posix/glob.c (struct readdir_result): Remove skip_entry member. (readdir_result_skip_entry, D_INO_TO_RESULT): Remove. All uses removed. [BZ #1062] * posix/Makefile (routines): Add globfree, globfree64, and glob_pattern_p. * posix/flexmember.h: New file. * posix/glob_internal.h: Likewise. * posix/glob_pattern_p.c: Likewise. * posix/globfree.c: Likewise. * posix/globfree64.c: Likewise. * sysdeps/gnu/globfree64.c: Likewise. * sysdeps/unix/sysv/linux/alpha/globfree.c: Likewise. * sysdeps/unix/sysv/linux/mips/mips64/n64/globfree64.c: Likewise. * sysdeps/unix/sysv/linux/oldglob.c: Likewise. * sysdeps/unix/sysv/linux/wordsize-64/globfree64.c: Likewise. * sysdeps/unix/sysv/linux/x86_64/x32/globfree.c: Likewise. * sysdeps/wordsize-64/globfree.c: Likewise. * sysdeps/wordsize-64/globfree64.c: Likewise. * posix/glob.c (HAVE_CONFIG_H): Use !_LIBC instead. [NDEBUG): Remove comments. (GLOB_ONLY_P, _AMIGA, VMS): Remove define. (dirent_type): New type. Use uint_fast8_t not uint8_t, as C99 does not require uint8_t. (DT_UNKNOWN, DT_DIR, DT_LNK): New macros. (struct readdir_result): Use dirent_type. Do not define skip_entry unless it is needed; this saves a byte on platforms lacking d_ino. (readdir_result_type, readdir_result_skip_entry): New functions, replacing ... (readdir_result_might_be_symlink, readdir_result_might_be_dir): these functions, which were removed. This makes the callers easier to read. All callers changed. (D_INO_TO_RESULT): Now empty if there is no d_ino. (size_add_wrapv, glob_use_alloca): New static functions. (glob, glob_in_dir): Check for size_t overflow in several places, and fix some size_t checks that were not quite right. Remove old code using SHELL since Bash no longer uses this. (glob, prefix_array): Separate MS code better. (glob_in_dir): Remove old Amiga and VMS code. (globfree, __glob_pattern_type, __glob_pattern_p): Move to separate files. (glob_in_dir): Do not rely on undefined behavior in accessing struct members beyond their bounds. Use a flexible array member instead (link_stat): Rename from link_exists2_p and return -1/0 instead of 0/1. Caller changed. (glob): Fix memory leaks. * posix/glob64 (globfree64): Move to separate file. * sysdeps/gnu/glob64.c (NO_GLOB_PATTERN_P): Remove define. (globfree64): Remove hidden alias. * sysdeps/unix/sysv/linux/Makefile (sysdeps_routines): Add oldglob. * sysdeps/unix/sysv/linux/alpha/glob.c (__new_globfree): Move to separate file. * sysdeps/unix/sysv/linux/i386/glob64.c (NO_GLOB_PATTERN_P): Remove define. Move compat code to separate file. * sysdeps/wordsize-64/glob.c (globfree): Move definitions to separate file. 2017-09-07 H.J. Lu * resolv/tst-resolv-qtypes.c (domain): Changed to "const char domain[] =". 2017-09-07 Joseph Myers * scripts/build-many-glibcs.py (Context.checkout): Default MPFR version to 3.1.6. * sysdeps/gnu/netinet/tcp.h (TCP_ULP): New macro. (TCP_MD5SIG_EXT): Likewise. (TCP_MD5SIG_FLAG_PREFIX): Likewise. (struct tcp_md5sig): Replace __tcpm_pad1 by tcpm_flags and tcpm_prefixlen. Rename __tcpm_pad2 to __tcpm_pad. * sysdeps/unix/sysv/linux/bits/socket.h (SOL_TLS): New macro. 2017-09-07 Mike FABIAN * localedata/locales/om_ET (LC_TIME): use ASCII for better readability. 2017-09-07 Akhilesh Kumar [BZ #22100] * localedata/locales/om_KE (LC_TIME): copy "om_ET". 2017-09-07 Samuel Thibault * hurd/get-host.c (_hurd_get_host_config): Also check that more == 0 before assuming that the file is empty. Avoid testing buffer content when nread == 0. 2017-09-06 Adhemerval Zanella [BZ #18858] * sysdeps/i386/i686/multiarch/strncpy.c (_HAVE_STRING_ARCH_strncpy): Remove define. * sysdeps/x86_64/multiarch/stpcpy.c (_HAVE_STRING_ARCH_stpcpy): Likewise. * sysdeps/x86_64/multiarch/strcspn.c (_HAVE_STRING_ARCH_strcspn): Likewise. * sysdeps/x86_64/multiarch/strncat.c (_HAVE_STRING_ARCH_strncat): Likewise. * sysdeps/x86_64/multiarch/strncpy.c (_HAVE_STRING_ARCH_strncpy): Likewise. * sysdeps/x86_64/multiarch/strpbrk.c (_HAVE_STRING_ARCH_strpbrk): Likewise. * sysdeps/x86_64/multiarch/strspn.c (_HAVE_STRING_ARCH_strspn): Likewise. 2017-09-06 Florian Weimer * malloc/dynarray_emplace_enlarge.c (__libc_dynarray_emplace_enlarge): Add missing else. 2017-09-06 Florian Weimer [BZ #22096] * resolv/resolv_conf.c (__resolv_conf_attach): Do not free conf in case of failure to obtain the global conf object. 2017-09-06 Florian Weimer [BZ #22095] * resolv/res_init.c (res_vinit_1): Avoid memory leak in case of dynarray allocation failure. 2017-09-06 Florian Weimer Remove dead PTR IPv4-to-IPv6 mapping code from nss_dns. * resolv/nss_dns/dns-host.c (getanswer_r): Remove dead code. * resolv/tst-res_use_inet6.c (response_ptr_v4, response_ptr_v6): New functions. (response): Call them. Add 'p', '6' flag processing. (test_reverse): New function. (test_get2_any): Call it. (test_no_inet6): Add 'p' test. (test_inet6): Likewise. 2017-09-06 Florian Weimer Enhance tst-res_use_inet6 to test IPv4-to-IPv6 address mapping. * resolv/tst-res_use_inet6.c (response): Process flags embedded in the QNAME. (test_gai): Adjust query names. Add additional tests. (test_get2_any, test_get2_no_inet6, test_get2_inet6): Split from test_get2. Adjust query names. Add additional tests. (test_no_inet6): New function, extracted from threadfunc. (threadfunc): Call test_get2_any, test_get2_inet6, test_no_inet6. Add additional tests. 2017-09-06 Mike FABIAN [BZ #22070] * localedata/unicode-gen/utf8_gen.py: Set the width for characters with Prepended_Concatenation_Mark property to 1 * localedata/charmaps/UTF-8: Updated using the improved script. 2017-09-06 Mike FABIAN [BZ #21750] * localedata/unicode-gen/utf8_gen.py: Improve the script to use the range notation for all ranges of neighbouring characters with the same width. 2017-09-05 Joseph Myers * sysdeps/generic/math-type-macros-double.h: Include . (__USE_WRAPPER_TEMPLATE): Define to !LIBM_SVID_COMPAT. * sysdeps/generic/math-type-macros-float.h: Include . (__USE_WRAPPER_TEMPLATE): Define to !LIBM_SVID_COMPAT. * sysdeps/generic/math-type-macros-ldouble.h: Include . (__USE_WRAPPER_TEMPLATE): Define to !LIBM_SVID_COMPAT. * math/lgamma-compat.h (BUILD_LGAMMA): Include LIBM_SVID_COMPAT condition. * math/w_acos_compat.c: Condition contents on [LIBM_SVID_COMPAT]. * math/w_acosf_compat.c: Likewise. * math/w_acosh_compat.c: Likewise. * math/w_acoshf_compat.c: Likewise. * math/w_acoshl_compat.c: Likewise. * math/w_acosl_compat.c: Likewise. * math/w_asin_compat.c: Likewise. * math/w_asinf_compat.c: Likewise. * math/w_asinl_compat.c: Likewise. * math/w_atan2_compat.c: Likewise. * math/w_atan2f_compat.c: Likewise. * math/w_atan2l_compat.c: Likewise. * math/w_atanh_compat.c: Likewise. * math/w_atanhf_compat.c: Likewise. * math/w_atanhl_compat.c: Likewise. * math/w_cosh_compat.c: Likewise. * math/w_coshf_compat.c: Likewise. * math/w_coshl_compat.c: Likewise. * math/w_exp10_compat.c: Likewise. * math/w_exp10f_compat.c: Likewise. * math/w_exp10l_compat.c: Likewise. * math/w_exp2_compat.c: Likewise. * math/w_exp2f_compat.c: Likewise. * math/w_exp2l_compat.c: Likewise. * math/w_fmod_compat.c: Likewise. * math/w_fmodf_compat.c: Likewise. * math/w_fmodl_compat.c: Likewise. * math/w_hypot_compat.c: Likewise. * math/w_hypotf_compat.c: Likewise. * math/w_hypotl_compat.c: Likewise. * math/w_j0_compat.c: Likewise. * math/w_j0f_compat.c: Likewise. * math/w_j0l_compat.c: Likewise. * math/w_j1_compat.c: Likewise. * math/w_j1f_compat.c: Likewise. * math/w_j1l_compat.c: Likewise. * math/w_jn_compat.c: Likewise. * math/w_jnf_compat.c: Likewise. * math/w_jnl_compat.c: Likewise. * math/w_lgamma_r_compat.c: Likewise. * math/w_lgammaf_r_compat.c: Likewise. * math/w_lgammal_r_compat.c: Likewise. * math/w_log10_compat.c: Likewise. * math/w_log10f_compat.c: Likewise. * math/w_log10l_compat.c: Likewise. * math/w_log2_compat.c: Likewise. * math/w_log2f_compat.c: Likewise. * math/w_log2l_compat.c: Likewise. * math/w_log_compat.c: Likewise. * math/w_logf_compat.c: Likewise. * math/w_logl_compat.c: Likewise. * math/w_pow_compat.c: Likewise. * math/w_powf_compat.c: Likewise. * math/w_powl_compat.c: Likewise. * math/w_remainder_compat.c: Likewise. * math/w_remainderf_compat.c: Likewise. * math/w_remainderl_compat.c: Likewise. * math/w_sinh_compat.c: Likewise. * math/w_sinhf_compat.c: Likewise. * math/w_sinhl_compat.c: Likewise. * math/w_sqrt_compat.c: Likewise. * math/w_sqrtf_compat.c: Likewise. * math/w_sqrtl_compat.c: Likewise. * math/w_tgamma_compat.c: Likewise. * math/w_tgammaf_compat.c: Likewise. * math/w_tgammal_compat.c: Likewise. * math/w_scalb_compat.c (sysv_scalb): Condition definition on [LIBM_SVID_COMPAT]. (__scalb): Condition call to sysv_scalb on [LIBM_SVID_COMPAT]. * math/w_scalbf_compat.c (sysv_scalbf): Condition definition on [LIBM_SVID_COMPAT]. (__scalbf): Condition call to sysv_scalbf on [LIBM_SVID_COMPAT]. * math/w_scalbl_compat.c (sysv_scalbl): Condition definition on [LIBM_SVID_COMPAT]. (__scalbl): Condition call to sysv_scalbl on [LIBM_SVID_COMPAT]. * sysdeps/i386/fpu/w_sqrt.c: New file. * sysdeps/ia64/fpu/w_acos.c: Likewise. * sysdeps/ia64/fpu/w_acosf.c: Likewise. * sysdeps/ia64/fpu/w_acosh.c: Likewise. * sysdeps/ia64/fpu/w_acoshf.c: Likewise. * sysdeps/ia64/fpu/w_acoshl.c: Likewise. * sysdeps/ia64/fpu/w_acosl.c: Likewise. * sysdeps/ia64/fpu/w_asin.c: Likewise. * sysdeps/ia64/fpu/w_asinf.c: Likewise. * sysdeps/ia64/fpu/w_asinl.c: Likewise. * sysdeps/ia64/fpu/w_atan2.c: Likewise. * sysdeps/ia64/fpu/w_atan2f.c: Likewise. * sysdeps/ia64/fpu/w_atan2l.c: Likewise. * sysdeps/ia64/fpu/w_atanh.c: Likewise. * sysdeps/ia64/fpu/w_atanhf.c: Likewise. * sysdeps/ia64/fpu/w_atanhl.c: Likewise. * sysdeps/ia64/fpu/w_cosh.c: Likewise. * sysdeps/ia64/fpu/w_coshf.c: Likewise. * sysdeps/ia64/fpu/w_coshl.c: Likewise. * sysdeps/ia64/fpu/w_exp.c: Likewise. * sysdeps/ia64/fpu/w_exp10.c: Likewise. * sysdeps/ia64/fpu/w_exp10f.c: Likewise. * sysdeps/ia64/fpu/w_exp10l.c: Likewise. * sysdeps/ia64/fpu/w_exp2.c: Likewise. * sysdeps/ia64/fpu/w_exp2f.c: Likewise. * sysdeps/ia64/fpu/w_exp2l.c: Likewise. * sysdeps/ia64/fpu/w_expf.c: Likewise. * sysdeps/ia64/fpu/w_expl.c: Likewise. * sysdeps/ia64/fpu/w_fmod.c: Likewise. * sysdeps/ia64/fpu/w_fmodf.c: Likewise. * sysdeps/ia64/fpu/w_fmodl.c: Likewise. * sysdeps/ia64/fpu/w_hypot.c: Likewise. * sysdeps/ia64/fpu/w_hypotf.c: Likewise. * sysdeps/ia64/fpu/w_hypotl.c: Likewise. * sysdeps/ia64/fpu/w_lgamma_r.c: Likewise. * sysdeps/ia64/fpu/w_lgammaf_r.c: Likewise. * sysdeps/ia64/fpu/w_lgammal_r.c: Likewise. * sysdeps/ia64/fpu/w_log.c: Likewise. * sysdeps/ia64/fpu/w_log10.c: Likewise. * sysdeps/ia64/fpu/w_log10f.c: Likewise. * sysdeps/ia64/fpu/w_log10l.c: Likewise. * sysdeps/ia64/fpu/w_log2.c: Likewise. * sysdeps/ia64/fpu/w_log2f.c: Likewise. * sysdeps/ia64/fpu/w_log2l.c: Likewise. * sysdeps/ia64/fpu/w_logf.c: Likewise. * sysdeps/ia64/fpu/w_logl.c: Likewise. * sysdeps/ia64/fpu/w_pow.c: Likewise. * sysdeps/ia64/fpu/w_powf.c: Likewise. * sysdeps/ia64/fpu/w_powl.c: Likewise. * sysdeps/ia64/fpu/w_remainder.c: Likewise. * sysdeps/ia64/fpu/w_remainderf.c: Likewise. * sysdeps/ia64/fpu/w_remainderl.c: Likewise. * sysdeps/ia64/fpu/w_sinh.c: Likewise. * sysdeps/ia64/fpu/w_sinhf.c: Likewise. * sysdeps/ia64/fpu/w_sinhl.c: Likewise. * sysdeps/ia64/fpu/w_sqrt.c: Likewise. * sysdeps/ia64/fpu/w_sqrtf.c: Likewise. * sysdeps/ia64/fpu/w_sqrtl.c: Likewise. * sysdeps/ia64/fpu/w_tgamma.c: Likewise. * sysdeps/ia64/fpu/w_tgammaf.c: Likewise. * sysdeps/ia64/fpu/w_tgammal.c: Likewise. * sysdeps/ieee754/dbl-64/w_exp_compat.c: Condition contents on [LIBM_SVID_COMPAT]. * sysdeps/ieee754/flt-32/w_expf_compat.c: Likewise. * sysdeps/ieee754/k_standard.c: Likewise. * sysdeps/ieee754/k_standardf.c: Likewise. * sysdeps/ieee754/k_standardl.c: Likewise. * sysdeps/ieee754/ldbl-128/w_expl_compat.c: Likewise. * sysdeps/ieee754/ldbl-128ibm/w_expl_compat.c: Likewise. * sysdeps/ieee754/ldbl-96/w_expl_compat.c: Likewise. * sysdeps/ieee754/ldbl-64-128/w_expl_compat.c: Condition long_double_symbol call on [LIBM_SVID_COMPAT]. * sysdeps/ieee754/ldbl-opt/w_acoshl_compat.c: Likewise. * sysdeps/ieee754/ldbl-opt/w_acosl_compat.c: Likewise. * sysdeps/ieee754/ldbl-opt/w_asinl_compat.c: Likewise. * sysdeps/ieee754/ldbl-opt/w_atan2l_compat.c: Likewise. * sysdeps/ieee754/ldbl-opt/w_atanhl_compat.c: Likewise. * sysdeps/ieee754/ldbl-opt/w_coshl_compat.c: Likewise. * sysdeps/ieee754/ldbl-opt/w_fmodl_compat.c: Likewise. * sysdeps/ieee754/ldbl-opt/w_hypotl_compat.c: Likewise. * sysdeps/ieee754/ldbl-opt/w_j0l_compat.c: Likewise. * sysdeps/ieee754/ldbl-opt/w_j1l_compat.c: Likewise. * sysdeps/ieee754/ldbl-opt/w_jnl_compat.c: Likewise. * sysdeps/ieee754/ldbl-opt/w_lgammal_r_compat.c: Likewise. * sysdeps/ieee754/ldbl-opt/w_log10l_compat.c: Likewise. * sysdeps/ieee754/ldbl-opt/w_log2l_compat.c: Likewise. * sysdeps/ieee754/ldbl-opt/w_logl_compat.c: Likewise. * sysdeps/ieee754/ldbl-opt/w_powl_compat.c: Likewise. * sysdeps/ieee754/ldbl-opt/w_remainderl_compat.c: Likewise. * sysdeps/ieee754/ldbl-opt/w_sinhl_compat.c: Likewise. * sysdeps/ieee754/ldbl-opt/w_sqrtl_compat.c: Likewise. * sysdeps/ieee754/ldbl-opt/w_tgammal_compat.c: Likewise. * sysdeps/ieee754/ldbl-opt/w_exp10l_compat.c: Condition long_double_symbol and compat_symbol calls on [LIBM_SVID_COMPAT]. 2017-09-05 Steve Ellcey * include/shlib-compat.h (TEST_COMPAT): New Macro. * malloc/tst-mallocstate.c: Convert from test-skeleton to test-driver. Ifdef code using TEST_COMPAT macro. * math/test-matherr-2.c: Ifdef test using TEST_COMPAT macro. * math/test-matherr.c: Likewise. 2017-09-05 Joseph Myers [BZ #22086] * debug/pcprofiledump.c (main): Use byte-swapped mask when comparing word with byte-swapped constant. 2017-09-05 Chris Leonard [BZ #20498] * locale/iso-639.def: add Miskito. * localedata/SUPPORTED: Add miq_NI/UTF-8. * localedata/locales/miq_NI: New file. 2017-09-04 H.J. Lu [BZ #18822] * include/sys/stat.h (__chmod): Add libc_hidden_proto. (__mkdir): Likewise. * io/chmod.c (__chmod): Add libc_hidden_def. * io/mkdir.c (__mkdir): Likewise. * sysdeps/mach/hurd/chmod.c (__chmod): Likewise. * sysdeps/mach/hurd/mkdir.c (__mkdir): Likewise. * sysdeps/unix/sysv/linux/generic/chmod.c (__chmod): Likewise. * sysdeps/unix/sysv/linux/generic/mkdir.c (__mkdir): Likewise. 2017-09-04 Joseph Myers * sysdeps/unix/sysv/linux/syscall-names.list: Update kernel version to 4.13. [BZ #22082] * math/bits/math-finite.h (exp10): Redirect if [__GLIBC_USE (IEC_60559_FUNCS_EXT)], not [__USE_GNU]. 2017-09-04 Florian Weimer * math/math.h: Issue warning if log is defined. 2017-09-04 Joseph Myers * scripts/build-many-glibcs.py (Context.checkout): Default Linux kernel version to 4.13. 2017-09-03 Samuel Thibault * sysdeps/generic/sigsetops.h: Remove spurious #endif. (__sigismember, __sigaddset, __sigdelset): Fix referencing set parameter. * sysdeps/mach/hurd/bits/socket.h: Include instead of just . * sysdeps/posix/preadv2.c: Use off_t instead of OFF_T. * sysdeps/posix/preadv64v2.c: Use off64_t instead of OFF_T. * sysdeps/posix/pwritev2.c: Use off_t instead of OFF_T. * sysdeps/posix/pwritev64v2.c: Use off64_t instead of OFF_T. * misc/preadv2.c: Include . * misc/preadv64v2.c: Include . * misc/pwritev2.c: Include . * misc/pwritev64v2.c: Include . * sysdeps/posix/preadv2.c: Include . * sysdeps/posix/preadv64v2.c: Include . Fix inclusion. * sysdeps/posix/pwritev2.c: Include . * sysdeps/posix/pwritev64v2.c: Include . * sysdeps/mach/hurd/dl-sysdep.c (__access_noerrno, __sbrk, __strtoul_internal): New functions. * sysdeps/posix/pause.c: Include . * sysdeps/posix/system.c: Include . * sysdeps/mach/hurd/i386/Makefile [$(subdir) = csu] (sysdep_routines): New rule: divdi3 object. [$(subdir) = csu] (sysdep-only-routines): Likewise. [$(subdir) = csu] (CFLAGS-divdi3.c): Likewise. * sysdeps/x86/fpu/include/bits/fenv.h [NO_HIDDEN]: Redirect __feraiseexcept_renamed to feraiseexcept instead of __GI_feraiseexcept. * sysdeps/mach/hurd/i386/Implies: Add mach/hurd/x86. * sysdeps/mach/hurd/x86/dl-sysdep.c: New file. * misc/tst-preadvwritev2-common.c (RWF_HIPRI, RWF_DSYNC, RWF_SYNC, RWF_NOWAIT): Define to 0 if undefined already. (do_test_with_invalid_flags): Set invalid_flag to 2 if RWF_SUPPORTED boils down to 0. * resolv/tst-resolv-res_init-skeleton.c (run_res_init) [!CLONE_NEWUTS]: Fail as unsupported if hostname is not NULL. 2017-09-01 Joseph Myers * manual/math.texi (pow10): Do not document. (pow10f): Likewise. (pow10l): Likewise. * math/bits/mathcalls.h [__USE_GNU] (pow10): Do not declare. * math/bits/math-finite.h [__USE_GNU] (pow10): Likewise. * math/libm-test-exp10.inc (pow10_test): Remove. (do_test): Do not call pow10. * math/w_exp10_compat.c (pow10): Make into compat symbol. [NO_LONG_DOUBLE] (pow10l): Likewise. * math/w_exp10f_compat.c (pow10f): Likewise. * math/w_exp10l_compat.c (pow10l): Likewise. * sysdeps/ia64/fpu/e_exp10.S: Include . (pow10): Make into compat symbol. * sysdeps/ia64/fpu/e_exp10f.S: Include . (pow10f): Make into compat symbol. * sysdeps/ia64/fpu/e_exp10l.S: Include . (pow10l): Make into compat symbol. * sysdeps/ieee754/ldbl-opt/Makefile (libnldbl-calls): Remove pow10. (CFLAGS-nldbl-pow10.c): Remove variable.. * sysdeps/ieee754/ldbl-opt/nldbl-pow10.c: Remove file. * sysdeps/ieee754/ldbl-opt/w_exp10_compat.c (pow10l): Condition on [SHLIB_COMPAT (libm, GLIBC_2_1, GLIBC_2_27)]. * sysdeps/ieee754/ldbl-opt/w_exp10l_compat.c (compat_symbol): Undefine and redefine. (pow10l): Make into compat symbol. * sysdeps/aarch64/libm-test-ulps: Remove pow10 ulps. * sysdeps/alpha/fpu/libm-test-ulps: Likewise. * sysdeps/arm/libm-test-ulps: Likewise. * sysdeps/hppa/fpu/libm-test-ulps: Likewise. * sysdeps/i386/fpu/libm-test-ulps: Likewise. * sysdeps/i386/i686/fpu/multiarch/libm-test-ulps: Likewise. * sysdeps/microblaze/libm-test-ulps: Likewise. * sysdeps/mips/mips32/libm-test-ulps: Likewise. * sysdeps/mips/mips64/libm-test-ulps: Likewise. * sysdeps/nios2/libm-test-ulps: Likewise. * sysdeps/powerpc/fpu/libm-test-ulps: Likewise. * sysdeps/powerpc/nofpu/libm-test-ulps: Likewise. * sysdeps/s390/fpu/libm-test-ulps: Likewise. * sysdeps/sh/libm-test-ulps: Likewise. * sysdeps/sparc/fpu/libm-test-ulps: Likewise. * sysdeps/tile/libm-test-ulps: Likewise. * sysdeps/x86_64/fpu/libm-test-ulps: Likewise. 2017-09-01 Paul Pluzhnikov * stdlib/tst-atexit-common.c (crumbs): Ensure correct size. 2017-09-01 H.J. Lu * posix/tst-regex.c (do_test): Replace "../ChangeLog.8" with "../ChangeLog.old/ChangeLog.8". * posix/tst-regex2.c (do_test): Replace "../ChangeLog.14" with "../ChangeLog.old/ChangeLog.14". 2017-09-01 H.J. Lu * manual/contrib.texi: Credit Ulrich Drepper for the POSIX Threads Library. 2017-09-01 Joseph Myers * sysdeps/unix/sysv/linux/gentempfd.c: Include . 2017-09-01 H.J. Lu * csu/version.c (banner): Remove "by Roland McGrath et al.". * nptl/Banner: Remove "by Ulrich Drepper et al.". 2017-09-01 Paul Pluzhnikov * stdlib/tst-atexit-common.c (do_test): Test support for at least 32 atexit handlers. 2017-09-01 Zack Weinberg * math/math.h (HUGE_VAL): Improve commentary. 2017-09-01 Adhemerval Zanella Andreas Schwab [BZ #21530] * include/stdio.h (__gen_tempfd): New function. * stdio-common/Makefile (routines): Add gentempfd. * stdio-common/gentempfd.c: New file. * sysdeps/unix/sysv/linux/gentempfd.c: Likewise. * stdio-common/tmpfile.c (tmpfile): First try to use a system specific unnamed file first. 2017-09-01 Florian Weimer [BZ #21915] [BZ #21922] * sysdeps/posix/getaddrinfo.c (gethosts): Look at NSS function result to determine success or failure, not the errno value. * nss/Makefile (tests): Add tst-nss-files-hosts-erange. (tst-nss-files-hosts-erange): Link with -ldl. * nss/tst-nss-files-hosts-erange.c: New file. * nss/tst-resolv-basic.c (response): Handle nodata.example. (do_test): Add NO_DATA tests. * resolv/tst-resolv-basic.c (test_nodata_nxdomain): New function. (do_test): Call it. 2017-09-01 Florian Weimer [BZ #21922] * sysdeps/posix/getaddrinfo.c (gaih_inet): Report EAI_NODATA error coming from gethostbyname2_r. 2017-09-01 Florian Weimer * support/namespace.h (struct support_chroot_configuration): Add hosts, host_conf. (struct support_chroot): Add path_hosts, path_host_conf. * support/support_chroot.c (write_file): New function. (support_chroot_create): Call it to process /etc/resolv.conf, /etc/hosts, /etc/host.conf. (support_chroot_free): Update. 2017-09-01 Florian Weimer * sysdeps/posix/getaddrinfo.c (gaih_inet): Only use h_errno if status indicates it is set. 2017-09-01 Florian Weimer * sysdeps/posix/getaddrinfo.c (gaih_inet): Make reporting of NSS function lookup failures more reliable. 2017-09-01 Florian Weimer * sysdeps/posix/getaddrinfo.c (gethosts): Use h_errno directly. (getcanonname): Likewise. (gaih_inet): Likewise. 2017-09-01 Florian Weimer * sysdeps/posix/getaddrinfo.c (gethosts): Use errno directly. (getcanonname): Likewise. (gaih_inet): Likewise. 2017-08-31 Steve Ellcey Richard Henderson * sysdeps/aarch64/fpu/s_llrint.c (OREG_SIZE): New macro. * sysdeps/aarch64/fpu/s_llround.c (OREG_SIZE): Likewise. * sysdeps/aarch64/fpu/s_llrintf.c (OREGS, IREGS): Remove. (IREG_SIZE, OREG_SIZE): New macros. * sysdeps/aarch64/fpu/s_llroundf.c: (OREGS, IREGS): Remove. (IREG_SIZE, OREG_SIZE): New macros. * sysdeps/aarch64/fpu/s_lrintf.c (IREGS): Remove. (IREG_SIZE): New macro. * sysdeps/aarch64/fpu/s_lroundf.c (IREGS): Remove. (IREG_SIZE): New macro. * sysdeps/aarch64/fpu/s_lrint.c (get-rounding-mode.h, stdint.h): New includes. (IREG_SIZE, OREG_SIZE): Initialize if not already set. (OREGS, IREGS): Set based on IREG_SIZE and OREG_SIZE. (__CONCATX): Handle exceptions correctly on large values that may set FE_INVALID. * sysdeps/aarch64/fpu/s_lround.c (IREG_SIZE, OREG_SIZE): Initialize if not already set. (OREGS, IREGS): Set based on IREG_SIZE and OREG_SIZE. 2017-08-31 Adhemerval Zanella * sysdeps/generic/not-cancel.h (NO_CANCELLATION): Remove macro. * sysdeps/unix/sysv/linux/aarch64/sysdep-cancel.h (NO_CANCELLATION): Likewise. * sysdeps/unix/sysv/linux/alpha/sysdep-cancel.h (NO_CANCELLATION): Likewise. * sysdeps/unix/sysv/linux/arm/sysdep-cancel.h (NO_CANCELLATION): Likewise. * sysdeps/unix/sysv/linux/hppa/sysdep-cancel.h (NO_CANCELLATION): Likewise. * sysdeps/unix/sysv/linux/i386/sysdep-cancel.h (NO_CANCELLATION): Likewise. * sysdeps/unix/sysv/linux/ia64/sysdep-cancel.h (NO_CANCELLATION): Likewise. * sysdeps/unix/sysv/linux/m68k/sysdep-cancel.h (NO_CANCELLATION): Likewise. * sysdeps/unix/sysv/linux/microblaze/sysdep-cancel.h (NO_CANCELLATION): Likewise. * sysdeps/unix/sysv/linux/mips/sysdep-cancel.h (NO_CANCELLATION): Likewise. * sysdeps/unix/sysv/linux/nios2/sysdep-cancel.h (NO_CANCELLATION): Likewise. * sysdeps/unix/sysv/linux/powerpc/sysdep-cancel.h (NO_CANCELLATION): Likewise. * sysdeps/unix/sysv/linux/s390/s390-32/sysdep-cancel.h (NO_CANCELLATION): Likewise. * sysdeps/unix/sysv/linux/s390/s390-64/sysdep-cancel.h (NO_CANCELLATION): Likewise. * sysdeps/unix/sysv/linux/sh/sysdep-cancel.h (NO_CANCELLATION): Likewise * sysdeps/unix/sysv/linux/sparc/sysdep-cancel.h (NO_CANCELLATION): Likewise. * sysdeps/unix/sysv/linux/tile/sysdep-cancel.h (NO_CANCELLATION): Likewise. * sysdeps/unix/sysv/linux/x86_64/sysdep-cancel.h (NO_CANCELLATION): Likewise. * sysdeps/unix/sysv/linux/not-cancel.h (__fcntl_nocancel): Add hidden prototype. * sysdeps/unix/sysv/linux/fcntl.c (__fcntl_nocancel): Define only for !IS_IN (rtld) and remove NO_CANCELLATION usage. 2017-08-31 Steve Ellcey * sysdeps/aarch64/dl-irel.h: (elf_ifunc_invoke): Change argument type in resolver call. 2017-08-31 Florian Weimer * include/libc-symbols.h (internal_function): Remove. 2017-08-31 Florian Weimer * stdlib/fmtmsg.c (internal_addseverity): Remove internal_function. 2017-08-31 Florian Weimer * stdio-common/printf_fp.c (group_number): Remove internal_function. * stdio-common/vfprintf.c (buffered_vfprintf): Likewise. 2017-08-31 Florian Weimer * posix/fnmatch.c (internal_function): Remove definition. * posix/fnmatch_loop.c (FCT, EXT, END): Remove internal_function. * posix/regcomp.c (peek_token, init_word_char) (duplicate_node_closure, fetch_token, peek_token) (peek_token_bracket, build_range_exp, build_collating_symbol): Likewise. * posix/regex_internal.c (re_string_construct_common) (create_ci_newstate, create_cd_newstate, re_string_allocate) (re_string_construct, re_string_realloc_buffers, build_wcs_buffer) (build_wcs_upper_buffer, re_string_skip_chars, build_upper_buffer) (re_string_translate_buffer, re_string_reconstruct) (re_string_peek_byte_case, re_string_fetch_byte_case) (re_string_destruct, re_string_context_at, re_node_set_alloc) (re_node_set_init_1, re_node_set_init_2, re_node_set_init_copy) (re_node_set_add_intersect, re_node_set_init_union) (re_node_set_merge, re_node_set_insert, re_node_set_insert_last) (re_node_set_compare, re_node_set_contains, re_node_set_remove_at) (re_dfa_add_node, calc_state_hash, re_acquire_state) (re_acquire_state_context): Likewise. * posix/regex_internal.h (internal_function): Remove definition. (re_string_realloc_buffers, build_wcs_buffer) (build_wcs_upper_buffer, build_upper_buffer) (re_string_translate_buffer, re_string_context_at) (re_string_char_size_at, re_string_wchar_at) (re_string_elem_size_at): Likewise. * posix/regexec.c (match_ctx_init, match_ctx_clean) (match_ctx_free, match_ctx_add_entry, search_cur_bkref_entry) (match_ctx_add_subtop, match_ctx_add_sublast, sift_ctx_init) (re_search_internal, re_search_2_stub, re_search_stub) (re_copy_regs, prune_impossible_nodes, check_matching) (check_halt_state_context, update_regs, push_fail_stack, set_regs) (free_fail_stack_return, sift_states_iter_mb) (sift_states_backward, build_sifted_states) (update_cur_sifted_state, add_epsilon_src_nodes, check_dst_limits) (check_dst_limits_calc_pos_1, check_dst_limits_calc_pos) (check_subexp_limits, sift_states_bkref, merge_state_array) (find_recover_state, transit_state, merge_state_with_log) (check_subexp_matching_top, transit_state_sb, transit_state_sb) (transit_state_mb, transit_state_bkref, get_subexp) (get_subexp_sub, find_subexp_node, check_arrival) (check_arrival_add_next_nodes, check_arrival_expand_ecl) (check_arrival_expand_ecl_sub, expand_bkref_cache, build_trtable) (check_node_accept_bytes, find_collation_sequence_value) (group_nodes_into_DFAstates, check_node_accept, extend_buffers) (acquire_init_state_context, check_halt_node_context) (proceed_next_node, pop_fail_stack, clean_state_log_if_needed) (sub_epsilon_src_nodes): Likewise. * posix/spawn_int.h (__spawn_valid_fd): Likewise. * posix/spawn_valid_fd (__spawn_valid_fd): Likewise. * posix/wordexp.c (parse_dollars, parse_backtick, parse_dquote) (eval_expr, w_addmem, w_addstr, w_addword, parse_backslash) (parse_qtd_backslash, parse_tilde, do_parse_glob, parse_glob) (parse_squote, eval_expr_val, eval_expr_multdiv, parse_arith) (exec_comm_child, exec_comm, parse_comm, parse_param): Likewise. * sysdeps/posix/ttyname.c (getttyname): Likewise. * sysdeps/posix/ttyname_r.c (getttyname_r): Likewise. * sysdeps/unix/sysv/linux/preadv.c (__atomic_preadv_replacement) (PREADV): Likewise. * sysdeps/unix/sysv/linux/preadv64.c (__atomic_preadv64_replacement) (PREADV): Likewise. * sysdeps/unix/sysv/linux/pwritev.c (__atomic_pwritev_replacement) (PWRITEV): Likewise. * sysdeps/unix/sysv/linux/pwritev64.c (__atomic_pwritev64_replacement) (PWRITEV): Likewise. * sysdeps/unix/sysv/linux/ttyname.c (getttyname): Likewise. * sysdeps/unix/sysv/linux/ttyname_r.c (getttyname_r): Likewise. 2017-08-31 Florian Weimer * nptl/allocatestack.c (change_stack_perm, __deallocate_stack) (setxid_mark_thread, setxid_unmark_thread, setxid_signal_thread): Remove internal_function. * nptl/cancellation.c (__pthread_disable_asynccancel): Likewise. * nptl/libc_pthread_init.c (__libc_pthread_init): Likewise. * nptl/pthreadP.h (__find_in_stack_list, __free_tcb) (__deallocate_stack, __libc_pthread_init) (__pthread_mutex_cond_lock, __pthread_mutex_cond_lock_adjust) (__pthread_mutex_unlock_usercnt, __pthread_disable_asynccancel) (__libc_disable_asynccancel, __librt_disable_asynccancel): Likewise. * nptl/pthread_create.c (__find_in_stack_list, __free_tcb): Likewise. * nptl/pthread_mutex_cond_lock.c (__pthread_mutex_lock): Likewise. * nptl/pthread_mutex_lock.c (__pthread_mutex_cond_lock_adjust): Likewise. * nptl/pthread_mutex_unlock.c (__pthread_mutex_unlock_full) (__pthread_mutex_unlock_usercnt): Likewise. 2017-08-31 Florian Weimer * io/fts.c (fts_alloc, fts_build, fts_lfree, fts_load) (fts_maxarglen, fts_padjust, fts_palloc, fts_sort, fts_stat) (fts_safe_changedir): Remove internal_function. * io/ftw.c (internal_function): Remove definition. (ftw_dir, process_entry, ftw_startup): Remove internal_function. 2017-08-31 Florian Weimer * inet/deadline.c (__deadline_current_time) (__deadline_from_timeval, __deadline_to_ms): Remove internal_function. * inet/getnameinfo.c (nrl_domainname): Likewise. * inet/getnetgrent_r.c (__internal_setnetgrent_reuse): Likewise. * inet/inet6_option.c (add_pad): Likewise. * inet/net-internal.h (__deadline_current_time) (__deadline_from_timeval, __deadline_to_ms): Likewise. * inet/rcmd.c (__checkhost_sa, __icheckuser): Likewise. * sysdeps/mach/hurd/if_index.c (__protocol_available): Likewise. * sysdeps/unix/sysv/linux/ifaddrs.c (map_newlink): Likewise. 2017-08-31 Joseph Myers * math/math.h [__USE_ISOC99] (NAN): Define directly here. Do not include . * math/Makefile (headers): Remove bits/nan.h. * bits/nan.h: Remove. * sysdeps/ieee754/bits/nan.h: Likewise. * sysdeps/mips/bits/nan.h: Likewise. * math/math.h [__USE_ISOC99] (INFINITY): Define directly here. Do not include . * math/Makefile (headers): Remove bits/inf.h. * bits/inf.h: Remove. * sysdeps/ieee754/bits/inf.h: Likewise. * math/math.h: Do not include bits/huge_val.h, bits/huge_valf.h, bits/huge_vall.h or bits/huge_val_flt128.h. (HUGE_VAL): Define directly here. [__USE_ISOC99] (HUGE_VALF): Likewise. [__USE_ISOC99] (HUGE_VALL): Likewise. [__HAVE_FLOAT128 && __GLIBC_USE (IEC_60559_TYPES_EXT)] (HUGE_VAL_F128): Likewise. * math/Makefile (headers): Remove bits/huge_val.h, bits/huge_valf.h, bits/huge_vall.h and bits/huge_val_flt128.h. * bits/huge_val.h: Remove. * bits/huge_val_flt128.h: Likewise. * bits/huge_valf.h: Likewise. * bits/huge_vall.h: Likewise. * sysdeps/ia64/bits/huge_vall.h: Likewise. * sysdeps/ieee754/bits/huge_val.h: Likewise. * sysdeps/ieee754/bits/huge_valf.h: Likewise. * sysdeps/m68k/m680x0/bits/huge_vall.h: Likewise. * sysdeps/sh/bits/huge_val.h: Likewise. * sysdeps/sparc/bits/huge_vall.h: Likewise. * sysdeps/x86/bits/huge_vall.h: Likewise. 2017-08-31 Florian Weimer * elf/dl-addr-obj.c (_dl_addr_inside_object): Remove internal_function. * elf/dl-cache.c (_dl_cache_libcmp, _dl_load_cache_lookup): Likewise. * elf/dl-debug.c (_dl_debug_initialize): Likewise. * elf/dl-deps.c (_dl_build_local_scope, _dl_map_object_deps): Likewise. * elf/dl-environ.c (_dl_next_ld_env_entry): Likewise. * elf/dl-execstack.c (_dl_make_stack_executable): Likewise. * elf/dl-fini.c (_dl_sort_fini): Likewise. * elf/dl-hwcaps.c (_dl_important_hwcaps): Likewise. * elf/dl-libc.c (dlerror_run): Likewise. * elf/dl-load.c (add_name_to_object, decompose_rpath) (_dl_init_paths, _dl_map_object, _dl_rtld_di_serinfo): Likewise. * elf/dl-lookup.c (add_dependency, _dl_debug_bindings) (_dl_lookup_symbol_x, _dl_setup_hash, _dl_debug_bindings): Likewise. * elf/dl-misc.c (_dl_sysdep_read_whole_file, _dl_name_match_p) (_dl_higher_prime_number, _dl_strtoul): Likewise. * elf/dl-object.c (_dl_add_to_namespace_list, _dl_new_object): Likewise. * elf/dl-profile.c (_dl_start_profile): Likewise. * elf/dl-reloc.c (_dl_try_allocate_static_tls) (_dl_allocate_static_tls, _dl_protect_relro, _dl_reloc_bad_type): Likewise. * elf/dl-support.c (_dl_aux_init, _dl_non_dynamic_init): Likewise. * elf/dl-sym.c (_dl_tls_symaddr, do_sym): Likewise. * elf/dl-sysdep.c (_dl_sysdep_start_cleanup, _dl_show_auxv): Likewise. * elf/dl-tls.c (_dl_next_tls_modid, _dl_count_modids) (_dl_determine_tlsoffset, allocate_dtv, _dl_get_tls_static_info) (_dl_allocate_tls_storage): Likewise. * elf/dl-version.c (match_symbol, _dl_check_map_versions) (_dl_check_all_versions): Likewise. * elf/dynamic-link.h (_dl_try_allocate_static_tls): Likewise. * elf/tlsdeschtab.h (_dl_make_tlsdesc_dynamic): Likewise. * elf/tst-_dl_addr_inside_object.c (_dl_addr_inside_object): Likewise. * sysdeps/aarch64/dl-tlsdesc.h (_dl_make_tlsdesc_dynamic): Likewise. * sysdeps/aarch64/tlsdesc.c (_dl_unmap): Likewise. * sysdeps/arm/dl-lookupcfg.h (_dl_unmap): Likewise. * sysdeps/arm/dl-machine.h (elf_machine_load_address): Remove internal_function from __dl_start. * sysdeps/arm/dl-tlsdesc.h (_dl_unmap): Remove internal_function. * sysdeps/generic/dl-cache.h (_dl_cache_libcmp): Likewise. * sysdeps/generic/ldsodefs.h (_dl_name_match_p) (_dl_higher_prime_number, _dl_strtoul, _dl_map_object) (_dl_map_object_deps, _dl_setup_hash, _dl_rtld_di_serinfo) (_dl_lookup_symbol_x, _dl_add_to_namespace_list, _dl_new_object) (_dl_protect_relro, _dl_reloc_bad_type, _dl_check_all_versions) (_dl_check_map_versions, _dl_sort_fini, _dl_debug_initialize) (_dl_init_paths, _dl_start_profile, _dl_show_auxv) (_dl_next_ld_env_entry, _dl_important_hwcaps) (_dl_load_cache_lookup, _dl_sysdep_read_whole_file) (_dl_sysdep_start_cleanup, _dl_next_tls_modid, _dl_count_modids) (_dl_determine_tlsoffset, _dl_get_tls_static_info) (_dl_allocate_static_tls, _dl_allocate_tls_storage) (_dl_addr_inside_object, _dl_non_dynamic_init, _dl_aux_init): Likewise. (struct rtld_global_ro): Remove internal_function from the _dl_lookup_symbol_x member. (_dl_symbol_value): Remove. No longer defined anywhere. * sysdeps/i386/dl-lookupcfg.h (_dl_unmap): Remove internal_function. * sysdeps/i386/dl-tlsdesc.h (_dl_make_tlsdesc_dynamic): Likewise. * sysdeps/i386/tlsdesc.c (_dl_unmap): Likewise. * sysdeps/mach/hurd/dl-sysdep.c (_dl_show_auxv): Likewise. * sysdeps/nios2/dl-init.c (_dl_nios2_get_gp_value): Likewise. * sysdeps/tile/dl-lookupcfg.h (_dl_unmap): Likewise. * sysdeps/tile/dl-machine.h (_dl_after_load): Likewise. * sysdeps/tile/dl-runtime.c (_dl_after_load, _dl_unmap): Likewise. * sysdeps/unix/sysv/linux/dl-vdso.c (_dl_vdso_vsym): Likewise. * sysdeps/unix/sysv/linux/dl-vdso.h (_dl_vdso_vsym): Likewise. * sysdeps/x86_64/dl-lookupcfg.h (_dl_unmap): Likewise. * sysdeps/x86_64/dl-tlsdesc.h (_dl_make_tlsdesc_dynamic): Likewise. * sysdeps/x86_64/tlsdesc.c (_dl_unmap): Likewise. 2017-08-31 Florian Weimer * gmon/gmon.c (write_hist, write_call_graph, write_bb_counts): Remove internal_function. * sysdeps/arm/machine-gmon.h (mcount_internal, _MCOUNT_DECL): Likewise. * sysdeps/sparc/machine-gmon.h (mcount_internal, _MCOUNT_DECL): Likewise. 2017-08-31 Florian Weimer * dlfcn/dlerror.c (_dlerror_run): Remove internal_function. * elf/dl-sym.c (_dl_vsym, _dl_sym): Likewise. * include/dlfcn.h (_dl_sym, _dl_vsym, _dlerror_run): Likewise. 2017-08-31 Florian Weimer * resolv/gai_misc.c (__gai_find_request, __gai_remove_request) (__gai_enqueue_request): Remove internal_function. * resolv/gai_misc.h (__gai_enqueue_request, __gai_find_request) (__gai_remove_request, __gai_notify, __gai_notify_only) (__gai_sigqueue): Likewise. * resolv/gai_notify.c (__gai_notify_only, __gai_notify): Likewise. * resolv/gai_sigqueue.c (__gai_sigqueue): Likewise. * resolv/inet_ntop.c (inet_ntop4, inet_ntop6): Likewise. * sysdeps/unix/sysv/linux/gai_sigqueue.c (__gai_sigqueue): Likewise. 2017-08-31 Florian Weimer * dirent/scandir-tail.c (SCANDIR_TAIL): Remove internal_function. * include/dirent.h (__opendirat, __getdents, __getdents64) (__alloc_dir, __scandir_tail, __scandir64_tail): Likewise. * sysdeps/posix/opendir.c (__opendirat, __alloc_dir): Likewise. * sysdeps/mach/hurd/opendir.c (__opendirat): Likewise. * sysdeps/unix/sysv/linux/i386/olddirent.h (__old_getdents64): Likewise. * sysdeps/unix/sysv/linux/getdents.c (__GETDENTS): Likewise. 2017-08-31 Florian Weimer * sysdeps/unix/sysv/linux/getcwd.c (generic_getcwd): Remove internal_function. (GETCWD_RETURN_TYPE): Likewise. 2017-08-31 Florian Weimer * include/time.h (__tz_compute, __strptime_internal): Remove internal_function. * time/strptime_l.c (__strptime_internal): Likewise. * time/tzset.c (compute_change, update_vars, __tz_compute): Likewise. 2017-08-31 Florian Weimer * iconv/gconv.c (__gconv): Remove internal_function. * iconv/gconv_builtin.c (__gconv_get_builtin_trans): Likewise. * iconv/gconv_cache.c (__gconv_load_cache, find_module_idx) (find_module, __gconv_compare_alias_cache, __gconv_lookup_cache) (__gconv_release_cache): Likewise. * iconv/gconv_close.c (__gconv_close): Likewise. * iconv/gconv_conf.c (detect_conflict, insert_module, add_module) (read_conf_file, __gconv_get_path): Likewise. * iconv/gconv_db.c (derivation_lookup, add_derivation) (__gconv_release_step, gen_steps, increment_counter) (find_derivation, __gconv_compare_alias, __gconv_find_transform) (__gconv_close_transform, free_modules_db): Likewise. * iconv/gconv_dl.c (__gconv_find_shlib, __gconv_release_shlib): Likewise. * iconv/gconv_int.h (__gconv_open, __gconv_close, __gconv) (__gconv_find_transform, __gconv_lookup_cache) (__gconv_release_step, __gconv_load_cache, __gconv_get_path) (__gconv_close_transform, __gconv_release_cache) (__gconv_loaded_object, __gconv_release_shlib) (__gconv_compare_alias): Likewise. * iconv/gconv_open.c (__gconv_open): Likewise. * iconv/iconv_prog.c (print_known_names, add_known_names): Likewise. * iconv/iconvconfig.c (add_module): Likewise. * intl/dcigettext.c (plural_lookup, guess_category_value) (category_to_name, get_output_charset, _nl_find_msg): Likewise. * intl/eval-plural.h (plural_eval): Likewise. * intl/finddomain.c (_nl_find_domain): Likewise. * intl/gettextP.h (_nl_unload_domain, _nl_find_domain) (_nl_load_domain, _nl_find_msg): Likewise. (internal_function): Remove definition. * intl/loadinfo.h (internal_function): Likewise. * intl/loadmsgcat.c (_nl_load_domain, _nl_unload_domain): Remove internal_function. * intl/localealias.c (internal_function): Remove definition. (read_alias_file): Remove internal_function. * intl/plural-exp.c (EXTRACT_PLURAL_EXPRESSION): Likewise. * intl/plural-exp.h (internal_function): Remove definition. (FREE_EXPRESSION, EXTRACT_PLURAL_EXPRESSION): Remove internal_function. * intl/plural.c: Regenerate. * intl/plural.y (FREE_EXPRESSION): Remove internal_function. * locale/coll-lookup.c (__collidx_table_lookup) (__collseq_table_lookup): Likewise. * locale/coll-lookup.h (__collidx_table_lookup) (__collseq_table_lookup): Likewise. * locale/findlocale.c (_nl_find_locale, _nl_remove_locale): Likewise. * locale/loadarchive.c (_nl_load_locale_from_archive): Likewise. * locale/loadlocale.c (_nl_intern_locale_data, _nl_load_locale) (_nl_unload_locale): Likewise. * locale/localeinfo.h (struct __locale_data): Remove internal_function from cleanup member. (_nl_find_locale, _nl_load_locale, _nl_unload_locale) (_nl_remove_locale, _nl_load_locale_from_archive) (_nl_intern_locale_data, _nl_get_era_entry, _nl_select_era_entry) (_nl_get_alt_digit, _nl_get_walt_digit, _nl_parse_alt_digit) (_nl_cleanup_time): Remove internal_function. * time/alt_digit.c (_nl_get_alt_digit, _nl_get_walt_digit) (_nl_parse_alt_digit): Likewise. * time/era.c (_nl_init_era_entries, _nl_get_era_entry) (_nl_select_era_entry): Likewise. * time/lc-time-cleanup.c (_nl_cleanup_time): Likewise. * wcsmbs/wcsmbsload.c (__wcsmbs_load_conv, __wcsmbs_clone_conv) (__wcsmbs_named_conv, _nl_cleanup_ctype): Likewise. * wcsmbs/wcsmbsload.h (__wcsmbs_load_conv, __wcsmbs_clone_conv) (__wcsmbs_named_conv, _nl_cleanup_ctype): Likewise. 2017-08-31 Florian Weimer * rt/aio_sigqueue.c (__aio_sigqueue): Remove internal_function. * sysdeps/generic/aio_misc.h (__aio_sigqueue): Likewise. * sysdeps/pthread/aio_misc.c (__aio_free_request, __aio_find_req) (__aio_find_req_fd, __aio_remove_request, __aio_enqueue_request): Likewise. * sysdeps/pthread/aio_misc.h (__aio_enqueue_request) (__aio_find_req, __aio_find_req_fd, __aio_free_request) (__aio_notify, __aio_notify_only, __aio_sigqueue): Likewise. * sysdeps/pthread/aio_notify.c (__aio_notify_only, __aio_notify): Likewise. * sysdeps/unix/sysv/linux/aio_sigqueue.c (__aio_sigqueue): Likewise. 2017-08-31 Florian Weimer * misc/getttyent.c (skip, value): Remove internal_function. * misc/syslog.c (openlog_internal): Likewise. * misc/tsearch.c (trecurse, tdestroy_recurse): Likewise. 2017-08-31 Florian Weimer * include/nss.h (__nss_valid_field, __nss_valid_list_field) (__nss_rewrite_field): Remove internal_function. * nscd/nscd_getgr_r.c (nscd_getgr_r): Likewise. * nscd/nscd_gethst_r.c (nscd_gethst_r): Likewise. * nscd/nscd_getpw_r.c (nscd_getpw_r): Likewise. * nss/nsswitch.c (nss_parse_file, nss_getline) (nss_parse_service_list, nss_new_service): Likewise. * nss/rewrite_field.c (__nss_rewrite_field): Likewise. * nss/valid_field.c (__nss_valid_field): Likewise. * nss/valid_list_field.c (__nss_valid_list_field): Likewise. 2017-08-31 Florian Weimer * malloc/arena.c (__malloc_fork_lock_parent) (__malloc_fork_unlock_parent, __malloc_fork_unlock_child) (next_env_entry, new_heap, heap_trim, arena_get2): Remove internal_function from defintions. * malloc/hooks.c (mem2mem_check, mem2chunk_check): Likewise. * malloc/malloc-internal.h (__malloc_fork_lock_parent) (__malloc_fork_unlock_parent, __malloc_fork_unlock_child): Remove internal_function from declarations. * malloc/malloc.c (internal_function): Do not define. (mem2mem_check): Remove internal_function from declaration. (munmap_chunk, mremap_chunk): Remove internal_function. * malloc/mtrace.c (tr_where): Likewise. 2017-08-31 Florian Weimer * include/rpc/pmap_clnt.h (__get_socket): Remove internal_function. * sunrpc/auth_des.c (synchronize): Likewise. * sunrpc/auth_unix.c (marshal_new_auth): Likewise. * sunrpc/clnt_perr.c (auth_errmsg): Likewise. * sunrpc/des_impl.c (des_encrypt, des_set_key): Likewise. * sunrpc/key_call.c (key_call_keyenvoy, key_call_socket) (key_call): Likewise. * sunrpc/pm_getport.c (__get_socket): Likewise. * sunrpc/pmap_rmt.c (getbroadcastnets): Likewise. * sunrpc/svc_unix.c (makefd_xprt): Likewise. * sunrpc/svc_tcp.c (makefd_xprt): Likewise. * sunrpc/svcauth_des.c (cache_init, cache_spot, cache_ref) (invalidate): Likewise. * sunrpc/xcrypt.c (hexval, hex2bin, bin2hex): Likewise. * sunrpc/xdr_rec.c (fix_buf_size, skip_input_bytes, flush_out) (set_input_fragment, get_input_bytes): Likewise. 2017-08-31 Florian Weimer * malloc/malloc.c (_int_free): Remove locked variable and related asserts. 2017-08-31 H.J. Lu [BZ #22051] * Makerules (build-module-helper-objlist): Filter out $(elf-objpfx)sofini.os. (build-shlib-objlist): Append $(elf-objpfx)sofini.os if it is needed. 2017-08-31 Florian Weimer * libio/fcloseall.c: Assume weak_alias is defined. * libio/feof.c: Likewise. * libio/fileno.c: Likewise. * libio/fileops.c: Assume _LIBC, errno, __set_errno are defined. (_POSIX_SOURCE, open, lseek, read, write): Remove macro definitions. (_IO_file_open): Call __open directly. (_IO_new_file_sync): Assume ESPIPE is defined. (_IO_file_seekoff_maybe_mmap): Call __read directly. (_IO_new_file_write): Call __write directly. * libio/ftello.c (__ftello): Assume EIO, EOVERFLOW are defined. * libio/ftello64.c (__ftello64): Assume EIO is defined. * libio/genops.c: Assume _LIBC is defined. (save_for_backup): Remove internal_function. * libio/getc.c: Assume weak_alias is defined. * libio/getwc.c: Likewise. * libio/iofclose.c: Assume _LIBC is defined. * libio/iofdopen.c: Likewise. (_IO_fcntl): Remove macro definition. (_IO_new_fdopen): Assume F_GETFL, F_SETFL, O_ACCMODE are defined. Call __fcntl directly. * libio/iofflush.c: Assume weak_alias is defined. * libio/iofgetpos.c (_IO_new_fgetpos): Assume EIO, EOVERFLOW are defined. * libio/iofgetpos64.c (_IO_new_fgetpos64): Assume EIO is defined. * libio/iofgets.c: Likewise. * libio/iofopen.c: Assume _LIBC is defined. * libio/iofopen64.c: Assume _LIBC, weak_alias are defined. * libio/iofputs.c: Assume weak_alias is defined. * libio/iofread.c: Likewise. * libio/iofsetpos.c (_IO_new_fsetpos): Assume EIO is defined. * libio/iofsetpos64.c (_IO_new_fsetpos64): Likewise. * libio/ioftell.c: Assume weak_alias is defined. (_IO_ftell): Assume EIO, EOVERFLOW are defined. * libio/iofwide.c: Assume _LIBC is defined. (_IO_fwide): Drop SHARED conditional because it is implied by SHLIB_COMPAT. * libio/iofwrite.c: Assume weak_alias is defined. * libio/iogetdelim.c: Likewise. * libio/iogets.c: Assume _LIBC, weak_alias are defined. * libio/iogetwline.c (wmemcpy): Remove macro definition. (_IO_getwline): Call __wmemcpy directly. * libio/iopopen.c: Assume _LIBC is defined. (_POSIX_SOURCE, _IO_fork, _IO_dup2, _IO_waitpid, _IO_execl) (_IO_close): Remove macro definitions. (_IO_new_proc_open): Call __fork, __dup2, __close_nocancel, execl, _exit directly. (_IO_new_proc_close): Call __close_nocancel, __waitpid_nocancel directly. * libio/ioputs.c: Assume weak_alias is defined. * libio/ioseekoff.c: Assume errno, __set_errno are defined. * libio/iosetbuffer.c: Assume weak_alias is defined. * libio/iosetvbuf.c: Likewise. * libio/ioungetc.c: Likewise. * libio/libioP.h: Assume _LIBC, __GLIBC__, libc_hidden_proto, libc_hidden_def, libc_hidden_weak, NULL are defined. (mmap, munmap, ftruncate, OS_FSTAT): Remove macro definitions. * libio/oldfilepos.c: Assume _LIBC, errno, __set_errno are defined. (_POSIX_SOURCE, open, lseek, read, write): Remove macro definitions. (_IO_old_file_init_internal): Drop SHARED conditional because it is implied by SHLIB_COMPAT. (_IO_old_file_fopen): Call __open directly. (_IO_old_file_sync): Assume ESPIPE is defined. (_IO_old_file_write): Call __write directly. * libio/oldfdopen.c (_IO_fcntl): Remove macro definition. (_IO_old_fdopen): Assume F_GETFL, O_ACCMODE, F_SETFL are defined. Call __fcntl directly. * libio/oldiofgetpos.c: Assume weak_alias is defined. (_IO_old_fgetpos): Assume EIO is defined. * libio/oldiofgetpos64.c: Assume weak_alias is defined. (_IO_old_fgetpos64): Assume EIO is defined. * libio/oldiofsetpos.c: Assume weak_alias is defined. (_IO_old_fsetpos): Assume EIO is defined. * libio/oldiofsetpos64.c: Assume weak_alias is defined. (_IO_old_fsetpos64): Assume EIO is defined. * libio/oldiopopen.c: Assume _LIBC is defined. (_POSIX_SOURCE, _IO_fork, _IO_dup2, _IO_waitpid, _IO_execl) (_IO_close): Remove macro definitions. (_IO_old_proc_open): Call __pipe, __close, __dup2, execl, _exit directly. (_IO_old_proc_close): Call __close, __waitpid directly. * libio/put.c: Assume weak_alias is defined. * libio/stdfiles.c: Assume _LIBC is defined. * libio/stdio.c: Likewise. * libio/wfileops.c: Likewise. (_IO_wfile_sync): Assume ESPIPE is defined. * libio/wgenops.c: Assume _LIBC is defined. (save_for_wbackup): Remove internal_function. 2017-08-31 Florian Weimer * malloc/malloc.c (top_check): Change return type to void. Remove internal_function. * malloc/hooks.c (top_check): Likewise. (malloc_check, realloc_check, memalign_check): Adjust. 2017-08-30 Joseph Myers [BZ #21457] * sysdeps/arm/sys/ucontext.h: Do not include . * sysdeps/generic/sys/ucontext.h: Add comment about use of struct sigcontext and namespace requirements. * sysdeps/i386/sys/ucontext.h: Do not include . * sysdeps/m68k/sys/ucontext.h: Likewise. * sysdeps/mips/sys/ucontext.h: Likewise. Include . * sysdeps/unix/sysv/linux/aarch64/sys/ucontext.h: Do not include . (__ctx): Define earlier. (mcontext_t): Define structure contents rather than using struct sigcontext. * sysdeps/unix/sysv/linux/aarch64/ucontext_i.sym (oEXTENSION): Use __glibc_reserved1 instead of __reserved. * sysdeps/unix/sysv/linux/alpha/sys/ucontext.h: Do not include . (__ctx): Define earlier. (mcontext_t): Define structure contents rather than using struct sigcontext. * sysdeps/unix/sysv/linux/alpha/ucontext-offsets.sym: Use mcontext_t instead of struct sigcontext. * sysdeps/unix/sysv/linux/arm/sys/ucontext.h: Do not include . (__ctx): Define earlier. (mcontext_t): Define structure contents rather than using struct sigcontext. * sysdeps/unix/sysv/linux/hppa/sys/ucontext.h: Do not include . (__ctx): Define earlier. (mcontext_t): Define structure contents rather than using struct sigcontext. * sysdeps/unix/sysv/linux/ia64/makecontext.c (__makecontext): Use mcontext_t instead of struct sigcontext. * sysdeps/unix/sysv/linux/ia64/sigcontext-offsets.sym: Use mcontext_t instead of struct sigcontext. * sysdeps/unix/sysv/linux/ia64/sys/ucontext.h: Do not include . (__ctx): New macro. (struct __ia64_fpreg_mcontext): New type. (mcontext_t): Define structure contents rather than using struct sigcontext. (_SC_GR0_OFFSET): Use mcontext_t instead of struct sigcontext. (uc_sigmask): Define using __ctx. (uc_stack): Likewise. * sysdeps/unix/sysv/linux/ia64/sys/procfs.h: Include . * sysdeps/unix/sysv/linux/ia64/sys/ptrace.h: Likewise. * sysdeps/unix/sysv/linux/m68k/sys/ucontext.h: Do not include . * sysdeps/unix/sysv/linux/microblaze/sys/ucontext.h: New file. * sysdeps/unix/sysv/linux/mips/sys/ucontext.h: Do not include . * sysdeps/unix/sysv/linux/nios2/sys/ucontext.h: Do not include . * sysdeps/unix/sysv/linux/powerpc/sys/ucontext.h: Do not include . * sysdeps/unix/sysv/linux/s390/sys/ucontext.h: Do not include . * sysdeps/unix/sysv/linux/sh/sys/ucontext.h: Do not include . * sysdeps/unix/sysv/linux/sparc/sys/ucontext.h: Do not include . * sysdeps/unix/sysv/linux/tile/sys/ucontext.h: Do not include . (__ctx): Define earlier. (mcontext_t): Define structure contents rather than using struct sigcontext. * sysdeps/unix/sysv/linux/x86/sys/ucontext.h: Do not include . Include . * conform/Makefile (test-xfail-XPG42/signal.h/conform): Remove. (test-xfail-XPG42/sys/wait.h/conform): Likewise. (test-xfail-XPG42/ucontext.h/conform): Likewise. (test-xfail-UNIX98/signal.h/conform): Likewise. (test-xfail-UNIX98/sys/wait.h/conform): Likewise. (test-xfail-UNIX98/ucontext.h/conform): Likewise. (test-xfail-XOPEN2K/signal.h/conform): Likewise. (test-xfail-XOPEN2K/sys/wait.h/conform): Likewise. (test-xfail-XOPEN2K/ucontext.h/conform): Likewise. (test-xfail-POSIX2008/signal.h/conform): Likewise. (test-xfail-POSIX2008/sys/wait.h/conform): Likewise. (test-xfail-XOPEN2K8/signal.h/conform): Likewise. (test-xfail-XOPEN2K8/sys/wait.h/conform): Likewise. 2017-08-30 Florian Weimer * malloc/dynarray_emplace_enlarge.c (__libc_dynarray_emplace_enlarge): Set errno on overflow. * malloc/dynarray_resize.c (__libc_dynarray_resize): Likewise. * malloc/tst-dynarray.c (test_long_overflow): New function. (do_test): Call it. 2017-08-30 Florian Weimer * malloc/malloc.c (ARENA_CORRUPTION_BIT, arena_is_corrupt) (set_arena_corrupt): Remove definitions. (mtrim): Do not check for corrupt arena. * malloc/arena.c (arena_lock, reused_arena, arena_get_retry): Likewise. 2017-08-30 Florian Weimer [BZ #21754] * malloc/arena.c (TUNABLE_CALLBACK set_mallopt_check): Do not set check_action. (ptmalloc_init): Do not set or use check_action. * malloc/hooks.c (malloc_check_get_size, realloc_check): Adjust call to malloc_printerr. Remove return statement. (free_check): Likewise. Remove arena unlock. (top_check): Update comment. Adjust call to malloc_printerr. Remove heap repair code. * malloc/malloc.c (unlink): Adjust calls to malloc_printerr. (DEFAULT_CHECK_ACTION, check_action): Remove definitions. (sysmalloc): Adjust call to malloc_printerr. (munmap_chunk, __libc_realloc): Likewise. Remove return statement. (_int_malloc, int_realloc): Likewise. Remove errstr variable. Remove errout label and corresponding gotos. (_int_free): Likewise. Remove arena unlock. (do_set_mallopt_check): Do not set check_action. (malloc_printerr): Adjust parameter list. Do not mark arena as corrupt. * manual/memory.texi (Malloc Tunable Parameters): Remove TODO comment. * manual/probes.texi (Memory Allocation Probes): Remove memory_mallopt_check_action. 2017-08-30 Steve Ellcey * sysdeps/unix/sysv/linux/aarch64/makecontext.c (__makecontext): Use pointer to uint64_t instead of long int for sp. 2017-08-30 Florian Weimer [BZ #21754] * malloc/malloc.c (malloc_printerr): Always terminate the process, without printing a backtrace. Do not leak any information in the error message. * manual/memory.texi (Heap Consistency Checking): Update. * manual/tunables.texi (Memory Allocation Tunables): Likewise. 2017-08-30 Florian Weimer Do not scale NPTL tests with available number of CPUs. * nptl/tst-cond16.c (count): Set to constant value of 8. * nptl/tst-cond18.c (count): Likewise. 2017-08-29 Joseph Myers [BZ #22035] * sysdeps/m68k/m680x0/fpu/bits/mathinline.h (__inline_functions): Define to take a second argument that is a macro that concatentates a suffix, not the suffix itself. (__CONCAT_d): New macro. (__CONCAT_f): Likewise. (__CONCAT_l): Likewise. 2017-08-29 Paul Pluzhnikov * stdlib/tst-atexit-common.c (do_test): Test handler inheritance by child. 2017-08-29 Adhemerval Zanella Aurelien Jarno Maciej W. Rozycki [BZ #21956] * sysdeps/unix/sysv/linux/mips/mips32/mips16/Makefile [subdir = misc] (sysdep_routines): Remove `mips16-syscall5', `mips16-syscall6' and `mips16-syscall7'. (CFLAGS-mips16-syscall5.c, CFLAGS-mips16-syscall6.c) (CFLAGS-mips16-syscall7.c): Remove. * sysdeps/unix/sysv/linux/mips/mips32/mips16/Versions (libc): Remove `__mips16_syscall5', `__mips16_syscall6' and `__mips16_syscall7'. * sysdeps/unix/sysv/linux/mips/mips32/mips16/mips16-syscall0.c (__mips16_syscall0): Rename `__mips16_syscall_return' to `__mips_syscall_return'. * sysdeps/unix/sysv/linux/mips/mips32/mips16/mips16-syscall1.c (__mips16_syscall1): Likewise. * sysdeps/unix/sysv/linux/mips/mips32/mips16/mips16-syscall2.c (__mips16_syscall2): Likewise. * sysdeps/unix/sysv/linux/mips/mips32/mips16/mips16-syscall3.c (__mips16_syscall3): Likewise. * sysdeps/unix/sysv/linux/mips/mips32/mips16/mips16-syscall4.c (__mips16_syscall4): Likewise. * sysdeps/unix/sysv/linux/mips/mips32/mips16/mips16-syscall5.c: Remove. * sysdeps/unix/sysv/linux/mips/mips32/mips16/mips16-syscall6.c: Remove. * sysdeps/unix/sysv/linux/mips/mips32/mips16/mips16-syscall7.c: Remove. * sysdeps/unix/sysv/linux/mips/mips32/mips16/mips16-syscall.h (__mips16_syscall5): Expand to `__mips_syscall5' rather than `__mips16_syscall5'. Remove prototype. (__mips16_syscall6): Expand to `__mips_syscall6' rather than `__mips16_syscall6'. Remove prototype. (__mips16_syscall7): Expand to `__mips_syscall7' rather than `__mips16_syscall7'. Remove prototype. (__nomips16, __mips16_syscall_return): Move to... * sysdeps/unix/sysv/linux/mips/mips32/sysdep.h (__nomips16, __mips_syscall_return): ... here. [__mips16] (INTERNAL_SYSCALL_NCS): Rename `__mips16_syscall_return' to `__mips_syscall_return'. [__mips16] (INTERNAL_SYSCALL_MIPS16): Pass `number' to `internal_syscall##nr'. [!__mips16] (INTERNAL_SYSCALL): Pass `SYS_ify (name)' to `internal_syscall##nr'. (FORCE_FRAME_POINTER): Remove. (__mips_syscall5): New prototype. (internal_syscall5): Rewrite to call `__mips_syscall5'. (__mips_syscall6): New prototype. (internal_syscall6): Rewrite to call `__mips_syscall6'. (__mips_syscall7): New prototype. (internal_syscall7): Rewrite to call `__mips_syscall7'. * sysdeps/unix/sysv/linux/mips/mips32/mips-syscall5.S: New file. * sysdeps/unix/sysv/linux/mips/mips32/mips-syscall6.S: New file. * sysdeps/unix/sysv/linux/mips/mips32/mips-syscall7.S: New file. * sysdeps/unix/sysv/linux/mips/mips32/Makefile [subdir = misc] (sysdep_routines): Add libc-do-syscall. * sysdeps/unix/sysv/linux/mips/mips32/Versions (libc): Add `__mips_syscall5', `__mips_syscall6' and `__mips_syscall7'. 2017-08-29 Adhemerval Zanella [BZ #21672] * nptl/allocatestack.c [_STACK_GROWS_DOWN] (setup_stack_prot): Set to use !NEED_SEPARATE_REGISTER_STACK as well. (advise_stack_range): New function. * nptl/pthread_create.c (START_THREAD_DEFN): Move logic to mark stack non required to advise_stack_range at allocatestack.c 2017-08-29 Szabolcs Nagy * sysdeps/unix/sysv/linux/aarch64/sys/procfs.h: Use __uint64_t. 2017-08-29 Florian Weimer [BZ #22026] * iconv/gconv_db.c (gen_steps): Decrement step_cnt after resetting __end_fct. Mangle __end_fct after setting it to NULL. * iconv/Makefile (tests): Add tst-gconv-init-failure. (modules-names, modules-names-tests): Add tst-gconv-init-failure-mod. (gconv-modules): New target. (tst-gconv-init-failure-mod.so): Link against libsupport. (tst-gconv-init-failure): Depend on gconv-modules, tst-gconv-init-failure-mod.so. * iconv/tst-gconv-init-failure-mod.c: New file. * iconv/tst-gconv-init-failure.c: Likewise. * iconv/test-gconv-modules: Likewise. 2017-08-29 Florian Weimer [BZ #22025] * iconv/gconv_db.c (free_derivation): Remove redundant parentheses. (gen_steps): Unconditionally mangle __btowc_fct after initialization. (increment_counter): Likewise. Do not call init_fct for internal modules. 2017-08-29 Joseph Myers [BZ #22028] * math/math.h [__FINITE_MATH_ONLY__ && __FINITE_MATH_ONLY__ > 0] (_MSUF_): Remove macro. [__FINITE_MATH_ONLY__ && __FINITE_MATH_ONLY__ > 0] (_MSUFTO_): Likewise. [__FINITE_MATH_ONLY__ && __FINITE_MATH_ONLY__ > 0] (__REDIRFROM_X): New macro. [__FINITE_MATH_ONLY__ && __FINITE_MATH_ONLY__ > 0] (__REDIRTO_X): Likewise. * math/bits/math-finite.h (__REDIRFROM_X): Remove macro. (__REDIRTO_X): Likewise. (__MATH_REDIRCALL): Do not pass _MSUF_ or _MSUFTO_ macro arguments. (__MATH_REDIRCALL_2): Likewise. (__MATH_REDIRCALL_INTERNAL): Likewise. (__REDIRFROM (lgamma, , _MSUF_)): Likewise. (__REDIRFROM (gamma, , _MSUF_)): Likweise. (__REDIRFROM (__gamma, _r_finite, _MSUF_)): Likewise. (__REDIRFROM (tgamma, , _MSUF_)): Likewise. * math/test-finite-macros.c: New file. * math/Makefile (tests): Add test-finite-macros. (CFLAGS-test-finite-macros.c): New variable. 2017-08-29 Patsy Franklin Jeff Law [BZ #22025] Mangle NULL pointers in iconv/gconv. * iconv/gconv_cache.c (find_module): Demangle init_fct before checking for NULL. Mangle __btowc_fct if init_fct is non-NULL. * iconv/gconv_db.c (free_derivation): Check that __shlib_handle is non-NULL before demangling the end_fct. Check for NULL end_fct after demangling. (__gconv_release_step): Demangle the end_fct before checking it for NULL. Remove assert on __shlibc_handle != NULL. (gen_steps): Don't check btowc_fct for NULL before mangling. Demangle init_fct before checking for NULL. (increment_counter): Likewise. * gconv_dl.c (__gconv_find_shlib): Don't check init_fct or end_fct for NULL before mangling. * wcsmbs/btowc.c (__btowc): Demangle btowc_fct before checking for NULL. 2017-08-29 Akhilesh Kumar [BZ #21971] * locale/iso-639.def: add Morisyen. 2017-08-28 Gabriel F. T. Gomes [BZ #21930] * math/math.h [defined __cplusplus && defined __SUPPORT_SNAN__] (iszero): New C++ implementation that does not use fpclassify/__MATH_TG/__builtin_types_compatible_p, when signaling nans are enabled, since __builtin_types_compatible_p is a C-only feature. * math/test-math-iszero.cc: When __HAVE_DISTINCT_FLOAT128 is defined, include ieee754_float128.h for access to the union and member ieee854_float128.ieee. [__HAVE_DISTINCT_FLOAT128] (do_test): Call check_float128. [__HAVE_DISTINCT_FLOAT128] (check_float128): New function. * sysdeps/powerpc/powerpc64le/Makefile [subdir == math] (CXXFLAGS-test-math-iszero.cc): Add -mfloat128 to the build options of test-math-zero on powerpc64le. 2017-08-28 H.J. Lu * sysdeps/x86_64/fpu/multiarch/e_expf.c (__redirect_ieee754_expf): Change double to float. 2017-08-28 Joseph Myers * math/math-svid-compat.h [!__ASSEMBLER__]: Make code unconditional. * sysdeps/ieee754/s_lib_version.c [!defined SHARED]: Remove conditional code; define contents only for [LIBM_SVID_COMPAT]. 2017-08-28 Florian Weimer * sysdeps/unix/sysv/linux/aarch64/Makefile (abi-lp64-options) (abi-lp64_be-options): Remove. * sysdeps/unix/sysv/linux/arm/Makefile (abi-soft-options) (abi-hard-options): Likewise. * sysdeps/unix/sysv/linux/mips/Makefile(abi-o32_soft-options) (abi-o32_hard-options, abi-o32_soft_2008-options) (abi-o32_hard_2008-options, abi-n32_soft-options) (abi-n32_hard-options, abi-n32_soft_2008-options) (abi-n32_hard_2008-options, abi-n64_soft-options) (abi-n64_hard-options, abi-n64_soft_2008-options) (abi-n64_hard_2008-options): Likewise. * sysdeps/unix/sysv/linux/powerpc/Makefile (abi-32-options) (abi-64-v1-options, abi-64-v2-options): Likewise. * sysdeps/unix/sysv/linux/s390/Makefile (abi-32-options) (abi-64-options): Likewise. * sysdeps/unix/sysv/linux/sparc/Makefile (abi-32-options) (abi-64-options): Likewise. * sysdeps/unix/sysv/linux/tile/tilegx/Makefile (abi-32-options) (abi-64-options): Likewise. * sysdeps/unix/sysv/linux/x86/Makefile (abi-32-options) (abi-64-options, abi-x32-options): Likewise. 2017-08-28 Florian Weimer Store supported list of SYS_* system calls in the source tree. * sysdeps/unix/sysv/linux/Makefile [$(subdir) = misc] (bits/syscall.h): Generate from list file. [$(subdir) = misc] (before-compile): Add bits/syscall.h. [$(subdir) = misc] (tests): Add tst-syscall-list. [$(subdir) = misc] (tests-special): Add tst-syscall-list.out [$(subdir) = misc] (tst-syscall-list-macros.list) [$(subdir) = misc] (tst-syscall-list-nr.list) (tst-syscall-list-sys.list): Helper targets for new tst-syscall-list test. [$(subdir) = misc] (tst-syscall-list.out): Run test script tst-syscall-list.sh. [$(subdir) = misc] (bits/syscall%h, bits/syscall%d): Remove target. Do not include bits/syscall.d. [$(subdir) = misc] (generated): Do not update. * sysdeps/unix/sysv/linux/syscall-names.list: New file. * sysdeps/unix/sysv/linux/gen-syscall-h.awk: Likewise. * sysdeps/unix/sysv/linux/filter-nr-syscalls.awk: Likewise. * sysdeps/unix/sysv/linux/tst-syscall-list.sh: Likewise. 2017-08-27 Paul Pluzhnikov * stdlib/Makefile (tst-atexit, tst-at_quick_exit): New tests. (tst-cxa_atexit, tst-on_exit): Likewise. * stdlib/Makefile (tests): Add tst-atexit, tst-at_quick_exit, tst-cxa_atexit, and tst-on_exit. * stdlib/tst-atexit-common.c: New file. * stdlib/tst-atexit.c: New file. * stdlib/tst-at_quick_exit.c: New file. * stdlib/tst-cxa_atexit.c: New file. * stdlib/tst-on_exit.c: New file. 2017-08-27 Samuel Thibault * sysdeps/mach/hurd/bits/sysmacros.h: New file. * mach/stack_chk_fail_local.c: New file. * hurd/stack_chk_fail_local.c: New file. * mach/Machrules ($(interface-library)-routines): Add stack_chk_fail_local. * mach/Makefile (CFLAGS-mach_init.o, CFLAGS-RPC_vm_statistics.o, CFLAGS-RPC_vm_map.o, CFLAGS-RPC_vm_protect.o, CFLAGS-RPC_i386_set_gdt.o, CFLAGS-RPC_i386_set_ldt.o, CFLAGS-RPC_task_get_special_port.o): Add $(no-stack-protector). * hurd/Makefile (CFLAGS-hurdstartup.o, CFLAGS-RPC_exec_startup_get_info.o): Add $(no-stack-protector). 2017-08-25 H.J. Lu * sysdeps/x86/cpu-features.h [__ASSEMBLER__] (index_cpu_*, index_arch_*): Removed. 2017-08-25 Szabolcs Nagy * sysdeps/unix/sysv/linux/aarch64/sys/procfs.h (elf_greg_t): Use uint64_t instead of unsigned long. 2017-08-25 Joseph Myers * math/tgmath.h [__HAVE_FLOAT128]: Change conditional to [__HAVE_DISTINCT_FLOAT128]. * math/math.h (_MSUFTO_): Define and undefine for each inclusion of . (__MATH_DECLARING_LDOUBLE): Do not define and undefine for each inclusion of . * math/bits/math-finite.h (__REDIRTO_X): Do not define conditionally on [__MATH_DECLARING_LDOUBLE && defined __NO_LONG_DOUBLE_MATH]. (__MATH_REDIRCALL): Use _MSUFTO_ in __REDIRTO call. (__MATH_REDIRCALL_2): Likewise. (__MATH_REDIRCALL_INTERNAL): Likewise. (__REDIRFROM (lgamma, , _MSUF_)): Likewise. (__REDIRFROM (gamma, , _MSUF_)): Likewise. (__REDIRFROM (tgamma, , _MSUF_)): Likewise. * sysdeps/powerpc/powerpc32/power4/fpu/multiarch/w_sqrt_compat-power5.S: Remove file. * sysdeps/powerpc/powerpc32/power4/fpu/multiarch/w_sqrt_compat-ppc32.S: Likewise. * sysdeps/powerpc/powerpc32/power4/fpu/multiarch/w_sqrt_compat.c: Likewise. * sysdeps/powerpc/powerpc32/power4/fpu/multiarch/w_sqrtf_compat-power5.S: Likewise. * sysdeps/powerpc/powerpc32/power4/fpu/multiarch/w_sqrtf_compat-ppc32.S: Likewise. * sysdeps/powerpc/powerpc32/power4/fpu/multiarch/w_sqrtf_compat.c: Likewise. * sysdeps/powerpc/powerpc32/power4/fpu/w_sqrt_compat.S: Likewise. * sysdeps/powerpc/powerpc32/power4/fpu/w_sqrtf_compat.S: Likewise. * sysdeps/powerpc/powerpc32/power5/fpu/w_sqrt_compat.S: Likewise. * sysdeps/powerpc/powerpc32/power5/fpu/w_sqrtf_compat.S: Likewise. * sysdeps/powerpc/powerpc32/power4/fpu/multiarch/Makefile (libm-sysdep-routines): Remove w_sqrt_compat-power5, w_sqrt_compat-ppc32, w_sqrtf_compat-power5 and w_sqrtf_compat-ppc32. 2017-08-24 Gabriel F. T. Gomes * math/math.h [defined __cplusplus] (issignaling): In the long double case, call __issignalingl only if __NO_LONG_DOUBLE_MATH is not defined. Call __issignaling, otherwise. 2017-08-24 Adhemerval Zanella * sysdeps/unix/make-syscalls.sh: Remove cancellable tagging for syscall definitions and replace __builtin_expect with __glibc_likely. * sysdeps/unix/syscall-template.S: Update comment about cancellable syscall. (SYSCALL_CANCELLABLE): Removedefinition * sysdeps/unix/sysv/linux/aarch64/sysdep-cancel.h (PSEUDO): Remove definition. (PSEUDO_END): Likewise. [IS_IN (libpthread)] (CENABLE): Likewise. [IS_IN (libpthread)] (CDISABLE): Likewise. [IS_IN (libc)] (CENABLE): Likewise. [IS_IN (libc)] (CENABLE): Likewise. [IS_IN (librt)] (CDISABLE): Likewise. [IS_IN (librt)] (CDISABLE): Likewise. [__ASSEMBLER__] (SINGLE_THREAD_P): Likewise. * sysdeps/unix/sysv/linux/alpha/sysdep-cancel.h (PSEUDO): Remove definition. (PSEUDO_END): Likewise. [IS_IN (libpthread)] (__local_enable_asynccancel): Likewise. [IS_IN (libpthread)] (__local_disable_asynccancel): Likewise. [IS_IN (libc)] (__local_enable_asynccancel): Likewise. [IS_IN (libc)] (__local_enable_asynccancel): Likewise. [IS_IN (librt)] (__local_disable_asynccancel): Likewise. [IS_IN (librt)] (__local_disable_asynccancel): Likewise. (CENABLE): Likewise. (CDISABLE): Likewise. [__ASSEMBLER__] (SINGLE_THREAD_P): Likewise. * sysdeps/unix/sysv/linux/arm/sysdep-cancel.h (PSEUDO): Remove defintion. (PSEUDO_END): Likewise. [IS_IN (libpthread)] (CENABLE): Likewise. [IS_IN (libpthread)] (CDISABLE): Likewise. [IS_IN (libc)] (CENABLE): Likewise. [IS_IN (libc)] (CENABLE): Likewise. [IS_IN (librt)] (CDISABLE): Likewise. [IS_IN (librt)] (CDISABLE): Likewise. [__ASSEMBLER__] (SINGLE_THREAD_P): Likewise. * sysdeps/unix/sysv/linux/hppa/sysdep-cancel.h (PSEUDO): Remove definition. (PSEUDO_END): Likewise. [IS_IN (libpthread)] (CENABLE): Likewise. [IS_IN (libpthread)] (CDISABLE): Likewise. [IS_IN (libc)] (CENABLE): Likewise. [IS_IN (libc)] (CENABLE): Likewise. [IS_IN (librt)] (CDISABLE): Likewise. [IS_IN (librt)] (CDISABLE): Likewise. [__ASSEMBLER__] (SINGLE_THREAD_P): Likewise. * sysdeps/unix/sysv/linux/i386/sysdep-cancel.h (PSEUDO): Remove definition. (PSEUDO_END): Likewise. [IS_IN (libpthread)] (CENABLE): Likewise. [IS_IN (libpthread)] (CDISABLE): Likewise. [IS_IN (libc)] (CENABLE): Likewise. [IS_IN (libc)] (CENABLE): Likewise. [IS_IN (librt)] (CDISABLE): Likewise. [IS_IN (librt)] (CDISABLE): Likewise. [__ASSEMBLER__] (SINGLE_THREAD_P): Likewise. * sysdeps/unix/sysv/linux/ia64/sysdep-cancel.h (PSEUDO): Remove definition. (PSEUDO_END): Likewise. [IS_IN (libpthread)] (CENABLE): Likewise. [IS_IN (libpthread)] (CDISABLE): Likewise. [IS_IN (libc)] (CENABLE): Likewise. [IS_IN (libc)] (CENABLE): Likewise. [IS_IN (librt)] (CDISABLE): Likewise. [IS_IN (librt)] (CDISABLE): Likewise. [__ASSEMBLER__] (SINGLE_THREAD_P): Likewise. * sysdeps/unix/sysv/linux/m68k/sysdep-cancel.h (PSEUDO): Remove definition. (PSEUDO_END): Likewise. [IS_IN (libpthread)] (CENABLE): Likewise. [IS_IN (libpthread)] (CDISABLE): Likewise. [IS_IN (libc)] (CENABLE): Likewise. [IS_IN (libc)] (CENABLE): Likewise. [IS_IN (librt)] (CDISABLE): Likewise. [IS_IN (librt)] (CDISABLE): Likewise. [__ASSEMBLER__] (SINGLE_THREAD_P): Likewise. * sysdeps/unix/sysv/linux/microblaze/sysdep-cancel.h (PSEUDO): Remove definition. (PSEUDO_END): Likewise. [IS_IN (libpthread)] (CENABLE): Likewise. [IS_IN (libpthread)] (CDISABLE): Likewise. [IS_IN (libc)] (CENABLE): Likewise. [IS_IN (libc)] (CENABLE): Likewise. [IS_IN (librt)] (CDISABLE): Likewise. [IS_IN (librt)] (CDISABLE): Likewise. [__ASSEMBLER__] (SINGLE_THREAD_P): Likewise. * sysdeps/unix/sysv/linux/mips/mips64/sysdep-cancel.h (PSEUDO): Remove definition. (PSEUDO_END): Likewise. [IS_IN (libpthread)] (CENABLE): Likewise. [IS_IN (libpthread)] (CDISABLE): Likewise. [IS_IN (libc)] (CENABLE): Likewise. [IS_IN (libc)] (CENABLE): Likewise. [IS_IN (librt)] (CDISABLE): Likewise. [IS_IN (librt)] (CDISABLE): Likewise. (SINGLE_THREAD_P): Likewise. * sysdeps/unix/sysv/linux/mips/sysdep-cancel.h (PSEUDO): Remove definition. (PSEUDO_END): Likewise. [IS_IN (libpthread)] (CENABLE): Likewise. [IS_IN (libpthread)] (CDISABLE): Likewise. [IS_IN (libc)] (CENABLE): Likewise. [IS_IN (libc)] (CENABLE): Likewise. [IS_IN (librt)] (CDISABLE): Likewise. [IS_IN (librt)] (CDISABLE): Likewise. [__ASSEMBLER__] (SINGLE_THREAD_P): Likewise. * sysdeps/unix/sysv/linux/nios2/sysdep-cancel.h (PSEUDO): Remove definition. (PSEUDO_END): Likewise. [IS_IN (libpthread)] (CENABLE): Likewise. [IS_IN (libpthread)] (CDISABLE): Likewise. [IS_IN (libc)] (CENABLE): Likewise. [IS_IN (libc)] (CENABLE): Likewise. [IS_IN (librt)] (CDISABLE): Likewise. [IS_IN (librt)] (CDISABLE): Likewise. [__ASSEMBLER__] (SINGLE_THREAD_P): Likewise. * sysdeps/sysv/linux/powerpc/powerpc32/sysdep-cancel.h: Remove file. * sysdeps/sysv/linux/powerpc/powerpc64/sysdep-cancel.h: Likewise. * sysdeps/unix/sysv/linux/powerpc/sysdep-cancel.h: New file. * sysdeps/unix/sysv/linux/s390/s390-32/sysdep-cancel.h (PSEUDO): Remove definition. (PSEUDO_END): Likewise. [IS_IN (libpthread)] (CENABLE): Likewise. [IS_IN (libpthread)] (CDISABLE): Likewise. [IS_IN (libc)] (CENABLE): Likewise. [IS_IN (libc)] (CENABLE): Likewise. [IS_IN (librt)] (CDISABLE): Likewise. [IS_IN (librt)] (CDISABLE): Likewise. [__ASSEMBLER__] (SINGLE_THREAD_P): Likewise. * sysdeps/unix/sysv/linux/s390/s390-64/sysdep-cancel.h (PSEUDO): Remove definition. (PSEUDO_END): Likewise. [IS_IN (libpthread)] (CENABLE): Likewise. [IS_IN (libpthread)] (CDISABLE): Likewise. [IS_IN (libc)] (CENABLE): Likewise. [IS_IN (libc)] (CENABLE): Likewise. [IS_IN (librt)] (CDISABLE): Likewise. [IS_IN (librt)] (CDISABLE): Likewise. [__ASSEMBLER__] (SINGLE_THREAD_P): Likewise. * sysdeps/unix/sysv/linux/sh/sysdep-cancel.h (PSEUDO): Remove definition. (PSEUDO_END): Likewise. [IS_IN (libpthread)] (CENABLE): Likewise. [IS_IN (libpthread)] (CDISABLE): Likewise. [IS_IN (libc)] (CENABLE): Likewise. [IS_IN (libc)] (CENABLE): Likewise. [IS_IN (librt)] (CDISABLE): Likewise. [IS_IN (librt)] (CDISABLE): Likewise. [__ASSEMBLER__] (SINGLE_THREAD_P): Likewise. * sysdeps/unix/sysv/linux/sparc/sparc32/sysdep-cancel.h: Remove file. * sysdeps/unix/sysv/linux/sparc/sparc64/sysdep-cancel.h: Likewise. * sysdeps/unix/sysv/linux/sparc/sysdep-cancel.h: New file. * sysdeps/unix/sysv/linux/tile/sysdep-cancel.h (PSEUDO): Remove definition. (PSEUDO_END): Likewise. [IS_IN (libpthread)] (CENABLE): Likewise. [IS_IN (libpthread)] (CDISABLE): Likewise. [IS_IN (libc)] (CENABLE): Likewise. [IS_IN (libc)] (CENABLE): Likewise. [IS_IN (librt)] (CDISABLE): Likewise. [IS_IN (librt)] (CDISABLE): Likewise. [__ASSEMBLER__] (SINGLE_THREAD_P): Likewise. * sysdeps/unix/sysv/linux/x86_64/sysdep-cancel.h (PSEUDO): Remove definition. (PSEUDO_END): Likewise. [IS_IN (libpthread)] (CENABLE): Likewise. [IS_IN (libpthread)] (CDISABLE): Likewise. [IS_IN (libc)] (CENABLE): Likewise. [IS_IN (libc)] (CENABLE): Likewise. [IS_IN (librt)] (CDISABLE): Likewise. [IS_IN (librt)] (CDISABLE): Likewise. [__ASSEMBLER__] (SINGLE_THREAD_P): Likewise. 2017-08-24 Szabolcs Nagy * sysdeps/ieee754/dbl-64/Makefile: Don't override CFLAGS. 2017-08-23 H.J. Lu * sysdeps/x86_64/fpu/libm-test-ulps: Regenerated. 2017-08-23 H.J. Lu [BZ #21982] * string/stratcliff.c (do_test): Declare size, nchars, inner, middle and outer with size_t instead of int. Repleace %d and %Zd with %zu in printf. Update "MAX (0, nchars - 128)" and "MAX (outer, nchars - 64)" to support unsigned outer and nchars. Also exit loop when outer == 0. 2017-08-23 Adhemerval Zanella * include/fcntl.h (__fcntl_nocancel): Remove definition. * include/signal.h (__sigsuspend_nocancel): Likewise. * include/time.h (__nanosleep_nocancel): Likewise. * sysdeps/generic/not-cancel.h (__fcntl_nocancel): New macro. * login/utmp_file.c: Include non cancellable syscall header. * sysdeps/unix/sysv/linux/not-cancel.h (__fcntl_nocancel): New prototype. 2017-08-23 H.J. Lu * sysdeps/x86_64/fpu/svml_d_sincos8_core.S: Replace AVX512F .byte sequences with AVX512F instructions. * sysdeps/x86_64/fpu/svml_d_wrapper_impl.h: Likewise. * sysdeps/x86_64/fpu/svml_s_sincosf16_core.S: Likewise. * sysdeps/x86_64/fpu/svml_s_wrapper_impl.h: Likewise. * sysdeps/x86_64/fpu/multiarch/svml_d_sincos8_core_avx512.S: Likewise. * sysdeps/x86_64/fpu/multiarch/svml_s_sincosf16_core_avx512.S: Likewise. 2017-08-22 Szabolcs Nagy Steve Ellcey * sysdeps/aarch64/dl-tlsdesc.S (_dl_tlsdesc_dynamic): Use PTR_REG macro in cmp instruction. 2017-08-22 Gabriel F. T. Gomes * include/libc-symbols.h: [!defined HAVE_GCC_IFUNC] (__ifunc): Change the return type of the ifunc resolver to match the return type of the target function. 2017-08-22 Adhemerval Zanella * sysdeps/unix/sysv/linux/x86_64/syscalls.list (pread64): Remove. (preadv64): Likewise. (pwrite64(: Likewise. (pwritev64): Likewise. * sysdeps/unix/sysv/linux/x86_64/sysdep.h (INTERNAL_SYSCALL_NCS_TYPES): Remove define. (LOAD_ARGS_0): Likewise. (LOAD_ARGS_1): Likewise. (LOAD_ARGS_2): Likewise. (LOAD_ARGS_3): Likewise. (LOAD_ARGS_4): Likewise. (LOAD_ARGS_5): Likewise. (LOAD_ARGS_6): Likewise. (LOAD_REGS_0): Likewise. (LOAD_REGS_1): Likewise. (LOAD_REGS_2): Likewise. (LOAD_REGS_3): Likewise. (LOAD_REGS_4): Likewise. (LOAD_REGS_5): Likewise. (LOAD_REGS_6): Likewise. (ASM_ARGS_0): Likewise. (ASM_ARGS_1): Likewise. (ASM_ARGS_2): Likewise. (ASM_ARGS_3): Likewise. (ASM_ARGS_4): Likewise. (ASM_ARGS_5): Likewise. (ASM_ARGS_6): Likewise. (LOAD_ARGS_TYPES_1): Likewise. (LOAD_ARGS_TYPES_2): Likewise. (LOAD_ARGS_TYPES_3): Likewise. (LOAD_ARGS_TYPES_4): Likewise. (LOAD_ARGS_TYPES_5): Likewise. (LOAD_ARGS_TYPES_6): Likewise. (LOAD_REGS_TYPES_1): Likewise. (LOAD_REGS_TYPES_2): Likewise. (LOAD_REGS_TYPES_3): Likewise. (LOAD_REGS_TYPES_4): Likewise. (LOAD_REGS_TYPES_5): Likewise. (LOAD_REGS_TYPES_6): Likewise. (TYPEFY): New define. (ARGIFY): Likewise. (internal_syscall0): Likewise. (internal_syscall1): Likewise. (internal_syscall2): Likewise. (internal_syscall3): Likewise. (internal_syscall4): Likewise. (internal_syscall5): Likewise. (internal_syscall6): Likewise. * sysdeps/unix/sysv/linux/x86_64/x32/times.c (INTERNAL_SYSCALL_NCS): Remove define. (internal_syscall1): Add define. 2017-08-22 Gabriel F. T. Gomes * math/w_remainder_compat.c: Remove duplicate inclusion of math-svid-compat.h. * math/w_remainderf_compat.c: Likewise. * math/w_remainderl_compat.c: Likewise. 2017-08-22 Gabriel F. T. Gomes * sysdeps/powerpc/fpu/libm-test-ulps: Update. 2017-08-22 Joseph Myers [BZ #21684] * math/tgmath.h (__floating_type): Simplify definitions. (__real_integer_type): New macro. (__complex_integer_type): Likewise. (__expr_is_real): Likewise. (__tgmath_real_type_sub): Update comment to describe handling of complex types. (__tgmath_complex_type_sub): New macro. (__tgmath_complex_type): Likewise. [__HAVE_FLOAT128 && __GLIBC_USE (IEC_60559_TYPES_EXT)] (__TGMATH_CF128): Use __expr_is_real. (__TGMATH_UNARY_REAL_IMAG): Use __tgmath_complex_type and __expr_is_real. (__TGMATH_BINARY_REAL_IMAG): Likewise. (__TGMATH_UNARY_REAL_IMAG_RET_REAL): Use __expr_is_real. * math/gen-tgmath-tests.py (Type.create_type): Create complex integer types. 2017-08-22 Adhemerval Zanella * sysdeps/generic/not-cancel.h (sigsuspend_not_cancel): Remove macro. * sysdeps/mach/hurd/sigsuspend.c (sigsuspend_not_cancel): Remove alias. * sysdeps/unix/sysv/linux/not-cancel.h (sigsuspend_not_cancel): Likewise. * nptl/pthread_mutex_timedlock.c (__pthread_mutex_timedlock): Replace nanosleep_not_cancel with __nanosleep_nocancel. * sysdeps/generic/not-cancel.h (nanosleep_not_cancel): Remove macro. (__nanosleep_nocancel): New macro. * sysdeps/unix/sysv/linux/nanosleep.c (__nanosleep_nocancel): New function. * sysdeps/unix/sysv/linux/not-cancel.h (nanosleep_not_cancel): Remove macro. (__nanosleep_nocancel): New prototype. * nptl/pthread_mutex_lock.c (__pthread_mutex_lock_full): Replace pause_not_cancel with __pause_nocancel. * sysdeps/generic/not-cancel.h (pause_not_cancel): Remove macro. (__pause_nocancel): New macro. * sysdeps/unix/sysv/linux/not-cancel.h (pause_not_cancel): Remove macro. (__pause_nocancel): New prototype. * sysdeps/unix/sysv/linux/pause.c (__pause_nocancel): New function. 2017-08-22 Martin Sebor * include/libc-symbols.h (__ifunc_resolver): Declare resolver to return a pointer to the same type as the target function. 2017-08-22 H.J. Lu [BZ #18822] [BZ #21986] * include/printf.h (__printf_fphex): Add attribute_hidden. (__guess_grouping): New prototype. * stdio-common/printf_fp.c (__guess_grouping): Removed. * stdio-common/reg-printf.c (__register_printf_specifier): Add libc_hidden_proto and libc_hidden_def. * stdlib/strfmon_l.c (__guess_grouping): Removed. (__vstrfmon_l): Remove the third argument passed to __guess_grouping. 2017-08-22 Gabriel F. T. Gomes * math/math.h [defined __cplusplus] (issignaling): Provide a C++ definition for issignaling that does not rely on __MATH_TG, since __MATH_TG uses __builtin_types_compatible_p, which is only available in C mode. (CFLAGS-test-math-issignaling.cc): New variable. * math/Makefile [CXX] (tests): Add test-math-issignaling. * math/test-math-issignaling.cc: New test for C++ implementation of type-generic issignaling. * sysdeps/powerpc/powerpc64le/Makefile [subdir == math] (CXXFLAGS-test-math-issignaling.cc): Add -mfloat128 to the build options of test-math-issignaling on powerpc64le. 2017-08-22 H.J. Lu * include/libc-symbols.h (__hidden_proto_hiddenattr): New for building libc.a. (hidden_proto): Likewise. (hidden_tls_proto): Likewise. (__hidden_proto): Likewise. 2017-08-22 Florian Weimer math: Statically link tests of internal functionality. * math/Makefile (tests): Remove atest-exp, atest-sincos, atest-exp2. (tests-static): Add atest-exp, atest-sincos, atest-exp2. (gmp-objs): Remove assignment. (atest-exp, atest-sincos, atest-exp2): Remove targets. 2017-08-22 Joseph Myers [BZ #21987] * sysdeps/unix/sysv/linux/sparc/bits/long-double.h: Remove file and copy to ... * sysdeps/unix/sysv/linux/sparc/sparc32/bits/long-double.h: ... here. * sysdeps/unix/sysv/linux/sparc/sparc64/bits/long-double.h: ... and here. * assert/Makefile [$(have-cxx-thread_local)]: Move conditional variable definitions above inclusion of ../Rules. 2017-08-21 Joseph Myers * sysdeps/ieee754/k_standard.c (__kernel_standard): Add default case calling __builtin_unreachable. 2017-08-21 Adhemerval Zanella * libio/ioopen.c (_IO_waitpid): Replace waitpid_not_cancel with __waitpid_nocancel. * sysdeps/generic/not-cancel.h (waitpid_not_cancel): Remove macro. (__waitpid_nocancel): New macro. * sysdeps/unix/sysv/linux/not-cancel.h (waitpid_not_cancel): Remove macro. (__waitpid_nocancel): Replace macro with a function. * sysdeps/unix/sysv/linux/waitpid.c (__waitpid_nocancel): New function. * login/utmp_file.c (timeout_handler): Replace fcntl_not_cancel with __fcntl_nocancel. * sysdeps/generic/not-cancel.h (fcntl_not_cancel): Remove macro. * sysdeps/unix/sysv/linux/not-cancel.h (fcntl_not_cancel): Likewise. * gmon/gmon.c (write_hist): Replace writev_not_cancel_no_status with __writev_nocancel_nostatus. (write_call_graph): Likewise. (write_bb_counts): Likewise. * resolv/herror.c (herror): Likewise. * sysdeps/generic/not-cancel.h (writev_not_cancel_no_status): Remove macro. (__writev_nocancel_nostatus): New macro. * sysdeps/unix/sysv/linux/not-cancel.h (writev_not_cancel_no_status): Remove macro. (__writev_nocancel_nostatus): New function. 2017-08-21 Joseph Myers Revert: 2017-08-21 H.J. Lu * include/libc-symbols.h (__hidden_proto_hiddenattr): New for building libc.a. (hidden_proto): Likewise. (hidden_tls_proto): Likewise. (__hidden_proto): Likewise. [BZ #21973] * sysdeps/sparc/sparc32/fpu/w_sqrt_compat.S: Remove file. * sysdeps/sparc/sparc32/fpu/w_sqrtf_compat.S: Likewise. * sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/w_sqrt_compat-vis3.S: Likewise. * sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/w_sqrt_compat.S: Likewise. * sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/w_sqrtf_compat-vis3.S: Likewise. * sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/w_sqrtf_compat.S: Likewise. * sysdeps/sparc/sparc32/sparcv9/fpu/w_sqrt_compat.S : Likewise. * sysdeps/sparc/sparc32/sparcv9/fpu/w_sqrtf_compat.S: Likewise. * sysdeps/sparc/sparc64/fpu/w_sqrt_compat.S: Likewise. * sysdeps/sparc/sparc64/fpu/w_sqrtf_compat.S: Likewise. * sysdeps/unix/sysv/linux/sparc/sparc32/libm.abilist: Add GLIBC_2.0 sqrtl symbol. * math/math.h [__USE_MISC] (_LIB_VERSION_TYPE): Remove. [__USE_MISC] (_LIB_VERSION): Likewise. [__USE_MISC] (struct exception): Likewise. [__USE_MISC] (matherr): Likewise. [__USE_MISC] (DOMAIN): Likewise. [__USE_MISC] (SING): Likewise. [__USE_MISC] (OVERFLOW): Likewise. [__USE_MISC] (UNDERFLOW): Likewise. [__USE_MISC] (TLOSS): Likewise. [__USE_MISC] (PLOSS): Likewise. [__USE_MISC] (HUGE): Likewise. [__USE_XOPEN] (MAXFLOAT): Define even if [__USE_MISC]. * math/math-svid-compat.h: New file. * conform/linknamespace.pl (@whitelist): Remove matherr, matherrf and matherrl. * include/math.h [!_ISOMAC] (__matherr): Remove. * manual/arith.texi (FP Exceptions): Do not document matherr. * math/Makefile (tests): Change test-matherr to test-matherr-3. (tests-internal): New variable. (install-lib): Do not add libieee.a. (non-lib.a): Likewise. (extra-objs): Do not add libieee.a and ieee-math.o. (CPPFLAGS-s_lib_version.c): Remove variable. ($(objpfx)libieee.a): Remove rule. ($(addprefix $(objpfx), $(tests-internal)): Depend on $(libm). * math/ieee-math.c: Remove. * math/libm-test-support.c (matherr): Remove. * math/test-matherr.c: Use . Add copyright and license notices. Include and . (matherr): Undefine as macro. Use compat_symbol_reference. (_LIB_VERSION): Likewise. * math/test-matherr-2.c: New file. * math/test-matherr-3.c: Likewise. * sysdeps/generic/math_private.h (__kernel_standard): Remove declaration. (__kernel_standard_f): Likewise. (__kernel_standard_l): Likewise. * sysdeps/ieee754/s_lib_version.c: Do not include or . Include . (_LIB_VERSION): Undefine as macro. (_LIB_VERSION_INTERNAL): Always initialize to _POSIX_. Define only if [LIBM_SVID_COMPAT || !defined SHARED]. If [LIBM_SVID_COMPAT], use compat_symbol. * sysdeps/ieee754/s_matherr.c: Do not include or . Include . (matherr): Undefine as macro. (__matherr): Define only if [LIBM_SVID_COMPAT]. Use compat_symbol. * sysdeps/ia64/fpu/libm_error.c: Include . [_LIBC && LIBM_SVID_COMPAT] (matherrf): Use compat_symbol_reference. [_LIBC && LIBM_SVID_COMPAT] (matherrl): Likewise. [_LIBC && !LIBM_SVID_COMPAT] (matherrf): Define as macro. [_LIBC && !LIBM_SVID_COMPAT] (matherrl): Likewise. * sysdeps/ia64/fpu/libm_support.h: Include . (MATHERR_D): Remove declaration. [!_LIBC] (_LIB_VERSION_TYPE): Likewise [!LIBM_BUILD] (_LIB_VERSIONIMF): Likewise. [LIBM_BUILD] (pmatherrf): Likewise. [LIBM_BUILD] (pmatherr): Likewise. [LIBM_BUILD] (pmatherrl): Likewise. (DOMAIN): Likewise. (SING): Likewise. (OVERFLOW): Likewise. (UNDERFLOW): Likewise. (TLOSS): Likewise. (PLOSS): Likewise. * sysdeps/ia64/fpu/s_matherrf.c: Include . (__matherrf): Define only if [LIBM_SVID_COMPAT]. Use compat_symbol. * sysdeps/ia64/fpu/s_matherrl.c: Include . (__matherrl): Define only if [LIBM_SVID_COMPAT]. Use compat_symbol. * math/lgamma-compat.h: Include . * math/w_acos_compat.c: Likewise. * math/w_acosf_compat.c: Likewise. * math/w_acosh_compat.c: Likewise. * math/w_acoshf_compat.c: Likewise. * math/w_acoshl_compat.c: Likewise. * math/w_acosl_compat.c: Likewise. * math/w_asin_compat.c: Likewise. * math/w_asinf_compat.c: Likewise. * math/w_asinl_compat.c: Likewise. * math/w_atan2_compat.c: Likewise. * math/w_atan2f_compat.c: Likewise. * math/w_atan2l_compat.c: Likewise. * math/w_atanh_compat.c: Likewise. * math/w_atanhf_compat.c: Likewise. * math/w_atanhl_compat.c: Likewise. * math/w_cosh_compat.c: Likewise. * math/w_coshf_compat.c: Likewise. * math/w_coshl_compat.c: Likewise. * math/w_exp10_compat.c: Likewise. * math/w_exp10f_compat.c: Likewise. * math/w_exp10l_compat.c: Likewise. * math/w_exp2_compat.c: Likewise. * math/w_exp2f_compat.c: Likewise. * math/w_exp2l_compat.c: Likewise. * math/w_fmod_compat.c: Likewise. * math/w_fmodf_compat.c: Likewise. * math/w_fmodl_compat.c: Likewise. * math/w_hypot_compat.c: Likewise. * math/w_hypotf_compat.c: Likewise. * math/w_hypotl_compat.c: Likewise. * math/w_j0_compat.c: Likewise. * math/w_j0f_compat.c: Likewise. * math/w_j0l_compat.c: Likewise. * math/w_j1_compat.c: Likewise. * math/w_j1f_compat.c: Likewise. * math/w_j1l_compat.c: Likewise. * math/w_jn_compat.c: Likewise. * math/w_jnf_compat.c: Likewise. * math/w_jnl_compat.c: Likewise. * math/w_lgamma_main.c: Likewise. * math/w_lgamma_r_compat.c: Likewise. * math/w_lgammaf_main.c: Likewise. * math/w_lgammaf_r_compat.c: Likewise. * math/w_lgammal_main.c: Likewise. * math/w_lgammal_r_compat.c: Likewise. * math/w_log10_compat.c: Likewise. * math/w_log10f_compat.c: Likewise. * math/w_log10l_compat.c: Likewise. * math/w_log2_compat.c: Likewise. * math/w_log2f_compat.c: Likewise. * math/w_log2l_compat.c: Likewise. * math/w_log_compat.c: Likewise. * math/w_logf_compat.c: Likewise. * math/w_logl_compat.c: Likewise. * math/w_pow_compat.c: Likewise. * math/w_powf_compat.c: Likewise. * math/w_powl_compat.c: Likewise. * math/w_remainder_compat.c: Likewise. * math/w_remainderf_compat.c: Likewise. * math/w_remainderl_compat.c: Likewise. * math/w_scalb_compat.c: Likewise. * math/w_scalbf_compat.c: Likewise. * math/w_scalbl_compat.c: Likewise. * math/w_sinh_compat.c: Likewise. * math/w_sinhf_compat.c: Likewise. * math/w_sinhl_compat.c: Likewise. * math/w_sqrt_compat.c: Likewise. * math/w_sqrtf_compat.c: Likewise. * math/w_sqrtl_compat.c: Likewise. * math/w_tgamma_compat.c: Likewise. * math/w_tgammaf_compat.c: Likewise. * math/w_tgammal_compat.c: Likewise. * sysdeps/ieee754/dbl-64/w_exp_compat.c: Likewise. * sysdeps/ieee754/flt-32/w_expf_compat.c: Likewise. * sysdeps/ieee754/k_standard.c: Likewise. * sysdeps/ieee754/k_standardf.c: Likewise. * sysdeps/ieee754/k_standardl.c: Likewise. * sysdeps/ieee754/ldbl-128/w_expl_compat.c: Likewise. * sysdeps/ieee754/ldbl-128ibm/w_expl_compat.c: Likewise. * sysdeps/ieee754/ldbl-96/w_expl_compat.c: Likewise. * sysdeps/powerpc/powerpc32/power4/fpu/w_sqrt_compat.S: Likewise. * sysdeps/powerpc/powerpc32/power4/fpu/w_sqrtf_compat.S: Likewise. * sysdeps/powerpc/powerpc32/power5/fpu/w_sqrt_compat.S: Likewise. * sysdeps/powerpc/powerpc32/power5/fpu/w_sqrtf_compat.S: Likewise. * sysdeps/sparc/sparc32/fpu/w_sqrt_compat.S: Likewise. * sysdeps/sparc/sparc32/fpu/w_sqrtf_compat.S: Likewise. * sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/w_sqrt_compat-vis3.S: Likewise. * sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/w_sqrtf_compat-vis3.S: Likewise. * sysdeps/sparc/sparc32/sparcv9/fpu/w_sqrt_compat.S: Likewise. * sysdeps/sparc/sparc32/sparcv9/fpu/w_sqrtf_compat.S: Likewise. * sysdeps/sparc/sparc64/fpu/w_sqrt_compat.S: Likewise. * sysdeps/sparc/sparc64/fpu/w_sqrtf_compat.S: Likewise. 2017-08-21 Florian Weimer [BZ #21864] Do not compile benchmark helper objects with -DMODULE_NAME=libc. * benchtests/Makefile (others-extras): Set to $(bench-extra-objs). Move before inclusion of ../Rules. 2017-08-21 Florian Weimer [BZ #21972] * assert/assert.h (assert): Use static_cast (bool) for C++. Use the ternary operator in the warning branch for GNU C. * assert/Makefile (tests): Add tst-assert-c++, tst-assert-g++. (CFLAGS-tst-assert-c++.o): Compile in C++11 mode. (CFLAGS-tst-assert-g++.o): Compile in GnU C++11 mode. (LDLIBS-tst-assert-c++, LDLIBS-tst-assert-g++): Link with libstdc++. * assert/tst-assert-c++.cc, assert/tst-assert-g++.cc: New files. 2017-08-21 H.J. Lu [BZ #18822] * sysdeps/unix/sysv/linux/x86_64/init-first.c (__syscall_clock_gettime): Add attribute_hidden. * sysdeps/unix/sysv/linux/x86_64/makecontext.c (__start_context): Likewise. 2017-08-21 H.J. Lu * include/libc-symbols.h (__hidden_proto_hiddenattr): New for building libc.a. (hidden_proto): Likewise. (hidden_tls_proto): Likewise. (__hidden_proto): Likewise. 2017-08-21 H.J. Lu * include/libc-symbols.h (attribute_hidden): Enable hidden visibility in libc.a compiled with PIE. 2017-08-21 H.J. Lu [BZ #18822] * sysdeps/unix/sysv/linux/x86/libc-vdso.h (VDSO_SYMBOL(getcpu)): Add attribute_hidden. 2017-08-21 H.J. Lu [BZ #21864] * Makerules (all-nonlib): Add $(others-extras). * catgets/Makefile (others-extras): New. * elf/Makefile (others-extras): Likewise. * nss/Makefile (others-extras): Likewise. 2017-08-21 H.J. Lu [BZ #18822] * csu/libc-start.c (__libc_multiple_libcs): Removed. * elf/dl-open.c: Include . (__libc_multiple_libcs): Removed. * elf/dl-sysdep.c: Include instead of . * include/libc-internal.h (__libc_multiple_libcs): New. * misc/sbrk.c: Include . (__libc_multiple_libcs): Removed. 2017-08-21 H.J. Lu [BZ #18822] * grp/initgroups.c (__nss_group_database): Removed. (__nss_initgroups_database): Likewise. * nscd/gai.c (__nss_hosts_database): Likewise. * nss/XXX-lookup.c (DATABASE_NAME_SYMBOL): Likewise. * posix/tst-rfc3484-2.c (__nss_hosts_database): Likewise. * posix/tst-rfc3484-3.c (__nss_hosts_database): Likewise. * posix/tst-rfc3484.c (__nss_hosts_database): Likewise. * sysdeps/posix/getaddrinfo.c (__nss_hosts_database): Likewise. * nss/getXXent.c (INTERNAL (REENTRANT_GETNAME)): Add attribute_hidden. * nss/nsswitch.c (__nss_database_custom): Define only if USE_NSCD is defined. (__nss_configure_lookup): Use __nss_database_custom only if USE_NSCD is defined. * nss/nsswitch.h (__nss_database_custom): Declare only if USE_NSCD is defined. Add attribute_hidden. (__nss_setent): Add attribute_hidden. (__nss_endent): Likewise. (__nss_getent_r): Likewise. (__nss_getent): Likewise. (DEFINE_DATABASE): Declare __nss_##arg##_database. 2017-08-20 H.J. Lu [BZ #18822] * sysdeps/unix/sysv/linux/i386/glob64.c (__old_glob64): Add libc_hidden_proto and libc_hidden_def. 2017-08-20 H.J. Lu [BZ #18822] * sysdeps/unix/sysv/linux/i386/olddirent.h (__old_readdir64): Add libc_hidden_proto. * sysdeps/unix/sysv/linux/i386/readdir64.c (__old_readdir64): Add libc_hidden_def. 2017-08-20 H.J. Lu [BZ #21974] * gmon/Makefile (routines): Remove bb_init_func and bb_exit_func. (elide-routines.os): Removed. * gmon/bb_exit_func.c: Likewise. * gmon/bb_init_func.c: Likewise. * include/sys/gmon.h (__bb): Likewise. (__bb_init_func): Likewise. (__bb_exit_func): Likewise. * sysdeps/alpha/bb_init_func.S: Likewise. 2017-08-20 H.J. Lu * debug/longjmp_chk.c (____longjmp_chk): Moved to ... * include/setjmp.h (____longjmp_chk): Here. Add attribute_hidden. 2017-08-19 H.J. Lu [BZ #18822] * sysdeps/x86_64/multiarch/strcspn-c.c (STRCSPN_SSE2): Add attribute_hidden. (__strspn_sse2): Likewise. 2017-08-18 Adhemerval Zanella * sysdeps/generic/not-cancel.h (close_not_cancel): Remove macro. (close_not_cancel_no_status): Likewise. (__close_nocancel): New macro. (__close_nocancel_nostatus): Likewise. * sysdeps/unix/sysv/linux/not-cancel.h (__close_nocancel): Remove macro. (close_not_cancel): Likewise. (close_not_cancel_no_status): Likewise. (__close_nocancel): New prototype. (__close_nocancel_nostatus): New function. * sysdeps/unix/sysv/linux/close.c (__close_nocancel): New function. * catgets/open_catalog.c (__open_catalog): Replace close_not_cancel{_no_status) with __close_nocancel{_nostatus}. * gmon/gmon.c (write_gmon): Likewise. * iconv/gconv_cache.c (__gconv_load_cache): Likewise. * intl/loadmsgcat.c (close): Likewise. * io/ftw.c (open_dir_stream): Likewise. (ftw_startup): Likewise. * libio/fileops.c (_IO_file_open): Likewise. (_IO_file_close_mmap): Likewise. (_IO_file_close): Likewise. * libio/iopopen.c (_IO_dup2): Likewise. * locale/loadarchive.c (_nl_load_locale_from_archive): Likewise. * locale/loadlocale.c (_nl_load_locale): Likewise. * login/utmp_file.c (pututline_file): Likewise. (endutent_file): Likewise. * misc/daemon.c (daemon): Likewise. * nscd/nscd_getai.c (__nscd_getai): Likewise. * nscd/nscd_getgr_r.c (nscd_getgr_r): Likewise. * nscd/nscd_gethst_r.c (nscd_gethst_r): Likewise. * nscd/nscd_getpw_r.c (nscd_getpw_r): Likewise. * nscd/nscd_getserv_r.c (nscd_getserv_r): Likewise. * nscd/nscd_helper.c (open_socket): Likewise. (__nscd_open_socket): Likewise. * nscd/nscd_initgroups.c (__nscd_getgrouplist): Likewise. * nscd/nscd_netgroup.c (__nscd_setnetgrent): Likewise. (__nscd_innetgr): Likewise. * nss/nss_db/db-open.c (internal_setent): Likewise. * resolv/res-close.c (__res_iclose): Likewise. * sunrpc/pm_getmaps.c (pmap_getmaps): Likewise. * sysdeps/posix/closedir.c (__closedir): Likewise. * sysdeps/posix/getaddrinfo.c (getaddrinfo): Likewise. * sysdeps/posix/getcwd.c (__getcwd): Likewise. * sysdeps/posix/opendir.c (tryopen_o_directory): Likewise. (opendir_tail): Likewise. * sysdeps/posix/spawni.c (__spawni_child): Likewise. * sysdeps/unix/sysv/linux/check_native.c (__check_native): Likewise. * sysdeps/unix/sysv/linux/check_pf.c (__check_pf): Likewise. * sysdeps/unix/sysv/linux/fips-private.h (fips_enabled_p): Likewise. * sysdeps/unix/sysv/linux/gethostid.c (sethostid): Likewise. (gethostid): Likewise. * sysdeps/unix/sysv/linux/getloadavg.c (getloadavg): Likewise. * sysdeps/unix/sysv/linux/getlogin_r.c (__getlogin_r_loginuid): Likewise. * sysdeps/unix/sysv/linux/getsysstats.c (__get_nprocs): Likewise. * sysdeps/unix/sysv/linux/grantpt.c (close_all_fds): Likewise. * sysdeps/unix/sysv/linux/i386/smp.h (is_smp_system): Likewise. * sysdeps/unix/sysv/linux/ia64/has_cpuclock.c (has_cpuclock): Likewise. * sysdeps/unix/sysv/linux/if_index.c (__if_nametoindex): Likewise. * sysdeps/unix/sysv/linux/libc_fatal.c (backtrace_and_maps): Likewise. * sysdeps/unix/sysv/linux/malloc-sysdep.h (check_may_shrink_heap): Likewise. * sysdeps/unix/sysv/linux/mq_notify.c (init_mq_netlink): Likewise. * sysdeps/unix/sysv/linux/pthread_getname.c (pthread_getname_np): Likewise. * sysdeps/unix/sysv/linux/pthread_setname.c (pthread_setname_np): Likewise. * sysdeps/unix/sysv/linux/spawni.c (__spawni_child): Likewise. * sysdeps/unix/sysv/linux/sysconf.c (__sysconf): Likewise. * sysdeps/unix/sysv/linux/Versions (libc) [GLIBC_PRIVATE]: Add __close_nocancel. * sysdeps/generic/not-cancel.h (openat_not_cancel): Remove macro. (openat_not_cancel_3): Likewise. (openat64_not_cancel_3): Likewise). (openat_not_cancel_3): Likewise). * sysdeps/unix/sysv/linux/not-cancel.h (openat_not_cancel): Remove macro. (openat_not_cancel_3): Likewise. (openat64_not_cancel): Likewise. (openat64_not_cancel_3): Likewise. * sysdeps/unix/sysv/linux/openat.c (__openat_nocancel): New function. * sysdeps/unix/sysv/linux/openat64.c (__openat64_nocancel): Likewise. * io/ftw.c (open_dir_stream): Replace openat{64}_not_cancel{_3} with __open{64}_nocancel. * sysdeps/mach/hurd/opendir.c (__opendirat): Likewise. * sysdeps/posix/getcwd.c (__getcwd): Likewise. * sysdeps/posix/opendir.c (__opendirat): Likewise. 2017-08-18 H.J. Lu [BZ #18822] * include/argz.h (__argz_create_sep): New function prototype. (__argz_append): Likewise. (__argz_add): Likewise. (__argz_add_sep): Likewise. (__argz_delete): Likewise. (__argz_insert): Likewise. (__argz_replace): Likewise. * string/argz.h (__argz_create_sep): Removed. (__argz_append): Likewise. (__argz_add): Likewise. (__argz_add_sep): Likewise. (__argz_delete): Likewise. (__argz_insert): Likewise. (__argz_replace): Likewise. 2017-08-18 H.J. Lu * elf/elf.h (NT_GNU_PROPERTY_TYPE_0): New. (NOTE_GNU_PROPERTY_SECTION_NAME): Likewise. (GNU_PROPERTY_STACK_SIZE): Likewie. (GNU_PROPERTY_NO_COPY_ON_PROTECTED): Likewie. (GNU_PROPERTY_LOPROC): Likewise. (GNU_PROPERTY_HIPROC): Likewise. (GNU_PROPERTY_LOUSER): Likewise. (GNU_PROPERTY_HIUSER): Likewise. (GNU_PROPERTY_X86_ISA_1_USED): Likwise. (GNU_PROPERTY_X86_ISA_1_NEEDED): Likwise. (GNU_PROPERTY_X86_FEATURE_1_AND): Likwise. (GNU_PROPERTY_X86_ISA_1_486): Likwise. (GNU_PROPERTY_X86_ISA_1_586): Likwise. (GNU_PROPERTY_X86_ISA_1_686): Likwise. (GNU_PROPERTY_X86_ISA_1_SSE): Likwise. (GNU_PROPERTY_X86_ISA_1_SSE2): Likwise. (GNU_PROPERTY_X86_ISA_1_SSE3): Likwise. (GNU_PROPERTY_X86_ISA_1_SSSE3): Likwise. (GNU_PROPERTY_X86_ISA_1_SSE4_1): Likwise. (GNU_PROPERTY_X86_ISA_1_SSE4_2): Likwise. (GNU_PROPERTY_X86_ISA_1_AVX): Likwise. (GNU_PROPERTY_X86_ISA_1_AVX2): Likwise. (GNU_PROPERTY_X86_ISA_1_AVX512F): Likwise. (GNU_PROPERTY_X86_ISA_1_AVX512CD): Likwise. (GNU_PROPERTY_X86_ISA_1_AVX512ER): Likwise. (GNU_PROPERTY_X86_ISA_1_AVX512PF): Likwise. (GNU_PROPERTY_X86_ISA_1_AVX512VL): Likwise. (GNU_PROPERTY_X86_ISA_1_AVX512DQ): Likwise. (GNU_PROPERTY_X86_ISA_1_AVX512BW): Likwise. (GNU_PROPERTY_X86_FEATURE_1_IBT): Likwise. (GNU_PROPERTY_X86_FEATURE_1_SHSTK): Likwise. 2017-08-18 Gabriel F. T. Gomes * misc/sys/cdefs.h (__HAVE_GENERIC_SELECTION): Define to 0, if in C++ mode. 2017-08-18 Gabriel F. T. Gomes [BZ #21930] * math/math.h (isinf): Check if in C or C++ mode before using __builtin_types_compatible_p, since this is a C mode feature. 2017-08-18 Adhemerval Zanella * sysdeps/generic/not-cancel.h (write_not_cancel): Remove macro. (__write_nocancel): New macro. * sysdeps/unix/sysv/linux/not-cancel.h (__write_nocancel): Rewrite as a function prototype. (write_not_cancel): Remove macro. * sysdeps/unix/sysv/linux/write.c (__write_nocancel): New function. * gmon/gmon.c (ERR): Replace write_not_cancel with __write_nocancel. (write_gmon): Likewise. * libio/fileops.c (_IO_new_file_write): Likewise. * login/utmp_file.c (pututline_file): Likewise. (updwtmp_file): Likewise. * stdio-common/psiginfo.c (psiginfo): Likewise. * sysdeps/posix/spawni.c (__spawni_child): Likewise. * sysdeps/unix/sysv/linux/gethostid.c (sethostid): Likewise. * sysdeps/unix/sysv/linux/libc_fatal.c (backtrace_and_maps): Likewise. * sysdeps/unix/sysv/linux/pthread_setname.c (pthread_setname_np): Likewise. * sysdeps/generic/not-cancel.h (read_not_cancel): Remove macro. (__read_nocancel): New macro. * sysdeps/unix/sysv/linux/Versions (libc) [GLIBC_PRIVATE]: Add __read_nocancel. * sysdeps/unix/sysv/linux/not-cancel.h (__read_nocancel): Remove macro. (__read_nocancel): New prototype. * sysdeps/unix/sysv/linux/read.c (__read_nocancel): New function. * catgets/open_catalog.c (__open_catalog): Replace read_not_cancel with __read_nocancel. * intl/loadmsgcat.c (read): Likewise. * libio/fileops.c (_IO_file_read): Likewise. * locale/loadlocale.c (_nl_load_locale): Likewise. * login/utmp_file.c (getutent_r_file): Likewise. (internal_getut_r): Likewise. (getutline_r_file): Likewise. * sysdeps/unix/sysv/linux/fips-private.h (fips_enable_p): Likewise. * sysdeps/unix/sysv/linux/gethostid.c (gethostid): Likewise. * sysdeps/unix/sysv/linux/getloadavg.c (getloadavg): Likewise. * sysdeps/unix/sysv/linux/getlogin_r.c (__getlogin_r_loginuid): Likewise. * sysdeps/unix/sysv/linux/getsysstats.c (next_line): Likewise. * sysdeps/unix/sysv/linux/i386/smp.h (is_smp_system): Likewise. * sysdeps/unix/sysv/linux/ia64/has_cpuclock.c (has_cpuclock): Likewise. * sysdeps/unix/sysv/linux/libc_fatal.c (backtrace_and_maps): Likewise. * sysdeps/unix/sysv/linux/malloc-sysdep.h (check_may_shrink_heap): Likewise. * sysdeps/unix/sysv/linux/pthread_getname.c (pthread_getname_np): Likewise. * sysdeps/unix/sysv/linux/sysconf.c (__sysconf): Likewise. 2017-08-18 H.J. Lu [BZ #21966] * sysdeps/x86_64/fpu/multiarch/ifunc-mathvec-avx2.h (IFUNC_SELECTOR): Don't use the AVX2 version if FMA isn't usable. 2017-08-17 DJ Delorie * bug17079.c: Update to new test harness. * test-digits-dots.c: Likewise. * test-netdb.c: Likewise. * tst-field.c: Likewise. * tst-nss-getpwent.c: Likewise. * tst-nss-static.c: Likewise. * tst-nss-test1.c: Likewise. * tst-nss-test2.c: Likewise. * tst-nss-test3.c: Likewise. * tst-nss-test4.c: Likewise. * tst-nss-test5.c: Likewise. 2017-08-17 Adhemerval Zanella * sysdeps/generic/not-cancel.h (open_not_cancel): Remove macro. (open_not_cancel_2): Likewise. (open_nocancel): New macro. (open64_nocancel): Likewise. * sysdeps/unix/sysv/linux/not-cancel.h (open_not_cancel): Remove macro. (open_not_cancel_2): Likewise. (__open_nocancel): New prototype. (__open64_nocancel): Likewise. * sysdeps/unix/sysv/linux/Versions (libc) [GLIBC_PRIVATE]: Add __open_nocancel. * sysdeps/unix/sysv/linux/open.c (__open_nocancel): New function. * sysdeps/unix/sysv/linux/open64.c (__open64_nocancel): Likewise. * catgets/open_catalog.c (__open_catalog): Replace open_not_cancel{_2} with __open_nocancel. * csu/check_fds.c (check_one_fd): Likewise. * gmon/gmon.c (write_gmon): Likewise. * iconv/gconv_cache.c (__gconv_load_cached): Likewise. * intl/loadmsgcat.c (open): Likewise. * libio/fileops.c (_IO_file_open): Likewise. * locale/loadarchive.c (_nl_load_locale_from_archive): Likewise. * locale/loadlocale.c (_nl_load_locale): Likewise. * login/utmp_file.c (setutent_file): Likewise. * misc/daemon.c (daemon): Likewise. * nss/nss_db/db-open.c (internal_setent): Likewise. * sysdeps/mach/hurd/opendir.c (__opendirat): Likewise. * sysdeps/posix/libc_fatal.c (__libc_message): Likewise. * sysdeps/posix/opendir.c (tryopen_o_directory): Likewise. (__opendir): Likewise. * sysdeps/posix/spawni.c (__spawni_child): Likewise. * sysdeps/unix/sysv/linux/fips-private.h (fips_enable_p): Likewise. * sysdeps/unix/sysv/linux/gethostid.c (sethostid): Likewise. (gethostid): Likewise. * sysdeps/unix/sysv/linux/getloadavg.c (getloadavg): Likewise. * sysdeps/unix/sysv/linux/getlogin_r.c (__getlogin_r_loginuid): Likewise. * sysdeps/unix/sysv/linux/getsysstats.c (__get_nprocs): Likewise. * sysdeps/unix/sysv/linux/grantpt.c (__close_all_fds): Likewise. * sysdeps/unix/sysv/linux/i386/smp.h (is_smp_system): Likewise. * sysdeps/unix/sysv/linux/ia64/has_cpuclock.c (has_cpuclock): Likewise. * sysdeps/unix/sysv/linux/libc_fatal.c (backtrace_and_maps): Likewise. * sysdeps/unix/sysv/linux/malloc-sysdep.h (check_may_shrink_heap): Likewise. * sysdeps/unix/sysv/linux/powerpc/get_clockfreq.c (__get_clockfreq): Likewise. * sysdeps/unix/sysv/linux/pthread_getname.c (pthread_getname_np): Likewise. * sysdeps/unix/sysv/linux/pthread_setname.c (pthread_setname_np): Likewise. * sysdeps/unix/sysv/linux/spawni.c (__spawni_child): Likewise. * sysdeps/unix/sysv/linux/sysconf.c (__sysconf): Likewise. 2017-08-17 Wilco Dijkstra * benchtests/bench-skeleton.c (main): Add support for latency benchmarking. * benchtests/scripts/bench.py: Add support for latency benchmarking. 2017-08-17 H.J. Lu * Makeconfig (+link-pie-before-libc): Add CRT-* hook to override the startup object. 2017-08-17 Florian Weimer * include/sys/socket.h (__opensock): Remove internal_function. * socket/opensock.c (__opensock): Likewise. * sysdeps/unix/sysv/linux/opensock.c (__opensock): Likewise. 2017-08-16 Joseph Myers [BZ #21944] * signal/bits/types/__sigval_t.h: New file. * signal/Makefile (headers): Add bits/types/__sigval_t.h. * signal/bits/types/sigval_t.h: Include and define sigval_t using __sigval_t. * include/bits/types/__sigval_t.h: New file. * bits/types/sigevent_t.h: Include instead of . (struct sigevent): Use __sigval_t instead of sigval_t. * bits/types/siginfo_t.h: Include instead of . (siginfo_t): Use __sigval_t instead of sigval_t. * sysdeps/unix/sysv/linux/bits/types/sigevent_t.h: Include instead of . (struct sigevent): Use __sigval_t instead of sigval_t. * sysdeps/unix/sysv/linux/bits/types/siginfo_t.h: Include instead of . (siginfo_t): Use __sigval_t instead of sigval_t. * signal/signal.h [__USE_MISC]: Include . 2017-08-16 H.J. Lu * NEWS: Remove "[Add new features here]" for 2.27. 2017-08-16 Joseph Myers * sysdeps/unix/sysv/linux/sh/localplt.data: Allow abort in libc.so. 2017-08-16 H.J. Lu * NEWS: Mention x86-64 FMA optimization. 2017-08-16 H.J. Lu [BZ #21912] * sysdeps/x86_64/fpu/multiarch/Makefile (libm-sysdep_routines): Add e_expf-fma. * sysdeps/x86_64/fpu/multiarch/e_expf-fma.S: New file. * sysdeps/x86_64/fpu/multiarch/e_expf.c: Likewise. * sysdeps/x86_64/fpu/multiarch/ifunc-fma.h: Likewise. 2017-08-16 Andreas Schwab [BZ #16750] CVE-2009-5064 * elf/ldd.bash.in: Never run file directly. 2017-08-15 H.J. Lu [BZ #21955] * sysdeps/x86_64/fpu/e_expf.S (L(SP_RANGE)): Aligned to 8 bytes. (L(SP_INF_0)): Likewise. 2017-08-15 Florian Weimer * gmon/Makefile (tests-special): Add tst-gmon-prof only if run-built-tests. 2017-08-15 Florian Weimer Remove BROKEN_THREAD_SIGNALS support for LinuxThreads. * sysdeps/pthread/aio_misc.c (__aio_enqueue_request): Remove BROKEN_THREAD_SIGNALS code. * sysdeps/ppthread/aio_misc.h (struct waitlist, struct request_list): Remove caller_pid member used for BROKEN_THREAD_SIGNALS. [BROKEN_THREAD_SIGNALS] (__aio_notify_only): Remove declaration. * sysdeps/pthread/aio_notify.c (__aio_notify_only, __aio_notify): Remove BROKEN_THREAD_SIGNALS support. * sysdeps/pthread/aio_suspend.c (aio_suspend): Likewise. * sysdeps/pthread/lio_listio.c (lio_listio_internal): Likewise. 2017-08-15 Florian Weimer * gmon/Makefile (tests): Add tst-gmon. (CFLAGS-tst-gmon.c, LDFLAGS-tst-gmon, CRT-tst-gmon, tst-gmon-ENV): Set. (tests-special): Add tst-gmon-prof.out. (tst-gmon.out): Depend on clean-tst-gmon-data. (clean-tst-gmon-data, tst-gmon-gprof.out): New targets. * gmon/tst-gmon.c, gmon/tst-gmon-gprof.sh: New files. * Makeconfig (+link-before-libc): Add CRT-* hook to override the startup object. * aclocal.m4 (GPROF): Set and substitute. * config.amke.in (GPROF): Set. * configure: Regenerate. 2017-08-15 Gustavo Romero * elf/elf.h A (NT_PPC_TAR): New macro. (NT_PPC_PPR): Likewise. (NT_PPC_DSCR): Likewise. (NT_PPC_EBB): Likewise. (NT_PPC_PMU): Likewise. (NT_PPC_TM_CGPR): Likewise. (NT_PPC_TM_CFPR): Likewise. (NT_PPC_TM_CVMX): Likewise. (NT_PPC_TM_CVSX): Likewise. (NT_PPC_TM_SPR): Likewise. (NT_PPC_TM_CTAR): Likewise. (NT_PPC_TM_CPPR): Likewise. (NT_PPC_TM_CDSCR): Likewise. 2017-08-15 Florian Weimer * sysdeps/i386/machine-gmon.h (mcount_internal): Declare with regparm (2) instead of internal_function. (_MCOUNT_DECL): Adjust. 2017-08-15 Stefan Liebler * sysdeps/s390/dl-procinfo.c (_dl_s390_cap_flags): Add z14. * sysdeps/s390/dl-procinfo.h (_DL_PLATFORMS_COUNT): Increased. 2017-08-14 Joseph Myers * conform/data/sys/wait.h-data (si_value): Do not expect for XPG42. 2017-08-14 Florian Weimer [BZ #21962] NSS: Create stubs for accidentally exported lookup functions. * grp/initgroups.c (__nss_group_lookup, __nss_lookup_function): Remove declaration. * inet/ether_hton.c (__nss_ethers_lookup): Likewise. (ether_hostton): Call __nss_ethers_lookup2 instead. * inet/ether_ntoh.c (__nss_ethers_lookup): Remove declaration. (ether_ntohost): Call __nss_ethers_lookup2 instead. * inet/getnetgrent_r.c (__nss_netgroup_lookup): Remove declaration. (setup): Call __nss_netgroup_lookup2 instead. * nss/Makefile (routines): Add compat-lookup. * nss/Versions (GLIBC_2.27): Add symbol version. * nss/XXX-lookup (DB_LOOKUP_FCT): Remove declaration. Now provided by . (DB_COMPAT_FCT): Remove. * nss/compat-lookup.c: New file. * nss/nsswitch.h: Generate __nss_*_lookup2 function prototypes from databases.def. * nss/service-lookup.c (NO_COMPAT): Remove definition. * sunrpc/netname.c (__nss_publickey_lookup): Remove declaration. (netname2user): Call __nss_publickey_lookup2 instead. * sunrpc/publickey.c (__nss_publickey_lookup): Remove declaration. (getpublickey, getsecretkey): Call __nss_publickey_lookup2 instead. 2017-08-14 Adhemerval Zanella Sergei Trofimovich [BZ #21908] * sysdeps/unix/sysv/linux/m68k/mmap_internal.h (MMAP2_PAGE_SHIFT): Rename to MMAP2_PAGE_UNIT. * sysdeps/unix/sysv/linux/mmap.c: Include mmap_internal iff __OFF_T_MATCHES_OFF64_T is not defined. * sysdeps/unix/sysv/linux/mmap_internal.h (page_unit): Declare as uint64_t. (MMAP2_PAGE_UNIT) [MMAP2_PAGE_UNIT == -1]: Redefine to page_unit. (page_unit) [MMAP2_PAGE_UNIT != -1]: Remove definition. 2017-08-14 Florian Weimer i386: Do not set internal_function. * config.h.in (USE_REGPARMS, internal_function): Remove. * sysdeps/i386/configure.ac (USE_REGPARMS): Likewise. * sysdeps/i386/configure (USE_REGPARMS): Likewise. 2017-08-14 Florian Weimer * elf/dl-init.c (_dl_init): Remove internal_function. * sysdeps/generic/ldsodefs.h (_dl_init): Likewise. * sysdeps/i386/dl-machine.h (RTLD_START): Adjust call to _dl_init. 2017-08-14 Florian Weimer * elf/rtld.c (_dl_start): Remove internal_function. * sysdeps/i386/dl-machine.h (RTLD_START): Adjust call to _dl_start. 2017-08-14 Florian Weimer * elf/dl-fini.c (_dl_fini): Remove internal_function * sysdeps/generic/ldsodefs.h (_dl_fini): Likewise. 2017-08-14 H.J. Lu * sysdeps/x86/cpu-features.h (bit_cpu_BIT): New. (bit_cpu_SHSTK): Likewise. (index_cpu_IBT): Likewise. (index_cpu_SHSTK): Likewise. (reg_IBT): Likewise. (reg_SHSTK): Likewise. * sysdeps/x86/cpu-tunables.c (TUNABLE_CALLBACK (set_hwcaps)): Handle index_cpu_IBT and index_cpu_SHSTK. 2017-08-14 Mike FABIAN [BZ #19982] * po/fr.po: Fix spelling mistake. 2017-08-13 Florian Weimer * elf/dl-addr.c (_dl_addr): Remove internal_function. * elf/dl-error-skeleton.c (_dl_signal_error, _dl_signal_cerror) (_dl_catch_error, _dl_receive_error): Likewise. * elf/dl-open.c (_dl_find_dso_for_object): Likewise. * elf/dl-tls.c (_dl_allocate_tls_init, _dl_allocate_tls) (_dl_deallocate_tls): Likewise. * include/dlfcn.h (_dl_addr): Likewise. * sysdeps/generic/ldsodefs.h (_dl_signal_error, _dl_signal_cerror) (_dl_catch_error, _dl_receive_error, _dl_find_dso_for_object) (_dl_allocate_tls_init, _dl_allocate_tls, _dl_deallocate_tls): Likewise. 2017-08-13 Florian Weimer * include/stdlib.h: (__strtof_nan, __strtod_nan, __strtold_nan) (__wcstof_nan, __wcstod_nan, __wcstold_nan): Remove internal_function. * stdlib/sttod_nan_main.c (STRTOD_NAN): Likewise. 2017-08-13 Florian Weimer * elf/dl-support.c (_dl_make_stack_executable_hook): Remove internal_function. * nptl/allocatestack.c (__make_stacks_executable): Likewise. * nptl/pthreadP.h (__make_stacks_executable): Likewise. * sysdeps/generic/ldsodefs.h (_rtld_global): Remove internal_function from _dl_make_stack_executable_hook member. (_dl_make_stack_executable): Remove internal_function. * sysdeps/mach/hurd/dl-execstack.c (_dl_make_stack_executable): Likewise. * sysdeps/unix/sysv/linux/dl-execstack.c (_dl_make_stack_executable): Likewise. 2017-08-13 Florian Weimer * sysdeps/unix/sysv/linux/netlinkaccess.h (__netlink_assert_response): Remove internal_function. * sysdeps/unix/sysv/linux/netlink_assert_response.c (__netlink_assert_response): Likewise. 2017-08-13 Florian Weimer * include/rpc/pmap_clnt.h (__libc_rpc_getport): Remove internal_function. * sunrpoc/pm_getport.c (__libc_rpc_getport): Likewise. 2017-08-13 Florian Weimer * grp/grp-merge.h (__copy_grp, __merge_grp): Remove internal_function. * grp/grp-merge.c (__copy_grp, __merge_grp): Likewise. * inet/netgroup.h (__internal_setnetgrent) (__internal_endnetgrent,__internal_getnetgrent_r): Likewise. * inet/getnetgrent_r.c (__internal_setnetgrent) (__internal_endnetgrent,__internal_getnetgrent_r): Likewise. * nss/XXX-lookup.c (DB_LOOKUP_FCT, DB_COMPAT_FCT): Likewise. * nss/getXXbyYY_r.c (DB_LOOKUP_FCT): Likewise. * nss/getXXent_r.c (DB_LOOKUP_FCT): Likewise. * nss/nsswitch.h (db_lookup_function): Likewise. 2017-08-13 Florian Weimer * debug/fortify_fail.c (__fortify_fail, __fortify_fail_abort): Remove internal_function. * include/stdio.h (__fortify_fail, __fortify_fail_abort): Likewise. * sysdeps/mach/hurd/i386/____longjmp_chk.S (CALL_FAIL): Pass message argument on the stack. * sysdeps/unix/sysv/linux/i386/____longjmp_chk.S (CALL_FAIL): Likeweise. 2017-08-12 Mike FABIAN Adapt test case data to the changes in the thousands separators. [BZ #20756] * localedata/tst-langinfo.sh: Adapt test case data. * stdlib/tst-strfmon_l.c: Likewise. * stdlib/tst-strtod4.c: Likewise. * stdlib/tst-strtod5i.c: Likewise. 2017-08-11 Florian Weimer [BZ #21242] * assert/assert.h [__GNUC__ && !__STRICT_ANSI__] (assert): Suppress pedantic warning resulting from statement expression. (__ASSERT_FUNCTION): Add missing __extension__. 2017-08-11 Siddhesh Poyarekar * benchtests/bench-memmove-large.c: Print output in JSON format. * benchtests/bench-memmove.c: Likewise. * benchtests/bench-memccpy.c (do_one_test): Remove checks. * benchtests/bench-memchr.c (do_one_test): Likewise. * benchtests/bench-memcpy-large.c (do_one_test): Likewise. * benchtests/bench-memcpy.c (do_one_test): Likewise. * benchtests/bench-memmove-large.c (do_one_test): Likewise. * benchtests/bench-memmove.c (do_one_test): Likewise. * benchtests/bench-memset-large.c (do_one_test): Likewise. * benchtests/bench-memset.c (do_one_test): Likewise. * benchtests/bench-string.h (test_init): Remove memsets. 2017-08-10 Rical Jasan * manual/lang.texi (Computing the Width of an Integer Data Type): Rename section to "Width of an Integer Type". Remove inaccurate statement regarding lack of C language facilities for determining width of integer types, and reorder content to improve flow and context of discussion. 2017-08-10 Rical Jasan * lang.texi (va_copy): Change standard from ISO to C99. (__va_copy): Add standard and header annotation. Update description for clarity of origins and current use. 2017-08-10 Gabriel F. T. Gomes [BZ #21941] * sysdeps/powerpc/fpu/math_private.h (__ieee754_sqrtf128): Since xssqrtqp requires operands to be in Vector Registers (Altivec/VMX), replace the register constraint 'wq' with 'v'. * sysdeps/powerpc/powerpc64le/power9/fpu/e_sqrtf128.c (__ieee754_sqrtf128): Likewise. 2017-08-10 Wilco Dijkstra * sysdeps/aarch64/memcmp.S (memcmp): Rewrite of optimized memcmp. 2017-08-10 Florian Weimer Introduce ld.so exceptions. * sysdeps/generic/ldsodefs.h (struct dl_exception): Define. (_dl_exception_create, _dl_exception_create_format) (_dl_exception_free, _dl_signal_exception, _dl_signal_cexception) (_dl_catch_exception): Declare. (_dl_catch_error): Update comment. * elf/dl-error-skeleton.c (struct catch): Replace objname, errstring, malloced members with exception member. (_dl_out_of_memory): Remove. (fatal_error): New function, extracted from _dl_signal_error. (_dl_signal_exception, _dl_signal_cexception): New functions. (_dl_signal_error): Call _dl_exception_create to allocate an exception object. (_dl_catch_exception): New function, based on _dl_catch_error. (_dl_catch_error): Implement using _dl_catch_exception. * elf/dl-exception.c: New file. * elf/Makefile (dl-routines): Add dl-exception. (elide-routines.os): Likewise. * elf/Version (ld/GLIBC_PRIVATE): Add _dl_exception_create, _dl_exception_create_format, _dl_exception_free. * elf/dl-deps.c (_dl_map_object_deps): Use _dl_catch_exception and _dl_signal_exception. * elf/dl-lookup.c (make_string): Remove. (_dl_lookup_symbol_x): Use _dl_exception_create_format, _dl_signal_cexception, _dl_exception_free. * elf/dl-open.c (_dl_open): Use _dl_catch_exception and _dl_signal_exception. * elf/dl-sym.c (do_sym): Likewise. * elf/dl-version.c (make_string): Remove. (match_symbol): Use _dl_exception_create_format, _dl_signal_cexception, _dl_exception_free. (_dl_check_map_versions): Likewise. * sysdeps/generic/localplt.data (ld.so): Add _dl_signal_exception, _dl_catch_exception. * sysdeps/unix/sysv/linux/aarch64/localplt.data (ld.so): Likewise. * sysdeps/unix/sysv/linux/alpha/localplt.data (ld.so): Likewise. * sysdeps/unix/sysv/linux/arm/localplt.data (ld.so): Likewise. * sysdeps/unix/sysv/linux/hppa/localplt.data (ld.so): Likewise. * sysdeps/unix/sysv/linux/i386/localplt.data (ld.so): Likewise. * sysdeps/unix/sysv/linux/ia64/localplt.data (ld.so): Likewise. * sysdeps/unix/sysv/linux/m68k/localplt.data (ld.so): Likewise. * sysdeps/unix/sysv/linux/microblaze/localplt.data (ld.so): Likewise. * sysdeps/unix/sysv/linux/nios2/localplt.data (ld.so): Likewise. * sysdeps/unix/sysv/linux/powerpc/powerpc32/fpu/localplt.data (ld.so): Likewise. * sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/localplt.data (ld.so): Likewise. * sysdeps/unix/sysv/linux/powerpc/powerpc64/localplt.data (ld.so): Likewise. * sysdeps/unix/sysv/linux/s390/localplt.data (ld.so): Likewise. * sysdeps/unix/sysv/linux/sh/localplt.data (ld.so): Likewise. * sysdeps/unix/sysv/linux/sparc/sparc32/localplt.data (ld.so): Likewise. * sysdeps/unix/sysv/linux/sparc/sparc64/localplt.data (ld.so): Likewise. * sysdeps/x86_64/localplt.data (ld.so): Likewise. 2017-08-10 Florian Weimer * inet/net-internal.h (__inet6_scopeid_pton): Remove attribute_hidden, internal_function. * inet/inet6_scopeid_pton.c (__inet6_scopeid_pton): Remove internal_function. 2017-08-10 Florian Weimer * malloc/malloc.c (get_max_fast): Reimplement as an inline function which calls __builtin_unreachable. 2017-08-10 Mike FABIAN * stdlib/tst-strfmon_l.c: Fix test cases to agree with the changes in Indian monetary formatting * stdlib/Makefile: Adapt list of locales needed for the tst-strfmon_l.c test cases. 2017-08-09 Dmitry V. Levin * sysdeps/unix/sysv/linux/aarch64/sys/ptrace.h (enum __ptrace_request): Fix typo in comment. [BZ #21928] * sysdeps/unix/sysv/linux/sys/ptrace.h (enum __ptrace_flags, PTRACE_SEIZE_DEVEL): Remove. * sysdeps/unix/sysv/linux/aarch64/sys/ptrace.h: Likewise. * sysdeps/unix/sysv/linux/ia64/sys/ptrace.h: Likewise. * sysdeps/unix/sysv/linux/powerpc/sys/ptrace.h: Likewise. * sysdeps/unix/sysv/linux/s390/sys/ptrace.h: Likewise. * sysdeps/unix/sysv/linux/sparc/sys/ptrace.h: Likewise. 2017-08-09 Joseph Myers * posix/bits/types.h (__qaddr_t): Remove. [BZ #21457] * sysdeps/arm/sys/ucontext.h (__ctx): Move undefine further down. (ucontext_t): Use __ctx with uc_flags. Rename uc_filler to __glibc_reserved1. * sysdeps/generic/sys/ucontext.h (__ctx): New macro. (ucontext_t): Use __ctx with uc_flags. * sysdeps/i386/sys/ucontext.h (__ctx): Move undefine further down. (__ctxt): Likewise. (ucontext_t): Use __ctx with uc_flags. Rename uc_filler to __glibc_reserved1. * sysdeps/m68k/sys/ucontext.h (__ctx): Move undefine further down. (ucontext_t): Use __ctx with uc_flags. Rename uc_filler to __glibc_reserved1. * sysdeps/mips/sys/ucontext.h (__ctx): Move undefine further down. (ucontext_t): Use __ctx with uc_flags. Rename uc_filler to __glibc_reserved1. * sysdeps/unix/sysv/linux/aarch64/sys/ucontext.h (__ctx): New macro. (ucontext_t): Use __ctx with uc_flags. * sysdeps/unix/sysv/linux/alpha/sys/ucontext.h (__ctx): New macro. (ucontext_t): Use __ctx with uc_flags. * sysdeps/unix/sysv/linux/arm/sys/ucontext.h (__ctx): New macro. (ucontext_t): Use __ctx with uc_flags and uc_regspace. * sysdeps/unix/sysv/linux/hppa/sys/ucontext.h (__ctx): New macro. (ucontext_t): Use __ctx with uc_flags. * sysdeps/unix/sysv/linux/m68k/sys/ucontext.h (__ctx): Move undefine further down. (ucontext_t): Use __ctx with uc_flags. Rename uc_filler to __glibc_reserved1. * sysdeps/unix/sysv/linux/mips/sys/ucontext.h (__ctx): Move undefine further down. (ucontext_t): Use __ctx with uc_flags. * sysdeps/unix/sysv/linux/nios2/sys/ucontext.h (__ctx): Move undefine further down. (ucontext_t): Use __ctx with uc_flags. * sysdeps/unix/sysv/linux/powerpc/sys/ucontext.h (ucontext_t): Use __ctx with uc_flags, uc_regs_ptr, uc_regs and uc_reg_space. Rename uc_pad to __glibc_reserved1. * sysdeps/unix/sysv/linux/s390/sys/ucontext.h (__ctx): Move undefine further down. (ucontext_t): Use __ctx with uc_flags. * sysdeps/unix/sysv/linux/sh/sys/ucontext.h (__ctx): Move undefine further down. (ucontext_t): Use __ctx with uc_flags. * sysdeps/unix/sysv/linux/sparc/sys/ucontext.h (ucontext_t): Use __ctx with uc_flags. * sysdeps/unix/sysv/linux/tile/sys/ucontext.h (__ctx): New macro. (ucontext_t): Use __ctx with uc_flags. * sysdeps/unix/sysv/linux/x86/sys/ucontext.h (ucontext_t): Use __ctx with uc_flags. 2017-08-09 Florian Weimer [BZ #21932] * nss/getXXbyYY_r.c (REENTRANT_NAME): Call __resolv_context_put before early return. 2017-08-09 Andreas Schwab [BZ #21041] * sysdeps/unix/sysv/linux/s390/pt-longjmp.c: Update reference to renamed alias. [BZ #21041] * nptl/Makefile (tests) [$(build-shared) = yes]: Add tst-compat-forwarder. (modules-names): Add tst-compat-forwarder-mod. ($(objpfx)tst-compat-forwarder): Depend on $(objpfx)tst-compat-forwarder-mod.so. * nptl/tst-compat-forwarder.c: New file. * nptl/tst-compat-forwarder-mod.c: New file. 2017-08-09 Siddhesh Poyarekar * sysdeps/aarch64/multiarch/memcpy_falkor.S: Fix code style in comments. * manual/tunables.texi (Tunable glibc.tune.cpu): Add falkor. * sysdeps/aarch64/multiarch/Makefile (sysdep_routines): Add memcpy_falkor. * sysdeps/aarch64/multiarch/ifunc-impl-list.c (MAX_IFUNC): Bump. (__libc_ifunc_impl_list): Add __memcpy_falkor. * sysdeps/aarch64/multiarch/memcpy.c: Likewise. * sysdeps/aarch64/multiarch/memcpy_falkor.S: New file. * sysdeps/unix/sysv/linux/aarch64/cpu-features.c (cpu_list): Add falkor. * sysdeps/unix/sysv/linux/aarch64/cpu-features.h (IS_FALKOR): New macro. 2017-08-08 Adhemerval Zanella [BZ #759] * manual/setjmp.texi (getcontex): Document uc_stack value compatibility differences. 2017-08-08 Joseph Myers * malloc/mcheck.c (old_free_hook): Use void * instead of __ptr_t. (old_malloc_hook): Likewise. (old_memalign_hook): Likewise. (old_realloc_hook): Likewise. (struct hdr): Likewise. (flood): Likewise. (freehook): Likewise. (mallochook): Likewise. (memalignhook): Likewise. (reallochook): Likewise. (mprobe): Likewise. * malloc/mtrace.c (mallwatch): Likewise. (tr_old_free_hook): Likewise. (tr_old_malloc_hook): Likewise. (tr_old_realloc_hook): Likewise. (tr_old_memalign_hook): Likewise. (tr_where): Likewise. (lock_and_info): Likewise. (tr_freehook): Likewise. (tr_mallochook): Likewise. (tr_reallochook): Likewise. (tr_memalignhook): Likewise. * misc/err.h [!__GNUC_VA_LIST] (__gnuc_va_list): Likewise. * misc/mmap.c (__mmap): Likewise. * misc/mmap64.c (__mmap64): Likewise. * misc/mprotect.c (__mprotect): Likewise. * misc/msync.c (msync): Likewise. * misc/munmap.c (__munmap): Likewise. * posix/posix_madvise.c (posix_madvise): Likewise. * socket/send.c (__send): Likewise. * socket/sendto.c (__sendto): Likewise. * socket/setsockopt.c (__setsockopt): Likewise. * string/memcmp.c (__ptr_t): Remove macro. (MEMCMP): Use void * instead of ptr_t. * string/memrchr.c (__ptr_t): Remove macro. (__memrchr): Use void * instead of ptr_t. * sysdeps/mach/hurd/dl-sysdep.c (__mmap): Likewise. * sysdeps/mach/hurd/mmap.c (__mmap): Likewise. * sysdeps/mach/hurd/mmap64.c (__mmap64): Likewise. * sysdeps/mach/mprotect.c (__mprotect): Likewise. * sysdeps/mach/msync.c (msync): Likewise. * sysdeps/mach/munmap.c (__munmap): Likewise. * sysdeps/mips/bits/setjmp.h (struct __jmp_buf_internal_tag): Likewise. * sysdeps/posix/getcwd.c (__getcwd): Likewise. * sysdeps/powerpc/powerpc32/memset.S (memset): Likewise. * sysdeps/powerpc/powerpc32/power4/memcpy.S (memcpy): Likewise. * sysdeps/powerpc/powerpc32/power4/memset.S (memset): Likewise. * sysdeps/powerpc/powerpc32/power6/memcpy.S (memcpy): Likewise. * sysdeps/powerpc/powerpc32/power6/memset.S (memset): Likewise. * sysdeps/powerpc/powerpc32/power7/memcpy.S (memcpy): Likewise. * sysdeps/powerpc/powerpc32/power7/mempcpy.S (__mempcpy): Likewise. * sysdeps/powerpc/powerpc32/power7/memset.S (memset): Likewise. * sysdeps/powerpc/powerpc64/memcpy.S (memcpy): Likewise. * sysdeps/powerpc/powerpc64/memset.S (memset): Likewise. * sysdeps/powerpc/powerpc64/power4/memcpy.S (memcpy): Likewise. * sysdeps/powerpc/powerpc64/power4/memset.S (memset): Likewise. * sysdeps/powerpc/powerpc64/power6/memcpy.S (memcpy): Likewise. * sysdeps/powerpc/powerpc64/power6/memset.S (memset): Likewise. * sysdeps/powerpc/powerpc64/power7/memcpy.S (memcpy): Likewise. * sysdeps/powerpc/powerpc64/power7/mempcpy.S (__mempcpy): Likewise. * sysdeps/powerpc/powerpc64/power7/memset.S (memset): Likewise. * sysdeps/powerpc/powerpc64/power8/memset.S (memset): Likewise. * sysdeps/tile/memcmp.c (__ptr_t): Remove macro. (MEMCMP): Use void * instead of ptr_t. * sysdeps/unix/sysv/linux/alpha/oldglob.c (old_glob_t): Likewise. * sysdeps/unix/sysv/linux/mmap.c (__mmap): Likewise. 2017-08-08 Florian Weimer * sysdeps/posix/getaddrinfo.c (gaih_inet): Remove unreachable return statement. 2017-08-08 H.J. Lu [BZ #21913] * csu/libc-tls.c: Include first. (__libc_setup_tls): Call _startup_fatal instead of __libc_fatal. * elf/dl-tunables.c: Include first. * include/libc-symbols.h (BUILD_PIE_DEFAULT): New. * sysdeps/generic/startup.h: New file. * sysdeps/unix/sysv/linux/i386/startup.h: Likewise. * sysdeps/unix/sysv/linux/i386/brk.c [BUILD_PIE_DEFAULT != 0] (I386_USE_SYSENTER): New. Defined to 0. 2017-08-08 Andreas Schwab [BZ #21041] * nptl/pt-longjmp.c (longjmp, siglongjmp): Don't use IFUNC resolver. * nptl/pt-system.c (system): Likewise. 2017-08-07 Adhemerval Zanella [BZ #21780] * sysdeps/posix/preadv2.c (preadv2): Use ENOTSUP instead of EOPNOTSUPP. * sysdeps/posix/preadv64v2.c (preadv64v2): Likewise. * sysdeps/posix/pwritev2.c (pwritev2): Likewise. * sysdeps/posix/pwritev64v2.c (pwritev64v2): Likewise. * sysdeps/unix/sysv/linux/preadv2.c (preadv2): Likewise. * sysdeps/unix/sysv/linux/preadv64v2.c (preadv64v2): Likewise. * sysdeps/unix/sysv/linux/pwritev2.c (pwritev2): Likewise. * sysdeps/unix/sysv/linux/pwritev64v2.c (pwritev64v2): Likewise. 2017-08-07 Joseph Myers [BZ #21899] * bits/sigaction.h (struct sigaction): Define sa_handler and sa_sigaction using union also for [__USE_XOPEN_EXTENDED]. (SA_ONSTACK): Change [__USE_UNIX98] condition to [__USE_XOPEN_EXTENDED]. (SA_RESTART): Likewise. (SA_NODEFER): Likewise. (SA_RESETHAND): Likewise. * sysdeps/unix/sysv/linux/alpha/bits/sigaction.h (struct sigaction): Define sa_handler and sa_sigaction using union also for [__USE_XOPEN_EXTENDED]. (SA_ONSTACK): Change [__USE_UNIX98] condition to [__USE_XOPEN_EXTENDED]. (SA_RESTART): Likewise. (SA_NODEFER): Likewise. (SA_RESETHAND): Likewise. * sysdeps/unix/sysv/linux/bits/sigaction.h (struct sigaction): Define sa_handler and sa_sigaction using union also for [__USE_XOPEN_EXTENDED]. (SA_ONSTACK): Change [__USE_UNIX98] condition to [__USE_XOPEN_EXTENDED]. (SA_RESTART): Likewise. (SA_NODEFER): Likewise. (SA_RESETHAND): Likewise. * sysdeps/unix/sysv/linux/hppa/bits/sigaction.h (struct sigaction): Define sa_handler and sa_sigaction using union also for [__USE_XOPEN_EXTENDED]. (SA_ONSTACK): Change [__USE_UNIX98] condition to [__USE_XOPEN_EXTENDED]. (SA_RESTART): Likewise. (SA_NODEFER): Likewise. (SA_RESETHAND): Likewise. * sysdeps/unix/sysv/linux/ia64/bits/sigaction.h (struct sigaction): Define sa_handler and sa_sigaction using union also for [__USE_XOPEN_EXTENDED]. (SA_ONSTACK): Change [__USE_UNIX98] condition to [__USE_XOPEN_EXTENDED]. (SA_RESTART): Likewise. (SA_NODEFER): Likewise. (SA_RESETHAND): Likewise. * sysdeps/unix/sysv/linux/mips/bits/sigaction.h (struct sigaction): Define sa_handler and sa_sigaction using union also for [__USE_XOPEN_EXTENDED]. (SA_ONSTACK): Change [__USE_UNIX98] condition to [__USE_XOPEN_EXTENDED]. (SA_RESTART): Likewise. (SA_NODEFER): Likewise. (SA_RESETHAND): Likewise. * sysdeps/unix/sysv/linux/s390/bits/sigaction.h (struct sigaction): Define sa_handler and sa_sigaction using union also for [__USE_XOPEN_EXTENDED]. (SA_ONSTACK): Change [__USE_UNIX98] condition to [__USE_XOPEN_EXTENDED]. (SA_RESTART): Likewise. (SA_NODEFER): Likewise. (SA_RESETHAND): Likewise. * sysdeps/unix/sysv/linux/sparc/bits/sigaction.h (struct sigaction): Define sa_handler and sa_sigaction using union also for [__USE_XOPEN_EXTENDED]. (SA_ONSTACK): Change [__USE_UNIX98] condition to [__USE_XOPEN_EXTENDED]. (SA_RESTART): Likewise. (SA_NODEFER): Likewise. Define directly rather than as alias. (SA_RESETHAND): Likewise. (SA_INTERRUPT): Define only for [__USE_MISC]. (SA_NOMASK): Define as alias of SA_NODEFER, only for [__USE_MISC]. (SA_ONESHOT): Define as alias of SA_RESETHAND, only for [__USE_MISC]. (SA_STACK): Define only for [__USE_MISC]. * sysdeps/unix/sysv/linux/tile/bits/sigaction.h (struct sigaction): Define sa_handler and sa_sigaction using union also for [__USE_XOPEN_EXTENDED]. (SA_ONSTACK): Change [__USE_UNIX98] condition to [__USE_XOPEN_EXTENDED]. (SA_RESTART): Likewise. (SA_NODEFER): Likewise. (SA_RESETHAND): Likewise. (SA_NOPTRACE): Define only for [__USE_MISC]. * catgets/catgets.c (catgets): Use uintN_t instead of u_intN_t. * catgets/catgetsinfo.h (struct catalog_obj): Likewise. (struct catalog_info): Likewise. * inet/htontest.c (lo): Likewise. (foo): Likewise. * inet/inet_lnaof.c (inet_lnaof): Likewise. * inet/inet_net.c (inet_network): Likewise. * inet/inet_netof.c (inet_netof): Likewise. * inet/rcmd.c (__ivaliduser): Likewise. (iruserok): Likewise. * locale/loadlocale.c (_nl_intern_locale_data): Likewise. * locale/programs/locale-spec.c (locale_special): Likewise. * nis/nis_findserv.c (struct findserv_req): Likewise. (__nis_findfastest_with_timeout): Likewise. * nss/test-netdb.c (test_network): Likewise. * resolv/inet_neta.c (inet_neta): Likewise. * resolv/ns_date.c (ns_datetosecs): Likewise. (SECS_PER_DAY): Likewise. * resolv/nss_dns/dns-network.c (_nss_dns_getnetbyaddr_r): Likewise. * resolv/res_comp.c (__putlong): Likewise. (__putshort): Likewise. (_getlong): Likewise. (_getshort): Likewise. * resolv/res_debug.c (p_time): Likewise. (precsize_ntoa): Likewise. (precsize_aton): Likewise. (latlon2ul): Likewise. (loc_aton): Likewise. (loc_ntoa): Likewise. * resolv/res_hconf.c (struct netaddr): Likewise. (_res_hconf_reorder_addrs): Likewise. * sunrpc/clnt_tcp.c (clnttcp_call): Likewise. (clnttcp_control): Likewise. * sunrpc/clnt_udp.c (clntudp_call): Likewise. (clntudp_control): Likewise. * sunrpc/clnt_unix.c (clntunix_call): Likewise. (clntunix_control): Likewise. * sunrpc/pmap_rmt.c (clnt_broadcast): Likewise. * sunrpc/rpc/auth.h (union des_block): Likewise. * sunrpc/tst-udp-nonblocking.c (do_test): Likewise. * sunrpc/xdr_rec.c (struct rec_strm): Likewise. (xdrrec_create): Likewise. (xdrrec_endofrecord): Likewise. (flush_out): Likewise. * sunrpc/xdr_stdio.c (xdrstdio_getlong): Likewise. (xdrstdio_putlong): Likewise. * sysdeps/unix/sysv/linux/errqueue.h (struct sock_extended_err): Likewise. * misc/sys/cdefs.h (__long_double_t): Remove. * stdio-common/printf_fp.c (__printf_fp_l): Use long double instead of __long_double_t, * stdlib/strfmon_l.c (__vstrfmon_l): Likewise. 2017-08-07 Siddhesh Poyarekar * benchtests/scripts/compare_strings.py: Avoid display error when running on a text terminal. * benchtests/scripts/compare_strings.py (main): Add an optional -base option. (process_results): New argument base_func. * benchtests/bench-memcpy.c (test_main): Use TEST_NAME instead of hardcoding memcpy. * benchtests/bench-memcpy-large.c (test_name): Likewise. * benchtests/bench-memcpy-random.c (test_name): Likewise. 2017-08-07 Andreas Schwab * elf/Makefile ($(objpfx)tst-pathopt.out): Redirect output to target. * grp/Makefile ($(objpfx)tst_fgetgrent.out): Likewise. * intl/Makefile ($(objpfx)tst-gettext.out) ($(objpfx)tst-translit.out, $(objpfx)tst-gettext2.out) ($(objpfx)tst-gettext4.out, $(objpfx)tst-gettext6.out): Likewise. * libio/Makefile ($(objpfx)test-freopen.out): Likewise. * malloc/Makefile ($(objpfx)tst-mtrace.out): Likewise. * nptl/Makefile ($(objpfx)tst-tls6.out): Likewise. * posix/Makefile ($(objpfx)globtest.out) ($(objpfx)wordexp-tst.out, $(objpfx)tst-getconf.out): Likewise. * stdio-common/Makefile ($(objpfx)tst-unbputc.out) ($(objpfx)tst-printf.out): Likewise. * stdlib/Makefile ($(objpfx)tst-fmtmsg.out) ($(objpfx)tst-setcontext3.out): Likewise. 2017-08-07 H.J. Lu * sysdeps/x86_64/fpu/multiarch/Makefile (libm-sysdep_routines): Add e_exp-fma, e_log-fma, e_pow-fma, s_atan-fma, e_asin-fma, e_atan2-fma, s_sin-fma, s_tan-fma, mplog-fma, mpa-fma, slowexp-fma, slowpow-fma, sincos32-fma, doasin-fma, dosincos-fma, halfulp-fma, mpexp-fma, mpatan2-fma, mpatan-fma, mpsqrt-fma, and mptan-fma. (CFLAGS-doasin-fma.c): New. (CFLAGS-dosincos-fma.c): Likewise. (CFLAGS-e_asin-fma.c): Likewise. (CFLAGS-e_atan2-fma.c): Likewise. (CFLAGS-e_exp-fma.c): Likewise. (CFLAGS-e_log-fma.c): Likewise. (CFLAGS-e_pow-fma.c): Likewise. (CFLAGS-halfulp-fma.c): Likewise. (CFLAGS-mpa-fma.c): Likewise. (CFLAGS-mpatan-fma.c): Likewise. (CFLAGS-mpatan2-fma.c): Likewise. (CFLAGS-mpexp-fma.c): Likewise. (CFLAGS-mplog-fma.c): Likewise. (CFLAGS-mpsqrt-fma.c): Likewise. (CFLAGS-mptan-fma.c): Likewise. (CFLAGS-s_atan-fma.c): Likewise. (CFLAGS-sincos32-fma.c): Likewise. (CFLAGS-slowexp-fma.c): Likewise. (CFLAGS-slowpow-fma.c): Likewise. (CFLAGS-s_sin-fma.c): Likewise. (CFLAGS-s_tan-fma.c): Likewise. * sysdeps/x86_64/fpu/multiarch/doasin-fma.c: New file. * sysdeps/x86_64/fpu/multiarch/dosincos-fma.c: Likewise. * sysdeps/x86_64/fpu/multiarch/e_asin-fma.c: Likewise. * sysdeps/x86_64/fpu/multiarch/e_atan2-fma.c: Likewise. * sysdeps/x86_64/fpu/multiarch/e_exp-fma.c: Likewise. * sysdeps/x86_64/fpu/multiarch/e_log-fma.c: Likewise. * sysdeps/x86_64/fpu/multiarch/e_pow-fma.c: Likewise. * sysdeps/x86_64/fpu/multiarch/halfulp-fma.c: Likewise. * sysdeps/x86_64/fpu/multiarch/ifunc-avx-fma4.h: Likewise. * sysdeps/x86_64/fpu/multiarch/ifunc-fma4.h: Likewise. * sysdeps/x86_64/fpu/multiarch/mpa-fma.c: Likewise. * sysdeps/x86_64/fpu/multiarch/mpatan-fma.c: Likewise. * sysdeps/x86_64/fpu/multiarch/mpatan2-fma.c: Likewise. * sysdeps/x86_64/fpu/multiarch/mpexp-fma.c: Likewise. * sysdeps/x86_64/fpu/multiarch/mplog-fma.c: Likewise. * sysdeps/x86_64/fpu/multiarch/mpsqrt-fma.c: Likewise. * sysdeps/x86_64/fpu/multiarch/mptan-fma.c: Likewise. * sysdeps/x86_64/fpu/multiarch/s_atan-fma.c: Likewise. * sysdeps/x86_64/fpu/multiarch/s_sin-fma.c: Likewise. * sysdeps/x86_64/fpu/multiarch/s_tan-fma.c: Likewise. * sysdeps/x86_64/fpu/multiarch/sincos32-fma.c: Likewise. * sysdeps/x86_64/fpu/multiarch/slowexp-fma.c: Likewise. * sysdeps/x86_64/fpu/multiarch/slowpow-fma.c: Likewise. * sysdeps/x86_64/fpu/multiarch/e_asin.c: Rewrite. * sysdeps/x86_64/fpu/multiarch/e_atan2.c: Likewise. * sysdeps/x86_64/fpu/multiarch/e_exp.c: Likewise. * sysdeps/x86_64/fpu/multiarch/e_log.c: Likewise. * sysdeps/x86_64/fpu/multiarch/e_pow.c: Likewise. * sysdeps/x86_64/fpu/multiarch/s_atan.c: Likewise. * sysdeps/x86_64/fpu/multiarch/s_sin.c: Likewise. * sysdeps/x86_64/fpu/multiarch/s_tan.c: Likewise. 2017-08-04 Joseph Myers * sysdeps/generic/math_private.h (__EXPR_FLT128): Remove macro. (min_of_type_f): New macro. (min_of_type_): Likewise. (min_of_type_l): Likewise. (min_of_type_f128): Likewise. (min_of_type): Define using __MATH_TG and taking an expression argument. (math_check_force_underflow): Pass expression instead of type to min_of_type. (math_check_force_underflow_nonneg): Likewise. 2017-08-04 H.J. Lu * sysdeps/x86/cpu-features.h [__ASSEMBLER__] (LOAD_RTLD_GLOBAL_RO_RDX, HAS_FEATURE, LOAD_FUNC_GOT_EAX, HAS_CPU_FEATURE, HAS_ARCH_FEATURE): Removed. 2017-08-04 H.J. Lu * sysdeps/i386/i686/multiarch/Makefile (sysdep_routines): Add bcopy-ia32, bzero-ia32, rawmemchr-ia32 memchr-ia32, memcmp-ia32, memcpy-ia32, memmove-ia32, mempcpy-ia32, memset-ia32, strcat-ia32, strchr-ia32, strrchr-ia32, strcpy-ia32, strcmp-ia32, strcspn-ia32, strpbrk-ia32, strspn-ia32, strlen-ia32, stpcpy-ia32, stpncpy-ia32, memcpy_chk-nonshared, mempcpy_chk-nonshared, memmove_chk-nonshared and memset_chk-nonshared * sysdeps/i386/i686/multiarch/bcopy-ia32.S: New file. * sysdeps/i386/i686/multiarch/bcopy.c: Likewise. * sysdeps/i386/i686/multiarch/bzero-ia32.S: Likewise. * sysdeps/i386/i686/multiarch/bzero.c: Likewise. * sysdeps/i386/i686/multiarch/ifunc-memmove.h: Likewise. * sysdeps/i386/i686/multiarch/ifunc-memset.h: Likewise. * sysdeps/i386/i686/multiarch/ifunc-sse2-bsf.h: Likewise. * sysdeps/i386/i686/multiarch/ifunc-sse2-ssse3.h: Likewise. * sysdeps/i386/i686/multiarch/ifunc-sse2.h: Likewise. * sysdeps/i386/i686/multiarch/ifunc-sse4_2.h: Likewise. * sysdeps/i386/i686/multiarch/ifunc-ssse3-sse4_2.h: Likewise. * sysdeps/i386/i686/multiarch/memchr-ia32.S: Likewise. * sysdeps/i386/i686/multiarch/memchr.c: Likewise. * sysdeps/i386/i686/multiarch/memcmp-ia32.S: Likewise. * sysdeps/i386/i686/multiarch/memcmp.c: Likewise. * sysdeps/i386/i686/multiarch/memcpy-ia32.S: Likewise. * sysdeps/i386/i686/multiarch/memcpy.c: Likewise. * sysdeps/i386/i686/multiarch/memcpy_chk-nonshared.S: Likewise. * sysdeps/i386/i686/multiarch/memcpy_chk.c: Likewise. * sysdeps/i386/i686/multiarch/memmove-ia32.S: Likewise. * sysdeps/i386/i686/multiarch/memmove.c: Likewise. * sysdeps/i386/i686/multiarch/memmove_chk-nonshared.S: Likewise. * sysdeps/i386/i686/multiarch/memmove_chk.c: Likewise. * sysdeps/i386/i686/multiarch/mempcpy-ia32.S: Likewise. * sysdeps/i386/i686/multiarch/mempcpy.c: Likewise. * sysdeps/i386/i686/multiarch/mempcpy_chk-nonshared.S: Likewise. * sysdeps/i386/i686/multiarch/mempcpy_chk.c: Likewise. * sysdeps/i386/i686/multiarch/memrchr.c: Likewise. * sysdeps/i386/i686/multiarch/memset-ia32.S: Likewise. * sysdeps/i386/i686/multiarch/memset.c: Likewise. * sysdeps/i386/i686/multiarch/memset_chk-nonshared.S: Likewise. * sysdeps/i386/i686/multiarch/rawmemchr-ia32.S: Likewise. * sysdeps/i386/i686/multiarch/rawmemchr.c: Likewise. * sysdeps/i386/i686/multiarch/stpcpy-ia32.S: Likewise. * sysdeps/i386/i686/multiarch/stpcpy-ia32.S: Likewise. * sysdeps/i386/i686/multiarch/stpcpy.c: Likewise. * sysdeps/i386/i686/multiarch/stpncpy-ia32.S: Likewise. * sysdeps/i386/i686/multiarch/stpncpy.c: Likewise. * sysdeps/i386/i686/multiarch/strcasecmp.c: Likewise. * sysdeps/i386/i686/multiarch/strcasecmp_l.c: Likewise. * sysdeps/i386/i686/multiarch/strcat-ia32.S: Likewise. * sysdeps/i386/i686/multiarch/strcat.c: Likewise. * sysdeps/i386/i686/multiarch/strchr-ia32.S: Likewise. * sysdeps/i386/i686/multiarch/strchr.c: Likewise. * sysdeps/i386/i686/multiarch/strcmp-ia32.S: Likewise. * sysdeps/i386/i686/multiarch/strcmp.c: Likewise. * sysdeps/i386/i686/multiarch/strcpy-ia32.S: Likewise. * sysdeps/i386/i686/multiarch/strcpy.c: Likewise. * sysdeps/i386/i686/multiarch/strcspn-ia32.S: Likewise. * sysdeps/i386/i686/multiarch/strcspn.c: Likewise. * sysdeps/i386/i686/multiarch/strlen-ia32.S: Likewise. * sysdeps/i386/i686/multiarch/strlen.c: Likewise. * sysdeps/i386/i686/multiarch/strncase.c: Likewise. * sysdeps/i386/i686/multiarch/strncase_l.c: Likewise. * sysdeps/i386/i686/multiarch/strncat.c: Likewise. * sysdeps/i386/i686/multiarch/strncmp.c: Likewise. * sysdeps/i386/i686/multiarch/strncpy.c: Likewise. * sysdeps/i386/i686/multiarch/strnlen.c: Likewise. * sysdeps/i386/i686/multiarch/strpbrk-ia32.S: Likewise. * sysdeps/i386/i686/multiarch/strpbrk.c: Likewise. * sysdeps/i386/i686/multiarch/strrchr-ia32.S: Likewise. * sysdeps/i386/i686/multiarch/strrchr.c: Likewise. * sysdeps/i386/i686/multiarch/strspn-ia32.S: Likewise. * sysdeps/i386/i686/multiarch/strspn.c: Likewise. * sysdeps/i386/i686/multiarch/wcschr.c: Likewise. * sysdeps/i386/i686/multiarch/wcscmp.c: Likewise. * sysdeps/i386/i686/multiarch/wcscpy.c: Likewise. * sysdeps/i386/i686/multiarch/wcslen.c: Likewise. * sysdeps/i386/i686/multiarch/wcsrchr.c: Likewise. * sysdeps/i386/i686/multiarch/wmemcmp.c: Likewise. * sysdeps/i386/i686/multiarch/bcopy.S: Removed. * sysdeps/i386/i686/multiarch/bzero.S: Likewise. * sysdeps/i386/i686/multiarch/memchr.S: Likewise. * sysdeps/i386/i686/multiarch/memcmp.S: Likewise. * sysdeps/i386/i686/multiarch/memcpy.S: Likewise. * sysdeps/i386/i686/multiarch/memcpy_chk.S: Likewise. * sysdeps/i386/i686/multiarch/memmove.S: Likewise. * sysdeps/i386/i686/multiarch/memmove_chk.S: Likewise. * sysdeps/i386/i686/multiarch/mempcpy.S: Likewise. * sysdeps/i386/i686/multiarch/mempcpy_chk.S: Likewise. * sysdeps/i386/i686/multiarch/memrchr.S: Likewise. * sysdeps/i386/i686/multiarch/memset.S: Likewise. * sysdeps/i386/i686/multiarch/memset_chk.S: Likewise. * sysdeps/i386/i686/multiarch/rawmemchr.S: Likewise. * sysdeps/i386/i686/multiarch/stpcpy.S: Likewise. * sysdeps/i386/i686/multiarch/stpncpy.S: Likewise. * sysdeps/i386/i686/multiarch/strcasecmp.S: Likewise. * sysdeps/i386/i686/multiarch/strcasecmp_l.S: Likewise. * sysdeps/i386/i686/multiarch/strcat.S: Likewise. * sysdeps/i386/i686/multiarch/strcmp.S: Likewise. * sysdeps/i386/i686/multiarch/strcpy.S: Likewise. * sysdeps/i386/i686/multiarch/strcspn.S: Likewise. * sysdeps/i386/i686/multiarch/strlen.S: Likewise. * sysdeps/i386/i686/multiarch/strncase.S: Likewise. * sysdeps/i386/i686/multiarch/strncase_l.S: Likewise. * sysdeps/i386/i686/multiarch/strncat.S: Likewise. * sysdeps/i386/i686/multiarch/strncmp.S: Likewise. * sysdeps/i386/i686/multiarch/strncpy.S: Likewise. * sysdeps/i386/i686/multiarch/strnlen.S: Likewise. * sysdeps/i386/i686/multiarch/strpbrk.S: Likewise. * sysdeps/i386/i686/multiarch/strrchr.S: Likewise. * sysdeps/i386/i686/multiarch/strspn.S: Likewise. * sysdeps/i386/i686/multiarch/wcschr.S: Likewise. * sysdeps/i386/i686/multiarch/wcscmp.S: Likewise. * sysdeps/i386/i686/multiarch/wcscpy.S: Likewise. * sysdeps/i386/i686/multiarch/wcslen.S: Likewise. * sysdeps/i386/i686/multiarch/wcsrchr.S: Likewise. * sysdeps/i386/i686/multiarch/wmemcmp.S: Likewise. 2017-08-04 H.J. Lu * sysdeps/x86_64/fpu/multiarch/Makefile (libmvec-sysdep_routines) Add svml_d_cos2_core-sse2, svml_d_cos4_core-sse, svml_d_cos8_core-avx2, svml_d_exp2_core-sse2, svml_d_exp4_core-sse, svml_d_exp8_core-avx2, svml_d_log2_core-sse2, svml_d_log4_core-sse, svml_d_log8_core-avx2, svml_d_pow2_core-sse2, svml_d_pow4_core-sse, svml_d_pow8_core-avx2 svml_d_sin2_core-sse2, svml_d_sin4_core-sse, svml_d_sin8_core-avx2, svml_d_sincos2_core-sse2, svml_d_sincos4_core-sse, svml_d_sincos8_core-avx2, svml_s_cosf16_core-avx2, svml_s_cosf4_core-sse2, svml_s_cosf8_core-sse, svml_s_expf16_core-avx2, svml_s_expf4_core-sse2, svml_s_expf8_core-sse, svml_s_logf16_core-avx2, svml_s_logf4_core-sse2, svml_s_logf8_core-sse, svml_s_powf16_core-avx2, svml_s_powf4_core-sse2, svml_s_powf8_core-sse, svml_s_sincosf16_core-avx2, svml_s_sincosf4_core-sse2, svml_s_sincosf8_core-sse, svml_s_sinf16_core-avx2, svml_s_sinf4_core-sse2 and svml_s_sinf8_core-sse. * sysdeps/x86_64/fpu/multiarch/ifunc-mathvec-avx2.h: New file. * sysdeps/x86_64/fpu/multiarch/ifunc-mathvec-avx512.h: Likewise. * sysdeps/x86_64/fpu/multiarch/ifunc-mathvec-sse4_1.h: Likewise. * sysdeps/x86_64/fpu/multiarch/svml_d_cos2_core.c: Likewise. * sysdeps/x86_64/fpu/multiarch/svml_d_cos4_core.c: Likewise. * sysdeps/x86_64/fpu/multiarch/svml_d_cos8_core.c: Likewise. * sysdeps/x86_64/fpu/multiarch/svml_d_exp2_core.c: Likewise. * sysdeps/x86_64/fpu/multiarch/svml_d_exp4_core.c: Likewise. * sysdeps/x86_64/fpu/multiarch/svml_d_exp8_core.c: Likewise. * sysdeps/x86_64/fpu/multiarch/svml_d_log2_core.c: Likewise. * sysdeps/x86_64/fpu/multiarch/svml_d_log4_core.c: Likewise. * sysdeps/x86_64/fpu/multiarch/svml_d_log8_core.c: Likewise. * sysdeps/x86_64/fpu/multiarch/svml_d_pow2_core.c: Likewise. * sysdeps/x86_64/fpu/multiarch/svml_d_pow4_core.c: Likewise. * sysdeps/x86_64/fpu/multiarch/svml_d_pow8_core.c: Likewise. * sysdeps/x86_64/fpu/multiarch/svml_d_sin2_core.c: Likewise. * sysdeps/x86_64/fpu/multiarch/svml_d_sin4_core.c: Likewise. * sysdeps/x86_64/fpu/multiarch/svml_d_sin8_core.c: Likewise. * sysdeps/x86_64/fpu/multiarch/svml_d_sincos2_core.c: Likewise. * sysdeps/x86_64/fpu/multiarch/svml_d_sincos4_core.c: Likewise. * sysdeps/x86_64/fpu/multiarch/svml_d_sincos8_core.c: Likewise. * sysdeps/x86_64/fpu/multiarch/svml_d_cosf16_core.c: Likewise. * sysdeps/x86_64/fpu/multiarch/svml_d_cosf4_core.c: Likewise. * sysdeps/x86_64/fpu/multiarch/svml_d_cosf8_core.c: Likewise. * sysdeps/x86_64/fpu/multiarch/svml_d_expf16_core.c: Likewise. * sysdeps/x86_64/fpu/multiarch/svml_d_expf4_core.c: Likewise. * sysdeps/x86_64/fpu/multiarch/svml_d_expf8_core.c: Likewise. * sysdeps/x86_64/fpu/multiarch/svml_d_logf16_core.c: Likewise. * sysdeps/x86_64/fpu/multiarch/svml_d_logf4_core.c: Likewise. * sysdeps/x86_64/fpu/multiarch/svml_d_logf8_core.c: Likewise. * sysdeps/x86_64/fpu/multiarch/svml_d_powf16_core.c: Likewise. * sysdeps/x86_64/fpu/multiarch/svml_d_powf4_core.c: Likewise. * sysdeps/x86_64/fpu/multiarch/svml_d_powf8_core.c: Likewise. * sysdeps/x86_64/fpu/multiarch/svml_d_sincosf16_core.c: Likewise. * sysdeps/x86_64/fpu/multiarch/svml_d_sincosf4_core.c: Likewise. * sysdeps/x86_64/fpu/multiarch/svml_d_sincosf8_core.c: Likewise. * sysdeps/x86_64/fpu/multiarch/svml_d_sinf16_core.c: Likewise. * sysdeps/x86_64/fpu/multiarch/svml_d_sinf4_core.c: Likewise. * sysdeps/x86_64/fpu/multiarch/svml_d_sinf8_core.c: Likewise. * sysdeps/x86_64/fpu/multiarch/svml_d_cos2_core.S: Renamed to ... * sysdeps/x86_64/fpu/multiarch/svml_d_cos2_core-sse2.S: This. Don't include nor . (_ZGVbN2v_cos): Removed. * sysdeps/x86_64/fpu/multiarch/svml_d_cos4_core.S: Renamed to ... * sysdeps/x86_64/fpu/multiarch/svml_d_cos4_core-sse.S: This. Don't include nor . (_ZGVdN4v_cos): Removed. * sysdeps/x86_64/fpu/multiarch/svml_d_cos8_core.S: Renamed to ... * sysdeps/x86_64/fpu/multiarch/svml_d_cos8_core-avx2.S: This. Don't include nor . (_ZGVeN8v_cos): Removed. * sysdeps/x86_64/fpu/multiarch/svml_d_exp2_core.S: Renamed to ... * sysdeps/x86_64/fpu/multiarch/svml_d_exp2_core-sse2.S: This. Don't include nor . (_ZGVbN2v_exp): Removed. * sysdeps/x86_64/fpu/multiarch/svml_d_exp4_core.S: Renamed to ... * sysdeps/x86_64/fpu/multiarch/svml_d_exp4_core-sse.S: This. Don't include nor . (_ZGVdN4v_exp): Removed. * sysdeps/x86_64/fpu/multiarch/svml_d_exp8_core.S: Renamed to ... * sysdeps/x86_64/fpu/multiarch/svml_d_exp8_core-avx2.S: This. Don't include nor . (_ZGVeN8v_exp): Removed. * sysdeps/x86_64/fpu/multiarch/svml_d_log2_core.S: Renamed to ... * sysdeps/x86_64/fpu/multiarch/svml_d_log2_core-sse2.S: This. Don't include nor . (_ZGVbN2v_log): Removed. * sysdeps/x86_64/fpu/multiarch/svml_d_log4_core.S: Renamed to ... * sysdeps/x86_64/fpu/multiarch/svml_d_log4_core-sse.S: This. Don't include nor . (_ZGVdN4v_log): Removed. * sysdeps/x86_64/fpu/multiarch/svml_d_log8_core.S: Renamed to ... * sysdeps/x86_64/fpu/multiarch/svml_d_log8_core-avx2.S: This. Don't include nor . (_ZGVeN8v_log): Removed. * sysdeps/x86_64/fpu/multiarch/svml_d_pow2_core.S: Renamed to ... * sysdeps/x86_64/fpu/multiarch/svml_d_pow2_core-sse2.S: This. Don't include nor . (_ZGVbN2vv_pow): Removed. * sysdeps/x86_64/fpu/multiarch/svml_d_pow4_core.S: Renamed to ... * sysdeps/x86_64/fpu/multiarch/svml_d_pow4_core-sse.S: This. Don't include nor . (_ZGVdN4vv_pow): Removed. * sysdeps/x86_64/fpu/multiarch/svml_d_pow8_core.S: Renamed to ... * sysdeps/x86_64/fpu/multiarch/svml_d_pow8_core-avx2.S: This. Don't include nor . (_ZGVeN8vv_pow): Removed. * sysdeps/x86_64/fpu/multiarch/svml_d_sin2_core.S: Renamed to ... * sysdeps/x86_64/fpu/multiarch/svml_d_sin2_core-sse2.S: This. Don't include nor . (_ZGVbN2v_sin): Removed. * sysdeps/x86_64/fpu/multiarch/svml_d_sin4_core.S: Renamed to ... * sysdeps/x86_64/fpu/multiarch/svml_d_sin4_core-sse.S: This. Don't include nor . (_ZGVbN4v_sin): Removed. * sysdeps/x86_64/fpu/multiarch/svml_d_sin8_core.S: Renamed to ... * sysdeps/x86_64/fpu/multiarch/svml_d_sin8_core-avx2.S: This. Don't include nor . (_ZGVbN8v_sin): Removed. * sysdeps/x86_64/fpu/multiarch/svml_d_sincos2_core.S: Renamed to ... * sysdeps/x86_64/fpu/multiarch/svml_d_sincos2_core-sse2.S: This. Don't include nor . (_ZGVbN2vvv_sincos): Removed. * sysdeps/x86_64/fpu/multiarch/svml_d_sincos4_core.S: Renamed to ... * sysdeps/x86_64/fpu/multiarch/svml_d_sincos4_core-sse.S: This. Don't include nor . (_ZGVdN4vvv_sincos): Removed. * sysdeps/x86_64/fpu/multiarch/svml_d_sincos8_core.S: Renamed to ... * sysdeps/x86_64/fpu/multiarch/svml_d_sincos8_core-avx2.S: This. Don't include nor . (_ZGVeN8vvv_sincos): Removed. * sysdeps/x86_64/fpu/multiarch/svml_d_cosf16_core.S: Renamed to ... * sysdeps/x86_64/fpu/multiarch/svml_d_cosf16_core-avx2.S: This. Don't include nor . (_ZGVeN16v_cosf): Removed. * sysdeps/x86_64/fpu/multiarch/svml_d_cosf4_core.S: Renamed to ... * sysdeps/x86_64/fpu/multiarch/svml_d_cosf4_core-sse2.S: This. Don't include nor . (_ZGVbN4v_cosf): Removed. * sysdeps/x86_64/fpu/multiarch/svml_d_cosf8_core.S: Renamed to ... * sysdeps/x86_64/fpu/multiarch/svml_d_cosf8_core-sse.S: This. Don't include nor . (_ZGVdN8v_cosf): Removed. * sysdeps/x86_64/fpu/multiarch/svml_d_expf16_core.S: Renamed to ... * sysdeps/x86_64/fpu/multiarch/svml_d_expf16_core-avx2.S: This. Don't include nor . (_ZGVeN16v_expf): Removed. * sysdeps/x86_64/fpu/multiarch/svml_d_expf4_core.S: Renamed to ... * sysdeps/x86_64/fpu/multiarch/svml_d_expf4_core-sse2.S: This. Don't include nor . (_ZGVbN4v_expf): Removed. * sysdeps/x86_64/fpu/multiarch/svml_d_expf8_core.S: Renamed to ... * sysdeps/x86_64/fpu/multiarch/svml_d_expf8_core-sse.S: This. Don't include nor . (_ZGVdN8v_expf): Removed. * sysdeps/x86_64/fpu/multiarch/svml_d_logf16_core.S: Renamed to ... * sysdeps/x86_64/fpu/multiarch/svml_d_logf16_core-avx2.S: This. Don't include nor . (_ZGVeN16v_logf): Removed. * sysdeps/x86_64/fpu/multiarch/svml_d_logf4_core.S: Renamed to ... * sysdeps/x86_64/fpu/multiarch/svml_d_logf4_core-sse2.S: This. Don't include nor . (_ZGVbN4v_logf): Removed. * sysdeps/x86_64/fpu/multiarch/svml_d_logf8_core.S: Renamed to ... * sysdeps/x86_64/fpu/multiarch/svml_d_logf8_core-sse.S: This. Don't include nor . (_ZGVdN8v_logf): Removed. * sysdeps/x86_64/fpu/multiarch/svml_d_powf16_core.S: Renamed to ... * sysdeps/x86_64/fpu/multiarch/svml_d_powf16_core-avx2.S: This. Don't include nor . (_ZGVeN16vv_powf): Removed. * sysdeps/x86_64/fpu/multiarch/svml_d_powf4_core.S: Renamed to ... * sysdeps/x86_64/fpu/multiarch/svml_d_powf4_core-sse2.S: This. Don't include nor . (_ZGVbN4vv_powf): Removed. * sysdeps/x86_64/fpu/multiarch/svml_d_powf8_core.S: Renamed to ... * sysdeps/x86_64/fpu/multiarch/svml_d_powf8_core-sse.S: This. Don't include nor . (_ZGVdN8vv_powf): Removed. * sysdeps/x86_64/fpu/multiarch/svml_d_sincosf16_core.S: Renamed to ... * sysdeps/x86_64/fpu/multiarch/svml_d_sincosf16_core-avx2.S: This. Don't include nor . (_ZGVeN16vvv_sincosf): Removed. * sysdeps/x86_64/fpu/multiarch/svml_d_sincosf4_core.S: Renamed to ... * sysdeps/x86_64/fpu/multiarch/svml_d_sincosf4_core-sse2.S: This. Don't include nor . (_ZGVbN4vvv_sincosf): Removed. * sysdeps/x86_64/fpu/multiarch/svml_d_sincosf8_core.S: Renamed to ... * sysdeps/x86_64/fpu/multiarch/svml_d_sincosf8_core-sse.S: This. Don't include nor . (_ZGVdN8vvv_sincosf): Removed. * sysdeps/x86_64/fpu/multiarch/svml_d_sinf16_core.S: Renamed to ... * sysdeps/x86_64/fpu/multiarch/svml_d_sinf16_core-avx2.S: This. Don't include nor . (_ZGVeN16v_sinf): Removed. * sysdeps/x86_64/fpu/multiarch/svml_d_sinf4_core.S: Renamed to ... * sysdeps/x86_64/fpu/multiarch/svml_d_sinf4_core-sse2.S: This. Don't include nor . (_ZGVbN4v_sinf): Removed. * sysdeps/x86_64/fpu/multiarch/svml_d_sinf8_core.S: Renamed to ... * sysdeps/x86_64/fpu/multiarch/svml_d_sinf8_core-sse.S: This. Don't include nor . (_ZGVdN8v_sinf): Removed. 2017-08-04 H.J. Lu * sysdeps/x86_64/fpu/multiarch/Makefile (libm-sysdep_routines): Add s_ceil-sse4_1, s_ceilf-sse4_1, s_floor-sse4_1, s_floorf-sse4_1, s_nearbyint-sse4_1, s_nearbyintf-sse4_1, s_rint-sse4_1 and s_rintf-sse4_1. * sysdeps/x86_64/fpu/multiarch/ifunc-sse4_1.h: New file. * sysdeps/x86_64/fpu/multiarch/s_ceil.c: Likewise. * sysdeps/x86_64/fpu/multiarch/s_ceilf.c: Likewise. * sysdeps/x86_64/fpu/multiarch/s_floor.c: Likewise. * sysdeps/x86_64/fpu/multiarch/s_floorf.c: Likewise. * sysdeps/x86_64/fpu/multiarch/s_nearbyint.c: Likewise. * sysdeps/x86_64/fpu/multiarch/s_nearbyintf.c: Likewise. * sysdeps/x86_64/fpu/multiarch/s_rint.c: Likewise. * sysdeps/x86_64/fpu/multiarch/s_rintf.c: Likewise. * sysdeps/x86_64/fpu/multiarch/s_ceil.S: Renamed to ... * sysdeps/x86_64/fpu/multiarch/s_ceil-sse4_1.S: This. Don't include nor . Include . (__ceil): Removed. * sysdeps/x86_64/fpu/multiarch/s_ceilf.S: Renamed to ... * sysdeps/x86_64/fpu/multiarch/s_ceilf-sse4_1.S: This. Don't include nor . Include . (__ceilf): Removed. * sysdeps/x86_64/fpu/multiarch/s_floor.S: Renamed to ... * sysdeps/x86_64/fpu/multiarch/s_floor-sse4_1.S: This. Don't include nor . Include . (__floor): Removed. * sysdeps/x86_64/fpu/multiarch/s_floorf.S: Renamed to ... * sysdeps/x86_64/fpu/multiarch/s_floorf-sse4_1.S: This. Don't include nor . Include . (__floorf): Removed. * sysdeps/x86_64/fpu/multiarch/s_nearbyint.S: Renamed to ... * sysdeps/x86_64/fpu/multiarch/s_nearbyint-sse4_1.S: This. Don't include nor . Include . (__nearbyint): Removed. * sysdeps/x86_64/fpu/multiarch/s_nearbyintf.S: Renamed to ... * sysdeps/x86_64/fpu/multiarch/s_nearbyintf-sse4_1.S: This. Don't include nor . Include . (__nearbyintf): Removed. * sysdeps/x86_64/fpu/multiarch/s_rint.S: Renamed to ... * sysdeps/x86_64/fpu/multiarch/s_rint-sse4_1.S: This. Don't include nor . Include . (__rint): Removed. * sysdeps/x86_64/fpu/multiarch/s_rintf.S: Renamed to ... * sysdeps/x86_64/fpu/multiarch/s_rintf-sse4_1.S: This. Don't include nor . Include . (__rintf): Removed. 2017-08-04 H.J. Lu * sysdeps/i386/start.S (_start): Check Check PIC instead of SHARED. Avoid dynamic relocation against main in static PIE. 2017-08-04 H.J. Lu [BZ #21815] * elf/Makefile (CFLAGS-tst-prelink.c): New. (LDFLAGS-tst-prelink): Likewise. 2017-08-04 H.J. Lu * sysdeps/unix/sysv/linux/i386/sysdep.h (I386_USE_SYSENTER): Define to I386_USE_SYSENTER to 0 or 1 if not defined. (ENTER_KERNEL): Check if I386_USE_SYSENTER is 1 and check PIC. (INTERNAL_SYSCALL_MAIN_INLINE): Likewise. (INTERNAL_SYSCALL_NCS): Likewise. (LOADARGS_1): Likewise. (LOADARGS_5): Likewise. (RESTOREARGS_1): Likewise. (RESTOREARGS_5): Likewise. 2017-08-04 H.J. Lu * sysdeps/x86_64/memmove.S (MEMCPY_SYMBOL): Don't check SHARED. (MEMPCPY_SYMBOL): Likewise. * sysdeps/x86_64/multiarch/ifunc-impl-list.c (__libc_ifunc_impl_list): Test memcpy and mempcpy in libc.a. * sysdeps/x86_64/multiarch/memcpy-ssse3-back.S: Also include in libc.a. * sysdeps/x86_64/multiarch/memcpy-ssse3.S: Likewise. * sysdeps/x86_64/multiarch/memmove-avx512-no-vzeroupper.S: Likewise. * sysdeps/x86_64/multiarch/memcpy.c: Also include in libc.a. (__hidden_ver1): Don't use in libc.a. * sysdeps/x86_64/multiarch/memmove-sse2-unaligned-erms.S (__mempcpy): Don't create a weak alias in libc.a. * sysdeps/x86_64/multiarch/memmove-vec-unaligned-erms.S: Support libc.a. * sysdeps/x86_64/multiarch/mempcpy.c: Also include in libc.a. (__hidden_ver1): Don't use in libc.a. 2017-08-04 H.J. Lu * config.make.in (have-insert): New. * configure.ac (libc_cv_insert): New. Set to yes if linker supports INSERT in linker script. (AC_SUBST(libc_cv_insert): New. * configure: Regenerated. * sysdeps/x86_64/Makefile (tests): Add tst-split-dynreloc only if $(have-insert) == yes. 2017-08-04 H.J. Lu * elf/Makefile (tests): Add vismain only if $(have-protected-data) == yes. (tests-pie): Likewise. 2017-08-04 H.J. Lu [BZ #21871] * sysdeps/x86/cpu-features.c (init_cpu_features): Set bit_arch_Use_dl_runtime_resolve_opt only with AVX512F. 2017-08-04 H.J. Lu [BZ #21790] * sysdeps/i386/i586/memset.S (__memset_zero_constant_len_parameter): Removed. * sysdeps/i386/i686/memset.S (__memset_zero_constant_len_parameter): Likewise. * sysdeps/i386/i686/multiarch/memset_chk.S (__memset_zero_constant_len_parameter): Likewise. * sysdeps/x86_64/memset.S (__memset_zero_constant_len_parameter): Likewise. 2017-08-03 Aurelien Jarno * stdlib/getentropy.c (getentropy): Change return type to int. 2017-08-03 Aurelien Jarno * sysdeps/i386/i686/fpu/multiarch/libm-test-ulps: Regenerated. 2017-08-03 Joseph Myers * math/s_nextafter.c (__nextafter): Use uintN_t instead of u_intN_t. * math/s_nexttowardf.c (__nexttowardf): Likewise. * sysdeps/generic/math_private.h (ieee_double_shape_type): Likewise. (ieee_float_shape_type): Likewise. * sysdeps/i386/fpu/s_fpclassifyl.c (__fpclassifyl): Likewise. * sysdeps/i386/fpu/s_isnanl.c (__isnanl): Likewise. * sysdeps/i386/fpu/s_nextafterl.c (__nextafterl): Likewise. * sysdeps/i386/fpu/s_nexttoward.c (__nexttoward): Likewise. * sysdeps/i386/fpu/s_nexttowardf.c (__nexttowardf): Likewise. * sysdeps/ieee754/dbl-64/e_acosh.c (__ieee754_acosh): Likewise. * sysdeps/ieee754/dbl-64/e_cosh.c (__ieee754_cosh): Likewise. * sysdeps/ieee754/dbl-64/e_fmod.c (__ieee754_fmod): Likewise. * sysdeps/ieee754/dbl-64/e_gamma_r.c (__ieee754_gamma_r): Likewise. * sysdeps/ieee754/dbl-64/e_hypot.c (__ieee754_hypot): Likewise. * sysdeps/ieee754/dbl-64/e_jn.c (__ieee754_jn): Likewise. (__ieee754_yn): Likewise. * sysdeps/ieee754/dbl-64/e_log10.c (__ieee754_log10): Likewise. * sysdeps/ieee754/dbl-64/e_log2.c (__ieee754_log2): Likewise. * sysdeps/ieee754/dbl-64/e_rem_pio2.c (__ieee754_rem_pio2): Likewise. * sysdeps/ieee754/dbl-64/e_sinh.c (__ieee754_sinh): Likewise. * sysdeps/ieee754/dbl-64/s_ceil.c (__ceil): Likewise. * sysdeps/ieee754/dbl-64/s_copysign.c (__copysign): Likewise. * sysdeps/ieee754/dbl-64/s_erf.c (__erf): Likewise. (__erfc): Likewise. * sysdeps/ieee754/dbl-64/s_expm1.c (__expm1): Likewise. * sysdeps/ieee754/dbl-64/s_finite.c (FINITE): Likewise. * sysdeps/ieee754/dbl-64/s_floor.c (__floor): Likewise. * sysdeps/ieee754/dbl-64/s_fpclassify.c (__fpclassify): Likewise. * sysdeps/ieee754/dbl-64/s_isnan.c (__isnan): Likewise. * sysdeps/ieee754/dbl-64/s_issignaling.c (__issignaling): Likewise. * sysdeps/ieee754/dbl-64/s_llrint.c (__llrint): Likewise. * sysdeps/ieee754/dbl-64/s_llround.c (__llround): Likewise. * sysdeps/ieee754/dbl-64/s_lrint.c (__lrint): Likewise. * sysdeps/ieee754/dbl-64/s_lround.c (__lround): Likewise. * sysdeps/ieee754/dbl-64/s_modf.c (__modf): Likewise. * sysdeps/ieee754/dbl-64/s_nextup.c (__nextup): Likewise. * sysdeps/ieee754/dbl-64/s_remquo.c (__remquo): Likewise. * sysdeps/ieee754/dbl-64/s_round.c (__round): Likewise. * sysdeps/ieee754/dbl-64/s_trunc.c (__trunc): Likewise. * sysdeps/ieee754/dbl-64/wordsize-64/s_issignaling.c (__issignaling): Likewise. * sysdeps/ieee754/flt-32/e_atan2f.c (__ieee754_atan2f): Likewise. * sysdeps/ieee754/flt-32/e_fmodf.c (__ieee754_fmodf): Likewise. * sysdeps/ieee754/flt-32/e_gammaf_r.c (__ieee754_gammaf_r): Likewise. * sysdeps/ieee754/flt-32/e_jnf.c (__ieee754_ynf): Likewise. * sysdeps/ieee754/flt-32/e_log10f.c (__ieee754_log10f): Likewise. * sysdeps/ieee754/flt-32/e_powf.c (__ieee754_powf): Likewise. * sysdeps/ieee754/flt-32/e_rem_pio2f.c (__ieee754_rem_pio2f): Likewise. * sysdeps/ieee754/flt-32/e_remainderf.c (__ieee754_remainderf): Likewise. * sysdeps/ieee754/flt-32/e_sqrtf.c (__ieee754_sqrtf): Likewise. * sysdeps/ieee754/flt-32/s_ceilf.c (__ceilf): Likewise. * sysdeps/ieee754/flt-32/s_copysignf.c (__copysignf): Likewise. * sysdeps/ieee754/flt-32/s_erff.c (__erff): Likewise. (__erfcf): Likewise. * sysdeps/ieee754/flt-32/s_expm1f.c (__expm1f): Likewise. * sysdeps/ieee754/flt-32/s_finitef.c (FINITEF): Likewise. * sysdeps/ieee754/flt-32/s_floorf.c (__floorf): Likewise. * sysdeps/ieee754/flt-32/s_fpclassifyf.c (__fpclassifyf): Likewise. * sysdeps/ieee754/flt-32/s_isnanf.c (__isnanf): Likewise. * sysdeps/ieee754/flt-32/s_issignalingf.c (__issignalingf): Likewise. * sysdeps/ieee754/flt-32/s_llrintf.c (__llrintf): Likewise. * sysdeps/ieee754/flt-32/s_llroundf.c (__llroundf): Likewise. * sysdeps/ieee754/flt-32/s_lrintf.c (__lrintf): Likewise. * sysdeps/ieee754/flt-32/s_lroundf.c (__lroundf): Likewise. * sysdeps/ieee754/flt-32/s_modff.c (__modff): Likewise. * sysdeps/ieee754/flt-32/s_remquof.c (__remquof): Likewise. * sysdeps/ieee754/flt-32/s_roundf.c (__roundf): Likewise. * sysdeps/ieee754/ldbl-128/e_acoshl.c (__ieee754_acoshl): Likewise. * sysdeps/ieee754/ldbl-128/e_atan2l.c (__ieee754_atan2l): Likewise. * sysdeps/ieee754/ldbl-128/e_atanhl.c (__ieee754_atanhl): Likewise. * sysdeps/ieee754/ldbl-128/e_fmodl.c (__ieee754_fmodl): Likewise. * sysdeps/ieee754/ldbl-128/e_gammal_r.c (__ieee754_gammal_r): Likewise. * sysdeps/ieee754/ldbl-128/e_hypotl.c (__ieee754_hypotl): Likewise. * sysdeps/ieee754/ldbl-128/e_jnl.c (__ieee754_jnl): Likewise. (__ieee754_ynl): Likewise. * sysdeps/ieee754/ldbl-128/e_powl.c (__ieee754_powl): Likewise. * sysdeps/ieee754/ldbl-128/e_rem_pio2l.c (__ieee754_rem_pio2l): Likewise. * sysdeps/ieee754/ldbl-128/e_remainderl.c (__ieee754_remainderl): Likewise. * sysdeps/ieee754/ldbl-128/e_sinhl.c (__ieee754_sinhl): Likewise. * sysdeps/ieee754/ldbl-128/k_cosl.c (__kernel_cosl): Likewise. * sysdeps/ieee754/ldbl-128/k_sincosl.c (__kernel_sincosl): Likewise. * sysdeps/ieee754/ldbl-128/k_sinl.c (__kernel_sinl): Likewise. * sysdeps/ieee754/ldbl-128/s_ceill.c (__ceill): Likewise. * sysdeps/ieee754/ldbl-128/s_copysignl.c (__copysignl): Likewise. * sysdeps/ieee754/ldbl-128/s_erfl.c (__erfcl): Likewise. * sysdeps/ieee754/ldbl-128/s_fabsl.c (__fabsl): Likewise. * sysdeps/ieee754/ldbl-128/s_finitel.c (__finitel): Likewise. * sysdeps/ieee754/ldbl-128/s_floorl.c (__floorl): Likewise. * sysdeps/ieee754/ldbl-128/s_fpclassifyl.c (__fpclassifyl): Likewise. * sysdeps/ieee754/ldbl-128/s_frexpl.c (__frexpl): Likewise. * sysdeps/ieee754/ldbl-128/s_isnanl.c (__isnanl): Likewise. * sysdeps/ieee754/ldbl-128/s_issignalingl.c (__issignalingl): Likewise. * sysdeps/ieee754/ldbl-128/s_llrintl.c (__llrintl): Likewise. * sysdeps/ieee754/ldbl-128/s_llroundl.c (__llroundl): Likewise. * sysdeps/ieee754/ldbl-128/s_lrintl.c (__lrintl): Likewise. * sysdeps/ieee754/ldbl-128/s_lroundl.c (__lroundl): Likewise. * sysdeps/ieee754/ldbl-128/s_modfl.c (__modfl): Likewise. * sysdeps/ieee754/ldbl-128/s_nearbyintl.c (__nearbyintl): Likewise. * sysdeps/ieee754/ldbl-128/s_nextafterl.c (__nextafterl): Likewise. * sysdeps/ieee754/ldbl-128/s_nexttoward.c (__nexttoward): Likewise. * sysdeps/ieee754/ldbl-128/s_nexttowardf.c (__nexttowardf): Likewise. * sysdeps/ieee754/ldbl-128/s_nextupl.c (__nextupl): Likewise. * sysdeps/ieee754/ldbl-128/s_remquol.c (__remquol): Likewise. * sysdeps/ieee754/ldbl-128/s_rintl.c (__rintl): Likewise. * sysdeps/ieee754/ldbl-128/s_roundl.c (__roundl): Likewise. * sysdeps/ieee754/ldbl-128/s_tanhl.c (__tanhl): Likewise. * sysdeps/ieee754/ldbl-128/s_truncl.c (__truncl): Likewise. * sysdeps/ieee754/ldbl-128ibm/e_fmodl.c (__ieee754_fmodl): Likewise. * sysdeps/ieee754/ldbl-128ibm/e_gammal_r.c (__ieee754_gammal_r): Likewise. * sysdeps/ieee754/ldbl-128ibm/e_powl.c (__ieee754_powl): Likewise. * sysdeps/ieee754/ldbl-128ibm/e_rem_pio2l.c (__ieee754_rem_pio2l): Likewise. * sysdeps/ieee754/ldbl-128ibm/e_remainderl.c (__ieee754_remainderl): Likewise. * sysdeps/ieee754/ldbl-128ibm/k_cosl.c (__kernel_cosl): Likewise. * sysdeps/ieee754/ldbl-128ibm/k_sinl.c (__kernel_sinl): Likewise. * sysdeps/ieee754/ldbl-128ibm/s_fabsl.c (__fabsl): Likewise. * sysdeps/ieee754/ldbl-128ibm/s_fpclassifyl.c (___fpclassifyl): Likewise. * sysdeps/ieee754/ldbl-128ibm/s_modfl.c (__modfl): Likewise. * sysdeps/ieee754/ldbl-128ibm/s_nexttowardf.c (__nexttowardf): Likewise. * sysdeps/ieee754/ldbl-128ibm/s_remquol.c (__remquol): Likewise. * sysdeps/ieee754/ldbl-96/e_acoshl.c (__ieee754_acoshl): Likewise. * sysdeps/ieee754/ldbl-96/e_asinl.c (__ieee754_asinl): Likewise. * sysdeps/ieee754/ldbl-96/e_atanhl.c (__ieee754_atanhl): Likewise. * sysdeps/ieee754/ldbl-96/e_coshl.c (__ieee754_coshl): Likewise. * sysdeps/ieee754/ldbl-96/e_gammal_r.c (__ieee754_gammal_r): Likewise. * sysdeps/ieee754/ldbl-96/e_hypotl.c (__ieee754_hypotl): Likewise. * sysdeps/ieee754/ldbl-96/e_j0l.c (__ieee754_j0l): Likewise. (__ieee754_y0l): Likewise. (pzero): Likewise. (qzero): Likewise. * sysdeps/ieee754/ldbl-96/e_j1l.c (__ieee754_j1l): Likewise. (__ieee754_y1l): Likewise. (pone): Likewise. (qone): Likewise. * sysdeps/ieee754/ldbl-96/e_jnl.c (__ieee754_jnl): Likewise. (__ieee754_ynl): Likewise. * sysdeps/ieee754/ldbl-96/e_lgammal_r.c (sin_pi): Likewise. (__ieee754_lgammal_r): Likewise. * sysdeps/ieee754/ldbl-96/e_rem_pio2l.c (__ieee754_rem_pio2l): Likewise. * sysdeps/ieee754/ldbl-96/e_sinhl.c (__ieee754_sinhl): Likewise. * sysdeps/ieee754/ldbl-96/s_copysignl.c (__copysignl): Likewise. * sysdeps/ieee754/ldbl-96/s_erfl.c (__erfl): Likewise. (__erfcl): Likewise. * sysdeps/ieee754/ldbl-96/s_frexpl.c (__frexpl): Likewise. * sysdeps/ieee754/ldbl-96/s_issignalingl.c (__issignalingl): Likewise. * sysdeps/ieee754/ldbl-96/s_llrintl.c (__llrintl): Likewise. * sysdeps/ieee754/ldbl-96/s_llroundl.c (__llroundl): Likewise. * sysdeps/ieee754/ldbl-96/s_lrintl.c (__lrintl): Likewise. * sysdeps/ieee754/ldbl-96/s_lroundl.c (__lroundl): Likewise. * sysdeps/ieee754/ldbl-96/s_modfl.c (__modfl): Likewise. * sysdeps/ieee754/ldbl-96/s_nexttoward.c (__nexttoward): Likewise. * sysdeps/ieee754/ldbl-96/s_nexttowardf.c (__nexttowardf): Likewise. * sysdeps/ieee754/ldbl-96/s_nextupl.c (__nextupl): Likewise. * sysdeps/ieee754/ldbl-96/s_remquol.c (__remquol): Likewise. * sysdeps/ieee754/ldbl-96/s_roundl.c (__roundl): Likewise. * sysdeps/ieee754/ldbl-96/s_tanhl.c (__tanhl): Likewise. * sysdeps/ieee754/ldbl-opt/s_nexttowardfd.c (__nldbl_nexttowardf): Likewise. * sysdeps/m68k/m680x0/fpu/e_pow.c (s(__ieee754_pow)): Likewise. * sysdeps/m68k/m680x0/fpu/s_fpclassifyl.c (__fpclassifyl): Likewise. * sysdeps/m68k/m680x0/fpu/s_llrint.c (__llrint): Likewise. * sysdeps/m68k/m680x0/fpu/s_llrintf.c (__llrintf): Likewise. * sysdeps/m68k/m680x0/fpu/s_llrintl.c (__llrintl): Likewise. * sysdeps/m68k/m680x0/fpu/s_nextafterl.c (__nextafterl): Likewise. * sysdeps/x86/fpu/powl_helper.c (__powl_helper): Likewise. 2017-08-03 Florian Weimer [BZ #21885] * sysdeps/posix/getaddrinfo.c (gethosts): Release resolver context on memory allocation failure. 2017-08-03 Alan Modra * sysdeps/powerpc/mod-tlsopt-powerpc.c: Extract from tst-tlsopt-powerpc.c with function name change and no test harness. * sysdeps/powerpc/tst-tlsopt-powerpc.c: Remove body of test. Call tls_get_addr_opt_test. * sysdeps/powerpc/Makefile (LDFLAGS-tst-tlsopt-powerpc): Don't define. (modules-names): Add mod-tlsopt-powerpc. (mod-tlsopt-powerpc.so-no-z-defs): Define. (tst-tlsopt-powerpc): Depend on .so. * sysdeps/powerpc/powerpc64/tls-macros.h (__TLS_GET_ADDR): Don't define. Expand use in TLS_GD and TLS_LD. 2017-08-02 Samuel Thibault * sysdeps/mach/hurd/enbl-secure.c (__libc_init_secure): Define function. * sysdeps/posix/shm_open.c: Include . 2017-08-02 Joseph Myers [BZ #21686] * math/tgmath.h (__TGMATH_BINARY_REAL_ONLY): Add arguments before comparing size with that of double. (__TGMATH_BINARY_REAL_STD_ONLY): Likewise. (__TGMATH_BINARY_REAL_RET_ONLY): Likewise. (__TGMATH_TERNARY_FIRST_SECOND_REAL_ONLY): Likewise. (__TGMATH_TERNARY_REAL_ONLY): Likewise. (__TGMATH_BINARY_REAL_IMAG): Likewise. * math/gen-tgmath-tests.py (Type.init_types): Create __int128 and unsigned __int128 types. 2017-08-02 Steve Ellcey * localedata/Makefile (CFLAGS-tst_iswalnum.c, CFLAGS-tst_iswalpha.c CFLAGS-tst_iswcntrl.c, CFLAGS-tst_iswdigit.c, CFLAGS-tst_iswgraph.c, CFLAGS-tst_iswlower.c, CFLAGS-tst_iswprint.c, CFLAGS-tst_iswpunct.c, CFLAGS-tst_iswspace.c, CFLAGS-tst_iswupper.c, CFLAGS-tst_iswxdigit.c, CFLAGS-tst_towlower.c, CFLAGS-tst_towupper.c): Remove. 2017-08-02 H.J. Lu * sysdeps/x86_64/start.S (_start): Check PIC instead of SHARED. 2017-08-02 H.J. Lu * sysdeps/i386/i686/multiarch/memcmp-sse4.S: Check PIC instead of SHARED. * sysdeps/i386/i686/multiarch/memcpy-sse2-unaligned.S: Likewise. * sysdeps/i386/i686/multiarch/memcpy-ssse3-rep.S: Likewise. * sysdeps/i386/i686/multiarch/memcpy-ssse3.S: Likewise. * sysdeps/i386/i686/multiarch/memset-sse2-rep.S: Likewise. * sysdeps/i386/i686/multiarch/memset-sse2.S: Likewise. * sysdeps/i386/i686/multiarch/strcat-sse2.S: Likewise. * sysdeps/i386/i686/multiarch/strcpy-sse2.S: Likewise. 2017-08-02 Joseph Myers [BZ #21685] * math/tgmath.h (__tgmath_real_type): Use unary + on potentially bit-field expressions passed to sizeof or typeof. [__HAVE_FLOAT128 && __GLIBC_USE (IEC_60559_TYPES_EXT)] (__TGMATH_F128): Likewise. [__HAVE_FLOAT128 && __GLIBC_USE (IEC_60559_TYPES_EXT)] (__TGMATH_CF128): Likewise. (__TGMATH_UNARY_REAL_ONLY): Likewise. (__TGMATH_UNARY_REAL_RET_ONLY): Likewise. (__TGMATH_BINARY_FIRST_REAL_ONLY): Likewise. (__TGMATH_BINARY_FIRST_REAL_STD_ONLY): Likewise. (__TGMATH_BINARY_REAL_ONLY): Likewise. (__TGMATH_BINARY_REAL_STD_ONLY): Likewise. (__TGMATH_BINARY_REAL_RET_ONLY): Likewise. (__TGMATH_TERNARY_FIRST_SECOND_REAL_ONLY): Likewise. (__TGMATH_TERNARY_REAL_ONLY): Likewise. (__TGMATH_TERNARY_FIRST_REAL_RET_ONLY): Likewise. (__TGMATH_UNARY_REAL_IMAG): Likewise. (__TGMATH_UNARY_IMAG): Likewise. (__TGMATH_UNARY_REAL_IMAG_RET_REAL): Likewise. (__TGMATH_BINARY_REAL_IMAG): Likewise. * math/gen-tgmath-tests.py (Type.init_types): Create bit_field type. (define_vars_for_type): Handle bit_field type specially. (Tests.__init__): Declare structure with bit-field element. 2017-08-02 H.J. Lu [BZ #21791] * sysdeps/i386/i686/multiarch/memcpy-sse2-unaligned.S (MEMCPY_CHK): Define only if SHARED is defined. * sysdeps/i386/i686/multiarch/memcpy-ssse3-rep.S (MEMCPY_CHK): Likewise. * sysdeps/i386/i686/multiarch/memcpy-ssse3.S (MEMCPY_CHK): Likewise. See ChangeLog.18 for earlier changes.