From 2e4e75727eb05eef4c10470d865bd42962d5fae7 Mon Sep 17 00:00:00 2001 From: Florian Weimer Date: Fri, 11 Oct 2019 22:42:32 +0200 Subject: Move ChangeLog to ChangeLog.old/ChangeLog.19 We no longer maintain a manually-written ChangeLog file: Instead the release manager is expected to generate a ChangeLog-like file using scripts/gitlog_to_changelog.py. For further details, see commit f2144b7874b23be7c7eb184ec601633ec6fa8fac ("Script to generate ChangeLog-like output from git log"). Reviewed-by: Carlos O'Donell --- ChangeLog.old/ChangeLog.19 | 39253 +++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 39253 insertions(+) create mode 100644 ChangeLog.old/ChangeLog.19 (limited to 'ChangeLog.old') diff --git a/ChangeLog.old/ChangeLog.19 b/ChangeLog.old/ChangeLog.19 new file mode 100644 index 0000000000..be1ab6469e --- /dev/null +++ b/ChangeLog.old/ChangeLog.19 @@ -0,0 +1,39253 @@ +2019-10-11 Florian Weimer + + * manual/startup.texi (Aborting a Program): Remove warning. + +2019-10-10 Adhemerval Zanella + + [BZ #18231] + * sysdeps/unix/sysv/linux/Makefile (sysdep_headers): Add + bits/ipc-perm.h. + * sysdeps/unix/sysv/linux/aarch64/bits/ipc.h: Remove file. + * sysdeps/unix/sysv/linux/alpha/bits/ipc.h: Likewise. + * sysdeps/unix/sysv/linux/hppa/bits/ipc.h: Likewise. + * sysdeps/unix/sysv/linux/ia64/bits/ipc.h: Likewise. + * sysdeps/unix/sysv/linux/mips/bits/ipc.h: Likewise. + * sysdeps/unix/sysv/linux/powerpc/bits/ipc.h: Likewise. + * sysdeps/unix/sysv/linux/s390/bits/ipc.h: Likewise. + * sysdeps/unix/sysv/linux/sparc/bits/ipc.h: Likewise. + * sysdeps/unix/sysv/linux/arm/kernel-features.h + [__BYTE_ORDER == __BIG_ENDIAN] (__ASSUME_SYSVIPC_BROKEN_MODE_T): + Define. + * sysdeps/sysv/linux/microblaze/kernel-features.h: Likewise. + * sysdeps/unix/sysv/linux/s390/kernel-features.h + [!__s390x__] (__ASSUME_SYSVIPC_BROKEN_MODE_T): Define. + * sysdeps/unix/sysv/linux/sh/kernel-features.h + (__ASSUME_SYSVIPC_BROKEN_MODE_T): Define. + * sysdeps/unix/sysv/linux/m68k/kernel-features.h: Likewise. + * sysdeps/unix/sysv/linux/bits/ipc-perm.h: New file. + * sysdeps/unix/sysv/linux/powerpc/bits/ipc-perm.h: Likewise. + * sysdeps/unix/sysv/linux/sparc/bits/ipc-perm.h: Likewise. + * sysdeps/unix/sysv/linux/bits/ipc.h (ipc_perm): Move to + bits/ipc-perm.h. + * sysdeps/unix/sysv/linux/hppa/bits/ipc-perm.h: New file. + * sysdeps/unix/sysv/linux/kernel-features.h: Add comment about + __ASSUME_SYSVIPC_BROKEN_MODE_T semantic. + * sysdeps/unix/sysv/linux/msgctl.c (DEFAULT_VERSION): Define as + 2.31 if __ASSUME_SYSVIPC_BROKEN_MODE_T is defined. + (msgctl_syscall, __msgctl_mode16): New symbol. + (__new_msgctl): Add bits for __ASSUME_SYSVIPC_BROKEN_MODE_T. + * sysdeps/unix/sysv/linux/semctl.c: Likewise. + * sysdeps/unix/sysv/linux/shmctl.c: Likewise. + * sysdeps/unix/sysv/linux/arm/be/libc.abilist (GLIBC_2.31): Add + msgctl, semctl, and shmctl. + * sysdeps/sysv/linux/microblaze/be/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/s390/s390-32/libc.abilist: Likewise. + * sysdeps/unix/sysv/linux/sh/be/libc.abilist: Likewise. + * conform/data/sys/ipc.h-data: Only xfail {struct ipc_perm} mode_t + mode for Hurd. + * sysdeps/unix/sysv/linux/m68k/Versions (libc) [GLIBC_2.31]: Add + msgctl, semctl, and shmctl. + * sysdeps/unix/sysv/linux/arm/be/Versions: New file. + * sysdeps/unix/sysv/linux/microblaze/be/Versions: Likewise. + * sysdeps/unix/sysv/linux/sh/be/Versions: Likewise. + +2019-10-10 Andreas Schwab + + * elf/dl-load.c (open_verify): Remove dead code. + +2019-10-10 Dmitry V. Levin + + * sysdeps/unix/sysv/linux/syscall-names.list: Fix typos in comment, + reformat the affected paragraph. + +2019-10-10 Łukasz Majewski + + * include/time.h (__clock_settime64): + Add __clock_settime alias according to __TIMESIZE define + * sysdeps/unix/sysv/linux/clock_settime.c (__clock_settime): + Refactor this function to be used only on 32 bit machines as a + wrapper on __clock_settime64. + * sysdeps/unix/sysv/linux/clock_settime.c (__clock_settime64): Add + * sysdeps/unix/sysv/linux/clock_settime.c (__clock_settime64): + Use clock_settime64 kernel syscall (available from 5.1+ Linux) + +2019-10-09 Adhemerval Zanella + + * include/spawn.h (__posix_spawn_file_actions_addopen): New + prototype. + * posix/spawn_faction_addopen.c (posix_spawn_file_actions_addopen): + Add internal alias. + * posix/wordexp.c (create_environment, free_environment): New + functions. + (exec_comm_child, exec_comm): Use posix_spawn instead of fork+exec. + * posix/wordexp-test.c: Use libsupport. + + * sysdeps/unix/sysv/linux/mips/mips64/getdents64.c (__getdents64): + Add small optimization for older kernel to avoid issuing + __NR_getdents64 on each call and replace scratch_buffer usage with + a static allocated buffer. + +2019-10-09 Florian Weimer + + * config.h.in (HAVE_GCC_GOTDATA): Remove. + * sysdeps/sparc/configure.ac: Remove checks for HAVE_GCC_GOTDATA + and PI_STATIC_AND_HIDDEN. Always define PI_STATIC_AND_HIDDEN. + * sysdeps/sparc/configure: Regenerate. + +2019-10-09 Petr Vorel + + * include/dirent.h (__getdents64): Update comment. + +2019-10-08 Gabriel F. T. Gomes + + * Makefile: Fix locale dependency for a couple of tests. + ($(objpfx)tst-strftime2.out): New rule. + ($(objpfx)tst-strftime3.out): Likewise. + +2019-10-08 Florian Weimer + + * posix/tst-wordexp-nocmd.c (do_test): Fix diagnostics output. + +2019-10-08 Florian Weimer + + * posix/Makefile (tests): Add tst-wordexp-nocmd. + * posix/wordexp-test.c (__app_register_atfork): Remove function. + (registered_forks): Remove variable. + (register_fork): Remove function. + (test_case): Remove WRDE_NOCMD tests. + (main): Do not set up fork tracking. Remove integer overflow in + division tests. + (testit): Do not check for unexpected forks. + * posix/tst-wordexp-nocmd.c: New file containing the tests removed + from posix/wordexp-test.c. + +2019-10-07 Florian Weimer + + nptl: Move pthread_attr_setschedparam implementation into libc. + * nptl/Makefile (routines): Add pthread_attr_setschedparam. + (libpthread-routines): Remove pthread_attr_setschedparam. + * nptl/Versions (libpthread GLIBC_2.0): Remove + pthread_attr_setschedparam. + * nptl/forward.c (pthread_attr_setschedparam): Remove definition. + * nptl/nptl-init.c (pthread_functions): Remove initializer for + ptr_pthread_attr_setschedparam. + * sysdeps/nptl/pthread-functions.h (struct pthread_functions): + Remove ptr_pthread_attr_setschedparam member. + * sysdeps/unix/sysv/linux/aarch64/libpthread.abilist (GLIBC_2.17): + Remove pthread_attr_setschedparam. + * sysdeps/unix/sysv/linux/alpha/libpthread.abilist (GLIBC_2.0): + Likewise. + * sysdeps/unix/sysv/linux/arm/be/libpthread.abilist (GLIBC_2.4): + Likewise. + * sysdeps/unix/sysv/linux/arm/le/libpthread.abilist (GLIBC_2.4): + Likewise. + * sysdeps/unix/sysv/linux/csky/libpthread.abilist (GLIBC_2.29): + Likewise. + * sysdeps/unix/sysv/linux/hppa/libpthread.abilist (GLIBC_2.2): + Likewise. + * sysdeps/unix/sysv/linux/i386/libpthread.abilist (GLIBC_2.0): + Likewise. + * sysdeps/unix/sysv/linux/ia64/libpthread.abilist (GLIBC_2.2): + Likewise. + * sysdeps/unix/sysv/linux/m68k/coldfire/libpthread.abilist + (GLIBC_2.4): Likewise. + * sysdeps/unix/sysv/linux/m68k/m680x0/libpthread.abilist + (GLIBC_2.0): Likewise. + * sysdeps/unix/sysv/linux/microblaze/be/libpthread.abilist + (GLIBC_2.18): Likewise. + * sysdeps/unix/sysv/linux/microblaze/le/libpthread.abilist + (GLIBC_2.18): Likewise. + * sysdeps/unix/sysv/linux/mips/mips32/libpthread.abilist + (GLIBC_2.0): Likewise. + * sysdeps/unix/sysv/linux/mips/mips64/libpthread.abilist + (GLIBC_2.0): Likewise. + * sysdeps/unix/sysv/linux/nios2/libpthread.abilist (GLIBC_2.21): + Likewise. + * sysdeps/unix/sysv/linux/powerpc/powerpc32/libpthread.abilist + (GLIBC_2.0): Likewise. + * sysdeps/unix/sysv/linux/powerpc/powerpc64/be/libpthread.abilist + (GLIBC_2.3): Likewise. + * sysdeps/unix/sysv/linux/powerpc/powerpc64/le/libpthread.abilist + (GLIBC_2.17): Likewise. + * sysdeps/unix/sysv/linux/riscv/rv64/libpthread.abilist + (GLIBC_2.27): Likewise. + * sysdeps/unix/sysv/linux/s390/s390-32/libpthread.abilist + (GLIBC_2.0): Likewise. + * sysdeps/unix/sysv/linux/s390/s390-64/libpthread.abilist + (GLIBC_2.2): Likewise. + * sysdeps/unix/sysv/linux/sh/be/libpthread.abilist (GLIBC_2.2): + Likewise. + * sysdeps/unix/sysv/linux/sh/le/libpthread.abilist (GLIBC_2.2): + Likewise. + * sysdeps/unix/sysv/linux/sparc/sparc32/libpthread.abilist + (GLIBC_2.0): Likewise. + * sysdeps/unix/sysv/linux/sparc/sparc64/libpthread.abilist + (GLIBC_2.2): Likewise. + * sysdeps/unix/sysv/linux/x86_64/64/libpthread.abilist + (GLIBC_2.2.5): Likewise. + * sysdeps/unix/sysv/linux/x86_64/x32/libpthread.abilist + (GLIBC_2.16): Likewise. + +2019-10-07 Florian Weimer + + riscv: Remove support for variable page sizes. + * sysdeps/unix/sysv/linux/riscv/Makefile [$(subdir) == elf] + (sysdep_routines): Do not add dl-static. + * sysdeps/unix/sysv/linux/riscv/dl-static.c: Remove file. + * sysdeps/unix/sysv/linux/riscv/ldsodefs.h: Likewise. + +2019-10-07 Florian Weimer + + nptl: Move pthread_attr_getschedparam implementation into libc. + * nptl/Makefile (routines): Add pthread_attr_getschedparam. + (libpthread-routines): Remove pthread_attr_getschedparam. + * nptl/Versions (libpthread GLIBC_2.0): Remove + pthread_attr_getschedparam. + * nptl/forward.c (pthread_attr_getschedparam): Remove definition. + * nptl/nptl-init.c (pthread_functions): Remove initializer for + ptr_pthread_attr_getschedparam. + * sysdeps/nptl/pthread-functions.h (struct pthread_functions): + Remove ptr_pthread_attr_getschedparam member. + * sysdeps/unix/sysv/linux/aarch64/libpthread.abilist (GLIBC_2.17): + Remove pthread_attr_getschedparam. + * sysdeps/unix/sysv/linux/alpha/libpthread.abilist (GLIBC_2.0): + Likewise. + * sysdeps/unix/sysv/linux/arm/be/libpthread.abilist (GLIBC_2.4): + Likewise. + * sysdeps/unix/sysv/linux/arm/le/libpthread.abilist (GLIBC_2.4): + Likewise. + * sysdeps/unix/sysv/linux/csky/libpthread.abilist (GLIBC_2.29): + Likewise. + * sysdeps/unix/sysv/linux/hppa/libpthread.abilist (GLIBC_2.2): + Likewise. + * sysdeps/unix/sysv/linux/i386/libpthread.abilist (GLIBC_2.0): + Likewise. + * sysdeps/unix/sysv/linux/ia64/libpthread.abilist (GLIBC_2.2): + Likewise. + * sysdeps/unix/sysv/linux/m68k/coldfire/libpthread.abilist + (GLIBC_2.4): Likewise. + * sysdeps/unix/sysv/linux/m68k/m680x0/libpthread.abilist + (GLIBC_2.0): Likewise. + * sysdeps/unix/sysv/linux/microblaze/be/libpthread.abilist + (GLIBC_2.18): Likewise. + * sysdeps/unix/sysv/linux/microblaze/le/libpthread.abilist + (GLIBC_2.18): Likewise. + * sysdeps/unix/sysv/linux/mips/mips32/libpthread.abilist + (GLIBC_2.0): Likewise. + * sysdeps/unix/sysv/linux/mips/mips64/libpthread.abilist + (GLIBC_2.0): Likewise. + * sysdeps/unix/sysv/linux/nios2/libpthread.abilist (GLIBC_2.21): + Likewise. + * sysdeps/unix/sysv/linux/powerpc/powerpc32/libpthread.abilist + (GLIBC_2.0): Likewise. + * sysdeps/unix/sysv/linux/powerpc/powerpc64/be/libpthread.abilist + (GLIBC_2.3): Likewise. + * sysdeps/unix/sysv/linux/powerpc/powerpc64/le/libpthread.abilist + (GLIBC_2.17): Likewise. + * sysdeps/unix/sysv/linux/riscv/rv64/libpthread.abilist + (GLIBC_2.27): Likewise. + * sysdeps/unix/sysv/linux/s390/s390-32/libpthread.abilist + (GLIBC_2.0): Likewise. + * sysdeps/unix/sysv/linux/s390/s390-64/libpthread.abilist + (GLIBC_2.2): Likewise. + * sysdeps/unix/sysv/linux/sh/be/libpthread.abilist (GLIBC_2.2): + Likewise. + * sysdeps/unix/sysv/linux/sh/le/libpthread.abilist (GLIBC_2.2): + Likewise. + * sysdeps/unix/sysv/linux/sparc/sparc32/libpthread.abilist + (GLIBC_2.0): Likewise. + * sysdeps/unix/sysv/linux/sparc/sparc64/libpthread.abilist + (GLIBC_2.2): Likewise. + * sysdeps/unix/sysv/linux/x86_64/64/libpthread.abilist + (GLIBC_2.2.5): Likewise. + * sysdeps/unix/sysv/linux/x86_64/x32/libpthread.abilist + (GLIBC_2.16): Likewise. + +2019-10-04 Florian Weimer + + [BZ #24930] + * elf/dl-load.c (_dl_map_object_from_fd): Only assign TLS modid if + the link map will be returned to the caller. + * elf/Makefile [$(have-fpie) && $(build-shared)] (tests, tests-pie): + Add tst-dlopen-aout-pie. + (tst-tst-dlopen-aout-no-pie): Set. + (CFLAGS-tst-dlopen-aout-pie.c): Build with -fpie. + (tst-dlopen-aout-pie): Link with -ldl -lpthread. + * elf/tst-dlopen-aout-pie.c: New file. + +2019-10-04 Florian Weimer + + [BZ #24900] + * elf/dl-load.c (_dl_map_object_from_fd): Do not use the file ID + when loading the executable as part of an explicit loader + invocation. + +2019-10-04 Florian Weimer + + nptl: Move pthread_attr_setinheritsched implementation into libc. + * nptl/Makefile (routines): Add pthread_attr_setinheritsched. + (libpthread-routines): Remove pthread_attr_setinheritsched. + * nptl/Versions (libpthread GLIBC_2.0): Remove + pthread_attr_setinheritsched. + * nptl/forward.c (pthread_attr_setinheritsched): Remove definition. + * nptl/nptl-init.c (pthread_functions): Remove initializer for + ptr_pthread_attr_setinheritsched. + * sysdeps/nptl/pthread-functions.h (struct pthread_functions): + Remove ptr_pthread_attr_setinheritsched member. + * sysdeps/unix/sysv/linux/aarch64/libpthread.abilist (GLIBC_2.17): + Remove pthread_attr_setinheritsched. + * sysdeps/unix/sysv/linux/alpha/libpthread.abilist (GLIBC_2.0): + Likewise. + * sysdeps/unix/sysv/linux/arm/be/libpthread.abilist (GLIBC_2.4): + Likewise. + * sysdeps/unix/sysv/linux/arm/le/libpthread.abilist (GLIBC_2.4): + Likewise. + * sysdeps/unix/sysv/linux/csky/libpthread.abilist (GLIBC_2.29): + Likewise. + * sysdeps/unix/sysv/linux/hppa/libpthread.abilist (GLIBC_2.2): + Likewise. + * sysdeps/unix/sysv/linux/i386/libpthread.abilist (GLIBC_2.0): + Likewise. + * sysdeps/unix/sysv/linux/ia64/libpthread.abilist (GLIBC_2.2): + Likewise. + * sysdeps/unix/sysv/linux/m68k/coldfire/libpthread.abilist + (GLIBC_2.4): Likewise. + * sysdeps/unix/sysv/linux/m68k/m680x0/libpthread.abilist + (GLIBC_2.0): Likewise. + * sysdeps/unix/sysv/linux/microblaze/be/libpthread.abilist + (GLIBC_2.18): Likewise. + * sysdeps/unix/sysv/linux/microblaze/le/libpthread.abilist + (GLIBC_2.18): Likewise. + * sysdeps/unix/sysv/linux/mips/mips32/libpthread.abilist + (GLIBC_2.0): Likewise. + * sysdeps/unix/sysv/linux/mips/mips64/libpthread.abilist + (GLIBC_2.0): Likewise. + * sysdeps/unix/sysv/linux/nios2/libpthread.abilist (GLIBC_2.21): + Likewise. + * sysdeps/unix/sysv/linux/powerpc/powerpc32/libpthread.abilist + (GLIBC_2.0): Likewise. + * sysdeps/unix/sysv/linux/powerpc/powerpc64/be/libpthread.abilist + (GLIBC_2.3): Likewise. + * sysdeps/unix/sysv/linux/powerpc/powerpc64/le/libpthread.abilist + (GLIBC_2.17): Likewise. + * sysdeps/unix/sysv/linux/riscv/rv64/libpthread.abilist + (GLIBC_2.27): Likewise. + * sysdeps/unix/sysv/linux/s390/s390-32/libpthread.abilist + (GLIBC_2.0): Likewise. + * sysdeps/unix/sysv/linux/s390/s390-64/libpthread.abilist + (GLIBC_2.2): Likewise. + * sysdeps/unix/sysv/linux/sh/be/libpthread.abilist (GLIBC_2.2): + Likewise. + * sysdeps/unix/sysv/linux/sh/le/libpthread.abilist (GLIBC_2.2): + Likewise. + * sysdeps/unix/sysv/linux/sparc/sparc32/libpthread.abilist + (GLIBC_2.0): Likewise. + * sysdeps/unix/sysv/linux/sparc/sparc64/libpthread.abilist + (GLIBC_2.2): Likewise. + * sysdeps/unix/sysv/linux/x86_64/64/libpthread.abilist + (GLIBC_2.2.5): Likewise. + * sysdeps/unix/sysv/linux/x86_64/x32/libpthread.abilist + (GLIBC_2.16): Likewise. + +2019-10-02 Joseph Myers + + * sunrpc/clnt_udp.c: Include . + (clntudp_call): Disable -Wmaybe-uninitialized around declaration + of total_deadline. + +2019-10-02 Alistair Francis + + * string/endian.h: Restore the __USE_MISC conditionals. + +2019-10-02 Joseph Myers + + * string/tester.c: Ignore -Warray-bounds and + -Wmemset-transposed-args at top level. + [__GNUC_PREREQ (7, 0)]: Ignore -Wrestrict and -Wstringop-overflow= + at top level. + [__GNUC_PREREQ (8, 0)]: Ignore -Wstringop-truncation at top level. + (test_stpncpy): Do not ignore warnings here. + (test_strncat): Likewise. + (test_strncpy): Likewise. + (test_memset): Likewise. + +2019-10-02 Łukasz Majewski + * include/time.h: Add #include + +2019-10-02 Paul A. Clarke + + * sysdeps/powerpc/fpu/fenv_private.h: + (__TEST_AND_BEGIN_NON_STOP): New. + (__TEST_AND_END_NON_STOP): New. + (libc_feholdexcept_setround_ppc): Use __TEST_AND_BEGIN_NON_STOP. + (__libc_femergeenv_ppc): Use __TEST_AND_BEGIN_NON_STOP and + __TEST_AND_END_NON_STOP. + (libc_feholdsetround_noex_ppc_ctx): Use __TEST_AND_END_NON_STOP. + +2019-10-02 Arjun Shankar + + debugglibc.sh: Implement program arguments + * Makefile (debugglibc): Change variable definition. + +2019-10-01 Alistair Francis + + * time/bits/types/struct_timespec.h: Add padding for the timespec if + required. + +2019-10-01 Zack Weinberg + Alistair Francis + + * string/endian.h: Unconditionally define LITTLE_ENDIAN, + BIG_ENDIAN, PDP_ENDIAN, and BYTE_ORDER. Condition byteswapping + macros only on !__ASSEMBLER__. Move the definitions of + __BIG_ENDIAN, __LITTLE_ENDIAN, __PDP_ENDIAN, __FLOAT_WORD_ORDER, + and __LONG_LONG_PAIR to... + * string/bits/endian.h: ...this new file, which includes + the renamed header bits/endianness.h for the definition of + __BYTE_ORDER and possibly __FLOAT_WORD_ORDER. + + * string/Makefile: Install bits/endianness.h. + * include/bits/endian.h: New wrapper. + + * bits/endian.h: Rename to bits/endianness.h. + Add multiple-include guard. Rewrite the comment explaining what + the machine-specific variants of this file should do. + + * sysdeps/unix/sysv/linux/ia64/bits/endian.h: + Move to sysdeps/ia64. + + * sysdeps/aarch64/bits/endian.h + * sysdeps/alpha/bits/endian.h + * sysdeps/arm/bits/endian.h + * sysdeps/csky/bits/endian.h + * sysdeps/hppa/bits/endian.h + * sysdeps/ia64/bits/endian.h + * sysdeps/m68k/bits/endian.h + * sysdeps/microblaze/bits/endian.h + * sysdeps/mips/bits/endian.h + * sysdeps/nios2/bits/endian.h + * sysdeps/powerpc/bits/endian.h + * sysdeps/riscv/bits/endian.h + * sysdeps/s390/bits/endian.h + * sysdeps/sh/bits/endian.h + * sysdeps/sparc/bits/endian.h + * sysdeps/x86/bits/endian.h: + Rename to endianness.h; canonicalize form of file; remove + redundant definitions of __FLOAT_WORD_ORDER. + + * sysdeps/powerpc/bits/endianness.h: Remove logic to check for + broken compilers. + + * ctype/ctype.h + * sysdeps/aarch64/nptl/bits/pthreadtypes-arch.h + * sysdeps/arm/nptl/bits/pthreadtypes-arch.h + * sysdeps/csky/nptl/bits/pthreadtypes-arch.h + * sysdeps/ia64/ieee754.h + * sysdeps/ieee754/ieee754.h + * sysdeps/ieee754/ldbl-128/ieee754.h + * sysdeps/ieee754/ldbl-128ibm/ieee754.h + * sysdeps/m68k/nptl/bits/pthreadtypes-arch.h + * sysdeps/microblaze/nptl/bits/pthreadtypes-arch.h + * sysdeps/mips/ieee754/ieee754.h + * sysdeps/mips/nptl/bits/pthreadtypes-arch.h + * sysdeps/nios2/nptl/bits/pthreadtypes-arch.h + * sysdeps/nptl/pthread.h + * sysdeps/riscv/nptl/bits/pthreadtypes-arch.h + * sysdeps/sh/nptl/bits/pthreadtypes-arch.h + * sysdeps/sparc/sparc32/ieee754.h + * sysdeps/unix/sysv/linux/generic/bits/stat.h + * sysdeps/unix/sysv/linux/generic/bits/statfs.h + * sysdeps/unix/sysv/linux/sys/acct.h + * wctype/bits/wctype-wchar.h: + Include bits/endian.h, not endian.h. + + * sysdeps/unix/sysv/linux/hppa/pthread.h: Don’t include endian.h. + + * sysdeps/mips/ieee754/ieee754.h: Use __LDBL_MANT_DIG__ + in ifdefs, instead of LDBL_MANT_DIG. Only include float.h + when __LDBL_MANT_DIG__ is not predefined, in which case + define __LDBL_MANT_DIG__ to equal LDBL_MANT_DIG. + +2019-09-17 Mike FABIAN + + * localedata/locales/az_AZ: Make lang_name agree with CLDR + * localedata/locales/be_BY@latin: Make lang_name agree with langtable + * localedata/locales/ber_DZ: Make language, country_name, lang_name agree with langtable + * localedata/locales/ber_MA: Add country_name from langtable, make language, lang_name agree with langtable + * localedata/locales/bhb_IN: Add country_name from langtable, make lang_name agree with langtable + * localedata/locales/bho_IN: Add country_name from langtable + * localedata/locales/chr_US: Make country_name agree with CLDR + * localedata/locales/crh_UA: Make lang_name agree with langtable + * localedata/locales/csb_PL: Add country_name from langtable + * localedata/locales/doi_IN: Add country_name from langtable + * localedata/locales/dv_MV: Add country_name from langtable + * localedata/locales/eo: Fix capitalisation of lang_name, agree with CLDR + * localedata/locales/hak_TW: Make lang_name agree with langtable + * localedata/locales/hif_FJ: Make lang_name agree with langtable + * localedata/locales/hne_IN: Add country_name from langtable + * localedata/locales/ia_FR: Fix capitalisation of lang_name, agree with CLDR + * localedata/locales/id_ID: Make lang_name agree with CLDR + * localedata/locales/ig_NG: Make country_name, lang_name agree with CLDR + * localedata/locales/kab_DZ: Make country_name agree with CLDR + * localedata/locales/ks_IN: Make country_name agree with CLDR + * localedata/locales/ku_TR: Make country_name, lang_name agree with CLDR + * localedata/locales/mag_IN: Add country_name from langtable + * localedata/locales/mfe_MU: Make country_name agree with CLDR + * localedata/locales/mhr_RU: Add lang_name from langtable + * localedata/locales/mi_NZ: Make lang_name agree with CLDR + * localedata/locales/ms_MY: Make lang_name agree with CLDR + * localedata/locales/nan_TW: Make lang_name agree with langtable + * localedata/locales/nan_TW@latin: Make lang_name agree with langtable + * localedata/locales/nds_DE: Make lang_name agree with langtable + * localedata/locales/nds_NL: Make lang_name agree with langtable + * localedata/locales/nhn_MX: Add country_name from langtable, make lang_name agree with langtable + * localedata/locales/niu_NU: Add country_name, lang_name from langtable + * localedata/locales/niu_NZ: Add lang_name from langtable + * localedata/locales/nr_ZA: Fix capitalisation of lang_name from langtable + * localedata/locales/oc_FR: Fix capitalisation of lang_name from langtable + * localedata/locales/or_IN: Fix spelling of language from langtable + * localedata/locales/pa_PK: Make country_name agree with CLDR + * localedata/locales/ps_AF: Make country_name agree with CLDR + * localedata/locales/quz_PE: Make language, lang_name agree with langtable + * localedata/locales/raj_IN: Make country_name, lang_name agree with langtable + * localedata/locales/rw_RW: Make country_name agree with CLDR + * localedata/locales/sah_RU: Make langauge, country_name, lang_name agree with CLDR + * localedata/locales/sat_IN: Make country_name, lang_name agree with langtable + * localedata/locales/sc_IT: Fix capitalisaton of lang_name according to langtable + * localedata/locales/sd_IN: Make country_name, lang_name agree with CLDR + * localedata/locales/sd_IN@devanagari: Make lang_name agree with langtable + * localedata/locales/shn_MM: Make country_name agree with langtable + * localedata/locales/shs_CA: Make language, lang_name agree with langtable + * localedata/locales/sm_WS: Make country_name agree with langtable + * localedata/locales/ss_ZA: Fix capitalisation of lang_name from langtable + * localedata/locales/szl_PL: Add country_name from langtable + * localedata/locales/te_IN: Fix country_name from CLDR + * localedata/locales/tg_TJ: Add lang_name from CLDR + * localedata/locales/the_NP: Add country_name, lang_name from langtable + * localedata/locales/tk_TM: Make lang_name agree with CLDR + * localedata/locales/tl_PH: Add lang_name from langtable + * localedata/locales/to_TO: Make lang_name agree with CLDR + * localedata/locales/tpi_PG: Make country_name, lang_name agree with langtable + * localedata/locales/tt_RU@iqtelif: Add country_name, lang_name from langtable + * localedata/locales/ug_CN: Add lang_name from CLDR + * localedata/locales/unm_US: Add lang_name from langtable + * localedata/locales/wa_BE: Fix capitalisation of lang_name from langtable + * localedata/locales/wo_SN: Add lang_name from CLDR + * localedata/locales/xh_ZA: Fix capitalisation of country_name, lang_name from CLDR + * localedata/locales/yo_NG: Make country_name agree with CLDR + * localedata/locales/yuw_PG: Make langauge, lang_name agree with langtable + * localedata/locales/zh_HK: Add lang_name from langtable + * localedata/locales/zh_SG: Add lang_name from langtable + +2019-09-30 Joseph Myers + + * scripts/build-many-glibcs.py (Context.checkout): Default + binutils version to 2.33 branch. + +2019-10-01 Lukasz Majewski + + * include/time.h (valid_timeval_to_timespec64): Add. + * include/time.h (valid_timespec_to_timespec64): Likewise. + * include/time.h (valid_timespec64_to_timespec): Likewise. + * include/time.h (valid_timespec64_to_timeval): Likewise. + +2019-09-30 Joseph Myers + + * sysdeps/unix/sysv/linux/powerpc/bits/mman.h [__USE_MISC] + (MAP_SYNC): New macro. + * sysdeps/unix/sysv/linux/sparc/bits/mman.h [__USE_MISC] + (MAP_SYNC): Likewise. + * sysdeps/unix/sysv/linux/tst-mman-consts.py (main): Update Linux + kernel version number to 5.3. + +2019-09-27 Paul A. Clarke + + * sysdeps/powerpc/fpu/fenv_libc.h (fesetenv_mode): Rename to + fesetenv_control. + * sysdeps/powerpc/fpu/fedisblxcpt.c (fedisableexcept): Accommodate + rename of fesetenv_mode to fegetenv_control. + * sysdeps/powerpc/fpu/feenablxcpt.c (feenableexcept): Likewise. + * sysdeps/powerpc/fpu/fesetmode.c (fesetmode): Likewise. + * sysdeps/powerpc/fpu/fenv_private.h (__libc_femergeenv_ppc): Likewise. + (libc_feholdsetround_noex_ppc_ctx): Likewise. + +2019-09-27 Paul A. Clarke + + * sysdeps/powerpc/fpu/fenv_private.h + (libc_feholdsetround_noex_ppc_ctx): Call fesetenv_mode instead + of fesetenv_register. + +2019-09-27 Paul A. Clarke + + * sysdeps/powerpc/fpu/fenv_libc.h (fegetenv_status): Rename to + fegetenv_control. + * sysdeps/powerpc/fpu/fedisblxcpt.c (fedisableexcept): Accommodate + rename of fegetenv_status to fegetenv_control. + * sysdeps/powerpc/fpu/feenablxcpt.c (feenableexcept): Likewise. + * sysdeps/powerpc/fpu/fegetexcept.c (__fegetexcept): Likewise. + * sysdeps/powerpc/fpu/fegetmode.c (fegetmode): Likewise. + * sysdeps/powerpc/fpu/fesetenv.c (__fesetenv): Likewise. + * sysdeps/powerpc/fpu/fesetmode.c (fesetmode): Likewise. + +2019-09-27 Paul A. Clarke + + * sysdeps/powerpc/fpu/fenv_libc.h (__fesetround_inline): Use + 'mffscrn' instruction on POWER9. + (__fesetround_inline_nocheck): Likewise. + +2019-09-27 Paul A. Clarke + + * sysdeps/powerpc/fpu/fenv_libc.h (FPSCR_EXCEPTIONS_MASK): New. + * sysdeps/powerpc/fpu/fenv_private.h (__libc_femergeenv_ppc): Optimize + to write FPSCR control only, if exceptions have not changed. + +2019-09-27 Paul A. Clarke + + * sysdeps/powerpc/fpu/fenv_libc.h: + (__TEST_AND_ENTER_NON_STOP): New. + (__TEST_AND_EXIT_NON_STOP): New. + * sysdeps/powerpc/fpu/fenv_private.h + (_FPU_ALL_TRAPS): Delete, replace with FPSCR_ENABLES_MASK. + (_FPU_MASK_RN): Delete. + (_FPU_MASK_NOT_RN_NI): Delete. + (_FPU_MASK_TRAPS_RN): Delete, replace with ~FPSCR_CONTROL_MASK. + (_FPU_MASK_FRAC_INEX_RET_CC): Delete, replace with ~FPSCR_STATUS_MASK. + (__libc_feholdbits_ppc): Delete, move code into + libc_feholdexcept_setround_ppc. + (libc_feholdexcept_ppc): Delete. + (libc_fesetround_ppc): Delete. + (libc_fetestexcept_ppc): Delete. + (libc_feholdsetround_ppc): Delete. + (__libc_femergeenv_ppc): Use __TEST_AND_ENTER/EXIT_NON_STOP. + (libc_feholdsetround_noex_ppc_ctx): Likewise. + (libc_feupdateenv_test_ppc): Use FPSCR defines. + * sysdeps/powerpc/fpu/feenablxcpt.c (feenableexcept): Use + __TEST_AND_ENTER_NON_STOP. + * sysdeps/powerpc/fpu/fedisblxcpt.c (fedisableexcept): Likewise. + * sysdeps/powerpc/fpu/feholdexcpt.c (__feholdexcept): Likewise. + * sysdeps/powerpc/fpu/fesetenv.c (__fesetenv): Likewise. + * sysdeps/powerpc/fpu/fesetmode.c (fesetmode): Likewise. + * sysdeps/powerpc/fpu/feupdateenv.c (__feupdateenv): Likewise. + (_FPU_MASK_ALL): Delete. + +2019-09-27 Joseph Myers + + * sysdeps/gnu/netinet/tcp.h (TCP_TX_DELAY): New macro. + +2019-09-26 Lukasz Majewski + + * include/time.h: Add struct __timespec64 definition + +2019-09-26 Siddhesh Poyarekar + + * scripts/vcs_to_changelog/misc_util.py (decode): Remove latin1 + from codecs. + +2019-09-25 Adhemerval Zanella + + * rt/Makefile (CFLAGS-clock_nanosleep.c): Move to ... + * time/Makefile (CFLAGS-clock_nanosleep.c): ... here. + + * sysdeps/unix/sysv/linux/Makefile + (CFLAGS-tst-sigcontextinfo-get_pc.c): Rename to + CFLAGS-tst-sigcontext-get_pc.c. + +2019-09-24 Alistair Francis + + * inet/net-internal.h: Fix uninitalised clntudp_call() variable. + +2019-09-24 Andreas Schwab + + * sysdeps/unix/sysv/linux/arm/sysdep.h + (HAVE_CLOCK_GETTIME_VSYSCALL): Define to "__vdso_clock_gettime", + not "__vdso_gettimeofday". + (HAVE_GETTIMEOFDAY_VSYSCALL): Define to "__vdso_gettimeofday", not + "__vdso_clock_gettime". + * sysdeps/unix/sysv/linux/mips/sysdep.h + (HAVE_CLOCK_GETTIME_VSYSCALL): Define to "__vdso_clock_gettime", + not "__vdso_gettimeofday". + (HAVE_GETTIMEOFDAY_VSYSCALL): Define to "__vdso_gettimeofday", not + "__vdso_clock_gettime". + +2019-09-19 Paul A. Clarke + + * sysdeps/powerpc/fpu/fenv_libc.h (fegetenv_and_set_rn): New. + (__fe_mffscrn): New. + * sysdeps/powerpc/fpu/fenv_private.h (libc_feholdsetround_ppc_ctx): + Do not clear enable bits, remove obsolete code, use + fegetenv_and_set_rn. + (libc_feresetround_ppc): Remove obsolete code, use + fegetenv_and_set_rn. + +2019-09-19 Stefan Liebler + + * support/support_ptrace.c: Remove inclusion of sys/prctl.h. + +2019-09-19 Stefan Liebler + + * sysdeps/s390/hp-timing.h (_HP_TIMING_H): Undefine. + (_HP_TIMING_S390_H): Define. + +2019-09-18 Joseph Myers + + * sysdeps/unix/sysv/linux/syscall-names.list: Update kernel + version to 5.3. + (clone3): New syscall. + (pidfd_open): Likewise. + + * scripts/build-many-glibcs.py (Context.checkout): Default Linux + version to 5.3. + +2019-09-18 Stefan Liebler + + * sysdeps/s390/hp-timing.h: New file. + +2019-09-18 Joseph Myers + + * sysdeps/unix/sysv/linux/riscv/vfork.S: Do not include + . + (CLONE_VM): New macro. + (CLONE_VFORK): Likewise. + +2019-09-18 Stefan Liebler + + * elf/tst-pldd.c (do_test): Add UNSUPPORTED check. + Rearrange subprocesses. + (pldd_process): New function. + * support/Makefile (libsupport-routines): Add support_ptrace. + * support/xptrace.h: New file. + * support/support_ptrace.c: Likewise. + +2019-09-17 Adhemerval Zanella + + * sysdeps/unix/sysv/linux/sparc/sparc64/time.c: Remove file. + + * sysdeps/unix/sysv/linux/mips/mips32/sysdep.h + (INTERNAL_VSYSCALL_CALL): Remove. + * sysdeps/unix/sysv/linux/mips/mips64/n32/sysdep.h + (INTERNAL_VSYSCALL_CALL): Likewise. + * sysdeps/unix/sysv/linux/mips/mips64/n64/sysdep.h + (INTERNAL_VSYSCALL_CALL): Likewise. + * sysdeps/unix/sysv/linux/mips/sysdep.h (INTERNAL_VSYSCALL_CALL): + New macro. + + * sysdeps/unix/sysv/linux/libc-vdso.h (VDSO_IFUNC_RET): Define if not + defined. + * sysdeps/unix/sysv/linux/powerpc/get_timebase_freq.c + (__get_timebase_freq): Remove use of + INTERNAL_VSYSCALL_NO_SYSCALL_FALLBACK. + (get_timebase_freq_fallback): New symbol. + * sysdeps/unix/sysv/linux/powerpc/gettimeofday.c (time): Use + HAVE_GETTIMEOFDAY_VSYSCALL. + * sysdeps/unix/sysv/linux/powerpc/time.c (gettimeofday): Use + HAVE_TIME_VSYSCALL. + * sysdeps/unix/sysv/linux/powerpc/libc-vdso.h: Include generic + implementation. + * sysdeps/unix/sysv/linux/powerpc/powerpc32/sysdep.h + (INTERNAL_VSYSCALL_CALL_TYPE): Make calling convention similar to + powerpc64. + (INTERNAL_VSYSCALL_NO_SYSCALL_FALLBACK): Remove macro. + * .../sysv/linux/powerpc/powerpc64/sysdep.h + (INTERNAL_VSYSCALL_NO_SYSCALL_FALLBACK): Likewise. + * sysdeps/unix/sysv/linux/powerpc/sysdep.h + (HAVE_GETTIMEOFDAY_VSYSCALL): Define. + + * sysdeps/powerpc/powerpc32/backtrace.c (is_sigtramp_address, + is_sigtramp_address_rt): Use HAVE_SIGTRAMP_{RT}32 instead of SHARED. + * sysdeps/powerpc/powerpc64/backtrace.c (is_sigtramp_address): + Likewise. + * sysdeps/unix/sysv/linux/aarch64/init-first.c: Remove file. + * sysdeps/unix/sysv/linux/aarch64/libc-vdso.h: Likewise. + * sysdeps/unix/sysv/linux/arm/init-first.c: Likewise. + * sysdeps/unix/sysv/linux/arm/libc-vdso.h: Likewise. + * sysdeps/unix/sysv/linux/mips/init-first.c: Likewise. + * sysdeps/unix/sysv/linux/mips/libc-vdso.h: Likewise. + * sysdeps/unix/sysv/linux/i386/init-first.c: Likewise. + * sysdeps/unix/sysv/linux/riscv/init-first.c: Likewise. + * sysdeps/unix/sysv/linux/riscv/libc-vdso.h: Likewise. + * sysdeps/unix/sysv/linux/s390/init-first.c: Likewise. + * sysdeps/unix/sysv/linux/s390/libc-vdso.h: Likewise. + * sysdeps/unix/sysv/linux/sparc/init-first.c: Likewise. + * sysdeps/unix/sysv/linux/sparc/libc-vdso.h: Likewise. + * sysdeps/unix/sysv/linux/x86/libc-vdso.h: Likewise. + * sysdeps/unix/sysv/linux/x86_64/init-first.c: Likewise. + * sysdeps/unix/sysv/linux/aarch64/sysdep.h + (HAVE_CLOCK_GETRES_VSYSCALL, HAVE_CLOCK_GETTIME_VSYSCALL, + HAVE_GETTIMEOFDAY_VSYSCALL): Define value based on kernel exported + name. + * sysdeps/unix/sysv/linux/arm/sysdep.h (HAVE_CLOCK_GETTIME_VSYSCALL, + HAVE_GETTIMEOFDAY_VSYSCALL): Likewise. + * sysdeps/unix/sysv/linux/i386/sysdep.h (HAVE_CLOCK_GETTIME_VSYSCALL, + HAVE_GETTIMEOFDAY_VSYSCALL): Likewise. + * sysdeps/unix/sysv/linux/mips/sysdep.h (HAVE_CLOCK_GETTIME_VSYSCALL, + HAVE_GETTIMEOFDAY_VSYSCALL): Likewise. + * sysdeps/unix/sysv/linux/powerpc/sysdep.h + (HAVE_CLOCK_GETRES_VSYSCALL, HAVE_CLOCK_GETTIME_VSYSCALL, + HAVE_GETCPU_VSYSCALL, HAVE_TIME_VSYSCALL, HAVE_GET_TBFREQ, + HAVE_SIGTRAMP_RT64, HAVE_SIGTRAMP_32, HAVE_SIGTRAMP_RT32i, + HAVE_GETTIMEOFDAY_VSYSCALL): Likewise. + * sysdeps/unix/sysv/linux/riscv/sysdep.h (HAVE_CLOCK_GETRES_VSYSCALL, + HAVE_CLOCK_GETTIME_VSYSCALL, HAVE_GETTIMEOFDAY_VSYSCALL, + HAVE_GETCPU_VSYSCALL): Likewise. + * sysdeps/unix/sysv/linux/s390/sysdep.h (HAVE_CLOCK_GETRES_VSYSCALL, + HAVE_CLOCK_GETTIME_VSYSCALL, HAVE_GETTIMEOFDAY_VSYSCALL, + HAVE_GETCPU_VSYSCALL): Likewise. + * sysdeps/unix/sysv/linux/sparc/sysdep.h (HAVE_CLOCK_GETTIME_VSYSCALL, + HAVE_GETTIMEOFDAY_VSYSCALL): Likewise. + * sysdeps/unix/sysv/linux/x86_64/sysdep.h + (HAVE_CLOCK_GETTIME_VSYSCALL, HAVE_GETTIMEOFDAY_VSYSCALL, + HAVE_GETCPU_VSYSCALL): Likewise. + * sysdeps/unix/sysv/linux/dl-vdso.h (VDSO_NAME, VDSO_HASH): Define to + invalid names if architecture does not define them. + (get_vdso_mangle_symbol): New symbol. + * sysdeps/unix/sysv/linux/init-first.c: New file. + * sysdeps/unix/sysv/linux/libc-vdso.h: Likewise. + * sysdeps/unix/sysv/linux/powerpc/init-first.c (gettimeofday, + clock_gettime, clock_getres, getcpu, time): Remove declaration. + (__libc_vdso_platform_setup_arch): Likewise and use + get_vdso_mangle_symbol to setup vDSO symbols. + (sigtramp_rt64, sigtramp32, sigtramp_rt32, get_tbfreq): Add + attribute_hidden. + * sysdeps/unix/sysv/linux/powerpc/libc-vdso.h: Likewise. + * sysdeps/unix/sysv/linux/sysdep-vdso.h (VDSO_SYMBOL): Remove + definition. + + * sysdeps/unix/make-syscalls.sh: Make vDSO call use get_vdso_symbol. + * sysdeps/unix/sysv/linux/aarch64/gettimeofday.c (__gettimeofday): + Use get_vdso_symbol instead of _dl_vdso_vsym. + * sysdeps/unix/sysv/linux/powerpc/time.c (time): Likewise. + * sysdeps/unix/sysv/linux/riscv/flush-icache.c + (__lookup_riscv_flush_icache): Likewise. + * sysdeps/unix/sysv/linux/x86/gettimeofday.c (__gettimeofday): + Likewise. + * sysdeps/unix/sysv/linux/x86/time.c (time): Likewise. + * sysdeps/unix/sysv/linux/powerpc/gettimeofday.c: Likewise. + * sysdeps/unix/sysv/linux/aarch64/init-first.c: Likewise. + * sysdeps/unix/sysv/linux/arm/init-first.c: Likewise. + * sysdeps/unix/sysv/linux/i386/init-first.c: Likewise. + * sysdeps/unix/sysv/linux/mips/init-first.c: Likewise. + * sysdeps/unix/sysv/linux/powerpc/init-first.c: Likewise. + * sysdeps/unix/sysv/linux/riscv/init-first.c: Likewise. + * sysdeps/unix/sysv/linux/sparc/init-first.c: Likewise. + * sysdeps/unix/sysv/linux/s390/init-first.c: Likewise. + * sysdeps/unix/sysv/linux/x86_64/init-first.c: Likewise. + * sysdeps/unix/sysv/linux/aarch64/sysdep.h (VDSO_NAME, VDSO_HASH): + Define. + * sysdeps/unix/sysv/linux/arm/sysdep.h (VDSO_NAME, VDSO_HASH): + Likewise. + * sysdeps/unix/sysv/linux/i386/sysdep.h (VDSO_NAME, VDSO_HASH): + Likewise. + * sysdeps/unix/sysv/linux/riscv/sysdep.h (VDSO_NAME, VDSO_HASH): + Likewise. + * sysdeps/unix/sysv/linux/sparc/sysdep.h (VDSO_NAME, VDSO_HASH): + Likewise. + * sysdeps/unix/sysv/linux/x86_64/sysdep.h (VDSO_NAME, VDSO_HASH): + Likewise. + * sysdeps/unix/sysv/linux/mips/mips32/sysdep.h + (HAVE_CLOCK_GETTIME_VSYSCALL, HAVE_GETTIMEOFDAY_VSYSCALL): Remove + definition. + * sysdeps/unix/sysv/linux/mips/mips64/n32/sysdep.h + (HAVE_CLOCK_GETTIME_VSYSCALL, HAVE_GETTIMEOFDAY_VSYSCALL): Likewise. + * sysdeps/unix/sysv/linux/mips/mips64/n64/sysdep.h + (HAVE_CLOCK_GETTIME_VSYSCALL, HAVE_GETTIMEOFDAY_VSYSCALL): Likewise. + * sysdeps/unix/sysv/linux/powerpc/powerpc32/sysdep.h + (HAVE_CLOCK_GETTIME_VSYSCALL, HAVE_GETTIMEOFDAY_VSYSCALL): Likewise. + * sysdeps/unix/sysv/linux/powerpc/powerpc64/sysdep.h + (HAVE_CLOCK_GETTIME_VSYSCALL, HAVE_GETTIMEOFDAY_VSYSCALL): Likewise. + * sysdeps/unix/sysv/linux/s390/s390-32/sysdep.h + (HAVE_CLOCK_GETRES_VSYSCALL, HAVE_CLOCK_GETTIME_VSYSCALL, + HAVE_GETTIMEOFDAY_VSYSCALL, HAVE_GETCPU_VSYSCALL): Likewise. + * sysdeps/unix/sysv/linux/s390/s390-64/sysdep.h + (HAVE_CLOCK_GETRES_VSYSCALL, HAVE_CLOCK_GETTIME_VSYSCALL, + HAVE_GETTIMEOFDAY_VSYSCALL, HAVE_GETCPU_VSYSCALL): Likewise. + * sysdeps/unix/sysv/linux/mips/sysdep.h: New file. + * sysdeps/unix/sysv/linux/powerpc/sysdep.h: Likewise. + * sysdeps/unix/sysv/linux/s390/sysdep.h: Likewise. + * sysdeps/unix/sysv/linux/dl-vdso.h (PREPARE_VERSION, + PREPARE_VERSION_KNOWN, VDSO_NAME_LINUX_2_6, VDSO_HASH_LINUX_2_6, + VDSO_NAME_LINUX_2_6_15, VDSO_HASH_LINUX_2_6_15, + VDSO_NAME_LINUX_2_6_29, VDSO_HASH_LINUX_2_6_29, + VDSO_NAME_LINUX_4_15, VDSO_HASH_LINUX_4_15): Remove defines. + (get_vdso_symbol): New function. + +2019-09-17 Chung-Lin Tang + + * sysdeps/generic/hp-timing-common.h (HP_TIMING_PRINT): Correct + position of string null termination. + +2019-09-14 Aurelien Jarno + + [BZ #24986] + * sysdeps/unix/alpha/getegid.S: Move to ... + * sysdeps/unix/sysv/linux/alpha/getegid.S: ... here. + * sysdeps/unix/alpha/geteuid.S: Move to ... + * sysdeps/unix/sysv/linux/alpha/geteuid.S: ... here. + * sysdeps/unix/alpha/getppid.S: Move to ... + * sysdeps/unix/sysv/linux/alpha/getppid.S: ... here + +2019-09-09 Paul Eggert + + Fix http: URL in 'configure' + * configure.ac: Add URL to AC_INIT so that it generates an + https: URL instead of an http: URL. + * configure: Regenerate. + + Regenerate charmap-kw.h, locfile-kw.h + This propagates the recent http->https URL changes. + Since I used gperf 3.1 to regenerate, this is also a minor + internal-to-localedef API change. + URL problem reported by Joseph Myers in: + https://www.sourceware.org/ml/libc-alpha/2019-09/msg00143.html + * locale/programs/charmap-kw.h, locale/programs/locfile-kw.h: + Regenerate with gperf 3.1. + * locale/programs/linereader.h (kw_hash_fct_t): + * locale/programs/repertoire.c (repertoiremap_hash): + 2nd arg is now size_t not unsigned, for compatibility with gperf 3.1. + +2019-09-05 Florian Weimer + + [BZ #24962] + * locale/localeinfo.h (_nl_category_names): Remove union wrapper. + (_nl_category_names_get): New function. + * intl/dcigettext.c (category_to_name): Call it. + * locale/findlocale.c (_nl_find_locale): Likewise. + * intl/loadlocale.c (_nl_load_locale): Likewise. + * locale/newlocale.c (__newlocale): Likewise. + * locale/setlocale.c (_nl_category_names): Adjust definition. + (_nl_category_name_idxs): Likewise. + (new_composite_name): Call _nl_category_names_get. + (setlocale): Likewise. + +2019-09-05 Gabriel F. T. Gomes + + * math/bits/mathcalls.h (totalorder, totalordermag): Replace + const attribute with pure attribute. + +2019-09-04 Lukasz Majewski + + * sysdeps/unix/sysv/linux/kernel-features.h + (__ASSUME_TIME64_SYSCALLS): New macro. + +2019-09-04 Zack Weinberg + + [BZ #24959] + * rt/clock_getcpuclockid.c: Move to time/clock_getcpuclockid.c. + * rt/clock_getres.c: Move to time/clock_getres.c. + * rt/clock_gettime.c: Move to time/clock_gettime.c. + * rt/clock_nanosleep.c: Move to time/clock_nanosleep.c. + * rt/clock_settime.c: Move to time/clock_settime.c. + * rt/tst-clock.c: Move to time/tst-clock.c. + * rt/tst-clock2.c: Move to time/tst-clock2.c. + * rt/tst-clock_nanosleep.c: Move to time/tst-clock_nanosleep.c. + * rt/tst-cpuclock1.c: Move to time/tst-cpuclock1.c. + * rt/clock-compat.c: Delete file. + + * time/clock_getcpuclockid.c + * time/clock_getres.c + * time/clock_gettime.c + * time/clock_nanosleep.c + * time/clock_settime.c + * sysdeps/posix/clock_getres.c + * sysdeps/unix/clock_gettime.c + * sysdeps/unix/clock_nanosleep.c + * sysdeps/unix/clock_settime.c + * sysdeps/unix/sysv/linux/clock_getcpuclockid.c + * sysdeps/unix/sysv/linux/clock_getres.c + * sysdeps/unix/sysv/linux/clock_gettime.c + * sysdeps/unix/sysv/linux/clock_nanosleep.c + * sysdeps/unix/sysv/linux/clock_settime.c: Define the function + defined by this file with default symbol version GLIBC_2_17, + and optionally a compatibility alias at symbol version GLIBC_2_2. + * include/time.h: Remove internal prototypes for clock_getres, + clock_nanosleep, and clock_getcpuclockid. + + * sysdeps/unix/sysv/linux/clock_gettime.c: Prune includes. + Remove unused function realtime_gettime. + + * rt/Makefile (clock-routines, routines): Remove variable. + (librt-routines): Remove clock-compat. + (tests): Remove tst-clock, tst-clock2, tst-clock_nanosleep, + and tst-cpuclock1. + * time/Makefile (routines): Add clock_getres, clock_gettime, + clock_settime, clock_getcpuclockid, and clock_nanosleep. + (tests): Add tst-clock, tst-clock2, tst-clock_nanosleep, + and tst-cpuclock1. + + * rt/Versions (libc): Remove entire stanza. + (librt GLIBC_2.2): Remove all clock_* functions. + * time/Versions (libc GLIBC_2.2, libc GLIBC_2.17): + Add clock_getres, clock_gettime, clock_settime, + clock_getcpuclockid, and clock_nanosleep. + (libc GLIBC_PRIVATE): Add __clock_gettime. + + * sysdeps/mach/hurd/i386/librt.abilist + * sysdeps/unix/sysv/linux/alpha/librt.abilist + * sysdeps/unix/sysv/linux/arm/be/librt.abilist + * sysdeps/unix/sysv/linux/arm/le/librt.abilist + * sysdeps/unix/sysv/linux/hppa/librt.abilist + * sysdeps/unix/sysv/linux/i386/librt.abilist + * sysdeps/unix/sysv/linux/ia64/librt.abilist + * sysdeps/unix/sysv/linux/m68k/coldfire/librt.abilist + * sysdeps/unix/sysv/linux/m68k/m680x0/librt.abilist + * sysdeps/unix/sysv/linux/microblaze/be/librt.abilist + * sysdeps/unix/sysv/linux/microblaze/le/librt.abilist + * sysdeps/unix/sysv/linux/mips/mips32/librt.abilist + * sysdeps/unix/sysv/linux/mips/mips64/librt.abilist + * sysdeps/unix/sysv/linux/powerpc/powerpc32/librt.abilist + * sysdeps/unix/sysv/linux/powerpc/powerpc64/be/librt.abilist + * sysdeps/unix/sysv/linux/s390/s390-32/librt.abilist + * sysdeps/unix/sysv/linux/s390/s390-64/librt.abilist + * sysdeps/unix/sysv/linux/sh/librt.abilist + * sysdeps/unix/sysv/linux/sparc/sparc32/librt.abilist + * sysdeps/unix/sysv/linux/sparc/sparc64/librt.abilist + * sysdeps/unix/sysv/linux/x86_64/64/librt.abilist + * sysdeps/unix/sysv/linux/x86_64/x32/librt.abilist: + Remove entries for clock_getres, clock_gettime, clock_settime, + clock_getcpuclockid, and clock_nanosleep. + + * sysdeps/mach/hurd/i386/libc.abilist + * sysdeps/unix/sysv/linux/alpha/libc.abilist + * sysdeps/unix/sysv/linux/arm/libc.abilist + * sysdeps/unix/sysv/linux/hppa/libc.abilist + * sysdeps/unix/sysv/linux/i386/libc.abilist + * sysdeps/unix/sysv/linux/ia64/libc.abilist + * sysdeps/unix/sysv/linux/m68k/coldfire/libc.abilist + * sysdeps/unix/sysv/linux/m68k/m680x0/libc.abilist + * sysdeps/unix/sysv/linux/mips/mips32/fpu/libc.abilist + * sysdeps/unix/sysv/linux/mips/mips32/nofpu/libc.abilist + * sysdeps/unix/sysv/linux/mips/mips64/n32/libc.abilist + * sysdeps/unix/sysv/linux/mips/mips64/n64/libc.abilist + * sysdeps/unix/sysv/linux/powerpc/powerpc32/fpu/libc.abilist + * sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/libc.abilist + * sysdeps/unix/sysv/linux/powerpc/powerpc64/be/libc.abilist + * sysdeps/unix/sysv/linux/s390/s390-32/libc.abilist + * sysdeps/unix/sysv/linux/s390/s390-64/libc.abilist + * sysdeps/unix/sysv/linux/sh/be/libc.abilist + * sysdeps/unix/sysv/linux/sh/le/libc.abilist + * sysdeps/unix/sysv/linux/sparc/sparc32/libc.abilist + * sysdeps/unix/sysv/linux/sparc/sparc64/libc.abilist + * sysdeps/unix/sysv/linux/x86_64/64/libc.abilist + * sysdeps/unix/sysv/linux/x86_64/x32/libc.abilist: + Add another set of entries for clock_getres, clock_gettime, + clock_settime, clock_getcpuclockid, and clock_nanosleep at + whatever version GLIBC_2.2 maps to. + +2019-09-03 Aurelien Jarno + + * sysdeps/alpha/fpu/libm-test-ulps: Regenerated using GCC 9.2. + +2019-09-03 Florian Weimer + + [BZ #24950] + * locale/programs/charmap.h (struct charseq): Turn bytes into a + flexible array member. + * locale/programs/ld-ctype.c (ctype_finish): Use initializer for + replace. + +2019-09-02 Florian Weimer + + * misc/tst-mntent-autofs.c: New file. + * misc/Makefile (tests): Add misc/tst-mntent-autofs. + +2019-09-02 Ian Kent + + Use autofs "ignore" mount hint in getmntent_r/getmntent. + * misc/mntent_r.c (get_mnt_entry): New function, extracted from + getmntent_r. + (__getmntent_r): Call it. Filter out autofs entries with an + "ignore" mount option. + +2019-08-30 Wilco Dijkstra + + * benchtests/bench-memcpy.c (simple_memcpy): Remove. + (generic_memcpy): Include generic C memcpy. + * benchtests/bench-memmove.c (simple_memmove): Remove. + (generic_memmove): Include generic C memmove. + * benchtests/bench-memset.c (simple_memset): Remove. + (generic_memset): Include generic C memset. + * benchtests/bench-memset-large.c (simple_memset): Remove. + (generic_memset): Include generic C memset. + * benchtests/bench-memset-walk.c (simple_memset): Remove. + (generic_memset): Include generic C memset. + * string/memcpy.c (MEMCPY): Add defines to enable redirection. + * string/memset.c (MEMSET): Likewise. + * sysdeps/x86_64/memcopy.h: Remove empty file. + +2019-08-30 Florian Weimer + + nptl: Move pthread_attr_getinheritsched implementation into libc. + * nptl/Makefile (routines): Add pthread_attr_getinheritsched. + (libpthread-routines): Remove pthread_attr_getinheritsched. + * nptl/Versions (libpthread GLIBC_2.0): Remove + pthread_attr_getinheritsched. + * nptl/forward.c (pthread_attr_getinheritsched): Remove definition. + * nptl/nptl-init.c (pthread_functions): Remove initializer for + ptr_pthread_attr_getinheritsched. + * sysdeps/nptl/pthread-functions.h (struct pthread_functions): + Remove ptr_pthread_attr_getinheritsched member. + * sysdeps/unix/sysv/linux/aarch64/libpthread.abilist (GLIBC_2.17): + Remove pthread_attr_getinheritsched. + * sysdeps/unix/sysv/linux/alpha/libpthread.abilist (GLIBC_2.0): + Likewise. + * sysdeps/unix/sysv/linux/arm/be/libpthread.abilist (GLIBC_2.4): + Likewise. + * sysdeps/unix/sysv/linux/arm/le/libpthread.abilist (GLIBC_2.4): + Likewise. + * sysdeps/unix/sysv/linux/csky/libpthread.abilist (GLIBC_2.29): + Likewise. + * sysdeps/unix/sysv/linux/hppa/libpthread.abilist (GLIBC_2.2): + Likewise. + * sysdeps/unix/sysv/linux/i386/libpthread.abilist (GLIBC_2.0): + Likewise. + * sysdeps/unix/sysv/linux/ia64/libpthread.abilist (GLIBC_2.2): + Likewise. + * sysdeps/unix/sysv/linux/m68k/coldfire/libpthread.abilist + (GLIBC_2.4): Likewise. + * sysdeps/unix/sysv/linux/m68k/m680x0/libpthread.abilist + (GLIBC_2.0): Likewise. + * sysdeps/unix/sysv/linux/microblaze/be/libpthread.abilist + (GLIBC_2.18): Likewise. + * sysdeps/unix/sysv/linux/microblaze/le/libpthread.abilist + (GLIBC_2.18): Likewise. + * sysdeps/unix/sysv/linux/mips/mips32/libpthread.abilist + (GLIBC_2.0): Likewise. + * sysdeps/unix/sysv/linux/mips/mips64/libpthread.abilist + (GLIBC_2.0): Likewise. + * sysdeps/unix/sysv/linux/nios2/libpthread.abilist (GLIBC_2.21): + Likewise. + * sysdeps/unix/sysv/linux/powerpc/powerpc32/libpthread.abilist + (GLIBC_2.0): Likewise. + * sysdeps/unix/sysv/linux/powerpc/powerpc64/be/libpthread.abilist + (GLIBC_2.3): Likewise. + * sysdeps/unix/sysv/linux/powerpc/powerpc64/le/libpthread.abilist + (GLIBC_2.17): Likewise. + * sysdeps/unix/sysv/linux/riscv/rv64/libpthread.abilist + (GLIBC_2.27): Likewise. + * sysdeps/unix/sysv/linux/s390/s390-32/libpthread.abilist + (GLIBC_2.0): Likewise. + * sysdeps/unix/sysv/linux/s390/s390-64/libpthread.abilist + (GLIBC_2.2): Likewise. + * sysdeps/unix/sysv/linux/sh/be/libpthread.abilist (GLIBC_2.2): + Likewise. + * sysdeps/unix/sysv/linux/sh/le/libpthread.abilist (GLIBC_2.2): + Likewise. + * sysdeps/unix/sysv/linux/sparc/sparc32/libpthread.abilist + (GLIBC_2.0): Likewise. + * sysdeps/unix/sysv/linux/sparc/sparc64/libpthread.abilist + (GLIBC_2.2): Likewise. + * sysdeps/unix/sysv/linux/x86_64/64/libpthread.abilist + (GLIBC_2.2.5): Likewise. + * sysdeps/unix/sysv/linux/x86_64/x32/libpthread.abilist + (GLIBC_2.16): Likewise. + +2019-08-30 Samuel Thibault + + * sysdeps/mach/hurd/getcwd.c + (_hurd_canonicalize_directory_name_internal): Do not remove the heading + slash if we got an unknown root directory. (__getcwd): Do not fail with + EGRATUITOUS if we got an unknown root directory. + * hurd/hurdselect.c (SELECT_ERROR): New macro. + (_hurd_select): + - Add `error' field to `d' structures array. + - If a poll descriptor is bogus, set EBADF, but continue with a zero + timeout. + - Go through the whole fd_set, not only until _hurd_dtablesize. Return + EBADF there is any bit set above _hurd_dtablesize. + - Do not request io_select on bogus descriptors (SELECT_ERROR). + - On io_select request error, record the error. + - On io_select bogus reply, use EIO error code. + - On io_select bogus or error reply, record the error. + - Do not destroy reply port for bogus FDs. + - On error, make poll set POLLHUP in the EPIPE case, POLLNVAL in the + EBADF case, or else POLLERR. + - On error, make select simulated readiness. + + [BZ #19903] + * sysdeps/mach/hurd/mmap.c (__mmap): Remove optimizing anonymous maps + as __vm_allocate. + + * sysdeps/mach/hurd/i386/sigreturn.c (__sigreturn2): New function, + unlocks SS and returns to the saved PC. + (__sigreturn): Do not unlock SS, and "return" into __sigreturn2 on the + thread stack instead of the saved PC. + +2019-08-30 Richard Braun + + * hurd/hurdselect.c (_hurd_select): Always call __io_select with no + timeout. + * sysdeps/mach/hurd/setitimer.c (setitimer_locked): Fix preemptor setup. + * hurd/Makefile (user-interfaces): Add io_reply and io_request. + * hurd/hurdselect.c: Include , and + . + (_hurd_select): Replace the call to __io_select with either + __io_select_request or __io_select_timeout_request, depending on the + timeout. Count the number of ready descriptors (replies for which at + least one type bit is set). Implement the timeout locally when there is + no file descriptor. + +2019-08-29 Mihailo Stojanovic + + * elf/dl-addr.c (determine_info): Calculate the symbol index + using the newly defined ELF_MACHINE_HASH_SYMIDX macro. + * elf/dl-lookup.c (do_lookup_x): Ditto. + (_dl_setup_hash): Initialize MIPS xhash translation table. + * elf/elf.h (SHT_MIPS_XHASH): New define. + (DT_MIPS_XHASH): New define. + * sysdeps/generic/ldsodefs.h (ELF_MACHINE_GNU_HASH_ADDRIDX): New + define. + (ELF_MACHINE_HASH_SYMIDX): Ditto. + (ELF_MACHINE_XHASH_SETUP): Ditto. + * sysdeps/mips/ldsodefs.h (ELF_MACHINE_GNU_HASH_ADDRIDX): New + define. + (ELF_MACHINE_HASH_SYMIDX): Ditto. + (ELF_MACHINE_XHASH_SETUP): Ditto. + * sysdeps/mips/linkmap.h (struct link_map_machine): New member. + * sysdeps/unix/sysv/linux/mips/ldsodefs.h: Increment valid ABI + version. + * sysdeps/unix/sysv/linux/mips/libc-abis: New ABI version. + +2019-08-29 Adhemerval Zanella + + * sysdeps/sh/preconfigure.ac: New file. + * sysdeps/sh/preconfigure: Regenerate. + * sysdeps/sh/be/sh3/Implies: New file. + * sysdeps/sh/be/sh4/Implies: Likewise. + * sysdeps/sh/le/sh3/Implies: Likewise. + * sysdeps/sh/le/sh4/Implies: Likewise. + * sysdeps/unix/sysv/linux/sh/le/sh3/Implies: Likewise. + * sysdeps/unix/sysv/linux/sh/le/sh4/Implies: Likewise. + * sysdeps/unix/sysv/linux/sh/*.abilist: Move to + sysdeps/unix/sysv/linux/sh/le/*.abilist. + * sysdeps/unix/sysv/linux/sh/be/*.abilist: New files. + + * sysdeps/microblaze/preconfigure.ac: New file. + * sysdeps/microblaze/preconfigure: Regenerate. + * sysdeps/microblaze/be/implies: New file. + * sysdeps/microblaze/le/implies: Likewise. + * sysdeps/unix/sysv/linux/microblaze/be/implies: Likewise. + * sysdeps/unix/sysv/linux/microblaze/le/implies: Likewise. + * sysdeps/unix/sysv/linux/microblaze/*.abilist. Move to + sysdeps/unix/sysv/linux/microblaze/be/*.abilist. + * sysdeps/unix/sysv/linux/microblaze/le/*.abilist: New files. + + * sysdeps/arm/preconfigure.ac: Set machine based on endianness. + * sysdeps/arm/preconfigure: Regenerate. + * sysdeps/arm/be/Implies: New file. + * sysdeps/arm/be/armv6/Implies: Likewise. + * sysdeps/arm/be/armv6t2/Implies: Likewise. + * sysdeps/arm/be/armv7/Implies: Likewise. + * sysdeps/arm/le/Implies: Likewise. + * sysdeps/unix/sysv/linux/arm/be/Implies: Likewise. + * sysdeps/unix/sysv/linux/arm/le/Implies: Likewise. + * sysdeps/unix/sysv/linux/arm/*.abilist: Move to + sysdeps/unix/sysv/linux/arm/le/*.abilist. + * sysdeps/unix/sysv/linux/arm/be/l*.abilist: New files. + +2019-08-27 Paul Eggert + + Fix posix/tst-regex by using UTF-8 and own test input + Problem reported by Stefan Liebler in: + https://sourceware.org/ml/libc-alpha/2019-08/msg00658.html + * posix/tst-regex.c: Convert this file from Latin-1 to UTF-8. + (do_test, test_expr): Adjust to the fact that this source file, + and the test data in ChangeLog.8, is now UTF-8 instead of Latin-1. + * posix/tst-regex.input: Copy from ChangeLog.old/ChangeLog.8, + so that it is now UTF-8. + +2019-08-28 Paul A. Clarke + + * sysdeps/powerpc/fpu/fenv_libc.h (fegetenv_status_ISA300): Delete. + (fegetenv_status): Generate 'mffsl' unconditionally. + +2019-08-28 Paul A. Clarke + + * sysdeps/powerpc/fpu/fesetenv.c (__fesetenv): Utilize lightweight + FPSCR read. + (_FPU_MASK_ALL): Delete. + +2019-08-28 Paul A. Clarke + + * sysdeps/powerpc/fpu/fenv_private.h (libc_feholdsetround_ppc_ctx): + Utilize lightweight FPSCR read if possible, set fewer FPSCR bits + if possible. + (libc_feresetround_ppc): Replace call to __libc_femergeenv_ppc + with simpler required steps, set fewer FPSCR bits if possible. + +2019-08-28 Paul A. Clarke + + * sysdeps/powerpc/fpu/fenv_libc.h (fesetenv_mode): New. + (FPSCR_FPRF_MASK): New. (FPSCR_STATUS_MASK): New. + * sysdeps/powerpc/fpu/feenablxcpt.c (feenableexcept): Use lighter- + weight access to FPSCR; remove unnecessary second FPSCR read and + validate. + * sysdeps/powerpc/fpu/fedisblxcpt.c (fedisableexcept): Likewise. + * sysdeps/powerpc/fpu/fesetmode.c (fesetmode): Use lighter-weight + access to FPSCR; Use macros in fenv_libc.h in favor of local. + +2019-08-28 Paul A. Clarke + + * sysdeps/powerpc/fpu/fenv_libc.h: Define FPSCR bitmasks. + (fenv_reg_to_exceptions): Replace bitwise operations with mask-shift. + (fenv_exceptions_to_reg): New. + * sysdeps/powerpc/fpu/fedisblxcpt.c (fedisableexcept): Replace bitwise + operation with call to fenv_exceptions_to_reg(). + * sysdeps/powerpc/fpu/feenablxcpt.c (feenableexcept): Likewise. + +2019-08-28 Florian Weimer + + * misc/mntent.c (struct mntent_buffer): Define. + (mntent_buffer): Adjust type to void *. + (allocate): Adjust for allocate_once. + (deallocate): New function. + (getmntent): Call allocate_once. + +2019-08-28 Florian Weimer + + nptl: Move pthread_attr_setdetachstate implementation into libc. + * nptl/Makefile (routines): Add pthread_attr_setdetachstate. + (libpthread-routines): Remove pthread_attr_setdetachstate. + * nptl/Versions (libpthread GLIBC_2.0): Remove + pthread_attr_setdetachstate. + * nptl/forward.c (pthread_attr_setdetachstate): Remove definition. + * nptl/nptl-init.c (pthread_functions): Remove initializer for + ptr_pthread_attr_setdetachstate. + * sysdeps/nptl/pthread-functions.h (struct pthread_functions): + Remove ptr_pthread_attr_setdetachstate member. + * sysdeps/unix/sysv/linux/aarch64/libpthread.abilist (GLIBC_2.17): + Remove pthread_attr_setdetachstate. + * sysdeps/unix/sysv/linux/alpha/libpthread.abilist (GLIBC_2.0): + Likewise. + * sysdeps/unix/sysv/linux/arm/libpthread.abilist (GLIBC_2.4): + Likewise. + * sysdeps/unix/sysv/linux/csky/libpthread.abilist (GLIBC_2.29): + Likewise. + * sysdeps/unix/sysv/linux/hppa/libpthread.abilist (GLIBC_2.2): + Likewise. + * sysdeps/unix/sysv/linux/i386/libpthread.abilist (GLIBC_2.0): + Likewise. + * sysdeps/unix/sysv/linux/ia64/libpthread.abilist (GLIBC_2.2): + Likewise. + * sysdeps/unix/sysv/linux/m68k/coldfire/libpthread.abilist + (GLIBC_2.4): Likewise. + * sysdeps/unix/sysv/linux/m68k/m680x0/libpthread.abilist + (GLIBC_2.0): Likewise. + * sysdeps/unix/sysv/linux/microblaze/libpthread.abilist + (GLIBC_2.18): Likewise. + * sysdeps/unix/sysv/linux/mips/mips32/libpthread.abilist + (GLIBC_2.0): Likewise. + * sysdeps/unix/sysv/linux/mips/mips64/libpthread.abilist + (GLIBC_2.0): Likewise. + * sysdeps/unix/sysv/linux/nios2/libpthread.abilist (GLIBC_2.21): + Likewise. + * sysdeps/unix/sysv/linux/powerpc/powerpc32/libpthread.abilist + (GLIBC_2.0): Likewise. + * sysdeps/unix/sysv/linux/powerpc/powerpc64/be/libpthread.abilist + (GLIBC_2.3): Likewise. + * sysdeps/unix/sysv/linux/powerpc/powerpc64/le/libpthread.abilist + (GLIBC_2.17): Likewise. + * sysdeps/unix/sysv/linux/riscv/rv64/libpthread.abilist + (GLIBC_2.27): Likewise. + * sysdeps/unix/sysv/linux/s390/s390-32/libpthread.abilist + (GLIBC_2.0): Likewise. + * sysdeps/unix/sysv/linux/s390/s390-64/libpthread.abilist + (GLIBC_2.2): Likewise. + * sysdeps/unix/sysv/linux/sh/libpthread.abilist (GLIBC_2.2): + Likewise. + * sysdeps/unix/sysv/linux/sparc/sparc32/libpthread.abilist + (GLIBC_2.0): Likewise. + * sysdeps/unix/sysv/linux/sparc/sparc64/libpthread.abilist + (GLIBC_2.2): Likewise. + * sysdeps/unix/sysv/linux/x86_64/64/libpthread.abilist + (GLIBC_2.2.5): Likewise. + * sysdeps/unix/sysv/linux/x86_64/x32/libpthread.abilist + (GLIBC_2.16): Likewise. + +2019-08-28 Florian Weimer + + [BZ #24902] + * login/Makefile (tests): Add tst-pututxline-lockfail. + (tst-pututxline-lockfail): Link with -lpthread. + * login/utmp_file.c (internal_getut_r): Remove buffer argument. + (__libc_getutid_r): Adjust. + (__libc_pututline): Likewise. Check for file_offset == -1. + * login/tst-pututxline-lockfail.c: New file. + +2019-08-28 Stefan Liebler + + * posix/tst-regex.c (do_test): Use tst-regex.input as input file. + * posix/tst-regex.input: New file. + +2019-08-23 Mihailo Stojanovic + + [BZ #24916] + * sysdeps/mips/Makefile [$(subdir) = elf] (tests): Add + tst-undefined-weak. + [$(subdir) = elf] (modules-names): Add tst-undefined-weak-lib. + [$(subdir) = elf] ($(objpfx)tst-undefined-weak): Add dependency. + * sysdeps/mips/tst-undefined-weak-lib.S: New file. + * sysdeps/mips/tst-undefined-weak.c: Likewise. + * sysdeps/unix/sysv/linux/mips/ldsodefs.h (VALID_ELF_ABIVERSION): + Increment highest valid ABIVERSION value. + +2019-08-23 Dragan Mladjenovic + + * sysdeps/unix/sysv/linux/mips/Makefile + (test-xfail-check-execstack): + Move under mips-has-gnustack != yes. + (CFLAGS-.o*, ASFLAGS-.o*): New rules. + Apply -Wa,-execstack if mips-force-execstack == yes. + * sysdeps/unix/sysv/linux/mips/configure: Regenerated. + * sysdeps/unix/sysv/linux/mips/configure.ac + (mips-force-execstack): New var. + Set to yes for hard-float builds with minimum_kernel < 4.8.0 + or minimum_kernel not set at all. + (mips-has-gnustack): New var. + Use value of libc_cv_as_noexecstack + if mips-force-execstack != yes, otherwise set to no. + +2019-08-23 Adhemerval Zanella + Florian Weimer + + * gmon/Versions (libc) [GLIBC_2.31]: New entry. + * sysdeps/unix/sysv/linux/arm/profil-counter.h (profil_counter): + Make a compat_symbol. + * sysdeps/unix/sysv/linux/sparc/profil-counter.h + (__profil_counter_global): Likewise. + + * debug/segfault.c (install_handler): Use SA_SIGINFO if defined. + * sysdeps/generic/profil-counter.h (__profil_counter): Cast to + uintptr_t. + * sysdeps/generic/sigcontextinfo.h (GET_PC): Rename to + sigcontext_get_pc and return aligned cast to uintptr_t. + * sysdeps/mach/hurd/i386/sigcontextinfo.h (GET_PC): Likewise. + * sysdeps/posix/profil.c (profil_count): Change PC argument to + uintptr_t. + (__profil): Use SA_SIGINFO. + * sysdeps/posix/sprofil.c (profil_count): Change PCP argument to + uintptr_t. + (__sprofil): Use SA_SIGINFO. + * sysdeps/unix/sysv/linux/profil-counter.h: New file. + * sysdeps/unix/sysv/linux/aarch64/profil-counter.h: Remove file. + * sysdeps/unix/sysv/linux/csky/profil-counter.h: Likewise. + * sysdeps/unix/sysv/linux/hppa/profil-counter.h: Likewise. + * sysdeps/unix/sysv/linux/i386/profil-counter.h: Likewise. + * sysdeps/unix/sysv/linux/ia64/profil-counter.h: Likewise. + * sysdeps/unix/sysv/linux/microblaze/profil-counter.h: Likewise. + * sysdeps/unix/sysv/linux/mips/profil-counter.h: Likewise. + * sysdeps/unix/sysv/linux/nios2/profil-counter.h: Likewise. + * sysdeps/unix/sysv/linux/powerpc/profil-counter.h: Likewise. + * sysdeps/unix/sysv/linux/x86_64/profil-counter.h: Likewise. + * sysdeps/unix/sysv/linux/riscv/profil-counter.h: Likewise. + * sysdeps/sysv/linux/s390/s390-32/profil-counter.h: Likewise. + * sysdeps/sysv/linux/s390/s390-64/profil-counter.h: Likewise. + * sysdeps/unix/sysv/linux/sh/profil-counter.h: Likewise. + * sysdeps/unix/sysv/linux/arm/profil-counter.h (__profil_counter): + Assume SA_SIGINFO and use sigcontext_get_pc instead of GET_PC. + * sysdeps/unix/sysv/linux/sparc/profil-counter.h: New file. + * sysdeps/unix/sysv/linux/sparc/sparc64/profil-counter.h: Remove file. + * sysdeps/unix/sysv/linux/sparc/sparc32/profil-counter.h: Likewise. + * sysdpes/unix/sysv/linux/aarch64/sigcontextinfo.h (SIGCONTEXT, + GET_PC, __sigaction, sigaction): Remove defines. + (sigcontext_get_pc): New function. + * sysdeps/unix/sysv/linux/alpha/sigcontextinfo.h: Likewise. + * sysdeps/unix/sysv/linux/arm/sigcontextinfo.h: Likewise. + * sysdeps/unix/sysv/linux/csky/sigcontextinfo.h: Likewise. + * sysdeps/unix/sysv/linux/hppa/sigcontextinfo.h: Likewise. + * sysdeps/unix/sysv/linux/i386/sigcontextinfo.h: Likewise. + * sysdeps/unix/sysv/linux/ia64/sigcontextinfo.h: Likewise. + * sysdeps/unix/sysv/linux/m68k/sigcontextinfo.h: Likewise. + * sysdeps/unix/sysv/linux/mips/sigcontextinfo.h: Likewise. + * sysdeps/unix/sysv/linux/nios2/sigcontextinfo.h: Likewise. + * sysdeps/unix/sysv/linux/s390/sigcontextinfo.h: Likewise. + * sysdeps/unix/sysv/linux/microblaze/sigcontextinfo.h: Likewise. + * sysdeps/unix/sysv/linux/powerpc/sigcontextinfo.h: Likewise. + * sysdeps/unix/sysv/linux/riscv/sigcontextinfo.h: Likewise. + * sysdeps/unix/sysv/linux/sh/sigcontextinfo.h: Likewise. + * sysdeps/sysv/linux/sparc/sparc32/sigcontextinfo.h: Likewise. + * sysdeps/sysv/linux/sparc/sparc64/sigcontextinfo.h: Likewise. + * sysdeps/unix/sysv/linux/x86_64/sigcontextinfo.h: Likewise. + * sysdeps/unix/sysv/linux/alpha/register-dump.h (register_dump): + Handle CTX argument as ucontext_t. + * sysdeps/unix/sysv/linux/i386/register-dump.h: Likewise. + Likewise. + * sysdeps/unix/sysv/linux/m68k/register-dump.h: Likewise. + * sysdeps/sysv/linux/s390/s390-32/register-dump.h: Likewise. + * sysdeps/sysv/linux/s390/s390-64/register-dump.h: Likewise. + * sysdeps/unix/sysv/linux/sh/register-dump.h: New file. + * sysdeps/unix/sysv/linux/sh/sh4/register-dump.h: Remove File. + * sysdeps/unix/sysv/linux/sh/sh3/register-dump.h: Likewise. + * sysdeps/unix/sysv/linux/sparc/sparc32/register-dump.h: Likewise. + * sysdeps/unix/sysv/linux/sparc/sparc64/register-dump.h: Likewise. + * sysdeps/unix/sysv/linux/Makefile (tests-internal): Add + tst-sigcontextinfo-get_pc. + * sysdeps/unix/sysv/linux/tst-sigcontextinfo-get_pc.c: New file. + (CFLAGS-tst-sigcontextinfo-get_pc.c): New rule. + +2019-08-23 Adhemerval Zanella + + * sysdeps/generic/single-thread.h (RTLD_SINGLE_THREAD_P): Add + definition. + +2019-08-23 Rafał Lużyński + + [BZ #24682] + * localedata/locales/bo_CN (first_weekday): Add, set to 2 (Monday). + * localedata/locales/ug_CN (first_weekday): Likewise. + * localedata/locales/zh_CN (first_weekday): Likewise. + +2019-08-22 Gustavo Romero + + * sysdeps/unix/sysv/linux/powerpc/sys/ucontext.h: Fix typos and + field name in mcontext_t struct. + +2019-08-22 Joseph Myers + + * resolv/tst-resolv-ai_idn-latin1.c (do_test): Mark test + unsupported with libidn2 before 2.0.5. + * resolv/tst-resolv-ai_idn.c (do_test): Likewise. + + * manual/time.texi (strftime): Document %Ob and %OB as C2X + features. + +2019-08-21 Paul Eggert + + Remove dead regex code + * posix/regex_internal.c (re_node_set_insert): + Remove unnecessary assignment. Reported by Tim Rühsen in: + https://lists.gnu.org/r/bug-gnulib/2019-08/msg00026.html + + Fix bad pointer / leak in regex code + This was found by Coverity (CID 1484201). [BZ#24844] + * posix/regex_internal.c (create_cd_newstate): Fix use of bad + pointer and/or memory leak when storage is exhausted. + +2019-08-21 Zack Weinberg + + * misc/syslog.c (__vsyslog_internal) + * time/getdate.c (__getdate_r) + * time/tst_wcsftime.c (main): + Use return value of time, not its argument. + + * string/strfry.c (strfry) + * sysdeps/mach/sleep.c (__sleep): + Remove unnecessary casts of NULL in calls to time. + +2019-08-21 Joseph Myers + + * math/tgmath.h [__HAVE_FLOAT128X]: Give error. + [(__HAVE_FLOAT64X && !__HAVE_FLOAT128) + || (__HAVE_FLOAT128 && !__HAVE_FLOAT64X)]: Likewise. + (__TGMATH_2_NARROW_F): Likewise. + (__TGMATH_2_NARROW_D): New macro. + (__TGMATH_2_NARROW_F16): Likewise. + (__TGMATH_2_NARROW_F32): Likewise. + (__TGMATH_2_NARROW_F64): Likewise. + (__TGMATH_2_NARROW_F32X): Likewise. + (__TGMATH_2_NARROW_F64X): Likewise. + [__HAVE_BUILTIN_TGMATH] (__TGMATH_NARROW_FUNCS_F): Likewise. + [__HAVE_BUILTIN_TGMATH] (__TGMATH_NARROW_FUNCS_F16): Likewise. + [__HAVE_BUILTIN_TGMATH] (__TGMATH_NARROW_FUNCS_F32): Likewise. + [__HAVE_BUILTIN_TGMATH] (__TGMATH_NARROW_FUNCS_F64): Likewise. + [__HAVE_BUILTIN_TGMATH] (__TGMATH_NARROW_FUNCS_F32X): Likewise. + [__GLIBC_USE (IEC_60559_BFP_EXT_C2X)] (fadd): Likewise. + [__GLIBC_USE (IEC_60559_BFP_EXT_C2X)] (dadd): Likewise. + [__GLIBC_USE (IEC_60559_BFP_EXT_C2X)] (fdiv): Likewise. + [__GLIBC_USE (IEC_60559_BFP_EXT_C2X)] (ddiv): Likewise. + [__GLIBC_USE (IEC_60559_BFP_EXT_C2X)] (fmul): Likewise. + [__GLIBC_USE (IEC_60559_BFP_EXT_C2X)] (dmul): Likewise. + [__GLIBC_USE (IEC_60559_BFP_EXT_C2X)] (fsub): Likewise. + [__GLIBC_USE (IEC_60559_BFP_EXT_C2X)] (dsub): Likewise. + [__GLIBC_USE (IEC_60559_TYPES_EXT) && __HAVE_FLOAT16] (f16add): + Likewise. + [__GLIBC_USE (IEC_60559_TYPES_EXT) && __HAVE_FLOAT16] (f16div): + Likewise. + [__GLIBC_USE (IEC_60559_TYPES_EXT) && __HAVE_FLOAT16] (f16mul): + Likewise. + [__GLIBC_USE (IEC_60559_TYPES_EXT) && __HAVE_FLOAT16] (f16sub): + Likewise. + [__GLIBC_USE (IEC_60559_TYPES_EXT) && __HAVE_FLOAT32] (f32add): + Likewise. + [__GLIBC_USE (IEC_60559_TYPES_EXT) && __HAVE_FLOAT32] (f32div): + Likewise. + [__GLIBC_USE (IEC_60559_TYPES_EXT) && __HAVE_FLOAT32] (f32mul): + Likewise. + [__GLIBC_USE (IEC_60559_TYPES_EXT) && __HAVE_FLOAT32] (f32sub): + Likewise. + [__GLIBC_USE (IEC_60559_TYPES_EXT) && __HAVE_FLOAT64 + && (__HAVE_FLOAT64X || __HAVE_FLOAT128)] (f64add): Likewise. + [__GLIBC_USE (IEC_60559_TYPES_EXT) && __HAVE_FLOAT64 + && (__HAVE_FLOAT64X || __HAVE_FLOAT128)] (f64div): Likewise. + [__GLIBC_USE (IEC_60559_TYPES_EXT) && __HAVE_FLOAT64 + && (__HAVE_FLOAT64X || __HAVE_FLOAT128)] (f64mul): Likewise. + [__GLIBC_USE (IEC_60559_TYPES_EXT) && __HAVE_FLOAT64 + && (__HAVE_FLOAT64X || __HAVE_FLOAT128)] (f64sub): Likewise. + [__GLIBC_USE (IEC_60559_TYPES_EXT) && __HAVE_FLOAT32X] (f32xadd): + Likewise. + [__GLIBC_USE (IEC_60559_TYPES_EXT) && __HAVE_FLOAT32X] (f32xdiv): + Likewise. + [__GLIBC_USE (IEC_60559_TYPES_EXT) && __HAVE_FLOAT32X] (f32xmul): + Likewise. + [__GLIBC_USE (IEC_60559_TYPES_EXT) && __HAVE_FLOAT32X] (f32xsub): + Likewise. + [__GLIBC_USE (IEC_60559_TYPES_EXT) && __HAVE_FLOAT64X + && (__HAVE_FLOAT128X || __HAVE_FLOAT128)] (f64xadd): Likewise. + [__GLIBC_USE (IEC_60559_TYPES_EXT) && __HAVE_FLOAT64X + && (__HAVE_FLOAT128X || __HAVE_FLOAT128)] (f64xdiv): Likewise. + [__GLIBC_USE (IEC_60559_TYPES_EXT) && __HAVE_FLOAT64X + && (__HAVE_FLOAT128X || __HAVE_FLOAT128)] (f64xmul): Likewise. + [__GLIBC_USE (IEC_60559_TYPES_EXT) && __HAVE_FLOAT64X + && (__HAVE_FLOAT128X || __HAVE_FLOAT128)] (f64xsub): Likewise. + * math/gen-tgmath-tests.py (Type): Add members + non_standard_real_argument_types_list, long_double_type, + complex_float64_type and float32x_ext_type. + (Type.__init__): Set the new members. + (Type.floating_type): Add new argument floatn. + (Type.real_floating_type): Likewise. + (Type.can_combine_types): Likewise. + (Type.combine_types): Likewise. + (Type.init_types): Create internal Float32x_ext type. + (Tests.__init__): Define Float32x_ext in generated C code. + (Tests.add_tests): Handle narrowing functions. + (Tests.add_all_tests): Likewise. + (Tests.tests_text): Allow variation in mant_dig for narrowing + functions with compilers before GCC 8. + * math/Makefile (tgmath3-narrow-types): New variable. + (tgmath3-narrow-macros): Likewise. + (tgmath3-macros): Add $(tgmath3-narrow-macros). + +2019-08-20 Andreas Schwab + + * sysdeps/i386/fpu/libm-test-ulps: Update. + +2019-08-19 Carlos O'Donell + + * nscd/nscd.conf: Add warning and comment about shared option. + +2019-08-19 Carlos O'Donell + + * nss/nsswitch.conf: Expand comments, and simplify defaults. + * manual/nss.texi (NSS Basics): List all known databases. + (Services in the NSS configuration): Mention automount. + +2019-08-19 Florian Weimer + + Do not print backtraces on fatal errors. + * debug/fortify_fail.c (__libc_argv): Remove declaration. + (__fortify_fail_abort): Remove definition. + (__fortify_fail): Call __libc_message directly. + * debug/stack_chk_fail.c (__libc_argv): Remove declaration. + (__stack_chk_fail): Call __fortify_fail instead of + __fortify_fail_abort. + * include/stdio.h (__fortify_fail_abort): Remove declaration. + * sysdeps/posix/libc_fatal.c (BEFORE_ABORT, before_abort): Remove + definitions. + (__libc_message): Do not handle do_backtrace. Do not call + BEFORE_ABORT. + (__libc_fatal): Do not pass do_backtrace to __libc_message. + * sysdeps/unix/sysv/linux/libc_fatal.c (BEFORE_ABORT) + (before_abort): Remove definitions. + +2019-08-16 Florian Weimer + + nptl: Move pthread_attr_getdetachstate implementation into libc. + * nptl/Makefile (routines): Add pthread_attr_getdetachstate. + (libpthread-routines): Remove pthread_attr_getdetachstate. + * nptl/Versions (libpthread GLIBC_2.0): Remove + pthread_attr_getdetachstate. + * nptl/forward.c (pthread_attr_getdetachstate): Remove definition. + * nptl/nptl-init.c (pthread_functions): Remove initializer for + ptr_pthread_attr_getdetachstate. + * sysdeps/nptl/pthread-functions.h (struct pthread_functions): + Remove ptr_pthread_attr_getdetachstate member. + * sysdeps/unix/sysv/linux/aarch64/libpthread.abilist (GLIBC_2.17): + Remove pthread_attr_getdetachstate. + * sysdeps/unix/sysv/linux/alpha/libpthread.abilist (GLIBC_2.0): + Likewise. + * sysdeps/unix/sysv/linux/arm/libpthread.abilist (GLIBC_2.4): + Likewise. + * sysdeps/unix/sysv/linux/csky/libpthread.abilist (GLIBC_2.29): + Likewise. + * sysdeps/unix/sysv/linux/hppa/libpthread.abilist (GLIBC_2.2): + Likewise. + * sysdeps/unix/sysv/linux/i386/libpthread.abilist (GLIBC_2.0): + Likewise. + * sysdeps/unix/sysv/linux/ia64/libpthread.abilist (GLIBC_2.2): + Likewise. + * sysdeps/unix/sysv/linux/m68k/coldfire/libpthread.abilist + (GLIBC_2.4): Likewise. + * sysdeps/unix/sysv/linux/m68k/m680x0/libpthread.abilist + (GLIBC_2.0): Likewise. + * sysdeps/unix/sysv/linux/microblaze/libpthread.abilist + (GLIBC_2.18): Likewise. + * sysdeps/unix/sysv/linux/mips/mips32/libpthread.abilist + (GLIBC_2.0): Likewise. + * sysdeps/unix/sysv/linux/mips/mips64/libpthread.abilist + (GLIBC_2.0): Likewise. + * sysdeps/unix/sysv/linux/nios2/libpthread.abilist (GLIBC_2.21): + Likewise. + * sysdeps/unix/sysv/linux/powerpc/powerpc32/libpthread.abilist + (GLIBC_2.0): Likewise. + * sysdeps/unix/sysv/linux/powerpc/powerpc64/be/libpthread.abilist + (GLIBC_2.3): Likewise. + * sysdeps/unix/sysv/linux/powerpc/powerpc64/le/libpthread.abilist + (GLIBC_2.17): Likewise. + * sysdeps/unix/sysv/linux/riscv/rv64/libpthread.abilist + (GLIBC_2.27): Likewise. + * sysdeps/unix/sysv/linux/s390/s390-32/libpthread.abilist + (GLIBC_2.0): Likewise. + * sysdeps/unix/sysv/linux/s390/s390-64/libpthread.abilist + (GLIBC_2.2): Likewise. + * sysdeps/unix/sysv/linux/sh/libpthread.abilist (GLIBC_2.2): + Likewise. + * sysdeps/unix/sysv/linux/sparc/sparc32/libpthread.abilist + (GLIBC_2.0): Likewise. + * sysdeps/unix/sysv/linux/sparc/sparc64/libpthread.abilist + (GLIBC_2.2): Likewise. + * sysdeps/unix/sysv/linux/x86_64/64/libpthread.abilist + (GLIBC_2.2.5): Likewise. + * sysdeps/unix/sysv/linux/x86_64/x32/libpthread.abilist + (GLIBC_2.16): Likewise. + +2019-08-16 Joseph Myers + + * math/libm-test-compat_totalorder.inc (do_test) + [TEST_COMPAT (libm, GLIBC_2_25, GLIBC_2_31)]: Change condition to + [TEST_COMPAT (libm, COMPAT_VER, GLIBC_2_31)]. + * math/libm-test-compat_totalordermag.inc (do_test) + [TEST_COMPAT (libm, GLIBC_2_25, GLIBC_2_31)]: Likewise. + +2019-08-15 Florian Weimer + + nptl: Move pthread_attr_init implementation into libc. + * nptl/Makefile (routines): Add pthread_attr_init. + (libpthread-routines): Remove pthread_attr_init. + * nptl/Versions (libpthread GLIBC_2.0): Remove pthread_attr_init. + (libpthread GLIBC_2.0): Likewise. + * nptl/pthread_attr_init.c: Check for libc compat version instead + of libpthread compat version. + * nptl/forward.c (__pthread_attr_init_2_0) + (__pthread_attr_init_2_1): Remove definitions. + * nptl/nptl-init.c (pthread_functions): Remove initializers for + ptr___pthread_attr_init_2_0, ptr___pthread_attr_init_2_1. + * sysdeps/nptl/pthread-functions.h (struct pthread_functions): + Remove members ptr___pthread_attr_init_2_0, + ptr___pthread_attr_init_2_1. + * sysdeps/unix/sysv/linux/aarch64/libpthread.abilist (GLIBC_2.17): + Remove pthread_attr_init. + * sysdeps/unix/sysv/linux/alpha/libpthread.abilist (GLIBC_2.0): + Likewise. + (GLIBC_2.1): Likewise. + * sysdeps/unix/sysv/linux/arm/libpthread.abilist (GLIBC_2.4): + Likewise. + * sysdeps/unix/sysv/linux/csky/libpthread.abilist (GLIBC_2.29): + Likewise. + * sysdeps/unix/sysv/linux/hppa/libpthread.abilist (GLIBC_2.2): + Likewise. + * sysdeps/unix/sysv/linux/i386/libpthread.abilist (GLIBC_2.0): + Likewise. + (GLIBC_2.1): Likewise. + * sysdeps/unix/sysv/linux/ia64/libpthread.abilist (GLIBC_2.2): + Likewise. + * sysdeps/unix/sysv/linux/m68k/coldfire/libpthread.abilist + (GLIBC_2.4): Likewise. + * sysdeps/unix/sysv/linux/m68k/m680x0/libpthread.abilist + (GLIBC_2.0): Likewise. + (GLIBC_2.1): Likewise. + * sysdeps/unix/sysv/linux/microblaze/libpthread.abilist + (GLIBC_2.18): Likewise. + * sysdeps/unix/sysv/linux/mips/mips32/libpthread.abilist + (GLIBC_2.0): Likewise. + (GLIBC_2.1): Likewise. + * sysdeps/unix/sysv/linux/mips/mips64/libpthread.abilist + (GLIBC_2.0): Likewise. + (GLIBC_2.1): Likewise. + * sysdeps/unix/sysv/linux/nios2/libpthread.abilist (GLIBC_2.21): + Likewise. + * sysdeps/unix/sysv/linux/powerpc/powerpc32/libpthread.abilist + (GLIBC_2.0): Likewise. + (GLIBC_2.1): Likewise. + * sysdeps/unix/sysv/linux/powerpc/powerpc64/be/libpthread.abilist + (GLIBC_2.3): Likewise. + * sysdeps/unix/sysv/linux/powerpc/powerpc64/le/libpthread.abilist + (GLIBC_2.17): Likewise. + * sysdeps/unix/sysv/linux/riscv/rv64/libpthread.abilist + (GLIBC_2.27): Likewise. + * sysdeps/unix/sysv/linux/s390/s390-32/libpthread.abilist + (GLIBC_2.0): Likewise. + (GLIBC_2.1): Likewise. + * sysdeps/unix/sysv/linux/s390/s390-64/libpthread.abilist + (GLIBC_2.2): Likewise. + * sysdeps/unix/sysv/linux/sh/libpthread.abilist (GLIBC_2.2): + Likewise. + * sysdeps/unix/sysv/linux/sparc/sparc32/libpthread.abilist + (GLIBC_2.0): Likewise. + (GLIBC_2.1): Likewise. + * sysdeps/unix/sysv/linux/sparc/sparc64/libpthread.abilist + (GLIBC_2.2): Likewise. + * sysdeps/unix/sysv/linux/x86_64/64/libpthread.abilist + (GLIBC_2.2.5): Likewise. + * sysdeps/unix/sysv/linux/x86_64/x32/libpthread.abilist + (GLIBC_2.16): Likewise. + +2019-08-15 Florian Weimer + + [BZ #24900] + * elf/dl-object.c (_dl_new_object): Do not store pathnames in the + new object in __RTLD_OPENEXEC mode (except for the origin). + * elf/tst-dlopen-aout.c (check_dlopen_failure): New function with + check for the error message. + (do_test): Call it. Add check using relative path. + * elf/Makefile (tests-container): Add tst-dlopen-aout-container. + (tst-dlopen-aout-container): Link with libpthread. + (LDFLAGS-tst-dlopen-aout-container): Set RPATH to $ORIGIN. + +2019-08-15 Joseph Myers + + * math/bits/mathcalls.h + [__GLIBC_USE (IEC_60559_BFP_EXT) || __MATH_DECLARING_FLOATN] + (totalorder): Take pointer arguments. + [__GLIBC_USE (IEC_60559_BFP_EXT) || __MATH_DECLARING_FLOATN] + (totalordermag): Likewise. + * manual/arith.texi (totalorder): Likewise. + (totalorderf): Likewise. + (totalorderl): Likewise. + (totalorderfN): Likewise. + (totalorderfNx): Likewise. + (totalordermag): Likewise. + (totalordermagf): Likewise. + (totalordermagl): Likewise. + (totalordermagfN): Likewise. + (totalordermagfNx): Likewise. + * math/tgmath.h (__TGMATH_BINARY_REAL_RET_ONLY): Remove macro. + [__GLIBC_USE (IEC_60559_BFP_EXT)] (totalorder): Likewise. + [__GLIBC_USE (IEC_60559_BFP_EXT)] (totalordermag): Likewise. + * math/Versions (GLIBC_2.31): Add totalorder, totalorderf, + totalorderl, totalordermag, totalordermagf, totalordermagl, + totalorderf32, totalorderf64, totalorderf32x, totalordermagf32, + totalordermagf64, totalordermagf32x, totalorderf64x, + totalordermagf64x, totalorderf128 and totalordermagf128. + * math/Makefile (libm-test-funcs-noauto): Add compat_totalorder + and compat_totalordermag. + (libm-test-funcs-compat): New variable. + (libm-tests-compat): Likewise. + (tests): Do not include compat tests. + (tests-internal): Add compat tests. + ($(foreach t,$(libm-tests-base), + $(objpfx)$(t)-compat_totalorder.o)): Depend + on $(objpfx)libm-test-totalorder.c. + ($(foreach t,$(libm-tests-base), + $(objpfx)$(t)-compat_totalordermag.o): Depend on + $(objpfx)libm-test-totalordermag.c. + (tgmath3-macros): Remove totalorder and totalordermag. + * math/libm-test-compat_totalorder.inc: New file. + * math/libm-test-compat_totalordermag.inc: Likewise. + * math/libm-test-driver.c (struct test_ff_i_data): Update comment. + (RUN_TEST_fpfp_b): New macro. + (RUN_TEST_LOOP_fpfp_b): Likewise. + * math/libm-test-totalorder.inc (totalorder_test_data): Use + TEST_fpfp_b. + (totalorder_test): Condition on [!COMPAT_TEST]. + (do_test): Likewise. + * math/libm-test-totalordermag.inc (totalordermag_test_data): Use + TEST_fpfp_b. + (totalordermag_test): Condition on [!COMPAT_TEST]. + (do_test): Likewise. + * math/gen-tgmath-tests.py (Tests.add_all_tests): Remove + totalorder and totalordermag. + * math/test-tgmath.c (NCALLS): Change to 132. + (F(compile_test)): Do not call totalorder or totalordermag. + (F(totalorder)): Remove. + (F(totalordermag)): Likewise. + * include/float.h (__STDC_WANT_IEC_60559_TYPES_EXT__): Do not + define if [__STDC_WANT_IEC_60559_TYPES_EXT__]. + * include/setjmp.h [!_ISOMAC] (STR_HELPER): Rename to + SJSTR_HELPER. + [!_ISOMAC] (STR): Rename to SJSTR. Update call to STR_HELPER. + [!_ISOMAC] (TEST_SIZE): Update call to STR. + [!_ISOMAC] (TEST_ALIGN): Likewise. + [!_ISOMAC] (TEST_OFFSET): Likewise. + * sysdeps/ieee754/dbl-64/s_totalorder.c: Include + and . + (__totalorder): Take pointer arguments. Add symbol versions and + compat symbols. + * sysdeps/ieee754/dbl-64/s_totalordermag.c: Include + and . + (__totalordermag): Take pointer arguments. Add symbol versions + and compat symbols. + * sysdeps/ieee754/dbl-64/wordsize-64/s_totalorder.c: Include + and . + (__totalorder): Take pointer arguments. Add symbol versions and + compat symbols. + * sysdeps/ieee754/dbl-64/wordsize-64/s_totalordermag.c: Include + and . + (__totalordermag): Take pointer arguments. Add symbol versions + and compat symbols. + * sysdeps/ieee754/float128/float128_private.h + (__totalorder_compatl): New macro. + (__totalordermag_compatl): Likewise. + * sysdeps/ieee754/flt-32/s_totalorderf.c: Include + and . + (__totalorderf): Take pointer arguments. Add symbol versions and + compat symbols. + * sysdeps/ieee754/flt-32/s_totalordermagf.c: Include + and . + (__totalordermagf): Take pointer arguments. Add symbol versions + and compat symbols. + * sysdeps/ieee754/ldbl-128/s_totalorderl.c: Include + and . + (__totalorderl): Take pointer arguments. Add symbol versions and + compat symbols. + * sysdeps/ieee754/ldbl-128/s_totalordermagl.c: Include + and . + (__totalordermagl): Take pointer arguments. Add symbol versions + and compat symbols. + * sysdeps/ieee754/ldbl-128ibm/s_totalorderl.c: Include + . + (__totalorderl): Take pointer arguments. Add symbol versions and + compat symbols. + * sysdeps/ieee754/ldbl-128ibm/s_totalordermagl.c: Include + . + (__totalordermagl): Take pointer arguments. Add symbol versions + and compat symbols. + * sysdeps/ieee754/ldbl-96/s_totalorderl.c: Include + and . + (__totalorderl): Take pointer arguments. Add symbol versions and + compat symbols. + * sysdeps/ieee754/ldbl-96/s_totalordermagl.c: Include + and . + (__totalordermagl): Take pointer arguments. Add symbol versions + and compat symbols. + * sysdeps/ieee754/ldbl-opt/nldbl-totalorder.c (totalorderl): Take + pointer arguments. + * sysdeps/ieee754/ldbl-opt/nldbl-totalordermag.c (totalordermagl): + Likewise. + * sysdeps/ieee754/ldbl-128ibm/test-totalorderl-ldbl-128ibm.c + (do_test): Update calls to totalorderl and totalordermagl. + * sysdeps/ieee754/ldbl-96/test-totalorderl-ldbl-96.c (do_test): + Update calls to totalorderl and totalordermagl. + * sysdeps/mach/hurd/i386/libm.abilist: Update. + * sysdeps/unix/sysv/linux/aarch64/libm.abilist: Likewise. + * sysdeps/unix/sysv/linux/alpha/libm.abilist: Likewise. + * sysdeps/unix/sysv/linux/arm/libm.abilist: Likewise. + * sysdeps/unix/sysv/linux/csky/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/be/libm.abilist: + Likewise. + * sysdeps/unix/sysv/linux/powerpc/powerpc64/le/libm.abilist: + Likewise. + * sysdeps/unix/sysv/linux/riscv/rv64/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/x86_64/64/libm.abilist: Likewise. + * sysdeps/unix/sysv/linux/x86_64/x32/libm.abilist: Likewise. + +2019-08-15 Florian Weimer + + [BZ #24899] + * sysdeps/gnu/bits/utmpx.h (struct utmpx): Add + __attribute_nonstring__ to ut_line, ut_id, ut_user, ut_host. + * sysdeps/unix/sysv/linux/s390/bits/utmpx.h (struct utmpx): + Likewise. + * sysdeps/gnu/bits/utmp.h (struct utmp): Add + __attribute_nonstring__ to ut_id. + * sysdeps/unix/sysv/linux/s390/bits/utmpx.h (struct utmp): + Likewise. + +2019-08-15 Florian Weimer + + [BZ #24880] + * login/utmp_file.c (file_locking_failed): Use struct flock64. + (file_locking_unlock): Likewise. + +2019-08-15 Florian Weimer + + [BZ #24879] + login: Disarm timer after utmp lock acquisition. + * login/utmp_file.c (struct file_locking): Remove. + (try_file_lock): Adjust. + (file_lock_restore): Remove function. + (__libc_getutent_r): . + (internal_getut_r): Likewise. + (__libc_getutline_r): Likewise. + (__libc_pututline): Likewise. + (__libc_updwtmp): Likewise. + +2019-08-15 Florian Weimer + + nptl: Remove pthread_self compatibility symbol from libpthread. + * nptl/Versions (libpthread GLIBC_2.0): Remove pthread_self, + pthread_equal. + * nptl/Makefile (libpthread-routines): Remove compat-pthread_self. + * nptl/compat-pthread_self.c: Remove file. + * sysdeps/unix/sysv/linux/aarch64/libpthread.abilist (GLIBC_2.17): + Remove pthread_self. + * sysdeps/unix/sysv/linux/alpha/libpthread.abilist (GLIBC_2.0): + Likewise. + * sysdeps/unix/sysv/linux/arm/libpthread.abilist (GLIBC_2.4): + Likewise. + * sysdeps/unix/sysv/linux/hppa/libpthread.abilist (GLIBC_2.2): + Likewise. + * sysdeps/unix/sysv/linux/i386/libpthread.abilist (GLIBC_2.0): + Likewise. + * sysdeps/unix/sysv/linux/ia64/libpthread.abilist (GLIBC_2.2): + Likewise. + * sysdeps/unix/sysv/linux/m68k/coldfire/libpthread.abilist + (GLIBC_2.4): Likewise. + * sysdeps/unix/sysv/linux/m68k/m680x0/libpthread.abilist + (GLIBC_2.0): Likewise. + * sysdeps/unix/sysv/linux/microblaze/libpthread.abilist + (GLIBC_2.18): Likewise. + * sysdeps/unix/sysv/linux/mips/mips32/libpthread.abilist + (GLIBC_2.0): Likewise. + * sysdeps/unix/sysv/linux/mips/mips64/libpthread.abilist + (GLIBC_2.0): Likewise. + * sysdeps/unix/sysv/linux/nios2/libpthread.abilist (GLIBC_2.21): + Likewise. + * sysdeps/unix/sysv/linux/powerpc/powerpc32/libpthread.abilist + (GLIBC_2.0): Likewise. + * sysdeps/unix/sysv/linux/powerpc/powerpc64/be/libpthread.abilist + (GLIBC_2.3): Likewise. + * sysdeps/unix/sysv/linux/powerpc/powerpc64/le/libpthread.abilist + (GLIBC_2.17): Likewise. + * sysdeps/unix/sysv/linux/s390/s390-32/libpthread.abilist + (GLIBC_2.0): Likewise. + * sysdeps/unix/sysv/linux/s390/s390-64/libpthread.abilist + (GLIBC_2.2): Likewise. + * sysdeps/unix/sysv/linux/sh/libpthread.abilist (GLIBC_2.2): + Likewise. + * sysdeps/unix/sysv/linux/sparc/sparc32/libpthread.abilist + (GLIBC_2.0): Likewise. + * sysdeps/unix/sysv/linux/sparc/sparc64/libpthread.abilist + (GLIBC_2.2): Likewise. + * sysdeps/unix/sysv/linux/x86_64/64/libpthread.abilist + (GLIBC_2.2.5): Likewise. + * sysdeps/unix/sysv/linux/x86_64/x32/libpthread.abilist + (GLIBC_2.16): Likewise. + +2019-08-15 Florian Weimer + + nptl: Move pthread_attr_destroy implementation into libc. + * nptl/Makefile (routines): Add pthread_attr_destroy. + (libpthread-routines): Remove pthread_attr_destroy. + * nptl/Versions (libpthread GLIBC_2.0): Remove + pthread_attr_destroy. + * nptl/pthread_attr_destroy.c (__pthread_attr_destroy): Check for + libc compat version instead of libpthread compat version. + * nptl/forward.c (pthread_attr_destroy): Remove definition. + * nptl/nptl-init.c (pthread_functions): Remove initializer for + ptr_pthread_attr_destroy. + * sysdeps/nptl/pthread-functions.h (struct pthread_functions): + Remove ptr_pthread_attr_destroy member. + * sysdeps/unix/sysv/linux/aarch64/libpthread.abilist (GLIBC_2.17): + Remove pthread_attr_destroy. + * sysdeps/unix/sysv/linux/alpha/libpthread.abilist (GLIBC_2.0): + Likewise. + * sysdeps/unix/sysv/linux/arm/libpthread.abilist (GLIBC_2.4): + Likewise. + * sysdeps/unix/sysv/linux/csky/libpthread.abilist (GLIBC_2.29): + Likewise. + * sysdeps/unix/sysv/linux/hppa/libpthread.abilist (GLIBC_2.2): + Likewise. + * sysdeps/unix/sysv/linux/i386/libpthread.abilist (GLIBC_2.0): + Likewise. + * sysdeps/unix/sysv/linux/ia64/libpthread.abilist (GLIBC_2.2): + Likewise. + * sysdeps/unix/sysv/linux/m68k/coldfire/libpthread.abilist + (GLIBC_2.4): Likewise. + * sysdeps/unix/sysv/linux/m68k/m680x0/libpthread.abilist + (GLIBC_2.0): Likewise. + * sysdeps/unix/sysv/linux/microblaze/libpthread.abilist + (GLIBC_2.18): Likewise. + * sysdeps/unix/sysv/linux/mips/mips32/libpthread.abilist + (GLIBC_2.0): Likewise. + * sysdeps/unix/sysv/linux/mips/mips64/libpthread.abilist + (GLIBC_2.0): Likewise. + * sysdeps/unix/sysv/linux/nios2/libpthread.abilist (GLIBC_2.21): + Likewise. + * sysdeps/unix/sysv/linux/powerpc/powerpc32/libpthread.abilist + (GLIBC_2.0): Likewise. + * sysdeps/unix/sysv/linux/powerpc/powerpc64/be/libpthread.abilist + (GLIBC_2.3): Likewise. + * sysdeps/unix/sysv/linux/powerpc/powerpc64/le/libpthread.abilist + (GLIBC_2.17): Likewise. + * sysdeps/unix/sysv/linux/riscv/rv64/libpthread.abilist + (GLIBC_2.27): Likewise. + * sysdeps/unix/sysv/linux/s390/s390-32/libpthread.abilist + (GLIBC_2.0): Likewise. + * sysdeps/unix/sysv/linux/s390/s390-64/libpthread.abilist + (GLIBC_2.2): Likewise. + * sysdeps/unix/sysv/linux/sh/libpthread.abilist (GLIBC_2.2): + Likewise. + * sysdeps/unix/sysv/linux/sparc/sparc32/libpthread.abilist + (GLIBC_2.0): Likewise. + * sysdeps/unix/sysv/linux/sparc/sparc64/libpthread.abilist + (GLIBC_2.2): Likewise. + * sysdeps/unix/sysv/linux/x86_64/64/libpthread.abilist + (GLIBC_2.2.5): Likewise. + * sysdeps/unix/sysv/linux/x86_64/x32/libpthread.abilist + (GLIBC_2.16): Likewise. + +2019-08-15 Andreas Schwab + + * sysdeps/i386/fpu/libm-test-ulps: Update. + +2019-08-15 Florian Weimer + + * malloc/Makefile (tests): Only add tst-mxfast for + $(have-tunables). + * malloc/tst-mxfast.c: Fix copyright year. + (do_test): Fix GNU style issues. Use TEST_COMPARE instead of + assert for checks. + +2019-08-15 Florian Weimer + + * login/utmp_file.c (__libc_updwtmp): Unlock the right file + descriptor. + * login/Makefile (tests): Add tst-updwtmpx. + * login/tst-updwtmpx.c: New file. + +2019-08-15 Florian Weimer + + nptl: Move pthread_equal implementation into libc. + * nptl/Makefile (routines): Add pthread_equal. + * nptl/forward.c (pthread_equal): Remove definition. + * nptl/nptl-init.c (pthread_functions): Remove initializer for + ptr_pthread_equal. + * sysdeps/nptl/pthread-functions.h (struct pthread_functions): + Remove ptr_pthread_equal member. + * sysdeps/unix/sysv/linux/aarch64/libpthread.abilist (GLIBC_2.17): + Remove pthread_equal. + * sysdeps/unix/sysv/linux/alpha/libpthread.abilist (GLIBC_2.0): + Likewise. + * sysdeps/unix/sysv/linux/arm/libpthread.abilist (GLIBC_2.4): + Likewise. + * sysdeps/unix/sysv/linux/csky/libpthread.abilist (GLIBC_2.29): + Likewise. + * sysdeps/unix/sysv/linux/hppa/libpthread.abilist (GLIBC_2.2): + Likewise. + * sysdeps/unix/sysv/linux/i386/libpthread.abilist (GLIBC_2.0): + Likewise. + * sysdeps/unix/sysv/linux/ia64/libpthread.abilist (GLIBC_2.2): + Likewise. + * sysdeps/unix/sysv/linux/m68k/coldfire/libpthread.abilist + (GLIBC_2.4): Likewise. + * sysdeps/unix/sysv/linux/m68k/m680x0/libpthread.abilist + (GLIBC_2.0): Likewise. + * sysdeps/unix/sysv/linux/microblaze/libpthread.abilist + (GLIBC_2.18): Likewise. + * sysdeps/unix/sysv/linux/mips/mips32/libpthread.abilist + (GLIBC_2.0): Likewise. + * sysdeps/unix/sysv/linux/mips/mips64/libpthread.abilist + (GLIBC_2.0): Likewise. + * sysdeps/unix/sysv/linux/nios2/libpthread.abilist (GLIBC_2.21): + Likewise. + * sysdeps/unix/sysv/linux/powerpc/powerpc32/libpthread.abilist + (GLIBC_2.0): Likewise. + * sysdeps/unix/sysv/linux/powerpc/powerpc64/be/libpthread.abilist + (GLIBC_2.3): Likewise. + * sysdeps/unix/sysv/linux/powerpc/powerpc64/le/libpthread.abilist + (GLIBC_2.17): Likewise. + * sysdeps/unix/sysv/linux/riscv/rv64/libpthread.abilist + (GLIBC_2.27): Likewise. + * sysdeps/unix/sysv/linux/s390/s390-32/libpthread.abilist + (GLIBC_2.0): Likewise. + * sysdeps/unix/sysv/linux/s390/s390-64/libpthread.abilist + (GLIBC_2.2): Likewise. + * sysdeps/unix/sysv/linux/sh/libpthread.abilist (GLIBC_2.2): + Likewise. + * sysdeps/unix/sysv/linux/sparc/sparc32/libpthread.abilist + (GLIBC_2.0): Likewise. + * sysdeps/unix/sysv/linux/sparc/sparc64/libpthread.abilist + (GLIBC_2.2): Likewise. + * sysdeps/unix/sysv/linux/x86_64/64/libpthread.abilist + (GLIBC_2.2.5): Likewise. + * sysdeps/unix/sysv/linux/x86_64/x32/libpthread.abilist + (GLIBC_2.16): Likewise. + +2019-08-14 Florian Weimer + + * support/support_descriptors.c: Include . + +2019-08-14 Feng Xue + + * sysdeps/aarch64/multiarch/memset_base64.S (DC_ZVA_THRESHOLD): + Disable DC ZVA code if this macro is defined as zero. + * sysdeps/aarch64/multiarch/memset_emag.S (DC_ZVA_THRESHOLD): + Change to zero to disable using DC ZVA. + +2019-08-13 Joseph Myers + + * bits/libc-header-start.h (__GLIBC_USE_IEC_60559_FUNCS_EXT): + Update comment. + (__GLIBC_USE_IEC_60559_FUNCS_EXT_C2X): New macro. + * bits/math-finite.h [__GLIBC_USE (IEC_60559_FUNCS_EXT)]: Change + to [__GLIBC_USE (IEC_60559_FUNCS_EXT_C2X)]. + * math/bits/mathcalls.h [__GLIBC_USE (IEC_60559_FUNCS_EXT)]: + Likewise. + +2019-08-13 Florian Weimer + + * login/utmp_file.c (LOCK_FILE, LOCKING_FAILED, UNLOCK_FILE): + Remove macros. + (struct file_locking): New. + (try_file_lock, file_unlock, file_lock_restore): New functions. + (__libc_getutent_r): Use the new functions. + (internal_getut_r): Likewise. + (__libc_getutline_r): Likewise. + (__libc_pututline): Likewise. + (__libc_updwtmp): Likewise. + +2019-08-13 Joseph Myers + + * bits/libc-header-start.h (__GLIBC_USE_IEC_60559_BFP_EXT): Update + comment. + (__GLIBC_USE_IEC_60559_BFP_EXT_C2X): New macro. + * bits/fenv.h [__GLIBC_USE (IEC_60559_BFP_EXT)]: Change to + [__GLIBC_USE (IEC_60559_BFP_EXT_C2X)]. + * include/limits.h [__GLIBC_USE (IEC_60559_BFP_EXT)]: Likewise. + * math/fenv.h [__GLIBC_USE (IEC_60559_BFP_EXT)]: Likewise. + * math/math.h [__GLIBC_USE (IEC_60559_BFP_EXT)]: Likewise. + * stdlib/bits/stdlib-ldbl.h [__GLIBC_USE (IEC_60559_BFP_EXT)]: + Likewise. + * stdlib/stdint.h [__GLIBC_USE (IEC_60559_BFP_EXT)]: Likewise. + * stdlib/stdlib.h [__GLIBC_USE (IEC_60559_BFP_EXT)]: Likewise. + * sysdeps/aarch64/bits/fenv.h [__GLIBC_USE (IEC_60559_BFP_EXT)]: + Likewise. + * sysdeps/alpha/fpu/bits/fenv.h [__GLIBC_USE (IEC_60559_BFP_EXT)]: + Likewise. + * sysdeps/arm/bits/fenv.h [__GLIBC_USE (IEC_60559_BFP_EXT)]: + Likewise. + * sysdeps/csky/bits/fenv.h [__GLIBC_USE (IEC_60559_BFP_EXT)]: + Likewise. + * sysdeps/hppa/fpu/bits/fenv.h [__GLIBC_USE (IEC_60559_BFP_EXT)]: + Likewise. + * sysdeps/ia64/bits/fenv.h [__GLIBC_USE (IEC_60559_BFP_EXT)]: + Likewise. + * sysdeps/m68k/bits/fenv.h [__GLIBC_USE (IEC_60559_BFP_EXT)]: + Likewise. + * sysdeps/microblaze/bits/fenv.h [__GLIBC_USE + (IEC_60559_BFP_EXT)]: Likewise. + * sysdeps/mips/bits/fenv.h [__GLIBC_USE (IEC_60559_BFP_EXT)]: + Likewise. + * sysdeps/nios2/bits/fenv.h [__GLIBC_USE (IEC_60559_BFP_EXT)]: + Likewise. + * sysdeps/powerpc/bits/fenv.h [__GLIBC_USE (IEC_60559_BFP_EXT)]: + Likewise. + * sysdeps/riscv/bits/fenv.h [__GLIBC_USE (IEC_60559_BFP_EXT)]: + Likewise. + * sysdeps/s390/fpu/bits/fenv.h [__GLIBC_USE (IEC_60559_BFP_EXT)]: + Likewise. + * sysdeps/sh/bits/fenv.h [__GLIBC_USE (IEC_60559_BFP_EXT)]: + Likewise. + * sysdeps/sparc/fpu/bits/fenv.h [__GLIBC_USE (IEC_60559_BFP_EXT)]: + Likewise. + * sysdeps/x86/fpu/bits/fenv.h [__GLIBC_USE (IEC_60559_BFP_EXT)]: + Likewise. + * math/bits/mathcalls.h [__GLIBC_USE (IEC_60559_BFP_EXT)]: + Likewise, except for totalorder, totalordermag, getpayload, + setpayload and setpayloadsig. + * math/tgmath.h [__GLIBC_USE (IEC_60559_BFP_EXT)]: Likewise, + except for totalorder and totalordermag. + + * string/string.h (memccpy): Also declare if [__GLIBC_USE (ISOC2X)]. + (strdup): Likewise. + (strndup): Likewise. + + * include/features.h (_ISOC2X_SOURCE): New feature test macro. + Undefine and define to 1 if [_GNU_SOURCE]. + (__GLIBC_USE_ISOC2X): New macro. Undefine and redefine depending + on [_ISOC2X_SOURCE] and [__STDC_VERSION__ > 201710L]. + (__USE_ISOC11): Also define to 1 if [_ISOC2X_SOURCE]. + (__USE_ISOC99): Likewise. + (__USE_ISOC95): Likewise. + * manual/creature.texi (_ISOC2X_SOURCE): Document. + +2019-08-13 Florian Weimer + + * login/getutid_r.c (__getutid_r): _HAVE_UT_ID and _HAVE_UT_TYPE + are always true. + * login/getutmp.c (getutmp): _HAVE_UT_TYPE, _HAVE_UT_PID, + _HAVE_UT_ID, _HAVE_UT_HOST, _HAVE_UT_TV are always true. + * login/getutmpx.c (getutmpx): Likewise. + * login/login.c (login): _HAVE_UT_TYPE, _HAVE_UT_PID are always + true. + * login/logout.c (logout): _HAVE_UT_TYPE, _HAVE_UT_HOST, + _HAVE_UT_TV are always true. + * login/logwtmp.c (logwtmp): _HAVE_UT_PID, _HAVE_UT_TYPE, + _HAVE_UT_HOST, _HAVE_UT_TV are always true. + * login/tst-utmp.c: _HAVE_UT_TYPE, _HAVE_UT_TV are always true. + * login/utmp_file.c (__libc_setutent): _HAVE_UT_TYPE, _HAVE_UT_ID + are always true. + (internal_getut_r): _HAVE_UT_TYPE is always true. + (__libc_pututline): Likewise. + * login/programs/utmpdump.c (print_entry): Assume that + _HAVE_UT_TYPE, _HAVE_UT_PID, _HAVE_UT_ID, _HAVE_UT_HOST, + _HAVE_UT_TV are always true. + * sysdeps/generic/utmp-equal.h (__utmp_equal): _HAVE_UT_TYPE, + _HAVE_UT_ID are always true. + * sysdeps/gnu/bits/utmp.h: Move to ... + * bits/utmp.h: ... here, replacing the old file. + +2019-08-12 Florian Weimer + + * elf/Makefile (tests): Unconditionally add tst-dlopen-aout. + [$(build-hardcoded-path-in-tests)] (tst-dlopen-aout-no-pie): Do + not set. + * elf/tst-dlopen-aout.c: Do not included . + (do_test): Open the executable using an absolute path. Print + error message to standard output. + +2019-08-09 DJ Delorie + + * elf/dl-tunables.list: Add glibc.malloc.mxfast. + * manual/tunables.texi: Document it. + * malloc/malloc.c (do_set_mxfast): New. + (__libc_mallopt): Call it. + * malloc/arena.c: Add mxfast tunable. + * malloc/tst-mxfast.c: New. + * malloc/Makefile: Add it. + +2019-08-08 Niklas Hambüchen + Carlos O'Donell + + [BZ #24026] + * malloc/malloc.c (__malloc_info): Account for top chunk. + +2019-08-07 Joseph Myers + + * sysdeps/unix/sysv/linux/bits/fcntl-linux.h [__USE_GNU] + (SYNC_FILE_RANGE_WRITE_AND_WAIT): New macro. + +2019-08-06 Joseph Myers + + * io/fcntl.h [__USE_GNU] (AT_RECURSIVE): New macro. + +2019-07-02 Stefan Liebler + + * sysdeps/unix/sysv/linux/s390/init-first.c (VDSO_SETUP): New define. + +2019-08-05 Joseph Myers + + * sysdeps/unix/sysv/linux/bits/sched.h [__USE_GNU] (CLONE_PIDFD): + New macro. + +2019-08-05 Adhemerval Zanella + + [BZ #19767] + * sysdeps/unix/sysv/linux/aarch64/sysdep.h (ALWAYS_USE_VSYSCALL): + Remove definition. + * sysdeps/unix/sysv/linux/arm/sysdep.h (ALWAYS_USE_VSYSCALL): + Likewise. + * sysdeps/unix/sysv/linux/i386/sysdep.h (ALWAYS_USE_VSYSCALL): + Likewise. + * sysdeps/unix/sysv/linux/mips/mips32/sysdep.h (ALWAYS_USE_VSYSCALL): + Likewise. + * sysdeps/unix/sysv/linux/mips/mips64/n32/sysdep.h + (ALWAYS_USE_VSYSCALL): Likewise. + * sysdeps/unix/sysv/linux/mips/mips64/n64/sysdep.h + (ALWAYS_USE_VSYSCALL): Likewise. + * sysdeps/unix/sysv/linux/powerpc/powerpc32/sysdep.h + (ALWAYS_USE_VSYSCALL): Likewise. + * sysdeps/unix/sysv/linux/powerpc/powerpc64/sysdep.h + (ALWAYS_USE_VSYSCALL): Likewise. + * sysdeps/unix/sysv/linux/riscv/sysdep.h (ALWAYS_USE_VSYSCALL): + Likewise. + * sysdeps/unix/sysv/linux/s390/s390-32/sysdep.h + (ALWAYS_USE_VSYSCALL): Likewise. + * sysdeps/unix/sysv/linux/s390/s390-64/sysdep.h + (ALWAYS_USE_VSYSCALL): Likewise. + * sysdeps/unix/sysv/linux/sparc/sysdep.h (ALWAYS_USE_VSYSCALL): + Likewise. + * sysdeps/unix/sysv/linux/x86_64/sysdep.h (ALWAYS_USE_VSYSCALL): + Likewise. + * sysdeps/unix/sysv/linux/x86/libc-vdso.h: Remove #if USE_VSYSCALL. + * sysdeps/unix/sysv/linux/sysdep-vdso.h: Likewise. + * sysdeps/unix/sysv/linux/sysdep.h (ALWAYS_USE_VSYSCALL, + USE_VSYSCALL): Remove defitions. + + [BZ #19767] + * sysdeps/unix/sysv/linux/sparc/init-first.c: Remove #ifdef SHARED. + * sysdeps/unix/sysv/linux/sparc/libc-vdso.h: Likewise. + * sysdeps/unix/sysv/linux/sparc/sysdep.h (ALWAYS_USE_VSYSCALL): + Define. + + [BZ #19767] + * sysdeps/unix/sysv/linux/s390/init-first.c: Remove #ifdef SHARED. + * sysdeps/unix/sysv/linux/s390/libc-vdso.h: Likewise. + * sysdeps/unix/sysv/linux/s390/s390-32/sysdep.h + (ALWAYS_USE_VSYSCALL): Define. + * sysdeps/unix/sysv/linux/s390/s390-64/sysdep.h + (ALWAYS_USE_VSYSCALL): Likewise. + + [BZ #19767] + * sysdeps/unix/sysv/linux/riscv/init-first.c: Remove #ifdef SHARED. + * sysdeps/unix/sysv/linux/riscv/libc-vdso.h: Likewise. + * sysdeps/unix/sysv/linux/riscv/sysdep.h (ALWAYS_USE_VSYSCALL): + Define. + + * sysdeps/sh/libm-test-ulps: Update. + +2019-08-05 Florian Weimer + + [BZ #23518] + * login/uptmp-private.h (struct ufuncs): Remove definition. + (__libc_utmp_file_functions, __libc_utmp_unknown_functions) + (__libc_utmp_jump_table): Remove declarations. + (__libc_setutent, __libc_getutent_r, __libc_getutid_r) + (__libc_getutline_r, __libc_pututline, __libc_endutent) + (__libc_updwtmp): Declare. + * login/getutent_r.c (__libc_utmp_unknown_functions) + (__libc_utmp_jump_table, setutent_unknown, getutent_r_unknown) + (getutid_r_unknown, getutline_r_unknown, pututline_unknown) + (endutent_unknown): Remove definitions. + (__setutent): Call __libc_setutent. + (__getutent_r): Call __libc_getutent_r. + (__pututline): Call __libc_pututline. + (__endutent): Call __libc_endutent. + * login/getutid_r.c (__getutid_r): Call __libc_getutid_r. + * login/getutline_r.c (__getutline_r): Call __libc_getutline_r. + * login/updwtmp.c (__updwtmp): Call __libc_updwtmp. + * login/utmp_file.c (__libc_utmp_file_functions): Remove definition + (__libc_setutent): Rename from stetutent_file. Drop static. + (maybe_setutent): New function. + (__libc_getutent_r): Rename from getutent_r_file. Drop static. + Check for initialization. + (__libc_getutid_r): Rename from getutid_r_file. Drop static. + Check for initialization. + (__libc_getutline_r): Rename from getutline_r_file. Drop static. + Check for initialization. + (__libc_pututline): Rename from pututline_file. Drop static. + Check for initialization. + (__libc_endutent): Rename from endutent_file. Drop static. Check + for initialization. + (__libc_updwtmp): Rename from updwtmp_file. Drop static. + * login/utmpname.c (__utmpname): Call __libc_endutent. + * sysdeps/unix/getlogin_r (__getlogin_r): Call __libc_setutent, + __libc_getutlien_r, __libc_endutent. + * manual/users.texi (Who Logged In, Manipulating the Database): + Adjust. + +2019-08-05 Alexandra Hájková + + * elf/tst-ldconfig-bad-aux-cache.c: Use support_capture_subprocess. + +2019-08-02 Joseph Myers + + * sysdeps/unix/sysv/linux/syscall-names.list: Update comment. + + * sysdeps/unix/sysv/linux/tst-mman-consts.py (main): Update Linux + kernel version number to 5.2. + +2019-08-01 Raoni Fassina Firmino + + * sysdeps/powerpc/powerpc64/power8/memchr.S: Update power8 + mnemonics and set .machine power8. + * sysdeps/powerpc/powerpc64/power8/memcmp.S: Likewise. + * sysdeps/powerpc/powerpc64/power8/memrchr.S: Likewise. + * sysdeps/powerpc/powerpc64/power8/memset.S: Likewise. + * sysdeps/powerpc/powerpc64/power8/strchr.S: Likewise. + * sysdeps/powerpc/powerpc64/power8/strlen.S: Likewise. + * sysdeps/powerpc/powerpc64/power8/strncmp.S: Likewise. + * sysdeps/powerpc/powerpc64/power8/strncpy.S: Likewise. + * sysdeps/powerpc/powerpc64/power8/strnlen.S: Likewise. + * sysdeps/powerpc/powerpc64/power8/strrchr.S: Likewise. + * sysdeps/powerpc/powerpc64/power8/strspn.S: Likewise. + +2019-08-01 Adhemerval Zanella + + * sysdeps/hppa/fpu/libm-test-ulps: Update. + +2019-08-01 Florian Weimer + + [BZ #24867] + * malloc/malloc.c (__malloc_info): Remove unwanted leading + whitespace. + +2019-08-01 Adhemerval Zanella + + [BZ #15813] + sysdeps/posix/tempname.c (__gen_tempname): get entropy on each + attempt. + +2019-08-01 Carlos O'Donell + + * version.h (RELEASE): Set to "stable". + (VERSION): Set to "2.30". + * include/features.h (__GLIBC_MINOR__): Set to 2.30. + + * manual/install.texi: Update component versions. + * INSTALL: Regenerate. + * NEWS: Update. + +2019-07-31 Carlos O'Donell + + * po/be.po: Update translations. + * po/bg.po: Likewise. + * po/ca.po: Likewise. + * po/cs.po: Likewise. + * po/da.po: Likewise. + * po/de.po: Likewise. + * po/el.po: Likewise. + * po/eo.po: Likewise. + * po/es.po: Likewise. + * po/fi.po: Likewise. + * po/fr.po: Likewise. + * po/gl.po: Likewise. + * po/hr.po: Likewise. + * po/hu.po: Likewise. + * po/ia.po: Likewise. + * po/id.po: Likewise. + * po/it.po: Likewise. + * po/ja.po: Likewise. + * po/ko.po: Likewise. + * po/lt.po: Likewise. + * po/nb.po: Likewise. + * po/nl.po: Likewise. + * po/pl.po: Likewise. + * po/pt_BR.po: Likewise. + * po/ru.po: Likewise. + * po/rw.po: Likewise. + * po/sk.po: Likewise. + * po/sl.po: Likewise. + * po/sv.po: Likewise. + * po/tr.po: Likewise. + * po/uk.po: Likewise. + * po/vi.po: Likewise. + * po/zh_CN.po: Likewise. + * po/zh_TW.po: Likewise. + +2019-07-31 Florian Weimer + + [BZ #24583] + [BZ #24677] + iconv, libio: Revert reference counting changes. + * iconv/gconv_cache.c (__gconv_release_cache): Unconditionally + free the steps array. + * libio/Makefile (tests): Remove tst-wfile-gconv. + (tests-container): Do not add tst-wfile-ascii. + (tst-wfile-gconv-ENV): Do not set. + (generated): Do not add tst-wfile-gconv.mtrace, + tst-wfile-gconv.check. + [($run-built-tests)] (tests-special): Do not add + tst-wfile-gconv-mem.out. + (tst-wfile-gconv.out, tst-wfile-gconv-mem.out): Remove targets. + * libio/iofclose.c (_IO_new_fclose): Call __gconv_release_step + instead of __wcsmbs_clone_conv. + * wcsmbs/wcsmbsload.c (__wcsmbs_clone_conv): Remove definition. + * wcsmbs/wcsmbsload.h (__wcsmbs_clone_conv): Remove declaration. + +2019-07-30 Joseph Myers + + * sysdeps/unix/sysv/linux/powerpc/powerpc32/swapcontext-common.S + (__CONTEXT_FUNC_NAME): Restore setting of r31. + +2019-07-30 Florian Weimer + + * nptl/tst-pthread-getattr.c (allocate_and_test): Change return + type to uintptr_t. Update comment. + (check_stack_top): Adjust. + +2019-07-29 Florian Weimer + + Linux: Move declaration of getdents64 to . + * bits/dirent_ext.h: New file. + * dirent/Makefile (headers): Add bits/dirent_ext.h. + * dirent/dirent.h: Include . + * sysdeps/unix/sysv/linux/bits/dirent_ext.h: New file. + * sysdeps/unix/sysv/linux/bits/unistd_ext.h (getdents64): Remove + declaration. + * manual/filesys.texi (Low-level Directory Access): Update header + to dirent.h. + +2019-07-29 DJ Delorie + Tulio Magno Quites Machado Filho + + [BZ #24794] + * Makeconfig (all-subdirs): Improved source comments. + * Makefile (testroot.pristine/install.stamp): Pass + subdirs='$(sorted-subdirs)' to make install. + +2019-07-25 Florian Weimer + + [BZ #24677] + * iconv/gconv_cache.c (__gconv_release_cache): Check reference + counter before freeing array. + +2019-07-24 H.J. Lu + + [BZ #24603] + * sysdeps/x86_64/configure.ac: Check if -mprefer-vector-width=128 + works. + * sysdeps/x86_64/configure: Regenerated. + * sysdeps/x86_64/fpu/Makefile (CFLAGS-branred.c): New. Set + to -mprefer-vector-width=128 if supported. + +2019-07-24 Florian Weimer + + * scripts/build-many-glibcs.py (Context.checkout): Default to + Linux 5.2. + +2019-07-24 Florian Weimer + + [BZ #24532] + Linux: Use in-tree copy of SO_ constants for !__USE_MISC. + * sysdeps/unix/sysv/linux/Makefile [$(subdir) == socket] + (sysdep_headers): Add bits/socket-constants.h. + (tests-special): Add tst-socket-consts.out. + (tst-socket-consts.out): New target. + * sysdeps/unix/sysv/linux/bits/socket.h: Remove macro tracking + around . + [__USE_MISC]: Include before . + [!__USE_MISC]: Include instead of + . + * sysdeps/unix/sysv/linux/bits/tst-socket-consts.py: New file. + * sysdeps/unix/sysv/linux/bits/socket-constants.h: Likewise. + * sysdeps/unix/sysv/linux/alpha/bits/socket-constants.h: Likewise. + * sysdeps/unix/sysv/linux/hppa/bits/socket-constants.h: Likewise. + * sysdeps/unix/sysv/linux/mips/bits/socket-constants.h: Likewise. + * sysdeps/unix/sysv/linux/powerpc/bits/socket-constants.h: + Likewise. + * sysdeps/unix/sysv/linux/sparc/bits/socket-constants.h: Likewise. + +2019-07-23 Tulio Magno Quites Machado Filho + + [BZ #24794] + * Makefile (testroot.pristine/install.stamp): Pass + subdirs='$(all-subdirs)' to make install. + + * Makefile (testroot.pristine/install.stamp): Execute ld.so with + the same arguments used in all tests. + +2019-07-22 Szabolcs Nagy + + * NEWS: Mention the AArch64 IFUNC resolver ABI change. + +2019-07-20 Egor Kobylkin + + [BZ #2872] + * locale/C-translit.h.in: Add Cyrillic transliteration. + +2019-07-19 Florian Weimer + + * sysdeps/unix/sysv/linux/syscall-names.list: Add system calls + from Linux 5.2. + (fsconfig): Add system call name. + (fsmount): Likewise. + (fsopen): Likewise. + (fspick): Likewise. + (move_mount): Likewise. + (open_tree): Likewise. + +2019-07-18 Carlos O'Donell + + * po/libc.pot: Regenerate. + +2019-07-18 Mike Crowe + + * sysdeps/unix/sysv/linux/hppa/pthread.h: Add declarations of + functions recently added to sysdeps/nptl/pthread.h: + pthread_mutex_clocklock, pthread_rwlock_clockrdlock, + pthread_rwlock_clockwrlock and pthread_cond_clockwait. + + * nptl/forward.c: Remove unnecessary __pthread_cond_clockwait and + pthread_cond_clockwait forwarding functions. There are no internal + users, so it is unnecessary to expose these functions in libc.so. + * sysdeps/nptl/pthread-functions.h (pthread_functions): Remove + unnecessary ptr___pthread_cond_clockwait member. + * nptl/nptl-init.c (pthread_functions): Remove assignment of + removed member. + +2019-07-17 Rafał Lużyński + + [BZ #21897] + * localedata/locales/aa_DJ (abday): Update from CLDR, all words + begin with an uppercase letter now. + (abmon): Likewise. + (mon): Update from CLDR, reword February from "Kudo" to + "Naharsi Kudo", April from "Agda Baxisso" to "Agda Baxis", + and August from "Liiqen" to "Leqeeni". + * localedata/locales/aa_ER (mon): Update from CLDR, reword + April from "Agda Baxisso" to "Agda Baxis" and August from + "Leqeeni" to "Liiqen". + * localedata/locales/aa_ER@saaho (mon): Likewise. + * localedata/locales/aa_ET (abmon): Update from CLDR, reword + abbreviated February from "Kud" to "Nah". + (mon): Update from CLDR, reword February from "Kudo" to + "Naharsi Kudo" and April from "Agda Baxisso" to "Agda Baxis". + +2019-07-17 Rafał Lużyński + + [BZ #23996] + * localedata/locales/nl_BE (LC_NAME): Replace with “copy "nl_NL"”. + +2019-07-17 PanderMusubi + + [BZ #23996] + * localedata/locales/nl_BE (LC_NAME): Add name_gen, name_mr, + name_mrs, name_miss, and name_ms. + * localedata/locales/nl_NL (LC_NAME): Likewise. + +2019-07-17 Daniil Zhilin + + [BZ #24200] + * localedata/locales/ga_IE (first_weekday): Add, set to 2 (Monday). + * localedata/locales/en_IE (first_weekday): Likewise. + +2019-07-12 Mike Crowe + + * nptl/pthread_cond_wait.c: (__pthread_cond_clockwait): Remove code + that is only useful if futex_supports_exact_relative_timeouts () + returns false. + * nptl/pthread_condattr_setclock.c: (pthread_condattr_setclock): + Likewise. + * sysdeps/nptl/futex-internal.h: Remove comment about relative + timeouts potentially being imprecise since it's no longer true. + Remove declaration of futex_supports_exact_relative_timeouts. + * sysdeps/unix/sysv/linux/futex-internal.h: Remove implementation + of futex_supports_exact_relative_timeouts. + + * NEWS: Mention recently-added pthread_cond_clockwait, + pthread_rwlock_clockrdlock, pthread_rwlock_clockwrlock and + sem_clockwait functions. + + nptl: Add POSIX-proposed pthread_mutex_clocklock function that + works like pthread_mutex_timedlock but takes a clockid parameter to + measure the abstime parameter against. + * sysdeps/nptl/pthread.h: Add pthread_mutex_clocklock. + * nptl/DESIGN-systemtap-probes.txt: Likewise. + * nptl/pthread_mutex_timedlock.c + (__pthread_mutex_clocklock_common): Rename from + __pthread_mutex_timedlock and add clockid parameter. Pass this + parameter to lll_clocklock and lll_clocklock_elision in place of + CLOCK_REALTIME. (__pthread_mutex_clocklock): New function to add + LIBC_PROBE and validate clockid parameter before calling + __pthread_mutex_clocklock_common. (__pthread_mutex_timedlock): New + implementation to add LIBC_PROBE and calls + __pthread_mutex_clocklock_common passing CLOCK_REALTIME as the + clockid. + * nptl/Makefile: Add tst-mutex11.c. + * nptl/tst-abstime.c (th): Add tests for pthread_mutex_clocklock. + * nptl/tst-mutex11.c: New tests for passing invalid and unsupported + clockid parameters to pthread_mutex_clocklock. + * nptl/tst-mutex5.c (do_test_clock): Rename from do_test and take + clockid parameter to indicate which clock to be used. Call + pthread_mutex_timedlock or pthread_mutex_clocklock as appropriate. + (do_test): Call do_test_clock to separately test + pthread_mutex_timedlock, pthread_mutex_clocklock(CLOCK_REALTIME) + and pthread_mutex_clocklock(CLOCK_MONOTONIC). + * nptl/tst-mutex9.c: Likewise. + * nptl/Versions (GLIBC_2.30): Add pthread_mutex_clocklock. + * sysdeps/unix/sysv/linux/aarch64/libpthread.abilist (GLIBC_2.30): + Likewise. + * sysdeps/unix/sysv/linux/alpha/libpthread.abilist (GLIBC_2.30): + Likewise. + * sysdeps/unix/sysv/linux/arm/libpthread.abilist (GLIBC_2.30): + Likewise. + * sysdeps/unix/sysv/linux/csky/libpthread.abilist (GLIBC_2.30): + Likewise. + * sysdeps/unix/sysv/linux/hppa/libpthread.abilist (GLIBC_2.30): + Likewise. + * sysdeps/unix/sysv/linux/i386/libpthread.abilist (GLIBC_2.30): + Likewise. + * sysdeps/unix/sysv/linux/ia64/libpthread.abilist (GLIBC_2.30): + Likewise. + * sysdeps/unix/sysv/linux/m68k/coldfire/libpthread.abilist + (GLIBC_2.30): Likewise. + * sysdeps/unix/sysv/linux/m68k/m680x0/libpthread.abilist + (GLIBC_2.30): Likewise. + * sysdeps/unix/sysv/linux/microblaze/libpthread.abilist + (GLIBC_2.30): Likewise. + * sysdeps/unix/sysv/linux/mips/mips32/libpthread.abilist + (GLIBC_2.30): Likewise. + * sysdeps/unix/sysv/linux/mips/mips64/libpthread.abilist + (GLIBC_2.30): Likewise. + * sysdeps/unix/sysv/linux/nios2/libpthread.abilist (GLIBC_2.30): + Likewise. + * sysdeps/unix/sysv/linux/powerpc/powerpc32/libpthread.abilist + (GLIBC_2.30): Likewise. + * sysdeps/unix/sysv/linux/powerpc/powerpc64/be/libpthread.abilist + (GLIBC_2.30): Likewise. + * sysdeps/unix/sysv/linux/powerpc/powerpc64/le/libpthread.abilist + (GLIBC_2.30): Likewise. + * sysdeps/unix/sysv/linux/riscv/rv64/libpthread.abilist + (GLIBC_2.30): Likewise. + * sysdeps/unix/sysv/linux/s390/s390-32/libpthread.abilist + (GLIBC_2.30): Likewise. + * sysdeps/unix/sysv/linux/s390/s390-64/libpthread.abilist + (GLIBC_2.30): Likewise. + * sysdeps/unix/sysv/linux/sh/libpthread.abilist (GLIBC_2.30): + Likewise. + * sysdeps/unix/sysv/linux/sparc/sparc32/libpthread.abilist + (GLIBC_2.30): Likewise. + * sysdeps/unix/sysv/linux/sparc/sparc64/libpthread.abilist + (GLIBC_2.30): Likewise. + * sysdeps/unix/sysv/linux/x86_64/64/libpthread.abilist + (GLIBC_2.30): Likewise. + * sysdeps/unix/sysv/linux/x86_64/x32/libpthread.abilist + (GLIBC_2.30): Likewise. + + nptl: Rename lll_timedlock to lll_clocklock and add clockid + parameter to indicate the clock that the abstime parameter should + be measured against in preparation for adding + pthread_mutex_clocklock. + * sysdeps/nptl/lowlevellock.h (lll_clocklock): Rename from + lll_timedlock and add clockid parameter. (__lll_clocklock): Rename + from __lll_timedlock and add clockid parameter. + * sysdeps/unix/sysv/linux/sparc/lowlevellock.h (lll_clocklock): + Likewise. + * nptl/lll_timedlock_wait.c (__lll_clocklock_wait): Rename from + __lll_timedlock_wait and add clockid parameter. Use __clock_gettime + rather than __gettimeofday so that clockid can be used. This means + that conversion from struct timeval is no longer required. + * sysdeps/sparc/sparc32/lowlevellock.c (lll_clocklock_wait): + Likewise. + * sysdeps/sparc/sparc32/lll_timedlock_wait.c: Update comment to + refer to __lll_clocklock_wait rather than __lll_timedlock_wait. + * nptl/pthread_mutex_timedlock.c (lll_clocklock_elision): Rename + from lll_timedlock_elision, add clockid parameter and use + meaningful names for other parameters. (__pthread_mutex_timedlock): + Pass CLOCK_REALTIME where necessary to lll_clocklock and + lll_clocklock_elision. + * sysdeps/unix/sysv/linux/powerpc/lowlevellock.h + (lll_clocklock_elision): Rename from lll_timedlock_elision and add + clockid parameter. (__lll_clocklock_elision): Rename from + __lll_timedlock_elision and add clockid parameter. + * sysdeps/unix/sysv/linux/s390/lowlevellock.h: Likewise. + * sysdeps/unix/sysv/linux/x86/lowlevellock.h: Likewise. + * sysdeps/unix/sysv/linux/powerpc/elision-timed.c + (__lll_lock_elision): Call __lll_clocklock_elision rather than + __lll_timedlock_elision. (EXTRAARG): Add clockid parameter. + (LLL_LOCK): Likewise. + * sysdeps/unix/sysv/linux/s390/elision-timed.c: Likewise. + * sysdeps/unix/sysv/linux/x86/elision-timed.c: Likewise. + + nptl: Add POSIX-proposed pthread_rwlock_clockrdlock & + pthread_rwlock_clockwrlock which behave like + pthread_rwlock_timedrdlock and pthread_rwlock_timedwrlock + respectively, except they always measure abstime against the + supplied clockid. The functions currently support CLOCK_REALTIME + and CLOCK_MONOTONIC and return EINVAL if any other clock is + specified. + * sysdeps/nptl/pthread.h: Add pthread_rwlock_clockrdlock and + pthread_wrlock_clockwrlock. + * nptl/Makefile: Build pthread_rwlock_clockrdlock.c and + pthread_rwlock_clockwrlock.c. + * nptl/pthread_rwlock_clockrdlock.c: Implement + pthread_rwlock_clockrdlock. + * nptl/pthread_rwlock_clockwrlock.c: Implement + pthread_rwlock_clockwrlock. + * nptl/pthread_rwlock_common.c (__pthread_rwlock_rdlock_full): Add + clockid parameter and verify that it indicates a supported clock on + entry so that we fail even if it doesn't end up being used. Pass + that clock on to futex_abstimed_wait when necessary. + (__pthread_rwlock_wrlock_full): Likewise. + * nptl/pthread_rwlock_rdlock.c: (__pthread_rwlock_rdlock): Pass + CLOCK_REALTIME to __pthread_rwlock_rdlock_full even though it won't + be used because there's no timeout. + * nptl/pthread_rwlock_wrlock.c (__pthread_rwlock_wrlock): Pass + CLOCK_REALTIME to __pthread_rwlock_wrlock_full even though it won't + be used because there is no timeout. + * nptl/pthread_rwlock_timedrdlock.c (pthread_rwlock_timedrdlock): + Pass CLOCK_REALTIME to __pthread_rwlock_rdlock_full since abstime + uses that clock. + * nptl/pthread_rwlock_timedwrlock.c (pthread_rwlock_timedwrlock): + Pass CLOCK_REALTIME to __pthread_rwlock_wrlock_full since abstime + uses that clock. + * sysdeps/unix/sysv/linux/aarch64/libpthread.abilist (GLIBC_2.30): Likewise. + * sysdeps/unix/sysv/linux/alpha/libpthread.abilist (GLIBC_2.30): Likewise. + * sysdeps/unix/sysv/linux/arm/libpthread.abilist (GLIBC_2.30): Likewise. + * sysdeps/unix/sysv/linux/csky/libpthread.abilist (GLIBC_2.30): Likewise. + * sysdeps/unix/sysv/linux/hppa/libpthread.abilist (GLIBC_2.30): Likewise. + * sysdeps/unix/sysv/linux/i386/libpthread.abilist (GLIBC_2.30): Likewise. + * sysdeps/unix/sysv/linux/ia64/libpthread.abilist (GLIBC_2.30): Likewise. + * sysdeps/unix/sysv/linux/m68k/coldfire/libpthread.abilist + (GLIBC_2.30): Likewise. + * sysdeps/unix/sysv/linux/m68k/m680x0/libpthread.abilist + (GLIBC_2.30): Likewise. + * sysdeps/unix/sysv/linux/microblaze/libpthread.abilist + (GLIBC_2.30): Likewise. + * sysdeps/unix/sysv/linux/mips/mips32/libpthread.abilist + (GLIBC_2.30): Likewise. + * sysdeps/unix/sysv/linux/mips/mips64/libpthread.abilist + (GLIBC_2.30): Likewise. + * sysdeps/unix/sysv/linux/nios2/libpthread.abilist (GLIBC_2.30): Likewise. + * sysdeps/unix/sysv/linux/powerpc/powerpc32/libpthread.abilist + (GLIBC_2.30): Likewise. + * sysdeps/unix/sysv/linux/powerpc/powerpc64/be/libpthread.abilist + (GLIBC_2.30): Likewise. + * sysdeps/unix/sysv/linux/powerpc/powerpc64/le/libpthread.abilist + (GLIBC_2.30): Likewise. + * sysdeps/unix/sysv/linux/riscv/rv64/libpthread.abilist + (GLIBC_2.30): Likewise. + * sysdeps/unix/sysv/linux/s390/s390-32/libpthread.abilist + (GLIBC_2.30): Likewise. + * sysdeps/unix/sysv/linux/s390/s390-64/libpthread.abilist + (GLIBC_2.30): Likewise. + * sysdeps/unix/sysv/linux/sh/libpthread.abilist (GLIBC_2.30): Likewise. + * sysdeps/unix/sysv/linux/sparc/sparc32/libpthread.abilist + (GLIBC_2.30): Likewise. + * sysdeps/unix/sysv/linux/sparc/sparc64/libpthread.abilist + (GLIBC_2.30): Likewise. + * sysdeps/unix/sysv/linux/x86_64/64/libpthread.abilist + (GLIBC_2.30): Likewise. + * sysdeps/unix/sysv/linux/x86_64/x32/libpthread.abilist + (GLIBC_2.30): Likewise. + * nptl/tst-abstime.c (th): Add pthread_rwlock_clockrdlock and + pthread_rwlock_clockwrlock timeout tests to match the existing + pthread_rwlock_timedrdloock and pthread_rwlock_timedwrlock tests. + * nptl/tst-rwlock14.c (do_test): Likewise. + * nptl/tst-rwlock6.c Invent verbose_printf macro, and use for + ancillary output throughout. (tf): Accept thread_args structure so + that rwlock, a clockid and function name can be passed to the + thread. (do_test_clock): Rename from do_test. Accept clockid + parameter to specify test clock. Use the magic clockid value of + CLOCK_USE_TIMEDLOCK to indicate that pthread_rwlock_timedrdlock and + pthread_rwlock_timedwrlock should be tested, otherwise pass the + specified clockid to pthread_rwlock_clockrdlock and + pthread_rwlock_clockwrlock. Use xpthread_create and xpthread_join. + (do_test): Call do_test_clock to test each clockid in turn. + * nptl/tst-rwlock7.c: Likewise. + * nptl/tst-rwlock9.c (writer_thread, reader_thread): Accept + thread_args structure so that the (now int) thread number, the + clockid and the function name can be passed to the thread. + (do_test_clock): Renamed from do_test. Pass the necessary + thread_args when creating the reader and writer threads. Use + xpthread_create and xpthread_join. + (do_test): Call do_test_clock to test each clockid in turn. + * manual/threads.texi: Add documentation for + pthread_rwlock_clockrdlock and pthread_rwlock_clockwrclock. + + nptl: pthread_rwlock: Move timeout validation into _full functions + * nptl/pthread_rwlock_common.c (__pthread_rwlock_rdlock_full): + Check validity of abstime parameter. + (__pthread_rwlock_rwlock_full): Likewise. + * nptl/pthread_rwlock_timedrdlock.c (pthread_rwlock_timedrdlock): + Remove check for validity of abstime parameter. + * nptl/pthread_rwlock_timedwrlock.c (pthread_rwlock_timedwrlock): + Likewise. + + nptl: Add POSIX-proposed pthread_cond_clockwait which behaves just + like pthread_cond_timedwait except it always measures abstime + against the supplied clockid. + * nptl/Makefile: Add tst-cond26 and tst-cond27 + * nptl/Versions (GLIBC_2.30): Add pthread_cond_clockwait + * sysdeps/nptl/pthread.h: Likewise + * nptl/forward.c: Add __pthread_cond_clockwait + * nptl/forward.c: Likewise + * nptl/pthreadP.h: Likewise + * sysdeps/nptl/pthread-functions.h: Likewise + * nptl/pthread_cond_wait.c (__pthread_cond_wait_common): Add + clockid parameter and comment describing why we don't need to check + its value. Use that value when calling + futex_abstimed_wait_cancelable rather than reading the clock from + the flags. (__pthread_cond_wait): Pass unused clockid parameter. + (__pthread_cond_timedwait): Read clock from flags and pass it to + __pthread_cond_wait_common. (__pthread_cond_clockwait): Add new + function with weak alias from pthread_cond_clockwait. + * sysdeps/unix/sysv/linux/aarch64/libpthread.abilist (GLIBC_2.30): Likewise. + * sysdeps/unix/sysv/linux/alpha/libpthread.abilist (GLIBC_2.30): Likewise. + * sysdeps/unix/sysv/linux/arm/libpthread.abilist (GLIBC_2.30): Likewise. + * sysdeps/unix/sysv/linux/csky/libpthread.abilist (GLIBC_2.30): Likewise. + * sysdeps/unix/sysv/linux/hppa/libpthread.abilist (GLIBC_2.30): Likewise. + * sysdeps/unix/sysv/linux/i386/libpthread.abilist (GLIBC_2.30): Likewise. + * sysdeps/unix/sysv/linux/ia64/libpthread.abilist (GLIBC_2.30): Likewise. + * sysdeps/unix/sysv/linux/m68k/coldfire/libpthread.abilist + (GLIBC_2.30): Likewise. + * sysdeps/unix/sysv/linux/m68k/m680x0/libpthread.abilist + (GLIBC_2.30): Likewise. + * sysdeps/unix/sysv/linux/microblaze/libpthread.abilist + (GLIBC_2.30): Likewise. + * sysdeps/unix/sysv/linux/mips/mips32/libpthread.abilist + (GLIBC_2.30): Likewise. + * sysdeps/unix/sysv/linux/mips/mips64/libpthread.abilist + (GLIBC_2.30): Likewise. + * sysdeps/unix/sysv/linux/nios2/libpthread.abilist (GLIBC_2.30): Likewise. + * sysdeps/unix/sysv/linux/powerpc/powerpc32/libpthread.abilist + (GLIBC_2.30): Likewise. + * sysdeps/unix/sysv/linux/powerpc/powerpc64/be/libpthread.abilist + (GLIBC_2.30): Likewise. + * sysdeps/unix/sysv/linux/powerpc/powerpc64/le/libpthread.abilist + (GLIBC_2.30): Likewise. + * sysdeps/unix/sysv/linux/riscv/rv64/libpthread.abilist + (GLIBC_2.30): Likewise. + * sysdeps/unix/sysv/linux/s390/s390-32/libpthread.abilist + (GLIBC_2.30): Likewise. + * sysdeps/unix/sysv/linux/s390/s390-64/libpthread.abilist + (GLIBC_2.30): Likewise. + * sysdeps/unix/sysv/linux/sh/libpthread.abilist (GLIBC_2.30): Likewise. + * sysdeps/unix/sysv/linux/sparc/sparc32/libpthread.abilist + (GLIBC_2.30): Likewise. + * sysdeps/unix/sysv/linux/sparc/sparc64/libpthread.abilist + (GLIBC_2.30): Likewise. + * sysdeps/unix/sysv/linux/x86_64/64/libpthread.abilist + (GLIBC_2.30): Likewise. + * sysdeps/unix/sysv/linux/x86_64/x32/libpthread.abilist + (GLIBC_2.30): Likewise. + * nptl/tst-cond11.c (run_test): Support testing + pthread_cond_clockwait too by using a special magic + CLOCK_USE_ATTR_CLOCK value to determine whether to call + pthread_cond_timedwait or pthread_cond_clockwait. (do_test): Pass + CLOCK_USE_ATTR_CLOCK for existing tests, and add new tests using + all combinations of CLOCK_MONOTONIC and CLOCK_REALTIME. + * ntpl/tst-cond26.c: New test for passing unsupported and invalid + clocks to pthread_cond_clockwait. + * nptl/tst-cond27.c: Add test similar to tst-cond5.c, but using + struct timespec and pthread_cond_clockwait. + * manual/threads.texi: Document pthread_cond_clockwait. + + nptl: Add POSIX-proposed sem_clockwait which behaves just like + sem_timedwait, but measures abstime against the specified clock. + * nptl/sem_waitcommon.c (do_futex_wait, __new_sem_wait_slow): Add + clockid parameters to indicate the clock which abstime should be + measured against. + * nptl/sem_timedwait.c (sem_timedwait), nptl/sem_wait.c + (__new_sem_wait): Pass CLOCK_REALTIME as clockid to + __new_sem_wait_slow. + * nptl/sem_clockwait.c: New file to implement sem_clockwait based + on sem_timedwait.c. + * nptl/Makefile: Add sem_clockwait.c source file. Add CFLAGS for + sem_clockwait.c to match those used for sem_timedwait.c. + * sysdeps/pthread/semaphore.h: Add sem_clockwait. + * nptl/Versions (GLIBC_2.30): Likewise. + * sysdeps/unix/sysv/linux/aarch64/libpthread.abilist (GLIBC_2.30): Likewise. + * sysdeps/unix/sysv/linux/alpha/libpthread.abilist (GLIBC_2.30): Likewise. + * sysdeps/unix/sysv/linux/arm/libpthread.abilist (GLIBC_2.30): Likewise. + * sysdeps/unix/sysv/linux/csky/libpthread.abilist (GLIBC_2.30): Likewise. + * sysdeps/unix/sysv/linux/hppa/libpthread.abilist (GLIBC_2.30): Likewise. + * sysdeps/unix/sysv/linux/i386/libpthread.abilist (GLIBC_2.30): Likewise. + * sysdeps/unix/sysv/linux/ia64/libpthread.abilist (GLIBC_2.30): Likewise. + * sysdeps/unix/sysv/linux/m68k/coldfire/libpthread.abilist + (GLIBC_2.30): Likewise. + * sysdeps/unix/sysv/linux/m68k/m680x0/libpthread.abilist + (GLIBC_2.30): Likewise. + * sysdeps/unix/sysv/linux/microblaze/libpthread.abilist + (GLIBC_2.30): Likewise. + * sysdeps/unix/sysv/linux/mips/mips32/libpthread.abilist + (GLIBC_2.30): Likewise. + * sysdeps/unix/sysv/linux/mips/mips64/libpthread.abilist + (GLIBC_2.30): Likewise. + * sysdeps/unix/sysv/linux/nios2/libpthread.abilist (GLIBC_2.30): Likewise. + * sysdeps/unix/sysv/linux/powerpc/powerpc32/libpthread.abilist + (GLIBC_2.30): Likewise. + * sysdeps/unix/sysv/linux/powerpc/powerpc64/be/libpthread.abilist + (GLIBC_2.30): Likewise. + * sysdeps/unix/sysv/linux/powerpc/powerpc64/le/libpthread.abilist + (GLIBC_2.30): Likewise. + * sysdeps/unix/sysv/linux/riscv/rv64/libpthread.abilist + (GLIBC_2.30): Likewise. + * sysdeps/unix/sysv/linux/s390/s390-32/libpthread.abilist + (GLIBC_2.30): Likewise. + * sysdeps/unix/sysv/linux/s390/s390-64/libpthread.abilist + (GLIBC_2.30): Likewise. + * sysdeps/unix/sysv/linux/sh/libpthread.abilist (GLIBC_2.30): Likewise. + * sysdeps/unix/sysv/linux/sparc/sparc32/libpthread.abilist + (GLIBC_2.30): Likewise. + * sysdeps/unix/sysv/linux/sparc/sparc64/libpthread.abilist + (GLIBC_2.30): Likewise. + * sysdeps/unix/sysv/linux/x86_64/64/libpthread.abilist + (GLIBC_2.30): Likewise. + * sysdeps/unix/sysv/linux/x86_64/x32/libpthread.abilist + (GLIBC_2.30): Likewise. + * nptl/tst-sem17.c: Add new test for passing invalid clock to + sem_clockwait. + * nptl/tst-sem13.c, nptl/tst-sem5.c: Modify existing sem_timedwait + tests to also test sem_clockwait. + * manual/threads.texi: Document sem_clockwait. + + nptl: Add clockid parameter to futex timed wait calls + * sysdeps/nptl/lowlevellock-futex.h, + sysdeps/unix/sysv/linux/lowlevellock-futex.h: Replace + lll_futex_timed_wait_bitset with lll_futex_clock_wait_bitset that + takes a clockid rather than a special clockbit. + * sysdeps/nptl/lowlevellock-futex.h: Add + lll_futex_supported_clockid so that client functions can check + whether their clockid parameter is valid even if they don't + ultimately end up calling lll_futex_clock_wait_bitset. + * sysdeps/nptl/futex-internal.h, + sysdeps/unix/sysv/linux/futex-internal.h + (futex_abstimed_wait, futex_abstimed_wait_cancelable): Add + clockid_t parameter to indicate which clock the absolute time + passed should be measured against. Pass that clockid onto + lll_futex_clock_wait_bitset. Add invalid clock as reason for + returning -EINVAL. + * sysdeps/nptl/futex-internal.h, + sysdeps/unix/sysv/linux/futex-internal.h: Introduce + futex_abstimed_supported_clockid so that client functions can check + whether their clockid parameter is valid even if they don't + ultimately end up calling futex_abstimed_wait. + * nptl/pthread_cond_wait.c (__pthread_cond_wait_common): Remove + code to calculate relative timeout for + __PTHREAD_COND_CLOCK_MONOTONIC_MASK and just pass CLOCK_MONOTONIC + or CLOCK_REALTIME as required to futex_abstimed_wait_cancelable. + * nptl/pthread_rwlock_common (__pthread_rwlock_rdlock_full) + (__pthread_wrlock_full), nptl/sem_waitcommon (do_futex_wait): Pass + additional CLOCK_REALTIME to futex_abstimed_wait_cancelable. + * nptl/pthread_mutex_timedlock.c (__pthread_mutex_timedlock): + Switch to lll_futex_clock_wait_bitset and pass CLOCK_REALTIME + +2019-07-10 Adhemerval Zanella + + [BZ #24699] + * posix/tst-mmap-offset.c: Mention BZ #24699. + (do_test_bz21270): Rename to do_test_large_offset and use + mmap64_maximum_offset to check for maximum expected offset value. + * sysdeps/generic/mmap_info.h: New file. + * sysdeps/unix/sysv/linux/mips/mmap_info.h: Likewise. + * sysdeps/unix/sysv/linux/mmap64.c (MMAP_OFF_HIGH_MASK): Define iff + __NR_mmap2 is used. + +2019-07-10 DJ Delorie + Sergei Trofimovich + + [BZ #24696] + [BZ #24695] + * nss/nss_db/db-open.c (internal_endent): Protect against NULL + mappings. + * nss/tst-nss-db-endgrent.c: New. + * nss/tst-nss-db-endgrent.root: New. + * nss/tst-nss-db-endpwent.c: New. + * nss/tst-nss-db-endpwent.root: New. + * nss/Makefile: Add new tests. + * support/links-dso-program-c.c: Add selinux dependency. + * support/links-dso-program.cc: Add selinux dependency. + * support/Makefile: Build those with -lselinux if enabled. + +2019-07-10 Szabolcs Nagy + + * sysdeps/aarch64/dl-machine.h (elf_machine_runtime_setup): Remove the + DT_AARCH64_VARIANT_PCS check. + (elf_machine_lazy_rel): Use l_info[DT_AARCH64 (VARIANT_PCS)]. + * sysdeps/aarch64/linkmap.h (struct link_map_machine): Remove + variant_pcs. + +2019-07-10 Andreas Schwab + + [BZ #23352] + * malloc/malloc.h (__malloc_check_init): Don't declare. + * include/malloc.h (__malloc_check_init): Likewise. + * malloc/malloc-internal.h (__malloc_check_init): Declare it here. + * manual/memory.texi (__malloc_check_init): Don't mention it. + +2019-07-10 Mao Han + + * locale/Makefile: Fix tst-locale-locpath arguments passing. + +2019-07-09 Paul A. Clarke + + * sysdeps/powerpc/fpu/fenv_libc.h (_FPU_GET_RC): Protect use of + __builtin_cpu_supports with __BUILTIN_CPU_SUPPORTS__. + +2019-07-08 DJ Delorie + + [BZ #23501] + * io/ftw.c (process_entry): Fill in statbuf for dangling links. + * io/tst-ftw-lnk.c: New test. + * io/Makefile: Run it. + +2019-07-08 Adhemerval Zanella + + * sysdeps/powerpc/power7/fpu/s_logb.c: Move to ... + * sysdeps/powerpc/fpu/s_logb.c: ... here. Use inline FP constants. + * sysdeps/powerpc/power7/fpu/s_logbf.c: Move to ... + * sysdeps/powerpc/fpu/s_logbf.c: ... here. Use inline FP constants. + * sysdeps/powerpc/power7/fpu/s_logbl.c: Move to ... + * sysdeps/powerpc/fpu/s_logbl.c: ... here. Use inline FP constants. + * sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_logb-power7.c: + Adjust implementation path. + * sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_logbf-power7.c: + Adjust implementation path. + * sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_logbl-power7.c: + Adjust implementation path. + * sysdeps/powerpc/powerpc64/be/fpu/multiarch/Makefile + (libm-sysdep_routines): Add s_log* objects. + (CFLAGS-s_logbf-power7.c, CFLAGS-s_logbl-power7.c, + CFLAGS-s_logb-power7.c): New fule. + * sysdeps/powerpc/powerpc64/fpu/multiarch/s_logb-power7.c: Move + to ... + * sysdeps/powerpc/powerpc64/be/fpu/multiarch/s_logb-power7.c: + ... here. + * sysdeps/powerpc/powerpc64/fpu/multiarch/s_logb-ppc64.c: Move + to ... + * sysdeps/powerpc/powerpc64/be/fpu/multiarch/s_logb-ppc64.c: + ... here. + * sysdeps/powerpc/powerpc64/fpu/multiarch/s_logb.c: Move to ... + * sysdeps/powerpc/powerpc64/be/fpu/multiarch/s_logb.c: ... here. + * sysdeps/powerpc/powerpc64/fpu/multiarch/s_logbf-power7.c: Move + to ... + * sysdeps/powerpc/powerpc64/be/fpu/multiarch/s_logbf-power7.c: + ... here. + * sysdeps/powerpc/powerpc64/fpu/multiarch/s_logbf-ppc64.c: Move + to ... + * sysdeps/powerpc/powerpc64/be/fpu/multiarch/s_logbf-ppc64.c: + ... here. + * sysdeps/powerpc/powerpc64/fpu/multiarch/s_logbf.c: Move to ... + * sysdeps/powerpc/powerpc64/be/fpu/multiarch/s_logbf.c: ... here. + * sysdeps/powerpc/powerpc64/fpu/multiarch/s_logbl-power7.c: Move + to ... + * sysdeps/powerpc/powerpc64/be/fpu/multiarch/s_logbl-power7.c: + ... here. + * sysdeps/powerpc/powerpc64/fpu/multiarch/s_logbl-ppc64.c: Move + to ... + * sysdeps/powerpc/powerpc64/be/fpu/multiarch/s_logbl-ppc64.c: + ... here. + * sysdeps/powerpc/powerpc64/fpu/multiarch/s_logbl.c: Move to ... + * sysdeps/powerpc/powerpc64/be/fpu/multiarch/s_logbl.c: ... here. + * sysdeps/powerpc/powerpc64/fpu/multiarch/Makefile: Remove file. + * sysdeps/powerpc/powerpc64/power7/fpu/s_logb.c: Remove file. + * sysdeps/powerpc/powerpc64/power7/fpu/s_logbf.c: Likewise. + * sysdeps/powerpc/powerpc64/power7/fpu/s_logbl.c: Likewise. + + * sysdeps/ieee754/dbl-64/wordsize-64/s_logb.c: Move to ... + * sysdeps/ieee754/dbl-64/s_logb.c: ... here. Add work around for + powerpc32 integer 0 converting to -0. + + * benchtests/Makefile (bench-math): Add logb. + * benchtests/logb-inputs: New file. + * benchtests/logbf-inputs: New file. + + * sysdeps/powerpc/power5+/fpu/s_modf.c: Move to ... + * sysdeps/powerpc/fpu/s_modf.c: ... here. Add ISA 2.07 optimization. + * sysdeps/powerpc/power5+/fpu/s_modff.c: Move to ... + * sysdeps/powerpc/fpu/s_modff.c: ... here. Add ISA 2.07 optimization. + * sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_modf-power5+.c: + Adjust include. + * sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_modff-power5+.c: + Likewise. + * sysdeps/powerpc/powerpc64/be/fpu/multiarch/Makefile (sysdep_calls, + sysdep_routines): Add s_modf* objects. + (CFLAGS-s_modf-power5+.c, CFLAGS-s_modff-power5+.c, + CFLAGS-s_modf-ppc64.c, CFLAGS-s_modff-ppc64.c): New rule. + * sysdeps/powerpc/powerpc64/fpu/multiarch/s_modf-power5+.c: Move + to ... + * sysdeps/powerpc/powerpc64/be/fpu/multiarch/s_modf-power5+.c: + ... here. + * sysdeps/powerpc/powerpc64/fpu/multiarch/s_modf-power5+.c: Movo + to ... + * sysdeps/powerpc/powerpc64/be/fpu/multiarch/s_modf-power5+.c: Move + ... here. + * sysdeps/powerpc/powerpc64/fpu/multiarch/s_modf.c: Move to ... + * sysdeps/powerpc/powerpc64/be/fpu/multiarch/s_modf.c: ... here. + * sysdeps/powerpc/powerpc64/fpu/multiarch/s_modff-power5+.c: Move + to ... + * sysdeps/powerpc/powerpc64/be/fpu/multiarch/s_modff-power5+.c: + ... here. + * sysdeps/powerpc/powerpc64/fpu/multiarch/s_modff-ppc64.c: Move to ... + * sysdeps/powerpc/powerpc64/be/fpu/multiarch/s_modff-ppc64.c: + ... here. + * sysdeps/powerpc/powerpc64/fpu/multiarch/s_modff.c: Move to ... + * sysdeps/powerpc/powerpc64/be/fpu/multiarch/s_modff.c: ... here. + + * sysdeps/powerpc/fpu/e_hypot.c (two60, two500, two600, two1022, + twoM500, twoM600, two60factor, pdnum): Remove. + (TEST_INFO_NAN, GET_TW0_HIGH_WORD): Remove macro. + (__ieee754_hypot): Replace static variables with inline definition, + remove ununsed branches. + * sysdeps/powerpc/powerpc64/fpu/multiarch/Makefile + (libm-sysdep_routines): Remove e_hypot-* objects. + (CFLAGS-e_hypot-power7.c, CFLAGS-e_hypotf-power7.c): Remove rule. + * sysdeps/powerpc/powerpc64/fpu/multiarch/e_hypot-power7.c: Remove + file. + * sysdeps/powerpc/powerpc64/fpu/multiarch/e_hypot-ppc64.c: Likewise. + * sysdeps/powerpc/powerpc64/fpu/multiarch/e_hypot.c: Likewise. + * sysdeps/powerpc/powerpc64/fpu/multiarch/e_hypotf-power7.c: Likewise. + * sysdeps/powerpc/powerpc64/fpu/multiarch/e_hypotf-ppc64.c: Likewise. + * sysdeps/powerpc/powerpc64/fpu/multiarch/e_hypotf.c: Likewise. + + * benchtests/Makefile (bench-math): Add hypot. + * benchtests/hypot-inputs: New file. + +2019-07-08 Vincent Chen + + * sysdeps/unix/sysv/linux/dl-vdso.h + (VDSO_NAME_LINUX_4, VDSO_HASH_LINUX_4): New defines. + +2019-07-04 Andreas Schwab + + [BZ #24484] + * sysdeps/riscv/ldsodefs.h (DL_RO_DYN_SECTION): Define. + +2019-07-04 Szabolcs Nagy + + * sysdeps/aarch64/Makefile: Install sys/ifunc.h and add tests. + * sysdeps/aarch64/dl-irel.h (elf_ifunc_invoke): Update to new ABI. + * sysdeps/aarch64/sys/ifunc.h: New file. + * sysdeps/aarch64/tst-ifunc-arg-1.c: New file. + * sysdeps/aarch64/tst-ifunc-arg-2.c: New file. + +2019-07-01 Florian Weimer + + [BZ #20188] + * nptl/Versions (libpthread): Remove __fork from GLIBC_2.0. + Replace __vfork with __libpthread_version_placeholder for + GLIBC_2.1.2. + (libc): Remove __libc_vfork from GLIBC_PRIVATE. + * nptl/Makefile (libpthread-routines): Remove pt-vfork. Add + libpthread-compat. + * nptl/pt-vfork.c: Remove file. + * sysdeps/unix/sysv/linux/aarch64/pt-vfork.c: Likewise. + * sysdeps/unix/sysv/linux/alpha/pt-vfork.S: Likewise. + * sysdeps/unix/sysv/linux/csky/pt-vfork.S: Likewise. + * sysdeps/unix/sysv/linux/hppa/pt-vfork.S: Likewise. + * sysdeps/unix/sysv/linux/ia64/pt-vfork.S: Likewise. + * sysdeps/unix/sysv/linux/m68k/pt-vfork.c: Likewise. + * sysdeps/unix/sysv/linux/microblaze/pt-vfork.S: Likewise. + * sysdeps/unix/sysv/linux/mips/pt-vfork.S: Likewise. + * sysdeps/unix/sysv/linux/nios2/pt-vfork.S: Likewise. + * sysdeps/unix/sysv/linux/riscv/pt-vfork.S: Likewise. + * sysdeps/unix/sysv/linux/s390/pt-vfork.S: Likewise. + * sysdeps/unix/sysv/linux/sh/pt-vfork.S: Likewise. + * sysdeps/unix/sysv/linux/sparc/pt-vfork.S: Likewise. + * sysdeps/unix/sysv/linux/aarch64/libpthread.abilist (GLIBC_2.17): + Remove vfork, __vfork. + * sysdeps/unix/sysv/linux/alpha/libpthread.abilist (GLIBC_2.0): + Remove vfork. + (GLIBC_2.1.2): Replace __vfork with + __libpthread_version_placeholder. + * sysdeps/unix/sysv/linux/arm/libpthread.abilist (GLIBC_2.4): + Remove vfork, __vfork. + * sysdeps/unix/sysv/linux/hppa/libpthread.abilist (GLIBC_2.2): + Likewise. + * sysdeps/unix/sysv/linux/i386/libpthread.abilist (GLIBC_2.0): + Remove vfork. + (GLIBC_2.1.2): Replace __vfork with + __libpthread_version_placeholder. + * sysdeps/unix/sysv/linux/ia64/libpthread.abilist (GLIBC_2.2): + Remove vfork. + * sysdeps/unix/sysv/linux/m68k/coldfire/libpthread.abilist + (GLIBC_2.4): Remove vfork, __vfork. + * sysdeps/unix/sysv/linux/m68k/m680x0/libpthread.abilist + (GLIBC_2.0): Remove vfork. + (GLIBC_2.1.2): Replace __vfork with + __libpthread_version_placeholder. + * sysdeps/unix/sysv/linux/microblaze/libpthread.abilist + (GLIBC_2.18): Remove vfork, __vfork. + * sysdeps/unix/sysv/linux/mips/mips32/libpthread.abilist + (GLIBC_2.0): Remove vfork. + (GLIBC_2.2): Remove __vfork. + * sysdeps/unix/sysv/linux/mips/mips64/libpthread.abilist: + (GLIBC_2.2): Remove vfork, __vfork. + * sysdeps/unix/sysv/linux/powerpc/powerpc32/libpthread.abilist: + (GLIBC_2.0): Remove vfork. + (GLIBC_2.1.2): Replace __vfork with + __libpthread_version_placeholder. + * sysdeps/unix/sysv/linux/powerpc/powerpc64/be/libpthread.abilist + (GLIBC_2.3): Remove vfork, __vfork. + * sysdeps/unix/sysv/linux/powerpc/powerpc64/le/libpthread.abilist + (GLIBC_2.17): Likewise. + * sysdeps/unix/sysv/linux/s390/s390-32/libpthread.abilist + (GLIBC_2.0): Remove vfork. + (GLIBC_2.1.2): Replace __vfork with + __libpthread_version_placeholder. + * sysdeps/unix/sysv/linux/s390/s390-64/libpthread.abilist + (GLIBC_2.2): Remove vfork, __vfork. + * sysdeps/unix/sysv/linux/sh/libpthread.abilist (GLIBC_2.2): + Likewise. + * sysdeps/unix/sysv/linux/sparc/sparc32/libpthread.abilist + (GLIBC_2.0): Remove vfork. + (GLIBC_2.1.2): Replace __vfork with + __libpthread_version_placeholder. + * sysdeps/unix/sysv/linux/sparc/sparc64/libpthread.abilist + (GLIBC_2.2): Remove vfork, __vfork. + * sysdeps/unix/sysv/linux/x86_64/64/libpthread.abilist + (GLIBC_2.2.5): Likewise. + * sysdeps/unix/sysv/linux/x86_64/x32/libpthread.abilist + (GLIBC_2.16): Likewise. + * sysdeps/unix/sysv/linux/hppa/localplt.data (libpthread.so): + Remove __errno_location. + +2019-07-02 Florian Weimer + + [BZ #24757] + * malloc/Depend: Add nptl and htl, due to potential indirect + libpthread dependency of memusagestat. + +2019-07-02 Stefan Liebler + + * resolv/res_send.c (__res_context_send): Disable maybe-uninitialized + warning. + +2019-07-01 Florian Weimer + + * scripts/build-many-glibcs.py (Context.add_all_configs): Add v4t + variant for arm-linux-gnueabi. + +2019-07-01 H.J. Lu + + [BZ #24259] + * elf/dl-open.c (dl_open_worker): Call _dl_open_check after + relocation. + * sysdeps/x86/Makefile (tests): Add tst-cet-legacy-5a, + tst-cet-legacy-5b, tst-cet-legacy-6a and tst-cet-legacy-6b. + (modules-names): Add tst-cet-legacy-mod-5a, tst-cet-legacy-mod-5b, + tst-cet-legacy-mod-5c, tst-cet-legacy-mod-6a, tst-cet-legacy-mod-6b + and tst-cet-legacy-mod-6c. + (CFLAGS-tst-cet-legacy-5a.c): New. + (CFLAGS-tst-cet-legacy-5b.c): Likewise. + (CFLAGS-tst-cet-legacy-mod-5a.c): Likewise. + (CFLAGS-tst-cet-legacy-mod-5b.c): Likewise. + (CFLAGS-tst-cet-legacy-mod-5c.c): Likewise. + (CFLAGS-tst-cet-legacy-6a.c): Likewise. + (CFLAGS-tst-cet-legacy-6b.c): Likewise. + (CFLAGS-tst-cet-legacy-mod-6a.c): Likewise. + (CFLAGS-tst-cet-legacy-mod-6b.c): Likewise. + (CFLAGS-tst-cet-legacy-mod-6c.c): Likewise. + ($(objpfx)tst-cet-legacy-5a): Likewise. + ($(objpfx)tst-cet-legacy-5a.out): Likewise. + ($(objpfx)tst-cet-legacy-mod-5a.so): Likewise. + ($(objpfx)tst-cet-legacy-mod-5b.so): Likewise. + ($(objpfx)tst-cet-legacy-5b): Likewise. + ($(objpfx)tst-cet-legacy-5b.out): Likewise. + (tst-cet-legacy-5b-ENV): Likewise. + ($(objpfx)tst-cet-legacy-6a): Likewise. + ($(objpfx)tst-cet-legacy-6a.out): Likewise. + ($(objpfx)tst-cet-legacy-mod-6a.so): Likewise. + ($(objpfx)tst-cet-legacy-mod-6b.so): Likewise. + ($(objpfx)tst-cet-legacy-6b): Likewise. + ($(objpfx)tst-cet-legacy-6b.out): Likewise. + (tst-cet-legacy-6b-ENV): Likewise. + * sysdeps/x86/tst-cet-legacy-5.c: New file. + * sysdeps/x86/tst-cet-legacy-5a.c: Likewise. + * sysdeps/x86/tst-cet-legacy-5b.c: Likewise. + * sysdeps/x86/tst-cet-legacy-6.c: Likewise. + * sysdeps/x86/tst-cet-legacy-6a.c: Likewise. + * sysdeps/x86/tst-cet-legacy-6b.c: Likewise. + * sysdeps/x86/tst-cet-legacy-mod-5.c: Likewise. + * sysdeps/x86/tst-cet-legacy-mod-5a.c: Likewise. + * sysdeps/x86/tst-cet-legacy-mod-5b.c: Likewise. + * sysdeps/x86/tst-cet-legacy-mod-5c.c: Likewise. + * sysdeps/x86/tst-cet-legacy-mod-6.c: Likewise. + * sysdeps/x86/tst-cet-legacy-mod-6a.c: Likewise. + * sysdeps/x86/tst-cet-legacy-mod-6b.c: Likewise. + * sysdeps/x86/tst-cet-legacy-mod-6c.c: Likewise. + +2019-06-30 Paul A. Clarke + + * sysdeps/powerpc/bits/fenvinline.h (__fegetround): Use + __fegetround_ISA300() or __fegetround_ISA2() as appropriate. + (__fegetround_ISA300) New. + (__fegetround_ISA2) New. + * sysdeps/powerpc/fpu_control.h (IS_ISA300): New. + (_FPU_MFFS): Move implementation... + (_FPU_GETCW): Here. + (_FPU_MFFSL): Move implementation.... + (_FPU_GET_RC_ISA300): Here. New. + (_FPU_GET_RC): Use _FPU_GET_RC_ISA300() or _FPU_GETCW() as appropriate. + * sysdeps/powerpc/fpu/fenv_libc.h (fegetenv_status_ISA300): New. + (fegetenv_status): New. + * sysdeps/powerpc/fpu/fegetmode.c (fegetmode): Use fegetenv_status() + instead of fegetenv_register(). + * sysdeps/powerpc/fpu/fegetexcept.c (__fegetexcept): Likewise. + +2019-06-28 Wilco Dijkstra + + * benchtests/bench-math-inlines.c: Increase iterations. + * benchtests/bench-memcmp.c: Likewise. + * benchtests/bench-rawmemchr.c: Likewise. + * benchtests/bench-strcmp.c: Likewise. + * benchtests/bench-strcpy_chk.c: Likewise. + * benchtests/bench-string.h (INNER_LOOP_ITERS8): Add define. + (INNER_LOOP_ITERS_MEDIUM): Increase iterations. + (INNER_LOOP_ITERS_SMALL): Likewise. + * benchtests/bench-strncat.c: Increase iterations. + * benchtests/bench-strncmp.c: Increase iterations. + * benchtests/bench-strncpy.c: Reduce iterations for wide strings. + * benchtests/bench-strrchr.c: Increase iterations. + * benchtests/bench-strstr.c: Keep iterations unchanged. + * benchtests/bench-strtod.c: Increase iterations. + +2019-06-28 Anton Youdkevitch + + * benchtests/bench-memccpy.c: Replace INNER_LOOP_ITERS + with INNER_LOOP_ITERS_LARGE. + * benchtests/bench-memchr.c: Likewise. + * benchtests/bench-rawmemchr.c: Likewise. + * benchtests/bench-strcat.c: Likewise. + * benchtests/bench-strchr.c: Likewise. + * benchtests/bench-string.h: Likewise. + * benchtests/bench-strlen.c: Likewise. + * benchtests/bench-strncpy.c: Likewise. + * benchtests/bench-strnlen.c: Likewise. + +2019-06-28 Florian Weimer + + * sysdeps/unix/sysv/linux/tst-getdents64.c (large_buffer_checks): + Use mmap instead of malloc. malloc with M_PERTURB writes to the + entire allocated memory range. + +2019-06-28 Tobias Klauser + + * sysdeps/unix/sysv/linux/dl-vdso.h (PREPARE_VERSION): Remove macro. + (prepare_version_base): New helper inline function. + (prepare_version): New macro replacing PREPARE_VERSION. + (PREPARE_VERSION_KNOWN): Use prepare_version instead of PREPARE_VERSION. + +2019-06-28 Florian Weimer + + [BZ #24741] + * elf/dl-lookup.c (do_lookup_x): Do not fail if there is a soname + mismatch in a versioned symbol reference. + (_dl_lookup_symbol_x): Do not report soname mismatch failures. + * elf/Makefile [$(build-shared)] (tests): Add tst-sonamemove-link, + tst-sonamemove-dlopen. + (module-names): Add tst-sonamemove-linkmod1, + tst-sonamemove-runmod1, tst-sonamemove-runmod2. + (LDFLAGS-tst-sonamemove-linkmod1.so): Set. + (LDFLAGS-tst-sonamemove-runmod1.so): Likewise. + (LDFLAGS-tst-sonamemove-runmod2.so): Likewise. + (tst-sonamemove-runmod1.so): Link against + tst-sonamemove-runmod2.so. + (tst-sonamemove-link): Link against tst-sonamemove-linkmod1.so. + (tst-sonamemove-link.out): Depend on tst-sonamemove-runmod1.so, + tst-sonamemove-runmod2.so. + (tst-sonamemove-dlopen): Link with -ldl. + (tst-sonamemove-dlopen.out): Likewise. + * elf/tst-sonamemove-link.c: New file. + * elf/tst-sonamemove-dlopen.c: Likewise. + * elf/tst-sonamemove-linkmod1.c: Likewise. + * elf/tst-sonamemove-linkmod1.map: Likewise. + * elf/tst-sonamemove-runmod1.c: Likewise. + * elf/tst-sonamemove-runmod1.map: Likewise. + * elf/tst-sonamemove-runmod2.c: Likewise. + * elf/tst-sonamemove-runmod2.map: Likewise. + +2019-06-28 Florian Weimer + + * support/xdlfcn.h (xdlvsym): Declare function. + * support/xdlfcn.c (xdlvsym): Define funciton. + +2019-06-28 Florian Weimer + + [BZ #24744] + io: Remove the copy_file_range emulation. + * sysdeps/unix/sysv/linux/copy_file_range.c (copy_file_range): Do + not define and call copy_file_range_compat. + * io/Makefile (tests-static, tests-internal): Do not add + tst-copy_file_range-compat. + * io/copy_file_range-compat.c: Remove file. + * io/copy_file_range.c (copy_file_range): Define as stub. + * io/tst-copy_file_range-compat.c: Remove file. + * io/tst-copy_file_range.c (xdevfile): Remove variable. + (typical_sizes): Update comment. Remove 16K sizes. + (maximum_offset, maximum_offset_errno, maximum_offset_hard_limit): + Remove variables. + (find_maximum_offset, pipe_as_source, pipe_as_destination) + (delayed_write_failure_beginning, delayed_write_failure_end) + (cross_device_failure, enospc_failure_1, enospc_failure) + (oappend_failure): Remove functions. + (tests): Adjust test case list. + (do_test): Remove file system search code. Check for ENOSYS from + copy_file_range. Do not free xdevfile. + * manual/llio.texi (Copying File Data): Document ENOSYS error from + copy_file_range. Do not document the EXDEV error, which future + kernels may not report. Update the wording to reflect that + further errors are possible. + * sysdeps/unix/sysv/linux/alpha/kernel-features.h + [__LINUX_KERNEL_VERSION < 0x040D00] (__ASSUME_COPY_FILE_RANGE): Do + not undefine. + * sysdeps/unix/sysv/linux/arm/kernel-features.h + [__LINUX_KERNEL_VERSION < 0x040700] (__ASSUME_COPY_FILE_RANGE): + Likewise. + * sysdeps/unix/sysv/linux/kernel-features.h + [__LINUX_KERNEL_VERSION >= 0x040500] (__ASSUME_COPY_FILE_RANGE): + Remove definition. + * sysdeps/unix/sysv/linux/microblaze/kernel-features.h + [__LINUX_KERNEL_VERSION < 0x040A00] (__ASSUME_COPY_FILE_RANGE): Do + not undefine. + * sysdeps/unix/sysv/linux/sh/kernel-features.h + [__LINUX_KERNEL_VERSION < 0x040800] (__ASSUME_COPY_FILE_RANGE): + Likewise. + +2019-06-27 Gabriel F. T. Gomes + + * libio/libioP.h (PRINTF_LDBL_USES_FLOAT128): New macro to be + used as a mask for the mode argument of __vfprintf_internal. + * stdio-common/printf-parse.h (printf_arg): New union member: + pa_float128. + * stdio-common/vfprintf-internal.c + (PARSE_FLOAT_VA_ARG_EXTENDED): New macro. + (PARSE_FLOAT_VA_ARG): Likewise. + (SETUP_FLOAT128_INFO): Likewise. + (process_arg): Use PARSE_FLOAT_VA_ARG_EXTENDED and + SETUP_FLOAT128_INFO. + [__HAVE_FLOAT128_UNLIKE_LDBL] (printf_positional): Write + floating-point value to the new union member, pa_float128. + (printf_positional): Zero-initialize args_value[cnt] with memset. + +2019-06-27 Florian Weimer + + [BZ #24740] + * sysdeps/unix/sysv/linux/getdents64.c (__getdents64): Adjust + buffer size if necessary. + * sysdeps/unix/sysv/linux/mips/mips64/getdents64.c (__getdents64): + Likewise. + * sysdeps/unix/sysv/linux/tst-getdents64.c (large_buffer_check): + New function. + (large_buffer_checks): Likewise. + (do_test): Call large_buffer_checks. + +2019-06-26 H.J. Lu + + * sysdeps/i386/dl-lookupcfg.h: Moved to ... + * sysdeps/x86/dl-lookupcfg.h: Here. + * sysdeps/x86_64/dl-lookupcfg.h: Removed. + +2019-06-26 Adhemerval Zanella + + * sysdeps/powerpc/powerpc64/fpu/multiarch/Makefile + (libm-sysdep_routines): Remove e_expf-power8 and expf-ppc64. + * sysdeps/powerpc/powerpc64/fpu/multiarch/e_expf-power8.S: Remove + file. + * sysdeps/powerpc/powerpc64/fpu/multiarch/e_expf-ppc64.c: Likewise. + * sysdeps/powerpc/powerpc64/fpu/multiarch/e_expf.c: Likewise. + * sysdeps/powerpc/powerpc64/fpu/multiarch/w_expf.c: Likewise. + * sysdeps/powerpc/powerpc64/power8/fpu/e_expf.S: Likewise. + * sysdeps/powerpc/powerpc64/power8/fpu/w_expf.c: Likewise. + + * sysdeps/powerpc/powerpc32/fpu/Makefile + [$(subdir) == math] (CFLAGS-s_lround.c): New rule. + * sysdeps/powerpc/powerpc32/fpu/s_llround.c (__llround): Add power5+ + and fctidz optimization. + * sysdeps/powerpc/powerpc32/fpu/s_lround.S: Remove file. + * sysdeps/powerpc/powerpc32/fpu/s_lround.c: New file. + * sysdeps/powerpc/powerpc32/power4/fpu/multiarch/Makefile + (CFLAGS-s_llround-power6.c, CFLAGS-s_llround-power5+.c, + CFLAGS-s_llround-ppc32.c, CFLAGS-s_lround-ppc32.c, + CFLAGS-s_lround-power5+.c): New rule. + * sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_llround-power5+.c: + New file. + * sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_llround-power6.c: + Likewise. + * sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_llround-ppc32.c: + Likewise. + * sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_lround-power5+.c: + Likewise. + * sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_lround-ppc32.c: + Likewise. + * sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_llround-power5+.S: + Remove file. + * sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_llround-power6.S: + Likewise. + * sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_llround-ppc32.S: + Likewise. + * sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_lround-power5+.S: + Likewise. + * sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_lround-ppc32.S: + Likewise. + * sysdeps/powerpc/powerpc32/power4/fpu/s_llround.S: Likewise. + * sysdeps/powerpc/powerpc32/power4/fpu/s_llroundf.S: Likewise. + * sysdeps/powerpc/powerpc32/power5+/fpu/s_llround.S: Likewise. + * sysdeps/powerpc/powerpc32/power5+/fpu/s_llroundf.S: Likewise. + * sysdeps/powerpc/powerpc32/power5+/fpu/s_lround.S: Likewise. + * sysdeps/powerpc/powerpc32/power6/fpu/s_llround.S: Likewise. + * sysdeps/powerpc/powerpc32/power6/fpu/s_llroundf.S: Likewise. + +2019-06-26 Vincent Chen + + * sysdeps/unix/sysv/linux/syscall-names.list: Add nds32 + specific system calls, fp_udfiex_crtl and udftrap. + +2019-06-26 Stefan Liebler + + * nptl/tst-eintr1.c (tf1): Add return statement. + (do_test): Remove unused th variable. + +2019-06-26 Stefan Liebler + + * locale/programs/ld-ctype.c (charclass_symbolic_ellipsis): + Return error if get_character fails. + +2019-06-25 Stefan Liebler + + * sysdeps/s390/fpu/libm-test-ulps: Regenerated. + +2019-06-24 Rafał Lużyński + + [BZ #24652] + * localedata/locales/szl_PL (day): Use the correct Unicode + sequences instead of non-ASCII characters. + +2019-06-24 Grzegorz Kulik + + [BZ #24652] + * localedata/locales/szl_PL (abday): Spelling corrections. + (day): Likewise. + (abmon): Likewise. + (mon): Rename to... + (alt_mon): This, then apply spelling corrections. + (mon): New entry, month names in the genitive case. + +2019-06-21 Rafał Lużyński + + [BZ #23831] + * localedata/locales/nl_AW (mon_thousands_sep): Set to ".". + * localedata/locales/nl_NL (mon_thousands_sep): Likewise. + (thousands_sep): Likewise. + (grouping): Set to 3;3. + +2019-06-21 Tobias Klauser + + * sysdeps/unix/sysv/linux/aarch64/gettimeofday.c (INIT_ARCH): Use + PREPARE_VERSION_KNOWN. + * sysdeps/unix/sysv/linux/aarch64/init-first.c: Likewise. + * sysdeps/unix/sysv/linux/dl-vdso.h (VDSO_NAME_LINUX_2_6_39): New + define. + (VDSO_HASH_LINUX_2_6_39): Likewise. + (VDSO_NAME_LINUX_4_9): Likewise. + (VDSO_HASH_LINUX_4_9): Likewise. + * sysdeps/unix/sysv/linux/powerpc/gettimeofday.c (INIT_ARCH): Likewise. + * sysdeps/unix/sysv/linux/powerpc/init-first.c + (_libc_vdso_platform_setup): Likewise. + * sysdeps/unix/sysv/linux/powerpc/time.c (INIT_ARCH): Likewise. + * sysdeps/unix/sysv/linux/s390/init-first.c (_libc_vdso_platform_setup): + Likewise. + * sysdeps/unix/sysv/linux/x86_64/init-first.c (__vdso_platform_setup): + Likewise. + +2019-06-20 Mike Crowe + + * nptl/eintr.c: Use libsupport. + * nptl/tst-eintr1.c: Likewise. + * nptl/tst-eintr2.c: Likewise. + * nptl/tst-eintr3.c: Likewise. + * nptl/tst-eintr4.c: Likewise. + * nptl/tst-eintr5.c: Likewise. + * nptl/tst-mutex-errorcheck.c: Likewise. + * nptl/tst-mutex5.c: Likewise. + + * support/test-driver.h: Add verbose_printf macro. + + * support/xtime.h: Add xclock_now() helper function. + +2019-06-20 Dmitry V. Levin + Florian Weimer + + [BZ #24228] + * libio/genops.c (_IO_unbuffer_all) + [SHLIB_COMPAT (libc, GLIBC_2_0, GLIBC_2_1)]: Do not attempt to free wide + buffers and access _IO_FILE_complete members of legacy libio streams. + * libio/tst-bz24228.c: New file. + * libio/tst-bz24228.map: Likewise. + * libio/Makefile [build-shared] (tests): Add tst-bz24228. + [build-shared] (generated): Add tst-bz24228.mtrace and + tst-bz24228.check. + [run-built-tests && build-shared] (tests-special): Add + $(objpfx)tst-bz24228-mem.out. + (LDFLAGS-tst-bz24228, tst-bz24228-ENV): New variables. + ($(objpfx)tst-bz24228-mem.out): New rule. + +2019-06-19 Paul A. Clarke + + * sysdeps/powerpc/fpu/fenv_libc.h (relax_fenv_state): Add 'volatile'. + * sysdeps/powerpc/fpu/fpu_control.h (__FPU_MFFS): Likewise. + (__FPU_MFFSL): Likewise. + (_FPU_SETCW): Likewise. + +2019-06-19 Stan Shebs + Raoni Fassina Firmino + + [BZ #24640] + * sysdeps/unix/sysv/linux/powerpc/get_timebase_freq.c + [!SHARED] (__get_timebase_freq): Fix sense of a test in the + static-linking version. + * sysdeps/unix/sysv/linux/powerpc/Makefile + (tests-static): Add test-gettimebasefreq-static. + (tests): Likewise. + * sysdeps/unix/sysv/linux/powerpc/test-gettimebasefreq-static.c: + New file. + +2019-06-19 Rafał Lużyński + + [BZ #24614] + * localedata/locales/nl_AW (n_sep_by_space): Set to 2 (a space + between the currency symbol and the minus sign). + (n_sign_posn): Set to 4 (the minus sign after the currency symbol). + +2019-06-19 Stefan Liebler + + [BZ #24556] + * string/test-strcasestr.c (check_result): Add NULL check. + * nss/tst-field.c (check_rewrite): Likewise. + * benchtests/bench-strstr.c (do_one_test): Likewise. + * string/test-strstr.c (check_result): Likewise. + * argp/argp-test.c (popt): Increase size of buf to 12. + * benchtests/bench-malloc-simple.c (bench): + Do not initialize tests array out of bounds. + +2019-06-19 Florian Weimer + + [BZ #24166] + * dlfcn/dlfcn.h (Dl_serinfo): Do not use array of length 1 for + dls_serpath field. + +2019-06-18 Florian Weimer + + [BZ #24323] + * include/elf.h (DT_1_SUPPORTED_MASK): Include DF_1_PIE. + * elf/dl-load.c (_dl_map_object_from_fd): Check for DF_1_PIE and + fail when called from dlopen. + * elf/Makefile [have-fpie && build-shared] (tests): Add + tst-dlopen-pie. + (tst-dlopen-pie): Link with -ldl. + (tst-dlopen-pie.out): Add run-time dependency on tst-pie1. + * elf/tst-dlopen-pie.c (do_test): New file. + +2019-06-17 Rafał Lużyński + + [BZ #24614] + * localedata/Makefile (LOCALES): Add nl_NL.UTF-8. + * localedata/locales/nl_NL (n_sep_by_space): Set to 2 (a space + between the currency symbol and the minus sign). + (n_sign_posn): Set to 4 (the minus sign after the currency symbol). + * localedata/tst-strfmon1.c (tests): Add test data for nl_NL.UTF-8. + +2019-06-17 Adhemerval Zanella + + * sysdeps/unix/sysv/linux/m68k/Makefile (sysdep_routines, + sysdep-rtld-routines): Remove rules. + * sysdeps/unix/sysv/linux/m68k/Versions (libc) [GLIBC_PRIVATE]: + Remove __vdso_atomic_cmpxchg_32 and __vdso_atomic_barrier. + (ld) [GLIBC_PRIVATE]: __rtld___vdso_read_tp, + __rtld___vdso_atomic_cmpxchg_32, and __rtld___vdso_atomic_barrier. + * sysdeps/unix/sysv/linux/m68k/coldfire/atomic-machine.h + (atomic_compare_and_exchange_val_acq, atomic_full_barrier): Remove + vDSO path for SHARED. + * sysdeps/unix/sysv/linux/m68k/init-first.c: Remove file. + * sysdeps/unix/sysv/linux/m68k/libc-m68k-vdso.c: Likewise. + * sysdeps/unix/sysv/linux/m68k/m68k-helpers.S: Likewise. + * sysdeps/unix/sysv/linux/m68k/m68k-vdso.c: Likewise. + * sysdeps/unix/sysv/linux/m68k/m68k-vdso.h: Likewise. + * sysdeps/unix/sysv/linux/m68k/m68k-helpers.c: New file. + + * sysdeps/powerpc/powerpc64/be/fpu/multiarch/Makefile + (libm-sysdep_routines): Add s_llround-power8, s_llround-power6x, + s_llround-power5+, s_llround-ppc64, and s_llroundf-ppc64. + (CFLAGS-s_llround-power8.c, CFLAGS-s_llround-power6x.c, + CFLAGS-s_llround-power5+.c): New rule. + * sysdeps/powerpc/powerpc64/be/fpu/multiarch/s_llround-power5+.c: + New file. + * sysdeps/powerpc/powerpc64/be/fpu/multiarch/s_llround-power6x.c: + Likewise. + * sysdeps/powerpc/powerpc64/be/fpu/multiarch/s_llround-power8.c: + Likewise. + * sysdeps/powerpc/powerpc64/be/fpu/multiarch/s_llround-ppc64.c: + Likewise. + * sysdeps/powerpc/powerpc64/be/fpu/multiarch/s_llroundf-ppc64.c: + Likewise. + * sysdeps/powerpc/powerpc64/fpu/multiarch/s_llround.c: Move to ... + * sysdeps/powerpc/powerpc64/be/fpu/multiarch/s_llround.c: ... here. + * sysdeps/powerpc/powerpc64/fpu/multiarch/s_llroundf.c: Move to ... + * sysdeps/powerpc/powerpc64/be/fpu/multiarch/s_llroundf.c: ... here. + * sysdeps/powerpc/powerpc64/fpu/multiarch/s_lround.c: Move to ... + * sysdeps/powerpc/powerpc64/be/fpu/multiarch/s_lround.c: ... here. + * sysdeps/powerpc/powerpc64/fpu/Makefile + [$(subdir) == math] (CFLAGS-s_llround.c): New rule. + * sysdeps/powerpc/powerpc64/fpu/multiarch/Makefile + (libm-sysdep_routines): Remove s_llround-* objects. + * sysdeps/powerpc/powerpc64/fpu/multiarch/s_llround-power5+.S: Remove + file. + * sysdeps/powerpc/powerpc64/fpu/multiarch/s_llround-power6x.S: + Likewise. + * sysdeps/powerpc/powerpc64/fpu/multiarch/s_llround-power8.S: + Likewise. + * sysdeps/powerpc/powerpc64/fpu/multiarch/s_llround-ppc64.S: + Likewise. + * sysdeps/powerpc/powerpc64/fpu/multiarch/s_llroundf-ppc64.S: + Likewise. + * sysdeps/powerpc/powerpc64/fpu/s_llround.S: Likewise. + * sysdeps/powerpc/powerpc64/fpu/s_llroundf.S: Likewise. + * sysdeps/powerpc/powerpc64/fpu/s_lround.S: Likewise. + * sysdeps/powerpc/powerpc64/fpu/s_lroundf.S: Likewise. + * sysdeps/powerpc/powerpc64/fpu/s_llround.c: New file. + * sysdeps/powerpc/powerpc64/fpu/s_llroundf.c: Likewise. + * sysdeps/powerpc/powerpc64/fpu/s_lround.c: Likewise. + * sysdeps/powerpc/powerpc64/fpu/s_lroundf.c: Likewise. + * sysdeps/powerpc/powerpc64/power5+/fpu/s_llround.S: Likewise. + * sysdeps/powerpc/powerpc64/power5+/fpu/s_llroundf.S: Likewise. + * sysdeps/powerpc/powerpc64/power6x/fpu/s_llround.S: Likewise. + * sysdeps/powerpc/powerpc64/power6x/fpu/s_llroundf.S: Likewise. + * sysdeps/powerpc/powerpc64/power8/fpu/s_llround.S: Likewise. + * sysdeps/powerpc/powerpc64/power8/fpu/s_llroundf.S: Likewise. + + * sysdeps/powerpc/fpu/s_lrintf.S: Remove file. + * sysdeps/powerpc/powerpc64/fpu/s_lrintf.c: Move to ... + * sysdeps/powerpc/fpu/s_lrintf.c: ... here. + * sysdeps/powerpc/powerpc32/fpu/Makefile + [$(subdir) == math] (CFLAGS-s_lrint.c): New rule. + * sysdeps/powerpc/powerpc32/fpu/s_llrint.c (__llrint): Add power4 + optimization. + * sysdeps/powerpc/powerpc32/fpu/s_llrintf.c (__llrintf): Likewise. + * sysdeps/powerpc/powerpc32/fpu/s_lrint.S: Remove file. + * sysdeps/powerpc/powerpc32/fpu/s_lrint.c: New file. + * sysdeps/powerpc/powerpc32/power4/fpu/multiarch/Makefile + (CFLAGS-s_llrintf-power6.c, CFLAGS-s_llrintf-ppc32.c, + CFLAGS-s_llrint-power6.c, CFLAGS-s_llrint-ppc32.c, + CFLAGS-s_lrint-ppc32.c): New rule. + * sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_llrint-power6.S: + Remove file. + * sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_llrint-ppc32.S: + Likewise. + * sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_llrintf-power6.S: + Likewise. + * sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_llrintf-ppc32.S: + Likewise. + * sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_lrint-ppc32.S: + Likewise. + * sysdeps/powerpc/powerpc32/power4/fpu/s_llrint.S: Likewise. + * sysdeps/powerpc/powerpc32/power4/fpu/s_llrintf.S: Likewise. + * sysdeps/powerpc/powerpc32/power6/fpu/s_llrint.S: Likewise. + * sysdeps/powerpc/powerpc32/power6/fpu/s_llrintf.S: Likewise. + * sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_llrint-power6.c: + New file. + * sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_llrint-ppc32.c: + Likewise. + * sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_llrintf-power6.c: + Likewise. + * sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_llrintf-ppc32.c: + Likewise. + * sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_lrint-ppc32.c: + Likewise. + + * sysdeps/powerpc/powerpc64/be/fpu/multiarch/Makefile + (libm-sysdep_routines): Add s_llrint-power8, s_llrint-power6x, and + s_llrint-ppc64. + (CFLAGS-s_llrint-power8.c, CFLAGS-s_llrint-power6x.c): New rule. + * sysdeps/powerpc/powerpc64/be/fpu/multiarch/s_llrint-power6x.c: New + file. + * sysdeps/powerpc/powerpc64/be/fpu/multiarch/s_llrint-power8.c: + Likewise. + * sysdeps/powerpc/powerpc64/be/fpu/multiarch/s_llrint-ppc64.c: + Likewise. + * sysdeps/powerpc/powerpc64/fpu/multiarch/s_lrint.c: Move to ... + * sysdeps/powerpc/powerpc64/be/fpu/multiarch/s_lrint.c: ... here. + * sysdeps/powerpc/powerpc64/fpu/multiarch/s_llrint.c: Move to ... + * sysdeps/powerpc/powerpc64/be/fpu/multiarch/s_llrint.c: ... here. + * sysdeps/powerpc/powerpc64/fpu/multiarch/s_llrintf.c: Move to ... + * sysdeps/powerpc/powerpc64/be/fpu/multiarch/s_llrintf.c: ... here. + * sysdeps/powerpc/powerpc64/be/fpu/multiarch/s_lrint.c: New file. + * sysdeps/powerpc/powerpc64/fpu/Makefile: Likewise. + * sysdeps/powerpc/powerpc64/fpu/multiarch/Makefile + (libm-sysdep_routines): Remove s_llrint-* objects. + * sysdeps/powerpc/powerpc64/fpu/multiarch/s_llrint-power6x.S: Remove + file. + * sysdeps/powerpc/powerpc64/fpu/multiarch/s_llrint-power8.S: + Likewise. + * sysdeps/powerpc/powerpc64/fpu/multiarch/s_llrint-ppc64.S: Likewise. + * sysdeps/powerpc/powerpc64/fpu/s_llrint.c: New file. + * sysdeps/powerpc/powerpc64/fpu/s_llrintf.c: Likewise. + * sysdeps/powerpc/powerpc64/fpu/s_lrint.c: Likewise. + * sysdeps/powerpc/powerpc64/fpu/s_lrintf.c: Likewise. + * sysdeps/powerpc/powerpc64/fpu/s_llrint.S: Remove file. + * sysdeps/powerpc/powerpc64/fpu/s_llrintf.S: Likewise. + * sysdeps/powerpc/powerpc64/fpu/s_lrint.S: Likewise. + * sysdeps/powerpc/powerpc64/power6x/fpu/s_llrint.S: Likewise. + * sysdeps/powerpc/powerpc64/power8/fpu/s_llrint.S: Likewise. + +2019-06-14 Florian Weimer + + * sysdeps/unix/sysv/linux/bits/statx.h: Use string literal in + argument to __glibc_has_include to inhibit macro expansion. + +2019-06-14 Florian Weimer + + * misc/sys/cdefs.h (__glibc_has_include): Do not use a + function-like macro, so that __has_include can inhibit expansion + of its argument. + +2019-06-13 Joseph Myers + + * sysdeps/unix/sysv/linux/bits/in.h (IPV6_ROUTER_ALERT_ISOLATE): + New macro. + + * sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/localplt.data: + Allow memset in libc.so. + +2019-06-13 Szabolcs Nagy + + * sysdeps/aarch64/dl-dtprocnum.h: New file. + * sysdeps/aarch64/dl-machine.h (DT_AARCH64): Define. + (elf_machine_runtime_setup): Handle DT_AARCH64_VARIANT_PCS. + (elf_machine_lazy_rel): Check STO_AARCH64_VARIANT_PCS and bind such + symbols at load time. + * sysdeps/aarch64/linkmap.h (struct link_map_machine): Add variant_pcs. + +2019-06-13 Szabolcs Nagy + + * elf/elf.h (STO_AARCH64_VARIANT_PCS): Define. + (DT_AARCH64_VARIANT_PCS): Define. + +2019-06-12 Adhemerval Zanella + + * sysdeps/powerpc/powerpc32/power4/fpu/multiarch/Makefile + (sysdeps_routines, libm-sysdep_routines): Remove s_finite* + objects. + * sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_finite-power7.S: + Remove file. + * sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_finite-ppc32.c: + Likewise. + * sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_finite.c: Likewise. + * sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_finitef-ppc32.c: + Likewise. + * sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_finitef.c: Likewise. + * sysdeps/powerpc/powerpc32/power7/fpu/s_finite.S: Likewise. + * sysdeps/powerpc/powerpc32/power7/fpu/s_finitef.S: Likewise. + * sysdeps/powerpc/powerpc64/fpu/multiarch/Makefile (sysdep_call): + Remove s_finite* objects. + * sysdeps/powerpc/powerpc64/fpu/multiarch/s_finite-power7.S: Remove file. + * sysdeps/powerpc/powerpc64/fpu/multiarch/s_finite-power8.S: Likewise. + * sysdeps/powerpc/powerpc64/fpu/multiarch/s_finite-ppc64.c: Likewise. + * sysdeps/powerpc/powerpc64/fpu/multiarch/s_finite.c: Likewise. + * sysdeps/powerpc/powerpc64/fpu/multiarch/s_finitef-ppc64.c: Likewise. + * sysdeps/powerpc/powerpc64/fpu/multiarch/s_finitef.c: Likewise. + * sysdeps/powerpc/powerpc64/power7/fpu/s_finite.S: Likewise. + * sysdeps/powerpc/powerpc64/power7/fpu/s_finitef.S: Likewise. + * sysdeps/powerpc/powerpc64/power8/fpu/s_finite.S: Likewise. + * sysdeps/powerpc/powerpc64/power8/fpu/s_finitef.S: Likewise. + + * sysdeps/ieee754/dbl-64/wordsize-64/s_finite.c: Move to ... + * sysdeps/ieee754/dbl-64/s_finite.c: ... here and format code. + + * sysdeps/powerpc/powerpc32/power4/fpu/multiarch/Makefile + (sysdeps_routines, libm-sysdep_routines): Remove s_isinf* and s_isinf* + objects. + * sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_isinf-power7.S: + Remove file. + * sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_isinf-ppc32.c: + Likewise. + * sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_isinf.c: Likewise. + * sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_isinff-ppc32.c: + Likewise. + * sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_isinff.c: Likewise. + * sysdeps/powerpc/powerpc32/power7/fpu/s_isinf.S: Likewise. + * sysdeps/powerpc/powerpc32/power7/fpu/s_isinff.S: Likewise. + * sysdeps/powerpc/powerpc64/fpu/multiarch/Makefile (sysdep_call): + Remove s_isinf* and s_isinf* objects. + * sysdeps/powerpc/powerpc64/fpu/multiarch/s_isinf-power7.S: Likewise. + * sysdeps/powerpc/powerpc64/fpu/multiarch/s_isinf-power8.S: Likewise. + * sysdeps/powerpc/powerpc64/fpu/multiarch/s_isinf-ppc64.c: Likewise. + * sysdeps/powerpc/powerpc64/fpu/multiarch/s_isinf.c: Likewise. + * sysdeps/powerpc/powerpc64/fpu/multiarch/s_isinff-ppc64.c: Likewise. + * sysdeps/powerpc/powerpc64/fpu/multiarch/s_isinff.c: Likewise. + * sysdeps/powerpc/powerpc64/power7/fpu/s_isinf.S: Likewise. + * sysdeps/powerpc/powerpc64/power7/fpu/s_isinff.S: Likewise. + * sysdeps/powerpc/powerpc64/power8/fpu/s_isinf.S: Likewise. + * sysdeps/powerpc/powerpc64/power8/fpu/s_isinff.S: Likewise. + + * sysdeps/ieee754/dbl-64/wordsize-64/s_isinf.c: Move to ... + * sysdeps/ieee754/dbl-64/s_isinf.c: ... here and format code. + + * sysdeps/powerpc/fpu/s_isnan.c: Remove file. + * sysdeps/powerpc/fpu/s_isnanf.S: Likewise. + * sysdeps/powerpc/powerpc32/fpu/s_isnan.S: Likewise. + * sysdeps/powerpc/powerpc32/power4/fpu/multiarch/Makefile + (sysdeps_routines, libm-sysdep_routines): Remove s_isnan-* and + s_isnanf-* objects. + * sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_isnan-power5.S: + Remove file + * sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_isnan-power6.S: + Likewise. + * sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_isnan-power7.S: + Likewise. + * sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_isnan-ppc32.S: + Likewise. + * sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_isnan.c: Likewise. + * sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_isnanf-power5.S: + Likewise. + * sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_isnanf-power6.S: + Likewise. + * sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_isnanf.c: Likewise. + * sysdeps/powerpc/powerpc32/power5/fpu/s_isnan.S: Likewise. + * sysdeps/powerpc/powerpc32/power5/fpu/s_isnanf.S: Likewise. + * sysdeps/powerpc/powerpc32/power6/fpu/s_isnan.S: Likewise. + * sysdeps/powerpc/powerpc32/power6/fpu/s_isnanf.S: Likewise. + * sysdeps/powerpc/powerpc32/power7/fpu/s_isnan.S: Likewise. + * sysdeps/powerpc/powerpc32/power7/fpu/s_isnanf.S: Likewise. + * sysdeps/powerpc/powerpc64/fpu/multiarch/Makefile (sysdep_calls): + Remove s_isnan-* and s_isnanf-* objects. + * sysdeps/powerpc/powerpc64/fpu/multiarch/s_isnan-power5.S: Likewise. + * sysdeps/powerpc/powerpc64/fpu/multiarch/s_isnan-power6.S: Likewise. + * sysdeps/powerpc/powerpc64/fpu/multiarch/s_isnan-power6x.S: + Likewise. + * sysdeps/powerpc/powerpc64/fpu/multiarch/s_isnan-power7.S: Likewise. + * sysdeps/powerpc/powerpc64/fpu/multiarch/s_isnan-power8.S: Likewise. + * sysdeps/powerpc/powerpc64/fpu/multiarch/s_isnan-ppc64.S: Likewise. + * sysdeps/powerpc/powerpc64/fpu/multiarch/s_isnan.c: Likewise. + * sysdeps/powerpc/powerpc64/fpu/multiarch/s_isnanf.c: Likewise. + * sysdeps/powerpc/powerpc64/fpu/s_isnan.S: Likewise. + * sysdeps/powerpc/powerpc64/power5/fpu/s_isnan.S: Likewise. + * sysdeps/powerpc/powerpc64/power6/fpu/s_isnan.S: Likewise. + * sysdeps/powerpc/powerpc64/power6x/fpu/s_isnan.S: Likewise. + * sysdeps/powerpc/powerpc64/power7/fpu/s_isnan.S: Likewise. + * sysdeps/powerpc/powerpc64/power7/fpu/s_isnanf.S: Likewise. + * sysdeps/powerpc/powerpc64/power8/fpu/s_isnan.S: Likewise. + * sysdeps/powerpc/powerpc64/power8/fpu/s_isnanf.S: Likewise. + + * sysdeps/ieee754/dbl-64/wordsize-64/s_isnan.c: Move to ... + * sysdeps/ieee754/dbl-64/s_isnan.c: ... here and format code. + + * benchtests/Makefile (bench-math): Add isnan, isinf, and isfinite. + (CFLAGS-bench-isnan.c, CFLAGS-bench-isinf.c, + CFLAGS-bench-isfinite.c): New rule. + * benchtests/isnan-input: New file. + * benchtests/isinf-input: New file. + * benchtests/isfinite-input: New file. + + * sysdeps/powerpc/fpu/s_copysign.c: New file. + * sysdeps/powerpc/fpu/s_copysignf.c: Likewise. + * sysdeps/powerpc/powerpc32/fpu/s_copysign.S: Remove file. + * sysdeps/powerpc/powerpc32/fpu/s_copysignf.S: Likewise. + * sysdeps/powerpc/powerpc32/power4/fpu/multiarch/Makefile + (sysdep_routines, libm-sysdep_routines): Remove s_copysign-power6 and + s_copysign-ppc32. + * sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_copysign-power6.S: + Remove file. + * sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_copysign-ppc32.S: + Likewise. + * sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_copysign.c: + Likewise. + * sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_copysignf.c: + Likewise. + * sysdeps/powerpc/powerpc32/power6/fpu/s_copysign.S: Likewise. + * sysdeps/powerpc/powerpc32/power6/fpu/s_copysignf.S: Likewise. + * sysdeps/powerpc/powerpc64/fpu/multiarch/Makefile (sysdeps_calls): + Remove s_copysign-power6 s_copysign-ppc64. + * sysdeps/powerpc/powerpc64/fpu/multiarch/s_copysign-power6.S: + Remove file. + * sysdeps/powerpc/powerpc64/fpu/multiarch/s_copysign-ppc64.S: + Likewise. + * sysdeps/powerpc/powerpc64/fpu/multiarch/s_copysign.c: Likewise. + * sysdeps/powerpc/powerpc64/fpu/multiarch/s_copysignf.c: Likewise. + * sysdeps/powerpc/powerpc64/fpu/s_copysign.S: Likewise. + * sysdeps/powerpc/powerpc64/fpu/s_copysignf.S: Likewise. + * sysdeps/powerpc/powerpc64/power6/fpu/s_copysign.S: Likewise. + * sysdeps/powerpc/powerpc64/power6/fpu/s_copysignf.S: Likewise. + + * sysdeps/powerpc/fpu/round_to_integer.h (set_fenv_mode, + round_to_integer_float, round_mode): Add RINT handling. + (reset_fenv_mode): New symbol. + * sysdeps/powerpc/fpu/s_rint.c (__rint): Use generic implementation. + * sysdeps/powerpc/fpu/s_rintf.c (__rintf): Likewise. + * sysdeps/powerpc/powerpc32/fpu/s_rint.S: Remove file. + * sysdeps/powerpc/powerpc32/fpu/s_rintf.S: Likewise. + * sysdeps/powerpc/powerpc64/fpu/s_rint.S: Likewise. + * sysdeps/powerpc/powerpc64/fpu/s_rintf.S: Likewise. + +2019-06-12 Florian Weimer + + [BZ #24632] + * libio/libioP.h (_IO_JUMPS_FUNC_UPDATE): New macro. + * libio/freopen.c (freopen): Use it. + +2019-06-12 Florian Weimer + + Linux: Deprecate sysctl. + * include/sysctl.h (__sysctl): Remove declaration. + * scripts/check-installed-headers.sh (sys/sysctl.h): Disable + check. + * sysdeps/unix/sysv/linux/sys/sysctl.h: Add deprecation warning. + (sysctl): Add deprecation attribute. + * sysdeps/unix/sysv/linux/sysctl.c: Include + directly, to avoid the deprecation warning. Do not include + . + (__sysctl): Remove hidden alias. + +2019-06-12 Florian Weimer + + Linux: Use kernel headers for statx definitions if available. + * include/bits/statx-generic.h: New file. + * include/bits/types/struct_statx.h: Likewise. + * include/bits/types/struct_statx_timestamp.h: Likewise. + * io/Makefile (headers): Add bits/statx-generic.h. + * io/bits/statx-generic.h: New file. Partly copied from + io/bits/statx.h. + * io/statx_generic.c: Include to + define original_statx. + * io/bits/types/struct_statx.h: Likewise. + * io/bits/types/struct_statx_timestamp.h: Likewise. + (statx_generic): Use original_statx. + * io/bits/statx.h: Rewrite to include . + * sysdeps/unix/sysv/linux/bits/statx.h: New file. + +2019-06-12 Florian Weimer + + * misc/sys/cdefs.h (__glibc_has_include): Define. + +2019-06-12 Wilco Dijkstra + + * string/memmem.c (__memmem): Rewrite to improve performance. + +2019-06-12 Wilco Dijkstra + + * string/str-two-way.h (two_way_short_needle): Add inline to avoid + warning. + (two_way_long_needle): Block inlining. + * string/strstr.c (strstr2): Add new function. + (strstr3): Likewise. + (STRSTR): Completely rewrite strstr to improve performance. + +2019-06-11 Wilco Dijkstra + + * benchtests/bench-strstr.c (test_hard_needle): New function. + +2019-06-10 Joseph Myers + + * malloc/tst-calloc.c: Include . + (null_test): Ignore -Wunused-result around calls to calloc. + * malloc/tst-mallocfork.c: Include . + (do_test): Ignore -Wunused-result around call to malloc. + +2019-06-07 Florian Weimer + + Linux: Add getdents64 system call. + * include/dirnent.h (getdents): Add comment and change buffer + argument type to void *. + (getdents64): Likewise. Add hidden prototype. + * sysdeps/unix/sysv/linux/bits/Versions (GLIBC_2.30): Export + getdents64. + * sysdeps/unix/sysv/linux/Makefile [$(subdir) == dirent] (tests): + Add tst-getdents64. + * sysdeps/unix/sysv/linux/bits/unistd_ext.h (getdents64): Declare. + * sysdeps/unix/sysv/linux/getdents.c (__getdents): Change buffer + argument type to void *. + * sysdeps/unix/sysv/linux/getdents64.c (__getdents64): Likewise. + Add hidden definition and getdents64 alias. + * sysdeps/unix/sysv/linux/mips/mips64/getdents64.c (__getdents64): + Likewise. + * sysdeps/unix/sysv/linux/tst-getdents64.c: New file. + * manual/filesys.texi (Accessing Directories): Add Low-level + Directory Access node reference. + (Opening a Directory): Cross-reference it. + (Low-level Directory Access): New node. + * sysdeps/unix/sysv/linux/aarch64/libc.abilist (GLIBC_2.30): Add + getdents64. + * sysdeps/unix/sysv/linux/alpha/libc.abilist (GLIBC_2.30): + Likewise. + * sysdeps/unix/sysv/linux/arm/libc.abilist (GLIBC_2.30): Likewise. + * sysdeps/unix/sysv/linux/csky/libc.abilist (GLIBC_2.30): + Likewise. + * sysdeps/unix/sysv/linux/hppa/libc.abilist (GLIBC_2.30): + Likewise. + * sysdeps/unix/sysv/linux/i386/libc.abilist (GLIBC_2.30): + Likewise. + * sysdeps/unix/sysv/linux/ia64/libc.abilist (GLIBC_2.30): + Likewise. + * sysdeps/unix/sysv/linux/m68k/coldfire/libc.abilist (GLIBC_2.30): + Likewise. + * sysdeps/unix/sysv/linux/m68k/m680x0/libc.abilist (GLIBC_2.30): + Likewise. + * sysdeps/unix/sysv/linux/microblaze/libc.abilist (GLIBC_2.30): + Likewise. + * sysdeps/unix/sysv/linux/mips/mips32/fpu/libc.abilist + (GLIBC_2.30): Likewise. + * sysdeps/unix/sysv/linux/mips/mips32/nofpu/libc.abilist + (GLIBC_2.30): Likewise. + * sysdeps/unix/sysv/linux/mips/mips64/n32/libc.abilist + (GLIBC_2.30): Likewise. + * sysdeps/unix/sysv/linux/mips/mips64/n64/libc.abilist + (GLIBC_2.30): Likewise. + * sysdeps/unix/sysv/linux/nios2/libc.abilist (GLIBC_2.30): + Likewise. + * sysdeps/unix/sysv/linux/powerpc/powerpc32/fpu/libc.abilist + (GLIBC_2.30): Likewise. + * sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/libc.abilist + (GLIBC_2.30): Likewise. + * sysdeps/unix/sysv/linux/powerpc/powerpc64/be/libc.abilist + (GLIBC_2.30): Likewise. + * sysdeps/unix/sysv/linux/powerpc/powerpc64/le/libc.abilist + (GLIBC_2.30): Likewise. + * sysdeps/unix/sysv/linux/riscv/rv64/libc.abilist (GLIBC_2.30): + Likewise. + * sysdeps/unix/sysv/linux/s390/s390-32/libc.abilist (GLIBC_2.30): + Likewise. + * sysdeps/unix/sysv/linux/s390/s390-64/libc.abilist (GLIBC_2.30): + Likewise. + * sysdeps/unix/sysv/linux/sh/libc.abilist (GLIBC_2.30): Likewise. + * sysdeps/unix/sysv/linux/sparc/sparc32/libc.abilist (GLIBC_2.30): + Likewise. + * sysdeps/unix/sysv/linux/sparc/sparc64/libc.abilist (GLIBC_2.30): + Likewise. + * sysdeps/unix/sysv/linux/x86_64/64/libc.abilist (GLIBC_2.30): + Likewise. + * sysdeps/unix/sysv/linux/x86_64/x32/libc.abilist (GLIBC_2.30): + Likewise. + +2019-06-06 Paul A. Clarke + + * sysdeps/powerpc/fpu_control.h (_FPU_MASK_RC): New. + (__FPU_MFFS): New. + (__FPU_MFFSL): New. + (_FPU_GET_RC): New. + (_FPU_GETCW): Use __FPU_MFFS(). + * sysdeps/powerpc/fpu/get-rounding-mode.h: New file. + +2019-06-06 Florian Weimer + + * sysdeps/unix/sysv/linux/riscv/flush-icache.c: Do not use + internal GCC preprocessor identifier __has_include__. + +2019-06-05 Paul A. Clarke + + * sysdeps/powerpc/fpu/fegetexcept.c (__fegetexcept): Replace code + with call to equivalent function. + +2019-06-04 Florian Weimer + + * iconv/gconv_dl.c (release_handle): Remove file-level definition. + (do_release_shlib): Adjust for __twalk_r. + (__gconv_release_shlib): Call __twalk_r. + +2019-06-04 Andreas Schwab + + [BZ #18830] + * iconv/skeleton.c (FUNCTION_NAME): Use RESET_INPUT_BUFFER only if + no irreversible characters occurred. + * iconv/gconv_simple.c (internal_ucs4_loop) + (internal_ucs4_loop_unaligned, internal_ucs4_loop_single) + (ucs4_internal_loop, ucs4_internal_loop_unaligned) + (ucs4_internal_loop_single, internal_ucs4le_loop) + (internal_ucs4le_loop_unaligned, internal_ucs4le_loop_single) + (ucs4le_internal_loop, ucs4le_internal_loop_unaligned) + (ucs4le_internal_loop_single): Add const to outend. + * sysdeps/s390/multiarch/gconv_simple.c (internal_ucs4le_loop) + (ucs4_internal_loop, ucs4le_internal_loop): Likewise. + * iconv/Makefile (tests): Add tst-iconv7. + * iconv/tst-iconv7.c: New file. + +2019-06-03 Joseph Myers + + * inet/netinet/in.h (INADDR_ALLSNOOPERS_GROUP): New macro. + +2019-06-01 Florian Weimer + + arm: Remove ioperm/iopl/inb/inw/inl/outb/outw/outl support. + * sysdeps/unix/sysv/linux/arm/Makefile + [$(subdir) == misc] (sysdep_headers): Remove sys/io.h. + * sysdeps/unix/sysv/linux/arm/sys/io.h: Remove file. + * sysdeps/unix/sysv/linux/arm/ioperm.c: Rewrite file. + (ioperm, iopl, inb, inw, inl, outb, outw, outl): Turn into + compatibility symbols. + +2019-05-31 Florian Weimer + + * sysdeps/unix/sysv/linux/syscall-names.list: Add oddly named + system calls for the arm architecture: breakpoint, get_tls, + set_tls, usr26, usr32. + +2019-05-30 Gabriel F. T. Gomes + + * sysdeps/powerpc/Makefile + [$(subdir) == misc] (CFLAGS-tst-set_ppr.c): New variable. + * sysdeps/powerpc/powerpc64/power4/memcmp.S [__LITTLE_ENDIAN__]: + Declare '.machine power7' to get support for ldbrx. + * sysdeps/powerpc/powerpc64/power7/strncmp.S: Declare '.machine' + directive based on the directory of the file. + * sysdeps/powerpc/powerpc64/power8/fpu/s_llround.S: Likewise. + * sysdeps/powerpc/powerpc64/power8/strcmp.S: Likewise. + * sysdeps/powerpc/powerpc64/power8/strcasecmp.S: Update + '.machine' directive. + (VCLZD_V8_v7, MFVRD_R3_V1, VSUBUDM_V9_V8, VPOPCNTD_V8_V8) + (VADDUQM_V7_V8): Remove. + (__STRCASECMP): Replace macros with actual instructions. + * sysdeps/powerpc/powerpc64/power8/strcasestr.S: Update + '.machine' directive. + (VCLZD_V8_v7): Remove. + (STRCASESTR): Replace VCLZD_V8_v7 with actual instruction. + +2019-05-29 Adhemerval Zanella + + * sysdeps/unix/sysv/linux/sparc/sparc32/sparcv9/get_clockfreq.c: + Remove file. + * sysdeps/unix/sysv/linux/x86_64/get_clockfreq.c: Likewise. + +2019-05-28 Adhemerval Zanella + + * sysdeps/powerpc/fpu/round_to_integer.h (set_fenv_mode): Add + NEARBYINT handling. + * sysdeps/powerpc/fpu/s_nearbyint.c: New file. + * sysdeps/powerpc/fpu/s_nearbyintf.c: Likewise. + * sysdeps/powerpc/powerpc32/fpu/s_nearbyint.S: Remove file. + * sysdeps/powerpc/powerpc32/fpu/s_nearbyintf.S: Likewise. + * sysdeps/powerpc/powerpc64/fpu/s_nearbyint.S: Likewise. + * sysdeps/powerpc/powerpc64/fpu/s_nearbyintf.S: Likewise. + +2019-05-28 mansayk <6688000@gmail.com> + + [BZ #24370] + * localedata/locales/tt_RU (lang_name): Add from CLDR-35.1. + +2019-05-28 mansayk <6688000@gmail.com> + + [BZ #24369] + * localedata/locales/tt_RU (mon): Update from CLDR-35.1, fix errors. + (abmon): Likewise, but remove the trailing dots. + +2019-05-28 Joseph Myers + + * inet/netinet/igmp.h (IGMP_MRDISC_ADV): New macro. + +2019-05-27 Florian Weimer + + * nptl/nptl-init.c: Add comment. + +2019-05-24 Florian Weimer + + * resolv/nss_dns/dns-host.c (getanswer_r): Be more explicit about + struct in_addr/struct in6_addr alignment. + +2019-05-23 Joseph Myers + + * sysdeps/unix/sysv/linux/bits/fcntl-linux.h [__USE_GNU] + (F_SEAL_FUTURE_WRITE): New macro. + +2019-05-23 Alexandra Hájková + + * elf/Makefile (test-container): Add tst-ldconfig-bad-aux-cache. + * elf/tst-ldconfig-bad-aux-cache.c: New file. + * elf/tst-ldconfig_aux-cache.root: New directory. + * elf/tst-ldconfig-bad-aux-cache.root/postclean.req: New file. + * elf/tst-ldconfig-bad-aux-cache.root/etc: New directory. + * elf/tst-ldconfig-bad-aux-cache.root/etc/ld.so.conf: New file. + +2019-05-22 Zack Weinberg + + * sysdeps/powerpc/preconfigure: Error out on powerpc-*-*gnuspe* + host type. + * scripts/build-many-glibcs.py: Remove powerpc-*-linux-gnuspe + and powerpc-*-linux-gnuspe-e500v1 from list of build configurations. + + * sysdeps/powerpc/powerpc32/e500: Recursively delete. + * sysdeps/unix/sysv/linux/powerpc/powerpc32/e500: Recursively delete. + * sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/context-e500.h: + Delete. + + * sysdeps/powerpc/fpu_control.h: Remove SPE variant. + Issue an #error if used with a compiler in SPE-float mode. + * sysdeps/powerpc/powerpc32/__longjmp_common.S + * sysdeps/powerpc/powerpc32/setjmp_common.S + * sysdeps/unix/sysv/linux/powerpc/powerpc32/getcontext-common.S + * sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/getcontext.S + * sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/setcontext.S + * sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/swapcontext.S + * sysdeps/unix/sysv/linux/powerpc/powerpc32/setcontext-common.S + * sysdeps/unix/sysv/linux/powerpc/powerpc32/swapcontext-common.S: + Remove code to preserve SPE register state. + + * sysdeps/unix/sysv/linux/powerpc/elision-lock.c + * sysdeps/unix/sysv/linux/powerpc/elision-trylock.c + * sysdeps/unix/sysv/linux/powerpc/elision-unlock.c: + Remove __SPE__ ifndefs. + +2019-05-21 Wilco Dijkstra + + * benchtests/bench-memcpy-random.c (do_one_test): Use medium iterations. + * benchtests/bench-memcpy-walk.c (test_main): Reduce alignment tests. + * benchtests/bench-memmem.c (do_one_test): Use small iterations. + * benchtests/bench-memmove-walk.c (test_main): Reduce alignment tests. + * benchtests/bench-memset-walk.c (test_main): Reduce alignment tests. + * benchtests/bench-strcasestr.c (do_one_test): Use small iterations. + * benchtests/bench-string.h (INNER_LOOP_ITERS): Increase iterations. + (INNER_LOOP_ITERS_MEDIUM): New define. + (INNER_LOOP_ITERS_SMALL): New define. + * benchtests/bench-strpbrk.c (do_one_test): Use medium iterations. + * benchtests/bench-strsep.c (do_one_test): Use small iterations. + * benchtests/bench-strspn.c (do_one_test): Use medium iterations. + * benchtests/bench-strstr.c (do_one_test): Use small iterations. + * benchtests/bench-strtok.c (do_one_test): Use small iterations. + +2019-05-21 Adhemerval Zanella + + * sysdeps/unix/sysv/linux/powerpc/ipc_priv.h (SEMTIMEDOP_IPC_ARGS): + New define. + * sysdeps/unix/sysv/linux/sparc/sparc64/ipc_priv.h + (SEMTIMEDOP_IPC_ARGS): Likewise. + +2019-05-21 Florian Weimer + + [BZ #24584] + * wcsmbs/wcsmbsload.c (__wcsmbs_clone_conv): Acquire __gconv_lock + before updating __counter field and release it afterwards. Add + overflow check. + * iconv/gconv.h (struct __gconv_step): Mention synchronization + requirement for __counter member. + +2019-05-21 Florian Weimer + + [BZ #24583] + * wcsmbs/wcsmbsload.h (__wcsmbs_close_conv): Declare. + * wcsmbs/wcsmbsload.c (__wcsmbs_close_conv): Define. + * libio/iofclose.c (_IO_new_fclose): Call __wcsmbs_close_conv + instead of __gconv_release_step. + * libio/Makefile (tests): Add tst-wfile-gconv. + (tests-container): Add tst-wfile-ascii. + (tst-wfile-gconv-ENV): Enable mtrace. + (generated): Add tst-wfile-gconv.mtrace, tst-wfile-gconv.check. + (tests-special): Add tst-wfile-gconv-mem.out. + (tst-wfile-gconv.out): Depend on locales. + (tst-wfile-gconv-mem.out): Add mtrace rule. + * libio/tst-wfile-ascii.c: New file. + * libio/tst-wfile-gconv.c: Likewise. + +2019-05-20 Florian Weimer + + [BZ #24588] + libio: Remove codecvt vtable. + * libio/fileops.c ( _IO_new_file_fopen): Do not copy + __libio_codecvt. + * libio/iofgetpos.c (_IO_new_fgetpos): Call + __libio_codecvt_encoding. + * libio/iofgetpos64.c (_IO_new_fgetpos): Likewise. + * libio/iofsetpos.c (_IO_new_fsetpos): Likewise. + * libio/iofsetpos64.c (_IO_new_fsetpos): Likewise. + * libio/iofwide.c (__libio_codecvt): Remove variable. + (_IO_fwide): Do not copy __libio_codecvt. + (__libio_codecvt_out): Rename from do_out and export. + (do_unshift): Remove function. + (__libio_codecvt_in): Rename from do_in and export. + (__libio_codecvt_encoding): Rename from do_encoding and export. + (do_always_noconv): Remove function. + (__libio_codecvt_length): Rename from do_length and export. + (do_max_length): Remove function. + * libio/libio.h (enum __codecvt_result): Remove definition; moved + to libioP.h. + (struct _IO_codecvt): Remove fields __codecvt_destr, + __codecvt_do_out, __codecvt_do_unshift, __codecvt_do_in, + __codecvt_do_encoding, __codecvt_do_always_noconv, + __codecvt_do_length, __codecvt_do_max_length. + * libio/libioP.h (enum __codecvt_result): Define; moved from + libio.h. + (__libio_codecvt_out, __libio_codecvt_in) + (__libio_codecvt_encoding, __libio_codecvt_length): Declare + functions. + * libio/wfileops.c (_IO_wdo_write): Call __libio_codecvt_out. + (_IO_wfile_underflow): Call __libio_codecvt_in. + (_IO_wfile_underflow): Likewise. + (_IO_wfile_underflow_mmap): Likewise. + (_IO_wfile_sync): Call __libio_codecvt_encoding, + __libio_codecvt_length. + (adjust_wide_data): Call __libio_codecvt_encoding, + __libio_codecvt_in. + (do_ftell_wide): Call __libio_codecvt_length, __libio_codecvt_out. + (_IO_wfile_seekoff): Call __libio_codecvt_encoding, + __libio_codecvt_length. + +2019-05-20 Florian Weimer + + * support/support.h (support_sbindir_prefix): Declare. + (support_install_rootsbindir): Update comment. + * support/Makefile (CFLAGS-support_paths.c): Define SBINDIR_PATH. + * support/support_paths.c (support_sbindir_prefix): Define. + +2019-05-20 Mike Crowe + + * support/timespec.c: Add backslash to correct newline in failure + message. + + * support/timespec.h: Correct confusing comment. + +2019-05-20 Adhemerval Zanella + + * sysdeps/unix/sysv/linux/ipc_priv.h (SEMTIMEDOP_IPC_ARGS): New + define. + * sysdpes/unix/sysv/linux/s390/ipc_priv.h: New file. + * sysdeps/unix/sysv/linux/s390/semtimedop.c: Remove file. + * sysdeps/unix/sysv/linux/semtimedop.c (semtimedop): Use + SEMTIMEDOP_IPC_ARGS for calls with __NR_ipc. + + [BZ #24570] + * sysdeps/unix/sysv/linux/msgctl.c (__old_msgctl): Remove __IPC_64 + usage. + +2019-05-20 Joseph Myers + + * elf/elf.h (NT_ARM_PACA_KEYS): New macro. + (NT_ARM_PACG_KEYS): Likewise. + +2019-05-17 Wilco Dijkstra + + * malloc/malloc.c (MAX_TCACHE_COUNT): Increase to UINT16_MAX. + (tcache_put): Remove redundant assert. + (tcache_get): Remove redundant asserts. + (__libc_malloc): Check tcache count is not zero. + * manual/tunables.texi (glibc.malloc.tcache_count): Update maximum. + +2019-05-17 Florian Weimer + + * manual/llio.texi (Open-time Flags): Document O_DIRECTORY. + +2019-05-16 Joseph Myers + + * sysdeps/unix/sysv/linux/alpha/kernel-features.h + (__ASSUME_STATFS64): Only undefine if [__LINUX_KERNEL_VERSION < + 0x050100]. + * sysdeps/unix/sysv/linux/ia64/kernel-features.h (__ASSUME_STATX): + Likewise. + * sysdeps/unix/sysv/linux/sh/kernel-features.h + (__ASSUME_STATX): Likewise. + +2019-05-16 Florian Weimer + + * nis/nss_nis/nis-hosts.c (EXTRA_ARGS, EXTRA_ARGS_DECL): Remove + flags argument. + (LINE_PARSER): Do not map IPv4 addresses. + (internal_nis_gethostent_r): Remove flags argument. Adjust call + to parse_line. + (_nss_nis_gethostent_r): Always pass AF_INET to + internal_nis_gethostent_r. + (internal_gethostbyname2_r): Remove flags argument. Adjust call + to parse_line. + (_nss_nis_gethostbyname2_r): Adjust call to + internal_nis_gethostent_r. + (_nss_nis_gethostbyname_r): Do not attempt IPv6 query. Adjust + call to internal_nis_gethostent_r. + (_nss_nis_gethostbyaddr_r): Do not request IPv4 address mapping + from parse_line. + (_nss_nis_gethostbyname4_r):Adjust call to parse_line. + * nis/nss_nisplus/nisplus-hosts.c (_nss_nisplus_parse_hostent): + Remove flags argument. Do not map IPv4 addresses. + (internal_nisplus_gethostent_r): Adjust call to + _nss_nisplus_parse_hostent. + (internal_gethostbyname2_r): Remove flags argument. Adjust call + to _nss_nisplus_parse_hostent. + (_nss_nisplus_gethostbyname2_r): Adjust call to + internal_gethostbyname2_r. + (_nss_nisplus_gethostbyname_r): Do not perform IPv6 lookup. + Adjust call to internal_gethostbyname2_r. + (_nss_nisplus_gethostbyaddr_r): Adjust call to + _nss_nisplus_parse_hostent. + (_nss_nisplus_gethostbyname4_r): Adjust call to + internal_gethostbyname2_r. + +2019-05-16 Florian Weimer + + * nss/nss_files/files-hosts.c (EXTRA_ARGS, EXTRA_ARGS_DECL): + Remove flags. + (LINE_PARSER): Remove address mapping. + (EXTRA_ARGS_VALUE): Remove flags argument. + (gethostbyname3_multi): Likewise. Adjust call to internal_getent. + (_nss_files_gethostbyname3_r): Adjust calls to internal_getent and + gethostbyname3_multi. + (_nss_files_gethostbyname_r): Always use AF_INET. Adjust call to + _nss_files_gethostbyname3_r. + (_nss_files_gethostbyname4_r): Adjust call to internal_getent. + +2019-05-16 Florian Weimer + + * support/support_test_compare_blob.c (report_blob): Report + incorrect NULL blobs. + +2019-05-15 Mark Wielaard + + [BZ# 24476] + * dlfcn/dlerror.c (__dlerror_main_freeres): Guard using + __libc_once_get (once) and static_buf == NULL. + (__dlerror): Check we have a valid key, set result to static_buf + otherwise. + +2019-05-15 Andreas Schwab + + [BZ #20568] + * libio/wfileops.c (_IO_wfile_sync): Correct last argument to + __codecvt_do_length. + * libio/Makefile (tests): Add tst-wfile-sync. + ($(objpfx)tst-wfile-sync.out): Depend on $(gen-locales). + * libio/tst-wfile-sync.c: New file. + * libio/tst-wfile-sync.input: New file. + +2019-05-15 Florian Weimer + + nss: Turn __nss_database_lookup into a compatibility symbol. + * nss/nsswitch.h (__nss_database_lookup2): Renamed from + __nss_database_lookup. + * nss/nsswitch.c (__nss_database_lookup2): Likewise. + (nss_load_all_libraries): Call __nss_database_lookup2 instead of + __nss_database_lookup. + (__nss_next): Move to … + * nss/compat-lookup.c (nss_next): … here. Change it to fail + unconditionally. + (__nss_database_lookup): New function. + * nss/Versions (GLIBC_2.0): Update comment. + (GLIBC_PRIVATE): Export __nss_database_lookup2. + * grp/initgroups.c (internal_getgrouplist): Call + __nss_database_lookup2 instead of __nss_database_lookup. + * nscd/aicache.c (addhstaiX): Likewise. + * nscd/initgrcache.c (addinitgroupsX): Likewise. + * nscd/netgroupcache.c (addgetnetgrentX): Likewise. + * nss/XXX-lookup.c (DB_LOOKUP_FCT): Likewise. + * nss/nss_compat/compat-grp.c (init_nss_interface): Likewise. + * nss/nss_compat/compat-initgroups.c (init_nss_interface): + Likewise. + * nss/nss_compat/compat-pwd.c (init_nss_interface): Likewise. + * nss/nss_compat/compat-spwd.c (init_nss_interface): Likewise. + * sysdeps/posix/getaddrinfo.c (gaih_inet): Likewise. + +2019-05-15 Alexandra Hájková + + * support/support.h (support_install_rootsbindir): New variable. + * support/support_paths.c: Likewise. + * support/Makefile (CFLAGS-support_paths.c): Add -DROOTSBINDIR_PATH. + +2019-05-15 Florian Weimer + + * iconv/gconv.h (__gconv_transliterate): Move declaration … + * iconv/gconv_int.h (__gconv_transliterate): … here. + * iconv/loop.c: Include instead of . + * iconv/skeleton.c: Likewise. + +2019-05-14 Florian Weimer + + Linux: Add the tgkill function. + * bits/signal_ext.h: New file. + * manual/signal.texi (Signaling Another Process): Document tgkill. + * signal/Makefile (headers): Add bits/signal_ext.h. + * signal/signal.h: Include . + * sysdeps/unix/sysv/linux/Makefile (tests): Add tst-tgkill. + (tst-tgkill): Link with libpthread. + * sysdeps/unix/sysv/linux/Versions (GLIBC_2.30): Export tgkill. + * sysdeps/unix/sysv/linux/bits/signal_ext.h: New file. + * sysdeps/unix/sysv/linux/bits/tst-tgkill.c: Likewise. + * sysdeps/unix/sysv/linux/aarch64/libc.abilist (GLIBC_2.30): Add + tgkill. + * sysdeps/unix/sysv/linux/alpha/libc.abilist: Likewise. + * sysdeps/unix/sysv/linux/arm/libc.abilist: Likewise. + * sysdeps/unix/sysv/linux/csky/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/sysv/linux/powerpc/powerpc32/nofpu/libc.abilist: + Likewise. + * sysdeps/unix/sysv/linux/powerpc/powerpc64/be/libc.abilist: + Likewise. + * sysdeps/unix/sysv/linux/powerpc/powerpc64/le/libc.abilist: + Likewise. + * sysdeps/unix/sysv/linux/riscv/rv64/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/x86_64/64/libc.abilist: Likewise. + * sysdeps/unix/sysv/linux/x86_64/x32/libc.abilist: Likewise. + +2019-05-14 Carlos O'Donell + + * manual/search.texi (Tree Search Function): Adjust twalk_r + documentation. + +2019-05-14 Adhemerval Zanella + + [BZ #24544] + * elf/tst-pldd.c (do_test): Use support_bindir_prefix instead of + pre-defined value. + + * support/Makefile (CFLAGS-support_paths.c): Add -DBINDIR_PATH. + * support/support.h (support_bindir_prefix): New variable. + * support/support_paths.c [BINDIR_PATH] (support_bindir_prefix): + + * config.make.in (bindir): New variable. + + * sysdeps/nptl/lowlevellock.h (__lll_trylock): New macro. + (lll_trylock): Call __lll_trylock. + * sysdeps/unix/sysv/linux/i386/libc-lowlevellock.S: Remove file. + * sysdeps/unix/sysv/linux/i386/lll_timedlock_wait.c: Likewise. + * sysdeps/unix/sysv/linux/i386/lowlevellock.S: Likewise. + * sysdeps/unix/sysv/linux/i386/lowlevellock.h: Likewise. + * sysdeps/unix/sysv/linux/x86_64/libc-lowlevellock.S: Likewise. + * sysdeps/unix/sysv/linux/x86_64/lll_timedlock_wait.c: Likewise. + * sysdeps/unix/sysv/linux/x86_64/lowlevellock.S: Likewise. + * sysdeps/unix/sysv/linux/x86_64/lowlevellock.h: Likewise. + * sysdeps/unix/sysv/linux/x86/lowlevellock.h: New file. + * sysdeps/unix/sysv/linux/x86_64/cancellation.S: Include + lowlevellock-futex.h. + + * nptl/nptl-init.c (__pthread_initialize_minimal_internal): Remove + initialization for LLL_LOCK_INITIALIZER different than 0. + * nptl/old_pthread_cond_broadcast.c (__pthread_cond_broadcast_2_0): + Assume LLL_LOCK_INITIALIZER being 0. + * nptl/old_pthread_cond_signal.c (__pthread_cond_signal_2_0): Likewise. + * nptl/old_pthread_cond_timedwait.c (__pthread_cond_timedwait_2_0): + Likewise. + * nptl/old_pthread_cond_wait.c (__pthread_cond_wait_2_0): Likewise. + * sysdeps/nptl/libc-lockP.h (__libc_lock_define_initialized): Likewise. + + * nptl/lowlevellock.c (__lll_lock_wait, __lll_lock_wait_private): + Optimize futex call and add systemtap probe. + + * nptl/pthreadP.h (CANCEL_ASYNC, CANCEL_RESET, LIBC_CANCEL_ASYNC, + LIBC_CANCEL_RESET, __libc_enable_asynccancel, + __libc_disable_asynccancel, __librt_enable_asynccancel, + __libc_disable_asynccancel, __librt_enable_asynccancel, + __librt_disable_asynccancel): Move to ... + * sysdeps/unix/sysv/linux/sysdep-cancel.h: ... here. + (SINGLE_THREAD_P, RTLD_SINGLE_THREAD_P): Move to ... + * sysdeps/unix/sysv/linux/single-thread.h: ... here. + * sysdeps/generic/single-thread.h: New file. + * sysdeps/unix/sysdep.h: Include single-thread.h. + * sysdeps/unix/sysv/linux/futex-internal.h: Include sysdep-cancel.h. + * sysdeps/unix/sysv/linux/lowlevellock-futex.h: Likewise. + +2019-05-08 Mike FABIAN + + [BZ #24535] + * localedata/unicode-gen/Makefile (UNICODE_VERSION): Set to 12.1.0. + * localedata/unicode-gen/DerivedCoreProperties.txt: Update to + Unicode 12.1.0. + * localedata/unicode-gen/EastAsianWidth.txt: Likewise. + * localedata/unicode-gen/PropList.txt: Likewise. + * localedata/unicode-gen/UnicodeData.txt: Likewise. + * localedata/charmaps/UTF-8: Regenerate. + * localedata/locales/i18n_ctype: Likewise. + * localedata/locales/tr_TR: Likewise. + * localedata/locales/translit_circle: Likewise. + * localedata/locales/translit_cjk_compat: Likewise. + * localedata/locales/translit_combining: Likewise. + * localedata/locales/translit_compat: Likewise. + * localedata/locales/translit_font: Likewise. + * localedata/locales/translit_fraction: Likewise. + +2019-05-10 Wilco Dijkstra + + [BZ #24531] + * malloc/malloc.c (MAX_TCACHE_COUNT): New define. + (do_set_tcache_count): Only update if count is small enough. + * manual/tunables.texi (glibc.malloc.tcache_count): Document max value. + +2019-05-10 Florian Weimer + + * nptl/sem_close.c (struct walk_closure): Define. + (walker): Adjust for __twalk_r. + (sem_close): Call __twalk_r. + +2019-05-09 Adhemerval Zanella + + * support/timespec.c (test_timespec_before_impl, + test_timespec_equal_or_after_impl): print timespec member as intmax_t + insted of long int. + +2019-05-09 Mike Crowe + + * nptl/tst-abstime.c: Use libsupport. + + * nptl/tst-rwlock6.c: Use libsupport. This also happens to fix a + small bug where only tv.tv_usec was checked which could cause an + erroneous pass if pthread_rwlock_timedrdlock incorrectly took more + than a second. + + * nptl/tst-rwlock7.c, nptl/tst-rwlock9.c, nptl/tst-rwlock14.c: Use + libsupport. + + * nptl/tst-sem5.c (do_test): Use xclock_gettime, timespec_add and + TEST_TIMESPEC_NOW_OR_AFTER from libsupport. + + * nptl/tst-cond11.c: Use libsupport. + + * support/timespec.h: New file. Provide timespec helper functions + along with macros in the style of those in check.h. + * support/timespec.c: New file. Implement check functions declared + in support/timespec.h. + * support/timespec-add.c: New file from gnulib containing + timespec_add implementation that handles overflow. + * support/timespec-sub.c: New file from gnulib containing + timespec_sub implementation that handles overflow. + * support/README: Mention timespec.h. + +2019-05-09 Szabolcs Nagy + + [BZ #24537] + * nptl/Makefile: Move tst-eintr1 to xtests. + +2019-05-09 Adhemerval Zanella + + * sysdeps/powerpc/fpu/trunc_to_integer.h (set_fenv_mode): Add + TRUNC handling. + (round_mode): Add definition for TRUNC. + * sysdeps/powerpc/fpu/s_trunc.c: New file. + * sysdeps/powerpc/fpu/s_truncf.c: New file. + * sysdeps/powerpc/powerpc32/fpu/s_trunc.S: Remove file. + * sysdeps/powerpc/powerpc32/fpu/s_truncf.S: Likewise. + * sysdep/powerpc/powepc32/power4/fpu/multiarch/s_trunc-power5+.S: + Likewise. + * sysdep/powerpc/powepc32/power4/fpu/multiarch/s_trunc-ppc32.S: + Likewise. + * sysdep/powerpc/powepc32/power4/fpu/multiarch/s_truncf-power5+.S: + Likewise. + * sysdep/powerpc/powepc32/power4/fpu/multiarch/s_truncf-ppc32.S: + Likewise. + * sysdep/powerpc/powepc32/power4/fpu/multiarch/s_trunc-power5+.c: New + file. + * sysdep/powerpc/powepc32/power4/fpu/multiarch/s_trunc-ppc32.c: + Likewise. + * sysdep/powerpc/powepc32/power4/fpu/multiarch/s_truncf-power5+.c: + Likewise. + * sysdep/powerpc/powepc32/power4/fpu/multiarch/s_truncf-ppc32.c: + Likewise. + * sysdep/powerpc/powerpc32/power5+/fpu/s_trunc.S: Remove file. + * sysdep/powerpc/powerpc32/power5+/fpu/s_truncf.S: Likewise. + * sysdep/powerpc/powerpc64/be/fpu/multiarch/Makefile + (libm-sysdep_routines): Add s_trunc-power5+, s_trunc-ppc64, + s_truncf-power5+, and s_truncf-ppc64. + (CFLAGS-s_trunc-power5+.c, CFLAGS-s_truncf-power5+.c): New rule. + * sysdep/powerpc/powercp64/be/fpu/multiarch/s_trunc-power5+.c: New + file. + * sysdep/powerpc/powercp64/be/fpu/multiarch/s_trunc-ppc64.c: Likewise. + * sysdeps/powerpc/powerpc64/fpu/multiarch/s_trunc.c: Move to ... + * sysdeps/powerpc/powerpc64/be/fpu/multiarch/s_trunc.c: ... here. + * sysdep/powerpc/powercp64/be/fpu/multiarch/s_truncf-power5+.c: New + file. + * sysdep/powerpc/powercp64/be/fpu/multiarch/s_truncf-ppc64.c: + Likewise. + * sysdeps/powerpc/powerpc64/fpu/multiarch/s_truncf.c: Move to ... + * sysdeps/powerpc/powerpc64/be/fpu/multiarch/s_truncf.c: ... here. + * sysdeps/powerpc/powerpc64/fpu/multiarch/Makefile + (libm-sysdep_routines): Remove s_trunc-power5+, s_trunc-ppc64, + s_truncf-power5+, and s_truncf-ppc64. + * sysdep/powerpc/powerpc64/fpu/multiarch/s_trunc-power5+.S: Remove + file. + * sysdep/powerpc/powerpc64/fpu/multiarch/s_trunc-ppc64.S: Likewise. + * sysdep/powerpc/powerpc64/fpu/multiarch/s_truncf-power5+.S: + Likewise. + * sysdep/powerpc/powerpc64/fpu/multiarch/s_truncf-ppc64.S: Likewise. + * sysdeps/powerpc/powerpc64/fpu/s_trunc.S: Likewise. + * sysdeps/powerpc/powerpc64/fpu/s_truncf.S: Likewise. + * sysdep/powerpc/powerpc64/power5+/fpu/s_trunc.S: Likewise. + * sysdep/powerpc/powerpc64/power5+/fpu/s_truncf.S: Likewise. + + * sysdeps/powerpc/fpu/round_to_integer.h (set_fenv_mode): Add + ROUND handling. + (round_mode): Add definition for ROUND. + (round_to_integer_float): Likewise. + * sysdeps/powerpc/fpu/s_round.c: New file. + * sysdeps/powerpc/fpu/s_roundf.c: New file. + * sysdeps/powerpc/powerpc32/fpu/s_round.S: Remove file. + * sysdeps/powerpc/powerpc32/fpu/s_roundf.S: Likewise. + * sysdep/powerpc/powepc32/power4/fpu/multiarch/s_round-power5+.S: + Likewise. + * sysdep/powerpc/powepc32/power4/fpu/multiarch/s_round-ppc32.S: + Likewise. + * sysdep/powerpc/powepc32/power4/fpu/multiarch/s_roundf-power5+.S: + Likewise. + * sysdep/powerpc/powepc32/power4/fpu/multiarch/s_roundf-ppc32.S: + Likewise. + * sysdep/powerpc/powepc32/power4/fpu/multiarch/s_round-power5+.c: New + file. + * sysdep/powerpc/powepc32/power4/fpu/multiarch/s_round-ppc32.c: + Likewise. + * sysdep/powerpc/powepc32/power4/fpu/multiarch/s_roundf-power5+.c: + Likewise. + * sysdep/powerpc/powepc32/power4/fpu/multiarch/s_roundf-ppc32.c: + Likewise. + * sysdep/powerpc/powerpc32/power5+/fpu/s_round.S: Remove file. + * sysdep/powerpc/powerpc32/power5+/fpu/s_roundf.S: Likewise. + * sysdep/powerpc/powerpc64/be/fpu/multiarch/Makefile + (libm-sysdep_routines): Add s_round-power5+, s_round-ppc64, + s_roundf-power5+, and s_roundf-ppc64. + (CFLAGS-s_round-power5+.c, CFLAGS-s_roundf-power5+.c): New rule. + * sysdep/powerpc/powercp64/be/fpu/multiarch/s_round-power5+.c: New + file. + * sysdep/powerpc/powercp64/be/fpu/multiarch/s_round-ppc64.c: Likewise. + * sysdeps/powerpc/powerpc64/fpu/multiarch/s_round.c: Move to ... + * sysdeps/powerpc/powerpc64/be/fpu/multiarch/s_round.c: ... here. + * sysdep/powerpc/powercp64/be/fpu/multiarch/s_roundf-power5+.c: New + file. + * sysdep/powerpc/powercp64/be/fpu/multiarch/s_roundf-ppc64.c: + Likewise. + * sysdeps/powerpc/powerpc64/fpu/multiarch/s_roundf.c: Move to ... + * sysdeps/powerpc/powerpc64/be/fpu/multiarch/s_roundf.c: ... here. + * sysdeps/powerpc/powerpc64/fpu/multiarch/Makefile + (libm-sysdep_routines): Remove s_round-power5+, s_round-ppc64, + s_roundf-power5+, and s_roundf-ppc64. + * sysdep/powerpc/powerpc64/fpu/multiarch/s_round-power5+.S: Remove + file. + * sysdep/powerpc/powerpc64/fpu/multiarch/s_round-ppc64.S: Likewise. + * sysdep/powerpc/powerpc64/fpu/multiarch/s_roundf-power5+.S: + Likewise. + * sysdep/powerpc/powerpc64/fpu/multiarch/s_roundf-ppc64.S: Likewise. + * sysdeps/powerpc/powerpc64/fpu/s_round.S: Likewise. + * sysdeps/powerpc/powerpc64/fpu/s_roundf.S: Likewise. + * sysdep/powerpc/powerpc64/power5+/fpu/s_round.S: Likewise. + * sysdep/powerpc/powerpc64/power5+/fpu/s_roundf.S: Likewise. + + * sysdeps/powerpc/fpu/round_to_integer.h (set_fenv_mode): + Add FLOOR option. + (round_mode): Add definition for FLOOR. + * sysdeps/powerpc/fpu/s_floor.c: New file. + * sysdeps/powerpc/fpu/s_floorf.c: Likewise. + * sysdeps/powerpc/powerpc32/fpu/s_floor.S: Remove file. + * sysdeps/powerpc/powerpc32/fpu/s_floorf.S: Likewise. + * sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_floor-power5+.S: + Remove file. + * sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_floor-ppc32.S: + Likewise + * sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_floorf-power5+.S: + Likewise. + * sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_floorf-ppc32.S: + Likewise. + * sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_floor-power5+.c: + New file. + * sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_floor-ppc32.c: + Likewise. + * sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_floorf-power5+.c: + Likewise. + * sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_floorf-ppc32.c: + Likewise. + * sysdeps/powerpc/powerpc32/power5+/fpu/s_floor.S: Remove file. + * sysdeps/powerpc/powerpc32/power5+/fpu/s_floorf.S: Remove file. + * sysdeps/powerpc/powerpc64/be/fpu/multiarch/Makefile + (libm-sysdep_routines): Add s_floor-power5+, s_floor-ppc64, + s_floorf-power5+, and s_floorf-ppc64. + (CFLAGS-s_floor-power5+.c, CFLAGS-s_floorf-power5+.c): New rule. + * sysdep/powerpc/powerpc64/be/fpu/multiarch/s_floor-power5+.c: New + file. + * sysdep/powerpc/powerpc64/be/fpu/multiarch/s_floor-ppc64.c: Likewise. + * sysdeps/powerpc/powerpc64/fpu/multiarch/s_floor.c: Move to ... + * sysdeps/powerpc/powerpc64/be/fpu/multiarch/s_floor.c: ... here. + * sysdep/powerpc/powerpc64/be/fpu/multiarch/s_floorf-power5+.c: New + file. + * sysdep/powerpc/powerpc64/be/fpu/multiarch/s_floorf-ppc64.c: + Likewise. + * sysdeps/powerpc/powerpc64/fpu/multiarch/s_floorf.c: Move to ... + * sysdeps/powerpc/powerpc64/be/fpu/multiarch/s_floorf.c: ... here. + * sysdeps/powerpc/powerpc64/fpu/multiarch/Makefile + (libm-sysdep_routines): Remove s_floor-power5+, s_floor-ppc64, + s_floorf-power5+, and s_floorf-ppc64. + * sysdep/powerpc/powerpc64/fpu/multiarch/s_floor-power5+.S: Remove + file. + * sysdeps/powerpc/powerpc64/fpu/multiarch/s_floor-ppc64.S: Remove + file. + * sysdeps/powerpc/powerpc64/fpu/multiarch/s_floorf-power5+.S: + Likewise. + * sysdeps/powerpc/powerpc64/fpu/multiarch/s_floorf-ppc64.S: + Likewise. + * sysdeps/powerpc/powerpc64/fpu/s_floor.S: Likewise. + * sysdeps/powerpc/powerpc64/fpu/s_floorf.S: Likewise. + * sysdeps/powerpc/powerpc64/power5+/fpu/s_floor.S: Likewise. + * sysdeps/powerpc/powerpc64/power5+/fpu/s_floorf.S: Likewise. + +2019-05-08 Mike Crowe + + * support/xclock_gettime.c (xclock_gettime): New file. Provide + clock_gettime wrapper for use in tests that fails the test rather + than returning failure. + + * support/xtime.h: New file to declare xclock_gettime. + + * support/Makefile: Add xclock_gettime.c. + + * support/README: Mention xtime.h. + +2019-05-08 Florian Weimer + + malloc/tst-mallocfork2: Use process-shared barriers. + * malloc/tst-mallocfork2.c: Switch to . + (signal_count, sigusr1_sender_pid): Remove. + (iterations): Define constant. + (shared): New variable. + (sigusr1_received): Update comment. + (sigusr1_handler): Do not send SIGSTOP to the sender process. + (signal_sender): Optional use barriers to avoid sending signals + during irrelevant times. + (do_it): Initialize variable shared. Use xfork for error + checking. Launch multiple SIGUSR1-sending subprocesses. Limit + the iteration count, independent of signal delivery. Check for + deadlocks in fork. Introduce barriers for reducing signal + traffic. Do not send SIGCONT to the SIGUSR1-sending processes; + replaced by the barriers. Count signals during fork/free/malloc + and report them. + * malloc/Makefile (tst-mallocfork): Link with libpthread. + +2019-05-07 Joseph Myers + + * sysdeps/unix/sysv/linux/syscall-names.list: Update kernel + version to 5.1. + (clock_adjtime64) New syscall. + (clock_getres_time64) Likewise. + (clock_gettime64) Likewise. + (clock_nanosleep_time64) Likewise. + (clock_settime64) Likewise. + (futex_time64) Likewise. + (io_pgetevents_time64) Likewise. + (io_uring_enter) Likewise. + (io_uring_register) Likewise. + (io_uring_setup) Likewise. + (mq_timedreceive_time64) Likewise. + (mq_timedsend_time64) Likewise. + (pidfd_send_signal) Likewise. + (ppoll_time64) Likewise. + (pselect6_time64) Likewise. + (recvmmsg_time64) Likewise. + (rt_sigtimedwait_time64) Likewise. + (sched_rr_get_interval_time64) Likewise. + (semtimedop_time64) Likewise. + (timer_gettime64) Likewise. + (timer_settime64) Likewise. + (timerfd_gettime64) Likewise. + (timerfd_settime64) Likewise. + (utimensat_time64) Likewise. + + * scripts/build-many-glibcs.py (Context.checkout): Default GCC + version to 9 branch. + +2019-05-03 Anton Youdkevitch + + * sysdeps/aarch64/multiarch/ifunc-impl-list.c: Added + __memmove_thunderx2 to the list of implementations + * sysdeps/aarch64/multiarch/memmove.c: Likewise + * sysdeps/aarch64/multiarch/memcpy_thunderx2.S: + (__memmove_thunderx2): Rewritten using SIMD ld/st + (__memcpy_thunderx2): Fixed handling overlapping cases. + Used ldp/stp instead of ldr/str if possible. Made loops + tails branchless. + +2019-05-03 Florian Weimer + + * misc/tst-tsearch.c (walk_tree): Add more error checking. + +2019-05-02 Adhemerval Zanella + + [BZ #24506] + * elf/tst-pldd.c (in_str_list): New function. + (do_test): Add default names for ld and libc as one option. + +2019-05-02 Florian Weimer + + misc: Add twalk_r function. + * include/search.h (__twalk_r): Declare. + * manual/examples/twalk.c: New file. + * manual/search.texi (Tree Search Function): Document twalk_r. + * misc/Versions (2.30): Export twalk_r. + (GLIBC_PRIVATE): Export __twalk_r. + * misc/search.h [__USE_GNU] (twalk_r): Declare. + * misc/tsearch.c (trecurse_r, __twalk_r): New functions. + (twalk_r): Add weak alias. + * misc/tst-tsearch.c (struct walk_trace_element): Define. + (walk_trace): New variable. + (struct twalk_with_twalk_r_closure): Define. + (twalk_with_twalk_r_action): New function. + (twalk_with_twalk_r): Likewise. + (walk_action): Call walk_trace_add. + (walk_tree_with): Rename from walk_tree. Add walk argument. + (walk_tree): New function. + * sysdeps/mach/hurd/i386/libc.abilist (GLIBC_2.30): Add twalk_r. + * sysdeps/unix/sysv/linux/aarch64/libc.abilist (GLIBC_2.30): + Likewise. + * sysdeps/unix/sysv/linux/alpha/libc.abilist (GLIBC_2.30): + Likewise. + * sysdeps/unix/sysv/linux/arm/libc.abilist (GLIBC_2.30): Likewise. + * sysdeps/unix/sysv/linux/csky/libc.abilist (GLIBC_2.30): Likewise. + * sysdeps/unix/sysv/linux/hppa/libc.abilist (GLIBC_2.30): Likewise. + * sysdeps/unix/sysv/linux/i386/libc.abilist (GLIBC_2.30): Likewise. + * sysdeps/unix/sysv/linux/ia64/libc.abilist (GLIBC_2.30): Likewise. + * sysdeps/unix/sysv/linux/m68k/coldfire/libc.abilist (GLIBC_2.30): + Likewise. + * sysdeps/unix/sysv/linux/m68k/m680x0/libc.abilist (GLIBC_2.30): + Likewise. + * sysdeps/unix/sysv/linux/microblaze/libc.abilist (GLIBC_2.30): + Likewise. + * sysdeps/unix/sysv/linux/mips/mips32/fpu/libc.abilist + (GLIBC_2.30): Likewise. + * sysdeps/unix/sysv/linux/mips/mips32/nofpu/libc.abilist + (GLIBC_2.30): Likewise. + * sysdeps/unix/sysv/linux/mips/mips64/n32/libc.abilist + (GLIBC_2.30): Likewise. + * sysdeps/unix/sysv/linux/mips/mips64/n64/libc.abilist + (GLIBC_2.30): Likewise. + * sysdeps/unix/sysv/linux/nios2/libc.abilist (GLIBC_2.30): + Likewise. + * sysdeps/unix/sysv/linux/powerpc/powerpc32/fpu/libc.abilist + (GLIBC_2.30): Likewise. + * sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/libc.abilist + (GLIBC_2.30): Likewise. + * sysdeps/unix/sysv/linux/powerpc/powerpc64/be/libc.abilist + (GLIBC_2.30): Likewise. + * sysdeps/unix/sysv/linux/powerpc/powerpc64/le/libc.abilist + (GLIBC_2.30): Likewise. + * sysdeps/unix/sysv/linux/riscv/rv64/libc.abilist (GLIBC_2.30): + Likewise. + * sysdeps/unix/sysv/linux/s390/s390-32/libc.abilist (GLIBC_2.30): + Likewise. + * sysdeps/unix/sysv/linux/s390/s390-64/libc.abilist (GLIBC_2.30): + Likewise. + * sysdeps/unix/sysv/linux/sh/libc.abilist (GLIBC_2.30): Likewise. + * sysdeps/unix/sysv/linux/sparc/sparc32/libc.abilist (GLIBC_2.30): + Likewise. + * sysdeps/unix/sysv/linux/sparc/sparc64/libc.abilist (GLIBC_2.30): + Likewise. + * sysdeps/unix/sysv/linux/x86_64/64/libc.abilist (GLIBC_2.30): + Likewise. + * sysdeps/unix/sysv/linux/x86_64/x32/libc.abilist (GLIBC_2.30): + Likewise. + +2019-04-30 Paul Eggert + + Make mktime etc. compatible with __time64_t + Keep these functions compatible with Gnulib while adding + __time64_t support. The basic idea is to move private API + declarations from include/time.h to time/mktime-internal.h, since + the former file cannot easily be shared with Gnulib whereas the + latter can. + Also, do some other minor cleanup while in the neighborhood. + * include/time.h: Include stdbool.h, time/mktime-internal.h. + (__mktime_internal): Move this prototype to time/mktime-internal.h, + since Gnulib needs it. + (__localtime64_r, __gmtime64_r) [__TIMESIZE == 64]: + Move these macros to time/mktime-internal.h, since Gnulib needs them. + (__mktime64, __timegm64) [__TIMESIZE != 64]: New prototypes. + (in_time_t_range): New static function. + * posix/bits/types.h (__time64_t): Move to time/mktime-internal.h, + so that glibc users are not tempted to use __time64_t. + * time/mktime-internal.h: Rewrite so that it does both glibc + and Gnulib work. Include time.h if not _LIBC. + (mktime_offset_t) [!_LIBC]: Define for gnulib. + (__time64_t): New type or macro, moved here from + posix/bits/types.h. + (__gmtime64_r, __localtime64_r, __mktime64, __timegm64) + [!_LIBC || __TIMESIZE == 64): New macros, mostly moved here + from include/time.h. + (__gmtime_r, __localtime_r, __mktime_internal) [!_LIBC]: + New macros, taken from GNulib. + (__mktime_internal): New prototype, moved here from include/time.h. + * time/mktime.c (mktime_min, mktime_max, convert_time) + (ranged_convert, __mktime_internal, __mktime64): + * time/timegm.c (__timegm64): + Use __time64_t, not time_t. + * time/mktime.c: Stop worrying about whether time_t is floating-point. + (__mktime64) [! (_LIBC && __TIMESIZE != 64)]: + Rename from mktime. + (mktime) [_LIBC && __TIMESIZE != 64]: New function. + * time/timegm.c [!_LIBC]: Include libc-config.h, not config.h, + for libc_hidden_def. + Include errno.h. + (__timegm64) [! (_LIBC && __TIMESIZE != 64)]: + Rename from timegm. + (timegm) [_LIBC && __TIMESIZE != 64]: New function. + +2019-04-30 Maciej W. Rozycki + + [BZ #19444] + * sysdeps/ieee754/soft-fp/s_ddivl.c (__ddivl): Ignore errors + from `-Wmaybe-uninitialized'. + * sysdeps/ieee754/soft-fp/s_fdivl.c (__fdivl): Likewise. + +2019-04-29 Adhemerval Zanella + + * sysdeps/powerpc/fpu/fenv_libc.h (__fesetround_inline_nocheck): New + function. + * sysdeps/powerpc/fpu/round_to_integer.h: New file. + * sysdeps/powerpc/fpu/s_ceil.c: Likewise. + * sysdeps/powerpc/fpu/s_ceilf.c: Likewise. + * sysdeps/powerpc/powerpc32/fpu/s_ceil.S: Remove file. + * sysdeps/powerpc/powerpc32/fpu/s_ceilf.S: Likewise. + * sysdeps/powerpc/powerpc32/power4/fpu/multiarch/Makefile + (CFLAGS-s_ceil-power5+.c, CFLAGS-s_ceilf-power5+.c): New rule. + * sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_ceil-power5+.S: + Remove file. + * sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_ceil-ppc32.S: + Likewise. + * sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_ceilf-power5+.S: + Likewise. + * sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_ceilf-ppc32.S: + Likewise. + * sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_ceil-power5+.c: + New file. + * sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_ceil-ppc32.c: + Likewise. + * sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_ceilf-power5+.c: + Likewise. + * sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_ceilf-ppc32.c: + Likewise. + * sysdeps/powerpc/powerpc32/power5+/fpu/s_ceil.S: Remove file. + * sysdeps/powerpc/powerpc32/power5+/fpu/s_ceilf.S: Likewise. + * sysdeps/powerpc/powerpc64/be/fpu/multiarch/Makefile: New file. + * sysdeps/powerpc/powerpc64/be/fpu/multiarch/s_ceil-power5+.c: + Likewise. + * sysdeps/powerpc/powerpc64/be/fpu/multiarch/s_ceil-ppc64.c: + Likewise. + * sysdeps/powerpc/powerpc64/fpu/multiarch/s_ceil.c: Move to ... + * sysdeps/powerpc/powerpc64/be/fpu/multiarch/s_ceil.c: ... here. + * sysdeps/powerpc/powerpc64/be/fpu/multiarch/s_ceilf-power5+.c: New + file. + * sysdeps/powerpc/powerpc64/be/fpu/multiarch/s_ceilf-ppc64.c: + Likewise. + * sysdeps/powerpc/powerpc64/fpu/multiarch/s_ceilf.c: Move to ... + * sysdeps/powerpc/powerpc64/be/fpu/multiarch/s_ceilf.c: ... + * here. + * sysdeps/powerpc/powerpc64/fpu/multiarch/Makefile + (libm-sysdep_routines): Remove s_ceil-power5+, s_ceil-ppc64, + s_ceilf-power5+, and s_ceilf-ppc64. + * sysdeps/powerpc/powerpc64/fpu/multiarch/s_ceil-power5+.S: Remove + file. + * sysdeps/powerpc/powerpc64/fpu/multiarch/s_ceil-ppc64.S: Likewise. + * sysdeps/powerpc/powerpc64/fpu/multiarch/s_ceilf-power5+.S: Likewise. + * sysdeps/powerpc/powerpc64/fpu/multiarch/s_ceilf-ppc64.S: Likewise. + * sysdeps/powerpc/powerpc64/fpu/s_ceil.S: Likewise. + * sysdeps/powerpc/powerpc64/fpu/s_ceilf.S: Likewise. + * sysdeps/powerpc/powerpc64/power5+/fpu/s_ceil.S: Likewise. + * sysdeps/powerpc/powerpc64/power5+/fpu/s_ceilf.S: Likewise. + + * sysdeps/powerpc/power4/fpu/Makefile: Remove file. + * sysdeps/powerpc/power4/fpu/mpa-arch.h: Likewise. + * sysdeps/powerpc/power4/fpu/mpa.c: Likewise. + +2019-04-29 Yann Droneaud + + * sysdeps/pthread/semaphore.h (sem_init): Add __nonnull attribute. + (sem_destroy, sem_open, sem_close, sem_unlink): Likewise. + (sem_wait, sem_timedwait, sem_trywait, sem_post): Likewise. + (sem_getvalue): Likewise. + +2019-04-26 Florian Weimer + + elf: Link sotruss-lib.so with BIND_NOW for --enable-bind-now. + * elf/Makefile (LDFLAGS-sotruss-lib.so): Set. + +2019-04-26 Florian Weimer + + Makeconfig: Move -Wl,-rpath-link options before library references. + * Makeconfig (+link-pie, +link): Add $(link-libc-rpath-link). + (link-libc): Remove $(link-libc-rpath-link). + +2019-04-25 Florian Weimer + + * Makeconfig (+link-pie-before-libc): Remove $(CC). + (+link-pie, +link-pie-tests, +link-pie-printers-tests): Add $(CC). + (+link-static-before-libc): Remove $(CC). + (+link-static, +link-static-tests): Add $(CC). + (+link-before-libc): Remove $(CC). + (+link, +link-pie, +link-pie-printers): Add $(CC). + +2019-04-26 Florian Weimer + + * Makeconfig (+link-pie-before-libc): Remove $(CC). + (+link-pie, +link-pie-tests, +link-pie-printers-tests): Add $(CC). + (+link-static-before-libc): Remove $(CC). + (+link-static, +link-static-tests): Add $(CC). + (+link-before-libc): Remove $(CC). + (+link, +link-pie, +link-pie-printers): Add $(CC). + +2019-04-25 David Abdurachmanov + + [BZ#24484] + * sysdeps/riscv/ldsodefs.h (DL_RO_DYN_SECTION): Remove. + +2019-04-25 Florian Weimer + + benchtests: Enable BIND_NOW if configured with --enable-bind-now. + * benchtests/Makefile [$(bind-now)] (link-bench-bind-now): Set. + (bench-link-targets): New variable. + ($(binaries-bench) …): Use it. Set LDFLAGS accordingly. + +2019-04-25 Florian Weimer + + Also enable BIND_NOW for programs if --enable-bind-now. + * Makeconfig [$(bind-now)] (link-extra-flags): Add -Wl,-z,now. + (+link-pie): Use $(link-extra-flags). + (+link-static): Likewise. + [! $(build-pie-default)] (+link): Likewise. + * manual/install.texi (Configuring and compiling): Update + --enable-bind-now description. + * INSTALL: Regenerated. + +2019-04-24 Wilco Dijkstra + + * benchtests/Makefile (BENCH_DURATION): Set to 1 second. + * benchtests/bench-malloc-thread.c (BENCH_DURATION): Set to 10 seconds. + +2019-04-24 Mike Frysinger + + [BZ #18465] + * malloc/Makefile (others): Add memusagestat. + ($(objpfx)memusagestat): Delete rule. + (LDLIBS-memusagestat): New variable. + +2019-04-24 Florian Weimer + + * locale/Makefile (tests-special): Guard setting by + $(run-built-tests) == yes, otherwise tst-locale-locpath attempts + to run while cross-compiling. + +2019-04-23 Adhemerval Zanella + + [BZ #18035] + * elf/Makefile (tests-container): Add tst-pldd. + * elf/pldd-xx.c: Use _Static_assert in of pldd_assert. + (E(find_maps)): Avoid use alloca, use default read file operations + instead of explicit LFS names, and fix infinite loop. + * elf/pldd.c: Explicit set _FILE_OFFSET_BITS, cleanup headers. + (get_process_info): Use _Static_assert instead of assert, use default + directory operations instead of explicit LFS names, and free some + leadek pointers. + * elf/tst-pldd.c: New file. + +2019-04-23 H.J. Lu + + * malloc/arena.c (do_set_mallopt_check): Removed. + +2019-04-23 Florian Weimer + + locale: Add LOCPATH diagnostics to the locale program. + * locale/programs/locale.c (setlocale_failed): New variable. + (try_setlocale): New function. + (quote_string): Likewise. + (setlocale_diagnostics): Likewise. + (main): Call try_setlocale instead of setlocale. Call + setlocale_diagnostics. + * locale/Makefile (tests-special): Add tst-locale-locpath.out. + (tst-locale-locpath.out): New target. + * locale/tst-locale-locpath.sh: New file. + +2019-04-21 Adhemerval Zanella + + * NEWS: Move memory allocation changes of BZ#23741 from 2.29 + to 2.30 notes. + +2019-04-18 Adhemerval Zanella + + [BZ #23741] + * malloc/hooks.c (malloc_check, realloc_check): Use + __builtin_add_overflow on overflow check and adapt to + checked_request2size change. + * malloc/malloc.c (__libc_malloc, __libc_realloc, _mid_memalign, + __libc_pvalloc, __libc_calloc, _int_memalign): Limit maximum + allocation size to PTRDIFF_MAX. + (REQUEST_OUT_OF_RANGE): Remove macro. + (checked_request2size): Change to inline function and limit maximum + requested size to PTRDIFF_MAX. + (__libc_malloc, __libc_realloc, _int_malloc, _int_memalign): Limit + maximum allocation size to PTRDIFF_MAX. + (_mid_memalign): Use _int_memalign call for overflow check. + (__libc_pvalloc): Use __builtin_add_overflow on overflow check. + (__libc_calloc): Use __builtin_mul_overflow for overflow check and + limit maximum requested size to PTRDIFF_MAX. + * malloc/malloc.h (malloc, calloc, realloc, reallocarray, memalign, + valloc, pvalloc): Add __attribute_alloc_size__. + * stdlib/stdlib.h (malloc, realloc, reallocarray, valloc): Likewise. + * malloc/tst-malloc-too-large.c (do_test): Add check for allocation + larger than PTRDIFF_MAX. + * malloc/tst-memalign.c (do_test): Disable -Walloc-size-larger-than= + around tests of malloc with negative sizes. + * malloc/tst-posix_memalign.c (do_test): Likewise. + * malloc/tst-pvalloc.c (do_test): Likewise. + * malloc/tst-valloc.c (do_test): Likewise. + * malloc/tst-reallocarray.c (do_test): Replace call to reallocarray + with resulting size allocation larger than PTRDIFF_MAX with + reallocarray_nowarn. + (reallocarray_nowarn): New function. + * NEWS: Mention the malloc function semantic change. + +2019-04-17 Adhemerval Zanella + + * sysdeps/powerpc/fpu/s_fma.c: Fix format. + * sysdeps/powerpc/fpu/s_fmaf.c: Likewise. + + * sysdeps/powerpc/fpu/s_fma.S: Remove file. + * sysdeps/powerpc/fpu/s_fmaf.S: Likewise. + * sysdeps/powerpc/fpu/s_fma.c: New file. + * sysdeps/powerpc/fpu/s_fmaf.c: Likewise. + + * sysdeps/powerpc/fpu/s_fabs.S: Remove file. + * sysdeps/powerpc/fpu/s_fabsf.S: Likewise. + + * sysdeps/unix/sysv/linux/mips/getcontext.S (__getcontext): Remove + the magic flag store. + * sysdeps/unix/sysv/linux/mips/makecontext.S (__makecontext): + Likewise. + * sysdeps/unix/sysv/linux/mips/swapcontext.S (__swapcontext): + Likewise. + * sysdeps/unix/sysv/linux/mips/setcontext.S (__setcontext): + Remove rt_sigreturn call. + + * sysdeps/unix/sysv/linux/powerpc/powerpc32/setcontext-common.S: + Remove rt_sigreturn call. + * sysdeps/unix/sysv/linux/powerpc/powerpc32/swapcontext-common.S: + Likewise. + * sysdeps/unix/sysv/linux/powerpc/powerpc64/setcontext.S: Likewie. + * sysdeps/unix/sysv/linux/powerpc/powerpc64/swapcontext.S: Likewise. + + * support/Makefile (libsupport-routines): Add support_subprocess, + xposix_spawn, xposix_spawn_file_actions_addclose, and + xposix_spawn_file_actions_adddup2. + (tst-support_capture_subprocess-ARGS): New rule. + * support/capture_subprocess.h (support_capture_subprogram): New + prototype. + * support/support_capture_subprocess.c (support_capture_subprocess): + Refactor to use support_subprocess and support_capture_poll. + (support_capture_subprogram): New function. + * support/tst-support_capture_subprocess.c (write_mode_to_str, + str_to_write_mode, test_common, parse_int, handle_restart, + do_subprocess, do_subprogram, do_multiple_tests): New functions. + (do_test): Add support_capture_subprogram tests. + * support/subprocess.h: New file. + * support/support_subprocess.c: Likewise. + * support/xposix_spawn.c: Likewise. + * support/xposix_spawn_file_actions_addclose.c: Likewise. + * support/xposix_spawn_file_actions_adddup2.c: Likewise. + * support/xspawn.h: Likewise. + +2019-04-17 Mike Gerow + + * stdlib/tst-secure-getenv.c (choose_gid): Remove 64 supplemental + groups limit. + +2019-04-11 Florian Weimer + + * resolv/nss_dns/dns-network.c (getanswer_r): Do not replace root + domain with empty string. + * resolv/nss_dns/dns-host.c (getanswer_r): Likewise. + +2019-04-11 Florian Weimer + + * include/alloc_buffer.h (alloc_buffer_alloc_bytes): Update + comment. + (alloc_buffer_next): Change return type to non-const. Update + comment. + +2019-04-10 TAMUKI Shoichi + + * manual/time.texi (Formatting Calendar Time): Add missing percent + sign to conversion specifier. + +2019-04-09 Carlos O'Donell + Kwok Cheung Yeung + + [BZ #16573] + * malloc/mtrace.c: Define prototypes for all hooks. + (set_default_hooks): New function. + (set_trace_hooks): Likewise. + (save_default_hooks): Likewise. + (tr_freehook): Use new s*_hooks functions. + (tr_mallochook): Likewise. + (tr_reallochook): Likewise. + (tr_memalignhook): Likewise. + (mtrace): Likewise. + (muntrace): Likewise. + +2019-04-09 Wilco Dijkstra + + * benchtests/bench-stpcpy.c (SIMPLE_STPCPY): Remove function. + (generic_stpcpy): New function. + * benchtests/bench-stpncpy.c (SIMPLE_STPNCPY): Remove function. + (generic_stpncpy): New function. + * benchtests/bench-strcat.c (SIMPLE_STRCAT): Remove function. + (generic_strcat): New function. + * benchtests/bench-strcpy.c (SIMPLE_STRCPY): Remove function. + (generic_strcpy): New function. + * benchtests/bench-strncat.c (SIMPLE_STRNCAT): Remove function. + (STUPID_STRNCAT): Remove function. + (generic_strncat): New function. + * benchtests/bench-strncpy.c (SIMPLE_STRNCPY): Remove function. + (STUPID_STRNCPY): Remove function. + (generic_strncpy): New function. + * benchtests/bench-strnlen.c (SIMPLE_STRNLEN): Remove function. + (generic_strnlen): New function. + (memchr_strnlen): New function. + * benchtests/bench-strlen.c (generic_strlen): Define for WIDE. + (memchr_strlen): Likewise. + +2019-04-09 Wilco Dijkstra + + * benchtests/bench-strstr.c (input): Add realistic input text. + (stupid_strstr): Remove function. + (basic_strstr): Add function. + (twoway_strstr): Add function. + (do_one_test): Add result checking. + (do_test): Use new input text. Remove accidental early matches. + (test_main): Improve range of tests, reduce unaligned cases. + +2019-04-09 Wilco Dijkstra + + * benchtests/bench-memmem.c (simple_memmem): Remove function. + (basic_memmem): Add function. + (twoway_memmem): Add function. + +2019-04-09 Wilco Dijkstra + + * benchtests/bench-malloc-simple.c: Remove TIMING_INIT. + * benchtests/bench-malloc-thread.c: Likewise. + * benchtests/bench-skeleton.c: Likewise. + * benchtests/bench-strtod.c: Likewise. + * benchtests/bench-timing.h: Likewise. + +2019-04-08 Florian Weimer + + * resolv/resolv.h (RES_INSECURE1, RES_INSECURE2): Remove + definitions. + * resolv/res_send.c (send_dg): Always perform RES_INSECURE1 and + RES_INSECURE2 security checks. + * resolv/res_debug.c (p_option): Remove RES_INSECURE1 and + RES_INSECURE2 handling. + +2019-04-08 Florian Weimer + + resolv: Remove support for RES_USE_INET6 and the inet6 option. + * nscd/aicache.c (addhstaiX): Do not disable RES_USE_INET6. + * nscd/nscd_gehst_r.c (__nscd_gethostbyname_r): Always use + GETHOSTBYNAME. + * resolv/Makefile (tests): Remove tst-res_use_inet6. + (tests-internal): Update justification for tst-resolv-res_init, + tst-resolv-res_init-thread. + (tst-res_use_inet6): Remove target. + (CFLAGS-tst-res_use_inet6.c): Do not set variable. + * resolv/res_debug.c (p_option): Remove "inet6" support. + * resolv/res_init.c (res_setoptions): Likewise. + * resolv/res_use_inet6.h: Remove file. + * resolv/resolv-internal.h (DEPRECATED_RES_USE_INET6): Remove + definition. + (res_use_inet6): Always return false. + * resolv/resolv.h (RES_USE_INET6): Remove definition. + * resolv/resolv_context.h: Adjust file comment. + (struct resolv_context): Update comment on __next field. + (__resolv_context_put): Update comment. + * resolv/tst-res_use_inet6.c: Remove file. + * resolv/tst-resolv-res_init-skeleton.c (print_resp): Remove + "inet6" support. + (test_cases): Adjust test case. + * resolv/tst-resolv-threads.c (byname_inet6) Remove function. + (thread_byname2_af_inet6): Use old byname_inet6 code. + (thread_byname_inet6, thread_byname2_af_inet6): Remove functions. + (gai): Remove do_inet6 argument. + (thread_gai_inet, thread_gai_inet6, thread_gai_unspec): Adjust. + (thread_gai_inet_inet6, thread_gai_inet6_inet6) + (thread_gai_unspec_inet6): Remove functions. + (do_test): Adjust thread_funcs. + * sysdeps/posix/getaddrinfo.c (gethosts): Do not restore + RES_USE_INET6 flag. + (gaih_inet): Do not disable RES_USE_INET6 flag. + +2019-04-05 Anton Youdkevitch + + * sysdeps/aarch64/multiarch/memcpy_thunderx2.S: Cleanup branching + and remove redundant code. + +2019-04-04 Adhemerval Zanella + + * sysdeps/powerpc/Makefile [$(subdir) == wcsmbs] (CFLAGS-wcsrchr.c): + New rule. + * sysdeps/powerpc/power6/wcsrchr.c: Remove file. + * sysdeps/powerpc/powerpc32/power4/multiarch/wcsrchr-power6.c: + Likewise. + * sysdeps/powerpc/powerpc32/power4/multiarch/wcsrchr-power7.c: + Likewise. + * sysdeps/powerpc/powerpc32/power4/multiarch/wcsrchr-ppc32.c: + Likewise. + * sysdeps/powerpc/powerpc32/power4/multiarch/wcsrchr.c: Likewise. + * sysdeps/powerpc/powerpc64/multiarch/wcsrchr-power6.c: Likewise. + * sysdeps/powerpc/powerpc64/multiarch/wcsrchr-power7.c: Likewise. + * sysdeps/powerpc/powerpc64/multiarch/wcsrchr-ppc64.c: Likewise. + * sysdeps/powerpc/powerpc64/multiarch/wcsrchr.c: Likewise. + * sysdeps/powerpc/powerpc64/power6/wcsrchr.c: Likewise. + * sysdeps/powerpc/powerpc32/power4/multiarch/Makefile + [$(subdir) == wcsmbs] (sysdeps_routines): Remove wcsrchr-power6 and + wcsrchr-power7. + (CFLAGS-wcsrchr-power7.c, CFLAGS-wcsrchr-power6.c): Remove rule. + * sysdeps/powerpc/powerpc64/multiarch/Makefile: Likewise. + * sysdeps/powerpc/powerpc32/power4/multiarch/ifunc-impl-list.c: + Remove wcsrchr optimizations. + * sysdeps/powerpc/powerpc64/multiarch/ifunc-impl-list.c: Likewise. + + * wcsmbs/wcsrchr.c (WCSRCHR): Use loop_unroll.h to parametrize + the loop unroll. + + * sysdeps/powerpc/Makefile [$(subdir) == wcsmbs] (CFLAGS-wcschr.c): + New rule. + * sysdeps/powerpc/power6/wcschr.c: Remove file. + * sysdeps/powerpc/powerpc32/power4/multiarch/wcschr-power6.c: + Likewise. + * sysdeps/powerpc/powerpc32/power4/multiarch/wcschr-power7.c: + Likewise. + * sysdeps/powerpc/powerpc32/power4/multiarch/wcschr-ppc32.c: + Likewise. + * sysdeps/powerpc/powerpc32/power4/multiarch/wcschr.c: Likewise. + * sysdeps/powerpc/powerpc64/multiarch/wcschr-power6.c: Likewise. + * sysdeps/powerpc/powerpc64/multiarch/wcschr-power7.c: Likewise. + * sysdeps/powerpc/powerpc64/multiarch/wcschr-ppc64.c: Likewise. + * sysdeps/powerpc/powerpc64/multiarch/wcschr.c: Likewise. + * sysdeps/powerpc/powerpc64/power6/wcschr.c: Likewise. + * sysdeps/powerpc/powerpc32/power4/multiarch/Makefile + [$(subdir) == wcsmbs] (sysdeps_routines): Remove wcschr-power6 and + wcschr-power7. + (CFLAGS-wcschr-power7.c, CFLAGS-wcschr-power6.c): Remove rule. + * sysdeps/powerpc/powerpc64/multiarch/Makefile: Likewise. + * sysdeps/powerpc/powerpc32/power4/multiarch/ifunc-impl-list.c: + Remove wcschr optimizations. + * sysdeps/powerpc/powerpc64/multiarch/ifunc-impl-list.c: Likewise. + + * wcsmbs/wcschr.c (WCSCHR): Use loop_unroll.h to parametrize + the loop unroll. + + * sysdeps/powerpc/Makefile [$(subdir) == wcsmbs] (CFLAGS-wcscpy.c): + New rule. + * sysdeps/powerpc/power6/wcscpy.c: Remove file. + * sysdeps/powerpc/powerpc32/power4/multiarch/wcscpy-power6.c: + Likewise. + * sysdeps/powerpc/powerpc32/power4/multiarch/wcscpy-power7.c: + Likewise. + * sysdeps/powerpc/powerpc32/power4/multiarch/wcscpy-ppc32.c: + Likewise. + * sysdeps/powerpc/powerpc32/power4/multiarch/wcscpy.c: Likewise. + * sysdeps/powerpc/powerpc64/multiarch/wcscpy-power6.c: Likewise. + * sysdeps/powerpc/powerpc64/multiarch/wcscpy-power7.c: Likewise. + * sysdeps/powerpc/powerpc64/multiarch/wcscpy-ppc64.c: Likewise. + * sysdeps/powerpc/powerpc64/multiarch/wcscpy.c: Likewise. + * sysdeps/powerpc/powerpc64/power6/wcscpy.c: Likewise. + * sysdeps/powerpc/powerpc32/power4/multiarch/Makefile + [$(subdir) == wcsmbs] (sysdeps_routines): Remove wcscpy-power6 and + wcscpy-power7. + (CFLAGS-wcscpy-power7.c, CFLAGS-wcscpy-power6.c): Remove rule. + * sysdeps/powerpc/powerpc64/multiarch/Makefile: Likewise. + * sysdeps/powerpc/powerpc32/power4/multiarch/ifunc-impl-list.c: + Remove wcscpy optimizations. + * sysdeps/powerpc/powerpc64/multiarch/ifunc-impl-list.c: Likewise. + + * include/loop_unroll.h: New file. + * wcsmbs/wcscpy (__wcscpy): Add option to use loop unrolling + besides generic implementation. + +2019-04-03 DJ Delorie + + * time/tst-strftime3.c (tm_to_printed): Disable warning about + snprintf truncating output. + +2019-04-02 DJ Delorie + + * time/tst-strftime3.c: Add new Japanese era tests. Fix printf + warning. + +2019-04-02 TAMUKI Shoichi + + [BZ #22964] + * localedata/locales/ja_JP (LC_TIME): Add entry for the new Japanese + era. + * time/tst-strftime2.c (dates): Add 2019-04-30 and 2019-05-01. + (mkreftable): Add rules for the new Japanese era and the new dates. + +2019-04-02 TAMUKI Shoichi + Rafał Lużyński + + * time/tst-strftime2.c (date_t): Explicitly define the type. + (dates): Use natural month and year numbers to express a date. + (is_before): New function to compare dates. + (mkreftable): Minor improvements to simplify maintenance. + (do_test): Reflect the changes in dates array. + + [BZ #24293] + * time/Makefile (LOCALES): Add zh_TW.UTF-8, cmn_TW.UTF-8, + hak_TW.UTF-8, nan_TW.UTF-8, and lzh_TW.UTF-8. + * time/tst-strftime2.c (locales): Likewise. + (dates): Add 1910-04-01, 1911-12-31, 1912-01-01, 1913-04-01, + 2010-04-01, and 2011-04-01. + (mkreftable): Add rules for the new locales and the new dates. + +2019-04-01 Carlos O'Donell + + * localedata/locales/ja_JP: Add comments to era entries. + +2019-04-01 DJ Delorie + + [BZ #24394] + * time/strptime_l.c (%Ey): Fix fencepost error. + * time/tst-strftime3.c: New. + * time/Makefile (tests): Add tst-strftime3. + +2019-04-01 Uroš Bizjak + + * sysdeps/alpha/divqu.S (__divqu): Move save of $f0 and excb after + conditional branch to DIVBYZERO. Fix unwind info. + * sysdeps/alpha/remqu.S (__remqu): Move saves of $f0, $f1, $f2 and + excb after conditional branch to $powerof2. Add missing unop + instructions and .align directives and reorder instructions to + match __divqu. + +2019-04-01 Richard Henderson + + * sysdeps/unix/sysv/linux/alpha/kernel-features.h (__NR_shmat): + Do not redefine. + * sysdeps/unix/sysv/linux/alpha/sysdep.h (__NR_osf_shmat): + Do not redefine. + +2019-03-30 Maciej W. Rozycki + + * sysdeps/unix/sysv/linux/riscv/configure.ac: Quote + $libc_cv_riscv_float_abi in `test' invocation. + * sysdeps/unix/sysv/linux/riscv/configure: Regenerate. + +2019-03-29 Paul A. Clarke + + * sysdeps/powerpc/fpu/fenv_libc.h (fegetenv_register): Replace inline + asm with builtin. + * sysdeps/powerpc/powerpc64/le/fpu/sfp-machine.h (FP_INIT_ROUNDMODE): + Likewise. + * sysdeps/powerpc/fpu/tst-setcontext-fpscr.c (_GET_DI_FPSCR): Likewise. + (_GET_SI_FPSCR): Likewise. + (_SET_SI_FPSCR): Likewise. + +2019-03-26 Adhemerval Zanella + + * math/math.h (fpclassify, isfinite, isnormal, isnan): Use builtin for + clang 2.8. + (signbit): Use builtin for clang 3.3. + (isinf): Use builtin for clang 3.7. + +2019-03-25 Adhemerval Zanella + + * sysdeps/powerpc/fpu/s_float_bitwise.h: Remove file. + +2019-03-25 Andreas K. Hüttel + + * nss/tst-nss-files-alias-leak.c (do_test): add missing opening + quote in printf. + +2019-03-25 Mike Crowe + + * nptl/tst-rwlock14.c (do_test): Replace duplicate calls to + pthread_rwlock_timedrdlock with calls to + pthread_rwlock_timedwrlock to ensure that the latter is tested + too. Use new function name in diagnostic messages too. + + * nptl/tst-sem5.c: Remove unused headers. Add . + (do_test) Use libsupport test macros rather than hand-coded + conditionals and error messages. Ensure that sem_init returns zero + rather than not -1. Use rather than + test-skeleton.c. + + * nptl/tst-sem13.c: Add . (do_test) Use libsupport + test macros rather than hand-coded conditionals and error messages. + Use rather than test-skeleton.c. + +2019-03-25 Joseph Myers + + * sysdeps/gnu/netinet/udp.h (UDP_GRO): New macro. + + * elf/elf.h (NT_ARM_PAC_MASK): New macro. + (NT_MIPS_MSA): Likewise. + +2019-03-22 Adhemerval Zanella + + * benchtests/Makefile (USE_CLOCK_GETTIME) Remove. + * benchtests/README: Update description. + * benchtests/bench-timing.h: Default to hp-timing. + * sysdeps/generic/hp-timing.h (HP_TIMING_DIFF, HP_TIMING_ACCUM_NT, + HP_TIMING_PRINT): Remove. + (HP_TIMING_NOW): Add generic implementation. + (hp_timing_t): Change to uint64_t. + + * benchtests/bench-timing.h: Replace HP_TIMING_AVAIL with + HP_TIMING_INLINE. + * nptl/descr.h: Likewise. + * elf/rtld.c (RLTD_TIMING_DECLARE, RTLD_TIMING_NOW, RTLD_TIMING_DIFF, + RTLD_TIMING_ACCUM_NT, RTLD_TIMING_SET): Define. + (dl_start_final_info, _dl_start_final, dl_main, print_statistics): + Abstract hp-timing usage with RTLD_* macros. + * sysdeps/alpha/hp-timing.h (HP_TIMING_INLINE): Define iff IS_IN(rtld). + (HP_TIMING_AVAIL, HP_SMALL_TIMING_AVAIL): Remove. + * sysdeps/generic/hp-timing.h (HP_TIMING_AVAIL, HP_SMALL_TIMING_AVAIL, + HP_TIMING_NONAVAIL): Likewise. + * sysdeps/ia64/hp-timing.h (HP_TIMING_AVAIL, HP_SMALL_TIMING_AVAIL): + Likewise. + * sysdeps/powerpc/powerpc32/power4/hp-timing.h (HP_TIMING_AVAIL, + HP_SMALL_TIMING_AVAIL): Likewise. + * sysdeps/powerpc/powerpc64/hp-timing.h (HP_TIMING_AVAIL, + HP_SMALL_TIMING_AVAIL): Likewise. + * sysdeps/sparc/sparc32/sparcv9/hp-timing.h (HP_TIMING_AVAIL, + HP_SMALL_TIMING_AVAIL): Likewise. + * sysdeps/sparc/sparc64/hp-timing.h (HP_TIMING_AVAIL, + HP_SMALL_TIMING_AVAIL): Likewise. + * sysdeps/x86/hp-timing.h (HP_TIMING_AVAIL, HP_SMALL_TIMING_AVAIL): + Likewise. + * sysdeps/generic/hp-timing-common.h: Update comment with + HP_TIMING_AVAIL removal. + + * include/random-bits.h: New file. + * resolv/res_mkquery.c [HP_TIMING_AVAIL] (RANDOM_BITS, + (__res_context_mkquery): Remove usage hp-timing usage and replace with + random_bits. + * resolv/res_send.c [HP_TIMING_AVAIL] (nameserver_offset): Likewise. + * sysdeps/posix/tempname.c [HP_TIMING_AVAIL] (__gen_tempname): + Likewise. + + * include/libc-internal.h (__get_clockfreq): Remove prototype. + * rt/Makefile (clock-routines): Remove get_clockfreq. + * rt/get_clockfreq.c: Remove file. + * sysdeps/unix/sysv/linux/i386/get_clockfreq.c: Likewise. + * sysdeps/unix/sysv/linux/ia64/get_clockfreq.c: Likewise. + * sysdeps/unix/sysv/linux/sparc/sparc64/get_clockfreq.c: Likewise. + * sysdeps/unix/sysv/linux/powerpc/get_clockfreq.c: Move code to ... + * sysdeps/unix/sysv/linux/powerpc/get_timebase_freq.c: ... here. + + * sysdeps/unix/sysv/linux/ia64/has_cpuclock.c: Remove file. + * sysdeps/unix/sysv/linux/ia64/sysconf.c: Likewise. + * sysdeps/unix/sysv/linux/sysconf.c (has_cpuclock): Remove function. + (__sysconf): Assume kernel support for _SC_MONOTONIC_CLOCK, + _SC_CPUTIME, and _SC_THREAD_CPUTIME. + + * nptl/Makefile (libpthread-routines): Remove pthread_clock_gettime and + pthread_clock_settime. + * nptl/pthreadP.h (__find_thread_by_id): Remove prototype. + * elf/dl-support.c [!HP_TIMING_NOAVAIL] (_dl_cpuclock_offset): Remove. + (_dl_non_dynamic_init): Remove _dl_cpuclock_offset setting. + * elf/rtld.c (_dl_start_final): Likewise. + * nptl/allocatestack.c (__find_thread_by_id): Remove function. + * sysdeps/generic/ldsodefs.h [!HP_TIMING_NOAVAIL] (_dl_cpuclock_offset): + Remove. + * sysdeps/mach/hurd/dl-sysdep.c [!HP_TIMING_NOAVAIL] + (_dl_cpuclock_offset): Remove. + * nptl/descr.h (struct pthread): Rename cpuclock_offset to + cpuclock_offset_ununsed. + * nptl/nptl-init.c (__pthread_initialize_minimal_internal): Remove + cpuclock_offset set. + * nptl/pthread_create.c (START_THREAD_DEFN): Likewise. + * sysdeps/nptl/fork.c (__libc_fork): Likewise. + * nptl/pthread_clock_gettime.c: Remove file. + * nptl/pthread_clock_settime.c: Likewise. + * sysdeps/unix/clock_gettime.c (hp_timing_gettime): Remove function. + [HP_TIMING_AVAIL] (realtime_gettime): Remove CLOCK_THREAD_CPUTIME_ID + and CLOCK_PROCESS_CPUTIME_ID support. + * sysdeps/unix/clock_settime.c (hp_timing_gettime): Likewise. + [HP_TIMING_AVAIL] (realtime_gettime): Likewise. + * sysdeps/posix/clock_getres.c (hp_timing_getres): Likewise. + [HP_TIMING_AVAIL] (__clock_getres): Likewise. + * sysdeps/unix/clock_nanosleep.c (CPUCLOCK_P, INVALID_CLOCK_P): + Likewise. + (__clock_nanosleep): Remove CPUCLOCK_P and INVALID_CLOCK_P usage. + +2019-03-22 Stefan Liebler + + * sysdeps/s390/Makefile (sysdep_routines): Add memmem-arch13. + * sysdeps/s390/ifunc-memmem.h (HAVE_MEMMEM_ARCH13, MEMMEM_ARCH13, + MEMMEM_Z13_ONLY_USED_AS_FALLBACK, HAVE_MEMMEM_IFUNC_AND_ARCH13_SUPPORT): + New defines. + * sysdeps/s390/memmem-arch13.S: New file. + * sysdeps/s390/memmem-vx.c: Omit GI symbol for z13 memmem ifunc variant + if it is only used as fallback. + * sysdeps/s390/memmem.c (memmem): Add arch13 variant in ifunc selector. + * sysdeps/s390/multiarch/ifunc-impl-list.c + (__libc_ifunc_impl_list): Add ifunc variant for arch13 memmem. + +2019-03-22 Stefan Liebler + + * sysdeps/s390/Makefile (sysdep_routines): Add strstr-arch13. + * sysdeps/s390/ifunc-strstr.h (HAVE_STRSTR_ARCH13, STRSTR_ARCH13, + STRSTR_Z13_ONLY_USED_AS_FALLBACK, HAVE_STRSTR_IFUNC_AND_ARCH13_SUPPORT): + New defines. + * sysdeps/s390/multiarch/ifunc-impl-list.c + (__libc_ifunc_impl_list): Add ifunc variant for arch13 strstr. + * sysdeps/s390/strstr-arch13.S: New file. + * sysdeps/s390/strstr-vx.c: Omit GI symbol for z13 strstr ifunc variant + if it is only used as fallback. + * sysdeps/s390/strstr.c (strstr): Add arch13 variant in ifunc selector. + +2019-03-22 Stefan Liebler + + * sysdeps/s390/ifunc-memcpy.h (HAVE_MEMMOVE_ARCH13, MEMMOVE_ARCH13 + HAVE_MEMMOVE_IFUNC_AND_ARCH13_SUPPORT): New defines. + * sysdeps/s390/memcpy-z900.S: Add arch13 memmove implementation. + * sysdeps/s390/memmove.c (memmove): Add arch13 variant in + ifunc selector. + * sysdeps/s390/multiarch/ifunc-impl-list.c + (__libc_ifunc_impl_list): Add ifunc variant for arch13 memmove. + * sysdeps/s390/multiarch/ifunc-resolve.h (S390_STFLE_BITS_ARCH13_MIE3, + S390_IS_ARCH13_MIE3): New defines. + +2019-03-22 Stefan Liebler + + * config.h.in (HAVE_S390_MIN_ARCH13_ZARCH_ASM_SUPPORT, + HAVE_S390_ARCH13_ASM_SUPPORT): New undefine. + * sysdeps/s390/configure.ac: Add checks for arch13 support. + * sysdeps/s390/configure: Regenerated. + +2019-03-22 Stefan Liebler + + * sysdeps/s390/dl-procinfo.c (_dl_s390_cap_flags): + Add vxe2, vxp, dflt, sort flags. + * sysdeps/s390/dl-procinfo.h: Add HWCAP_S390_VXRS_EXT2, + HWCAP_S390_VXRS_PDE, HWCAP_S390_SORT, HWCAP_S390_DFLT + capabilities. + (HWCAP_IMPORTANT): Add HWCAP_S390_VXRS_EXT2. + * sysdeps/unix/sysv/linux/s390/bits/hwcap.h + (HWCAP_S390_VXRS_EXT2, HWCAP_S390_VXRS_PDE, HWCAP_S390_SORT, + HWCAP_S390_DFLT): Define. + +2019-03-21 Gabriel F. T. Gomes + + [BZ #24372] + * iconv/iconvconfig.c (write_output): Add parentheses to get rid + of compiler warning. + * locale/programs/ld-collate.c (collate_output): Likewise. + +2019-03-21 DJ Delorie + + [BZ #24372] + * iconv/iconvconfig.c (write_output): Replace floating point math + with integer math to avoid imprecise results. + * locale/programs/ld-collate.c (collate_output): Likewise. + +2019-03-21 Stefan Liebler + + * sysdeps/s390/dl-procinfo.h (HWCAP_IMPORTANT): + Add HWCAP_S390_VX and HWCAP_S390_VXE. + +2019-03-20 mansayk <6688000@gmail.com> + + [BZ #24296] + * localedata/locales/tt_RU (day): Update from CLDR-34, fix errors. + (abday): Likewise, but remove the trailing dots. + +2019-03-19 Joseph Myers + + * sysdeps/unix/sysv/linux/aarch64/bits/hwcap.h (HWCAP_SB): New + macro. + (HWCAP_PACA): Likewise. + (HWCAP_PACG): Likewise. + * sysdeps/unix/sysv/linux/aarch64/dl-procinfo.c (_DL_HWCAP_COUNT): + Increase to 32. + (_dl_aarch64_cap_flags): Add new entries for new HWCAPs. + +2019-03-16 Samuel Thibault + + * hurd/hurd/signal.h (_hurd_critical_section_lock): Document how EINTR + should be handled. + +2019-03-15 Joseph Myers + + * sysdeps/unix/sysv/linux/syscall-names.list: Update kernel + version to 5.0. + (old_getpagesize): New syscall. + +2019-03-15 Felix Yan + + [BZ #24293] + * localedata/locales/zh_TW (era): Add, support Minguo calendar. + * localedata/locales/cmn_TW (era): Likewise. + * localedata/locales/hak_TW (era): Likewise. + * localedata/locales/lzh_TW (era): Likewise. + * localedata/locales/nan_TW (era): Likewise. + +2019-03-14 Adam Maris + + * malloc/malloc.c (_int_malloc): Check for large bin list + corruption when inserting unsorted chunk. + +2019-03-14 Florian Weimer + + Remove obsolete, never-implemented XSI STREAMS declarations. + * manual/terminal.texi (Allocation): Remove portability note and + adjust example. + * sysdeps/posix/sysconf.c (__sysconf): Always return -1 for + _SC_STREAMS. + * sysdeps/unix/sysv/linux/syscalls.list (getpmsg, putpmsg): Remove. + * sysdeps/unix/inet/Subdirs (streams): Remove. + * conform/Makefile (conformtest-headers-XPG42): Remove stropts.h. + (conformtest-headers-UNIX98): Likewise. + (conformtest-headers-XOPEN2K): Likewise. + (conformtest-headers-POSIX2008): Likewise. + * posix/compat-streams.c: New file. + * posix/Makefile (routines): Add it. + * posix/Versions (GLIBC_2.1): Add fattach, fdetach, getmsg, + getpmsg, isastream, putmsg, putpmsg. + (GLIBC_2.30): New section. + * bits/stropts.h: Remove file. + * bits/xtitypes.h: Likewise. + * conform/data/stropts.h-data: Likewise. + * include/stropts.h: Likewise. + * include/sys/stropts.h: Likewise. + * include/xtitypes.h: Likewise. + * streams/Makefile: Likewise. + * streams/fattach.c: Likewise. + * streams/fdetach.c: Likewise. + * streams/getmsg.c: Likewise. + * streams/getpmsg.c: Likewise. + * streams/isastream.c: Likewise. + * streams/putmsg.c: Likewise. + * streams/putpmsg.c: Likewise. + * streams/stropts.h: Likewise. + * streams/sys/stropts.h: Likewise. + * sysdeps/ia64/bits/xtitypes.h: Likewise. + * sysdeps/s390/bits/xtitypes.h: Likewise. + * sysdeps/unix/sysv/linux/i386/getmsg.c: Likewise. + * sysdeps/unix/sysv/linux/i386/putmsg.c: Likewise. + * sysdeps/unix/sysv/linux/m68k/getmsg.c: Likewise. + * sysdeps/unix/sysv/linux/m68k/putmsg.c: Likewise. + * sysdeps/unix/sysv/linux/mips/getmsg.c: Likewise. + * sysdeps/unix/sysv/linux/mips/putmsg.c: Likewise. + * sysdeps/unix/sysv/linux/powerpc/getmsg.c: Likewise. + * sysdeps/unix/sysv/linux/powerpc/putmsg.c: Likewise. + * sysdeps/x86/bits/xtitypes.h: Likewise. + +2019-03-14 Florian Weimer + + * nss/tst-nss-files-alias-truncated.c (do_test): Load + libnss_files. + * nss/Makefile (tst-nss-files-alias-truncated): Link with -ldl, + but not with libnss_files. + (tst-nss-files-alias-truncated.out): Depend on libnss_files. + +2019-03-14 Zack Weinberg + + * scripts/check-obsolete-constructs.py (HeaderChecker.check): + Specify encoding="utf-8" when opening headers to check. + +2019-03-13 Joseph Myers + + * scripts/build-many-glibcs.py (Context.checkout): Default Linux + version to 5.0. + (Context.checkout_tar): Handle variable major version for Linux + kernel. + +2019-03-13 Florian Weimer + + [BZ #24047] + * sysdeps/mach/hurd/res_enable_icmp.c: New file. + +2019-03-13 Zack Weinberg + + * sysdeps/generic/inttypes.h, sysdeps/generic/stdint.h: + Move to stdlib. + * include/inttypes.h: Adjust to match. + * include/stdint.h: New wrapper. + +2019-03-13 Zack Weinberg + + * scripts/check-obsolete-constructs.py: New test script. + * scripts/check-installed-headers.sh: Remove tests for + obsolete typedefs, superseded by check-obsolete-constructs.py. + * Rules: Run scripts/check-obsolete-constructs.py over $(headers) + as a special test. Update commentary. + * posix/bits/types.h (__SQUAD_TYPE, __S64_TYPE): Define as __int64_t. + (__UQUAD_TYPE, __U64_TYPE): Define as __uint64_t. + Update commentary. + * posix/sys/types.h (__u_intN_t): Remove. + (u_int8_t): Typedef using __uint8_t. + (u_int16_t): Typedef using __uint16_t. + (u_int32_t): Typedef using __uint32_t. + (u_int64_t): Typedef using __uint64_t. + +2019-03-13 Stefan Liebler + + * elf/dl-sysdep.c (_dl_show_auxv): Remove condition and always + call _dl_procinfo. + * sysdeps/unix/sysv/linux/s390/dl-procinfo.h (_dl_procinfo): + Ignore types other than AT_HWCAP. + * sysdeps/sparc/dl-procinfo.h (_dl_procinfo): Likewise. + * sysdeps/unix/sysv/linux/i386/dl-procinfo.h (_dl_procinfo): + Likewise. + * sysdeps/powerpc/dl-procinfo.h (_dl_procinfo): Adjust comment + in the case of falling back to generic output mechanism. + * sysdeps/unix/sysv/linux/arm/dl-procinfo.h (_dl_procinfo): + Likewise. + +2019-03-12 Florian Weimer + + * elf/elf.h (DF_1_KMOD, DF_1_WEAKFILTER, DF_1_NOCOMMON): Define. + +2019-03-12 Florian Weimer + + [BZ #24047] + resolv: Enable full ICMP errors for UDP DNS sockets + * resolv/res_enable_icmp.c: New file. + * resolv/Makefile (libresolv-routines): Add res_enable_icmp. + * resolv/resolv-internal.h (__res_enable_icmp): Declare. + * resolv/res_send.c (reopen): Call __res_enable_icmp on new + socket. + +2019-03-11 Mao Han + + * elf/elf.h (EF_CSKY_ABIMASK, EF_CSKY_OTHER, EF_CSKY_PROCESSOR) + (EF_CSKY_ABIV1, EF_CSKY_ABIV2, SHT_CSKY_ATTRIBUTES): New defines. + +2019-03-11 Mao Han + + * sysdeps/csky/abiv2/start.S: Mark lr as undefined. + * sysdeps/unix/sysv/linux/csky/abiv2/clone.S: Likewise. + * sysdeps/unix/sysv/linux/csky/abiv2/setcontext.S: Likewise. + +2019-03-11 Mao Han + + * sysdeps/unix/sysv/linux/csky/sys/procfs.h: Use linux definition + directly. + * sysdeps/unix/sysv/linux/csky/sys/user.h: Remove user_regs + definition. + +2019-03-11 Mao Han + + * sysdeps/unix/sysv/linux/csky/register-dump.h: Adjust offset change. + * sysdeps/unix/sysv/linux/csky/sys/ucontext.h: Remove __mask field + in mcontext_t + +2019-03-08 Mike FABIAN + + [BZ #24307] + * localedata/unicode-gen/Makefile (UNICODE_VERSION): Set to 12.0.0. + * localedata/unicode-gen/DerivedCoreProperties.txt: Update to + Unicode 12.0.0. + * localedata/unicode-gen/EastAsianWidth.txt: Likewise. + * localedata/unicode-gen/PropList.txt: Likewise. + * localedata/unicode-gen/UnicodeData.txt: Likewise. + * localedata/unicode-gen/ctype_compatibility_test_cases.py: U+108D + became "Alphabetic" in Unicode 12.0.0. Adapt test case. + * localedata/charmaps/UTF-8: Regenerate. + * localedata/locales/i18n_ctype: Likewise. + * localedata/locales/tr_TR: Likewise. + * localedata/locales/translit_circle: Likewise. + * localedata/locales/translit_cjk_compat: Likewise. + * localedata/locales/translit_combining: Likewise. + * localedata/locales/translit_compat: Likewise. + * localedata/locales/translit_font: Likewise. + * localedata/locales/translit_fraction: Likewise. + +2019-03-07 Joseph Myers + + * stdio-common/vfscanf-internal.c (ARG): Break lines before rather + than after operators. + * sysdeps/mach/hurd/setitimer.c (timer_thread): Likewise. + (setitimer_locked): Likewise. + * sysdeps/mach/hurd/sigaction.c (__sigaction): Likewise. + * sysdeps/mach/hurd/sigaltstack.c (__sigaltstack): Likewise. + * sysdeps/mach/pagecopy.h (PAGE_COPY_FWD): Likewise. + * sysdeps/mach/thread_state.h (machine_get_basic_state): Likewise. + * sysdeps/powerpc/powerpc64/tst-ucontext-ppc64-vscr.c + (PPC_CPU_SUPPORTED): Likewise. + * sysdeps/unix/sysv/linux/alpha/a.out.h (N_TXTOFF): Likewise. + * sysdeps/unix/sysv/linux/generic/wordsize-32/overflow.h + (stat_overflow): Likewise. + (statfs_overflow): Likewise. + * sysdeps/unix/sysv/linux/tst-personality.c (do_test): Likewise. + * sysdeps/unix/sysv/linux/tst-ttyname.c (eq_ttyname): Likewise. + (eq_ttyname_r): Likewise. + (run_chroot_tests): Likewise. + +2019-03-07 Florian Weimer + + * scripts/check-wrapper-headers.py (check_headers): Adjust Fortran + header check. + +2019-03-07 Martin Liska + + * math/Makefile: Change location where math-vector-fortran.h is + installed. + * math/finclude/math-vector-fortran.h: Move from bits/math-vector-fortran.h. + * sysdeps/x86/fpu/finclude/math-vector-fortran.h: Move + from sysdeps/x86/fpu/bits/math-vector-fortran.h. + * scripts/check-installed-headers.sh: Skip Fortran header files. + * scripts/check-wrapper-headers.py: Likewise. + +2019-03-05 Adhemerval Zanella + + * nptl/nptl-init.c (__have_futex_clock_realtime, + __have_futex_clock_realtime): Remove definition. + (__pthread_initialize_minimal_internal): Remove FUTEX_CLOCK_REALTIME + check test for !__ASSUME_FUTEX_CLOCK_REALTIME. + * nptl/pthread_mutex_timedlock.c (__pthread_mutex_timedlock): Assume + __ASSUME_FUTEX_CLOCK_REALTIME support. + * sysdeps/unix/sysv/linux/i386/lowlevellock.S: Likewise. + * sysdeps/unix/sysv/linux/x86_64/lowlevellock.S: Likewise. + * sysdeps/unix/sysv/linux/kernel-features.h + (__ASSUME_FUTEX_CLOCK_REALTIME): Remove. + * sysdeps/nptl/lowlevellock-futex.h (lll_futex_timed_wait_bitset): + Adjust comment. + +2019-03-05 Gabriel F. T. Gomes + + * sysdeps/powerpc/powerpc64/power6/wcscpy.c (WCSCPY): Define to + __wcscpy, then use libc_hidden_def and weak_alias to bind it to + __GI___wcscpy and wcscpy. + +2019-03-04 Florian Weimer + + * sysdeps/generic/ldsodefs.h (_dl_sysdep_open_zero_fill): Remove + declaration. + * elf/dl-load.c (_dl_map_object_from_fd): Assume MAP_ANON is + defined. + +2019-03-04 Stefan Liebler + + * sysdeps/s390/s390-64/sysdep.h (ENTRY): Use alignment of 16byte. + * sysdeps/s390/s390-32/sysdep.h: Likewise. + +2019-03-02 TAMUKI Shoichi + + [BZ #24162] + * localedata/locales/ja_JP (LC_TIME): Change the offset for Taisho + gan-nen from 2 to 1. Problem reported by Morimitsu, Junji. + +2019-03-01 Gabriel F. T. Gomes + + * misc/tst-ldbl-error.c (do_one_test): Adapt for reuse by nldbl + tests. + (do_test): Likewise. + * misc/tst-ldbl-warn.c (do_one_test): Likewise. + (do_test_call_varg): Likewise. + (do_test_call_rarg): Likewise. + * sysdeps/ieee754/ldbl-opt/Makefile + [subdir == misc] (tests-internal): Add tst-nldbl-warn, + tst-nldbl-error. + ($(objpfx)tst-nldbl-warn.c): New rule. + ($(objpfx)tst-nldbl-error.c): Likewise. + (CFLAGS-tst-nldbl-warn.c, CFLAGS-tst-nldbl-error.c): + New variables. + +2019-03-01 Gabriel F. T. Gomes + + [BZ #23984] + * include/bits/error-ldbl.h: New file. + * include/error.h: Include stdarg.h. Declare internal functions + __error_internal and __error_at_line_internal. + * misc/Makefile (headers): Add bits/error-ldbl.h. + * misc/bits/error-ldbl.h: New file. + * misc/error.h [__LDBL_COMPAT]: Include bits/error-ldbl.h and + avoid the inclusion of bits/error.h. + * sysdeps/ieee754/ldbl-opt/Versions (libc): Add __nldbl_error, + and __nldbl_error_at_line. + * sysdeps/ieee754/ldbl-opt/nldbl-compat.c: Include error.h. + (__nldbl_error, __ndlbl_error_at_line): New functions. + * sysdeps/ieee754/ldbl-opt/nldbl-compat.h: Include error.h. + Redirect error and error_at_line. + * sysdeps/unix/sysv/linux/alpha/libc.abilist: Update. + * sysdeps/unix/sysv/linux/powerpc/powerpc32/fpu/libc.abilist: + Likewise. + * sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/libc.abilist: + Likewise. + * sysdeps/unix/sysv/linux/powerpc/powerpc64/libc-le.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/sparc/sparc32/libc.abilist: Likewise. + +2019-03-01 Gabriel F. T. Gomes + + [BZ #23984] + * include/bits/err-ldbl.h: New file. + * include/err.h: Add prototypes for the internal functions: + __vwarnx_internal and __vwarn_internal. + * misc/Makefile (headers): Add bits/err-ldbl.h. + * misc/bits/err-ldbl.h: New file. + * misc/err.h: Include bits/err-ldbl.h when __LDBL_COMPAT is + defined, i.e.: when -mlong-double-64 is in use. + * sysdeps/ieee754/ldbl-opt/Versions (libc): Add __nldbl_warn, + __nldbl_vwarn, __nldbl_warnx, __nldbl_vwarnx, __nldbl_err, + __nldbl_verr, __nldbl_errx, and __nldbl_verrx. + * sysdeps/ieee754/ldbl-opt/nldbl-compat.c: Include err.h. + (VA_CALL): New macro. + (__nldbl_vwarn, __nldbl_vwarnx, __nldbl_warn, __nldbl_warnx) + (__nldbl_verr, __nldbl_verrx, __nldbl_err, __nldbl_errx): New + functions. + * sysdeps/ieee754/ldbl-opt/nldbl-compat.h: Include err.h and + declare prototypes for the new functions. + * sysdeps/unix/sysv/linux/alpha/libc.abilist: Update. + * sysdeps/unix/sysv/linux/powerpc/powerpc32/fpu/libc.abilist: + Likewise. + * sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/libc.abilist: + Likewise. + * sysdeps/unix/sysv/linux/powerpc/powerpc64/libc-le.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/sparc/sparc32/libc.abilist: Likewise. + +2019-03-01 Gabriel F. T. Gomes + + * sysdeps/ieee754/ldbl-opt/Makefile + [subdir == argp] (tests-internal): Add tst-nldbl-argp. + [subdir == argp] ($(objpfx)tst-nldbl-argp.c): New rule. + [subdir == argp] (CFLAGS-tst-nldbl-argp.c): New variable. + +2019-03-01 Gabriel F. T. Gomes + + [BZ #23983] + * argp/Makefile (headers): Add bits/argp-ldbl.h. + * argp/argp.h [defined __LDBL_COMPAT]: Include bits/argp-ldbl.h. + * argp/bits/argp-ldbl.h: New file. + * include/argp.h: Include stdarg.h. Add prototypes for internal + functions: __argp_error_internal and __argp_failure_internal. + * include/bits/argp-ldbl.h: New file. + * sysdeps/ieee754/ldbl-opt/Versions (libc): Add + __nldbl_argp_error and __nldbl_argp_failure. + * sysdeps/ieee754/ldbl-opt/nldbl-compat.c: Include argp.h. + (__nldbl_argp_error, __nldbl_argp_failure): New functions. + * sysdeps/ieee754/ldbl-opt/nldbl-compat.h: Include argp.h. + Redirect argp_error and argp_failure calls. + * sysdeps/unix/sysv/linux/alpha/libc.abilist: Update. + * sysdeps/unix/sysv/linux/powerpc/powerpc32/fpu/libc.abilist: + Likewise. + * sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/libc.abilist: + Likewise. + * sysdeps/unix/sysv/linux/powerpc/powerpc64/libc-le.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/sparc/sparc32/libc.abilist: Likewise. + +2019-03-01 Florian Weimer + + [BZ #20419] + * elf/tst-big-note-lib.S: Create a syntactically valid note. + * elf/Makefile (tst-big-note-lib.so): Do not link with startup + code, to avoid creating an ABI tag note. + (modules-names-nobuild): Add tst-big-note-lib. + +2019-03-01 Stefan Liebler + + * sysdeps/s390/wcscpy-vx.S: Add strong aliases to + __wcscpy, __GI___wcscpy and weak alias to wcscpy. + +2019-03-01 Florian Weimer + + [BZ #20271] + * sysdeps/unix/sysv/linux/netlink_assert_response.c + (__netlink_assert_response): Add additional missing newlines. + +2019-02-28 Joseph Myers + + * sysdeps/powerpc/powerpc32/dl-machine.c + (__elf_machine_fixup_plt): Use space before '('. + (__process_machine_rela): Likewise. + * sysdeps/powerpc/powerpc32/register-dump.h (register_dump): + Likewise. + * sysdeps/powerpc/powerpc64/le/fpu/sfp-machine.h (TI_BITS): + Likewise. + * sysdeps/powerpc/powerpc64/register-dump.h (register_dump): + Likewise. + * sysdeps/powerpc/test-arith.c (union_t): Likewise. + (pattern): Likewise. + (delta): Likewise. + (check_result): Likewise. + (check_excepts): Likewise. + (check_op): Likewise. + (fail_xr): Likewise. + * sysdeps/unix/alpha/sysdep.h (syscall_promote): Likewise. + * sysdeps/unix/sysv/linux/alpha/a.out.h (AOUTHSZ): Likewise. + (SCNHSZ): Likewise. + * sysdeps/unix/sysv/linux/hppa/makecontext.c (FRAME_SIZE_BYTES): + Likewise. + (ARGS): Likewise. + (__makecontext): Likewise. + * sysdeps/unix/sysv/linux/powerpc/sys/ucontext.h (ucontext_t): + Likewise. + +2019-02-28 Florian Weimer + + [BZ #23937] + elf: Add test with a local IFUNC resolver. + * elf/ifuncmain9.c: New file. + * elf/ifuncmain9pic.c: Likewise. + * elf/ifuncmain9picstatic.c: Likewise. + * elf/ifuncmain9pie.c: Likewise. + * elf/ifuncmain9static.c: Likewise. + * elf/Makefile [multi-arch] (tests-ifuncstatic): Add + ifuncmain9static, ifuncmain9picstatic. + * elf/Makefile [multi-arch && build-shared] (tests-internal): + Add ifuncmain9, ifuncmain9pic. + * elf/Makefile [multi-arch && build-shared && have-fpie] + (ifunc-pie-tests): Add ifuncmain9pie. + (CFLAGS-ifuncmain9pic.c): Add $(pic-ccflag). + (CFLAGS-ifuncmain9picstatic.c): Likewise. + (CFLAGS-ifuncmain9pie.c): Add $(pie-ccflag). + +2019-02-27 H.J. Lu + + * configure.ac (have-ifunc): New LIBC_CONFIG_VAR. + * configure: Regenerated. + * elf/Makefile: Run IFUNC tests if binutils supports IFUNC. + +2019-02-27 Adhemerval Zanella + + * sysdeps/powerpc/powerpc32/power4/multiarch/wcscpy.c: Define ifunc + symbol as __wcspcy instead of wcscpy. + +2019-02-27 Samuel Thibault + + * include/stdio.h (__renameat2): New hidden prototype. + * stdio-common/renameat2.c (__renameat2): Add hidden definition. + * sysdeps/mach/hurd/renameat.c (__renameat): Move implementation to... + * sysdeps/mach/hurd/renameat2.c (__renameat2): ... new function. + * sysdeps/unix/sysv/linux/renameat2.c (__renameat2): Add hidden definition. + +2019-02-27 Joseph Myers + + * hurd/hurdinit.c (_hurd_init): Use braces around empty body of an + if statement. + + * benchtests/bench-strcpy.c (do_test): Use space before '('. + * benchtests/bench-string.h (cmdline_process_function): Likewise. + * benchtests/bench-strlen.c (do_test): Likewise. + (test_main): Likewise. + * catgets/gencat.c (read_old): Likewise. + * elf/cache.c (load_aux_cache): Likewise. + * iconvdata/bug-iconv8.c (do_test): Likewise. + * math/test-tgmath-ret.c (do_test): Likewise. + * nis/nis_call.c (rec_dirsearch): Likewise. + * nis/nis_findserv.c (__nis_findfastest_with_timeout): Likewise. + * nptl/tst-audit-threads.c (do_test): Likewise. + * nptl/tst-cancel4-common.h (set_socket_buffer): Likewise. + * nss/nss_test1.c (init): Likewise. + * nss/test-netdb.c (test_hosts): Likewise. + * posix/execvpe.c (maybe_script_execute): Likewise. + * stdio-common/tst-fmemopen4.c (do_test): Likewise. + * stdio-common/tst-printf.c (do_test): Likewise. + * stdio-common/vfscanf-internal.c (__vfscanf_internal): Likewise. + * stdlib/fmtmsg.c (NKEYWORDS): Likewise. + * stdlib/qsort.c (STACK_SIZE): Likewise. + * stdlib/test-canon.c (do_test): Likewise. + * stdlib/tst-swapcontext1.c (do_test): Likewise. + * string/memcmp.c (OPSIZ): Likewise. + * string/test-strcpy.c (do_test): Likewise. + (do_random_tests): Likewise. + * string/test-strlen.c (do_test): Likewise. + (test_main): Likewise. + * string/test-strrchr.c (do_test): Likewise. + (do_random_tests): Likewise. + * string/tester.c (test_memrchr): Likewise. + (test_memchr): Likewise. + * sysdeps/generic/memcopy.h (OPSIZ): Likewise. + * sysdeps/generic/unwind-dw2.c (execute_stack_op): Likewise. + * sysdeps/generic/unwind-pe.h (read_sleb128): Likewise. + (read_encoded_value_with_base): Likewise. + * sysdeps/hppa/dl-machine.h (elf_machine_runtime_setup): Likewise. + * sysdeps/hppa/fpu/feupdateenv.c (__feupdateenv): Likewise. + * sysdeps/ia64/fpu/sfp-machine.h (TI_BITS): Likewise. + * sysdeps/mach/hurd/spawni.c (__spawni): Likewise. + * sysdeps/posix/spawni.c (maybe_script_execute): Likewise. + * sysdeps/powerpc/fpu/tst-setcontext-fpscr.c (query_auxv): + Likewise. + * sysdeps/unix/sysv/linux/aarch64/bits/procfs.h (ELF_NGREG): + Likewise. + * sysdeps/unix/sysv/linux/arm/bits/procfs.h (ELF_NGREG): Likewise. + * sysdeps/unix/sysv/linux/arm/ioperm.c (init_iosys): Likewise. + * sysdeps/unix/sysv/linux/csky/bits/procfs.h (ELF_NGREG): + Likewise. + * sysdeps/unix/sysv/linux/m68k/bits/procfs.h (ELF_NGREG): + Likewise. + * sysdeps/unix/sysv/linux/nios2/bits/procfs.h (ELF_NGREG): + Likewise. + * sysdeps/unix/sysv/linux/spawni.c (maybe_script_execute): + Likewise. + * sysdeps/unix/sysv/linux/x86/bits/procfs.h (ELF_NGREG): Likewise. + * sysdeps/unix/sysv/linux/x86/bits/sigcontext.h + (FP_XSTATE_MAGIC2_SIZE): Likewise. + * sysdeps/x86/fpu/sfp-machine.h (TI_BITS): Likewise. + * time/test_time.c (main): Likewise. + +2019-02-27 Adhemerval Zanella + + * wcsmbs/wcsnlen.c (__wcsnlen): Rewrite using wmemchr. + + * wcsmbs/wcsncpy.c (__wcsncpy): Rewrite using wcsnlen, wmemset, and + wmemcpy. + + * wcsmbs/wcsncat.c (wcsncat): Rewrite using wcslen, wcsnlen, and + wmemcpy. + + * wcsmbs/wcscpy.c (__wcpcpy): Rewrite using wcslen and wmemcpy. + + * include/wchar.h (__wcscpy): New prototype. + * sysdeps/powerpc/powerpc32/power4/multiarch/wcscpy-ppc32.c + (__wcscpy): Route internal symbol to generic implementation. + * sysdeps/powerpc/powerpc32/power4/multiarch/wcscpy.c (wcscpy): + Add internal __wcscpy alias. + * sysdeps/powerpc/powerpc64/multiarch/wcscpy.c (wcscpy): Likewise. + * sysdeps/s390/wcscpy.c (wcscpy): Likewise. + * sysdeps/x86_64/multiarch/wcscpy.c (wcscpy): Likewise. + * wcsmbs/wcscpy.c (wcscpy): Add + * sysdeps/x86_64/multiarch/wcscpy-c.c (WCSCPY): Adjust macro to + use generic implementation. + * wcsmbs/wcscat.c (wcscat): Rewrite using wcslen and wcscpy. + + * wcsmbs/wcpncpy.c (__wcpcpy): Rewrite using wcslen, wmemcpy, and + wmemset. + + * sysdeps/m68k/wcpcpy.c: Remove file. + * wcsmbs/wcpcpy.c (__wcpcpy): Rewrite using wcslen and wmemcpy. + +2019-02-26 Joseph Myers + + * sysdeps/arm/sysdep.h (#if condition): Break lines before rather + than after operators. + * sysdeps/mach/hurd/fork.c (__fork): Likewise. + * sysdeps/mach/hurd/getcwd.c + (__hurd_canonicalize_directory_name_internal): Likewise. + * sysdeps/mach/hurd/htl/pt-mutex-consistent.c + (pthread_mutex_consistent): Likewise. + * sysdeps/mach/hurd/htl/pt-mutex-init.c (_pthread_mutex_init): + Likewise. + * sysdeps/mach/hurd/htl/pt-mutex-transfer-np.c + (__pthread_mutex_transfer_np): Likewise. + * sysdeps/mach/hurd/htl/pt-mutex-unlock.c + (__pthread_mutex_unlock): Likewise. + * sysdeps/mach/hurd/htl/pt-mutex.h (ROBUST_LOCK): Likewise. + (mtx_owned_p): Likewise. + * sysdeps/mach/hurd/htl/pt-mutexattr-getrobust.c + (pthread_mutexattr_getrobust): Likewise. + * sysdeps/mach/hurd/i386/init-first.c (init1): Likewise. + * sysdeps/mach/hurd/i386/trampoline.c (_hurd_setup_sighandler): + Likewise. + * sysdeps/mach/hurd/ioctl.c (__ioctl): Likewise. + * sysdeps/mach/hurd/jmp-unwind.c (_longjmp_unwind): Likewise. + * sysdeps/mach/hurd/kill.c (__kill): Likewise. + * sysdeps/mach/hurd/mig-reply.c (__mig_get_reply_port): Likewise. + * sysdeps/mach/hurd/ptrace.c (ptrace): Likewise. + * sysdeps/sparc/sparc64/dl-machine.h (elf_machine_rela): Likewise. + * sysdeps/unix/sysv/linux/aarch64/sysdep.h (#if condition): + Likewise. + * sysdeps/unix/sysv/linux/alpha/ioperm.c (process_cpuinfo): + Likewise. + * sysdeps/unix/sysv/linux/bits/timex.h (STA_RONLY): Likewise. + * sysdeps/unix/sysv/linux/csky/sysdep.h (#if condition): Likewise. + * sysdeps/unix/sysv/linux/generic/____longjmp_chk.c + (____longjmp_chk): Likewise. + * sysdeps/unix/sysv/linux/generic/futimesat.c (futimesat): + Likewise. + * sysdeps/unix/sysv/linux/s390/s390-32/sysdep.h + (INTERNAL_SYSCALL): Likewise. + * sysdeps/unix/sysv/linux/s390/s390-64/sysdep.h + (INTERNAL_SYSCALL): Likewise. + * sysdeps/unix/sysv/linux/sparc/sparc64/get_clockfreq.c + (__get_clockfreq_via_cpuinfo): Likewise. + + * sysdeps/i386/dl-machine.h (elf_machine_rela): Add fall-through + comments. + * sysdeps/m68k/m680x0/fpu/s_cexp_template.c (s(__cexp)): Likewise. + * sysdeps/m68k/memcopy.h (WORD_COPY_FWD): Likewise. + (WORD_COPY_BWD): Likewise. + * sysdeps/mach/hurd/ioctl.c (__ioctl): Likewise. + * sysdeps/powerpc/powerpc64/dl-machine.h (elf_machine_rela): + Likewise. + * sysdeps/s390/iso-8859-1_cp037_z900.c (TR_LOOP): Likewise. + * sysdeps/mips/dl-machine.h (elf_machine_reloc): Move fall-through + comment. + * sysdeps/mips/dl-trampoline.c (__dl_runtime_resolve): Likewise. + +2019-02-25 Joseph Myers + + * dirent/dirent.h [!_DIRENT_HAVE_D_NAMLEN + && _DIRENT_HAVE_D_RECLEN] (_D_ALLOC_NAMLEN): Break lines before + rather than after operators. + * elf/cache.c (print_cache): Likewise. + * gshadow/fgetsgent_r.c (__fgetsgent_r): Likewise. + * htl/pt-getattr.c (__pthread_getattr_np): Likewise. + * hurd/hurdinit.c (_hurd_setproc): Likewise. + * hurd/hurdkill.c (_hurd_sig_post): Likewise. + * hurd/hurdlookup.c (__file_name_lookup_under): Likewise. + * hurd/hurdsig.c (_hurd_internal_post_signal): Likewise. + (reauth_proc): Likewise. + * hurd/lookup-at.c (__file_name_lookup_at): Likewise. + (__file_name_split_at): Likewise. + (__directory_name_split_at): Likewise. + * hurd/lookup-retry.c (__hurd_file_name_lookup_retry): Likewise. + * hurd/port2fd.c (_hurd_port2fd): Likewise. + * iconv/gconv_dl.c (do_print): Likewise. + * inet/netinet/in.h (struct sockaddr_in): Likewise. + * libio/wstrops.c (_IO_wstr_seekoff): Likewise. + * locale/setlocale.c (new_composite_name): Likewise. + * malloc/memusagestat.c (main): Likewise. + * misc/fstab.c (fstab_convert): Likewise. + * nptl/pthread_mutex_unlock.c (__pthread_mutex_unlock_usercnt): + Likewise. + * nss/nss_compat/compat-grp.c (getgrent_next_nss): Likewise. + (getgrent_next_file): Likewise. + (internal_getgrnam_r): Likewise. + (internal_getgrgid_r): Likewise. + * nss/nss_compat/compat-initgroups.c (getgrent_next_nss): + Likewise. + (internal_getgrent_r): Likewise. + * nss/nss_compat/compat-pwd.c (getpwent_next_nss_netgr): Likewise. + (getpwent_next_nss): Likewise. + (getpwent_next_file): Likewise. + (internal_getpwnam_r): Likewise. + (internal_getpwuid_r): Likewise. + * nss/nss_compat/compat-spwd.c (getspent_next_nss_netgr): + Likewise. + (getspent_next_nss): Likewise. + (internal_getspnam_r): Likewise. + * pwd/fgetpwent_r.c (__fgetpwent_r): Likewise. + * shadow/fgetspent_r.c (__fgetspent_r): Likewise. + * string/strchr.c (STRCHR): Likewise. + * string/strchrnul.c (STRCHRNUL): Likewise. + * sysdeps/aarch64/fpu/fpu_control.h (_FPU_FPCR_IEEE): Likewise. + * sysdeps/aarch64/sfp-machine.h (_FP_CHOOSENAN): Likewise. + * sysdeps/csky/dl-machine.h (elf_machine_rela): Likewise. + * sysdeps/generic/memcopy.h (PAGE_COPY_FWD_MAYBE): Likewise. + * sysdeps/generic/symbol-hacks.h (__stack_chk_fail_local): + Likewise. + * sysdeps/gnu/netinet/ip_icmp.h (ICMP_INFOTYPE): Likewise. + * sysdeps/gnu/updwtmp.c (TRANSFORM_UTMP_FILE_NAME): Likewise. + * sysdeps/gnu/utmp_file.c (TRANSFORM_UTMP_FILE_NAME): Likewise. + * sysdeps/hppa/jmpbuf-unwind.h (_JMPBUF_UNWINDS): Likewise. + * sysdeps/mach/hurd/bits/stat.h (S_ISPARE): Likewise. + * sysdeps/mach/hurd/dl-sysdep.c (_dl_sysdep_start): Likewise. + (open_file): Likewise. + * sysdeps/mach/hurd/htl/pt-mutexattr-setprotocol.c + (pthread_mutexattr_setprotocol): Likewise. + * sysdeps/mach/hurd/ioctl.c (__ioctl): Likewise. + * sysdeps/mach/hurd/mmap.c (__mmap): Likewise. + * sysdeps/mach/hurd/ptrace.c (ptrace): Likewise. + * sysdeps/mach/hurd/spawni.c (__spawni): Likewise. + * sysdeps/microblaze/dl-machine.h (elf_machine_type_class): + Likewise. + (elf_machine_rela): Likewise. + * sysdeps/mips/mips32/sfp-machine.h (_FP_CHOOSENAN): Likewise. + * sysdeps/mips/mips64/sfp-machine.h (_FP_CHOOSENAN): Likewise. + * sysdeps/mips/sys/asm.h (multiple #if conditionals): Likewise. + * sysdeps/posix/rename.c (rename): Likewise. + * sysdeps/powerpc/novmx-sigjmp.c (__novmx__sigjmp_save): Likewise. + * sysdeps/powerpc/sigjmp.c (__vmx__sigjmp_save): Likewise. + * sysdeps/s390/fpu/fenv_libc.h (FPC_VALID_MASK): Likewise. + * sysdeps/s390/utf8-utf16-z9.c (gconv_end): Likewise. + * sysdeps/unix/grantpt.c (grantpt): Likewise. + * sysdeps/unix/sysv/linux/a.out.h (N_TXTOFF): Likewise. + * sysdeps/unix/sysv/linux/updwtmp.c (TRANSFORM_UTMP_FILE_NAME): + Likewise. + * sysdeps/unix/sysv/linux/utmp_file.c (TRANSFORM_UTMP_FILE_NAME): + Likewise. + * sysdeps/x86/cpu-features.c (get_common_indices): Likewise. + * time/tzfile.c (__tzfile_compute): Likewise. + +2019-02-22 Joseph Myers + + * benchtests/bench-memmem.c (simple_memmem): Break lines before + rather than after operators. + * benchtests/bench-skeleton.c (TIMESPEC_AFTER): Likewise. + * crypt/md5.c (md5_finish_ctx): Likewise. + * crypt/sha256.c (__sha256_finish_ctx): Likewise. + * crypt/sha512.c (__sha512_finish_ctx): Likewise. + * elf/cache.c (load_aux_cache): Likewise. + * elf/dl-load.c (open_verify): Likewise. + * elf/get-dynamic-info.h (elf_get_dynamic_info): Likewise. + * elf/readelflib.c (process_elf_file): Likewise. + * elf/rtld.c (dl_main): Likewise. + * elf/sprof.c (generate_call_graph): Likewise. + * hurd/ctty-input.c (_hurd_ctty_input): Likewise. + * hurd/ctty-output.c (_hurd_ctty_output): Likewise. + * hurd/dtable.c (reauth_dtable): Likewise. + * hurd/getdport.c (__getdport): Likewise. + * hurd/hurd/signal.h (_hurd_interrupted_rpc_timeout): Likewise. + * hurd/hurd/sigpreempt.h (HURD_PREEMPT_SIGNAL_P): Likewise. + * hurd/hurdfault.c (_hurdsig_fault_catch_exception_raise): + Likewise. + * hurd/hurdioctl.c (fioctl): Likewise. + * hurd/hurdselect.c (_hurd_select): Likewise. + * hurd/hurdsig.c (_hurdsig_abort_rpcs): Likewise. + (STOPSIGS): Likewise. + * hurd/hurdstartup.c (_hurd_startup): Likewise. + * hurd/intr-msg.c (_hurd_intr_rpc_mach_msg): Likewise. + * hurd/lookup-retry.c (__hurd_file_name_lookup_retry): Likewise. + * hurd/msgportdemux.c (msgport_server): Likewise. + * hurd/setauth.c (_hurd_setauth): Likewise. + * include/features.h (__GLIBC_USE_DEPRECATED_SCANF): Likewise. + * libio/libioP.h [IO_DEBUG] (CHECK_FILE): Likewise. + * locale/programs/ld-ctype.c (set_class_defaults): Likewise. + * localedata/tests-mbwc/tst_swscanf.c (tst_swscanf): Likewise. + * login/tst-utmp.c (do_check): Likewise. + (simulate_login): Likewise. + * mach/lowlevellock.h (lll_lock): Likewise. + (lll_trylock): Likewise. + * math/test-fenv.c (ALL_EXC): Likewise. + * math/test-fenvinline.c (ALL_EXC): Likewise. + * misc/sys/cdefs.h (__attribute_deprecated_msg__): Likewise. + * nis/nis_call.c (__do_niscall3): Likewise. + * nis/nis_callback.c (cb_prog_1): Likewise. + * nis/nis_defaults.c (searchaccess): Likewise. + * nis/nis_findserv.c (__nis_findfastest_with_timeout): Likewise. + * nis/nis_ismember.c (internal_ismember): Likewise. + * nis/nis_local_names.c (nis_local_principal): Likewise. + * nis/nss_nis/nis-rpc.c (_nss_nis_getrpcbyname_r): Likewise. + * nis/nss_nisplus/nisplus-netgrp.c (_nss_nisplus_getnetgrent_r): + Likewise. + * nis/ypclnt.c (yp_match): Likewise. + (yp_first): Likewise. + (yp_next): Likewise. + (yp_master): Likewise. + (yp_order): Likewise. + * nscd/hstcache.c (cache_addhst): Likewise. + * nscd/initgrcache.c (addinitgroupsX): Likewise. + * nss/nss_compat/compat-pwd.c (copy_pwd_changes): Likewise. + (internal_getpwuid_r): Likewise. + * nss/nss_compat/compat-spwd.c (copy_spwd_changes): Likewise. + * posix/glob.h (__GLOB_FLAGS): Likewise. + * posix/regcomp.c (peek_token): Likewise. + (peek_token_bracket): Likewise. + (parse_expression): Likewise. + * posix/regexec.c (sift_states_iter_mb): Likewise. + (check_node_accept_bytes): Likewise. + * posix/tst-spawn3.c (do_test): Likewise. + * posix/wordexp-test.c (testit): Likewise. + * posix/wordexp.c (parse_tilde): Likewise. + (exec_comm): Likewise. + * posix/wordexp.h (__WRDE_FLAGS): Likewise. + * resource/vtimes.c (TIMEVAL_TO_VTIMES): Likewise. + * setjmp/sigjmp.c (__sigjmp_save): Likewise. + * stdio-common/printf_fp.c (__printf_fp_l): Likewise. + * stdio-common/tst-fileno.c (do_test): Likewise. + * stdio-common/vfprintf-internal.c (vfprintf): Likewise. + * stdlib/strfmon_l.c (__vstrfmon_l_internal): Likewise. + * stdlib/strtod_l.c (round_and_return): Likewise. + (____STRTOF_INTERNAL): Likewise. + * stdlib/tst-strfrom.h (TEST_STRFROM): Likewise. + * string/strcspn.c (STRCSPN): Likewise. + * string/test-memmem.c (simple_memmem): Likewise. + * termios/tcsetattr.c (tcsetattr): Likewise. + * time/alt_digit.c (_nl_parse_alt_digit): Likewise. + * time/asctime.c (asctime_internal): Likewise. + * time/strptime_l.c (__strptime_internal): Likewise. + * time/sys/time.h (timercmp): Likewise. + * time/tzfile.c (__tzfile_compute): Likewise. + +2019-02-21 Patsy Griffin Franklin + + [BZ #21915] + * nss/tst-nss-files-hosts-long.root/etc/host.conf: New file. + +2019-02-21 Gabriel F. T. Gomes + + * argp/argp-help.c (__argp_error_internal): New function, + renamed from __argp_error, but that takes a 'mode_flags' + parameter to control the format of long double parameters. + (__argp_error): Converted into a call __argp_error_internal. + (__argp_failure_internal): New function, renamed from + __argp_failure, but that takes a 'mode_flags' parameter. + (__argp_failure): Converted into a call __argp_failure_internal. + * misc/err.c (__vwarnx_internal): New function, renamed from + vwarnx, but that takes a 'mode_flags' parameter. + (vwarnx): Converted into a call to __vwarnx_internal. + (__vwarn_internal): New function, renamed from vwarn, but that + takes a 'mode_flags' parameter. + (vwarn): Converted into a call to __vwarn_internal. + * misc/error.c (error_tail): Add 'mode_flags' parameter. Update + call to __vfxprintf with 'mode_flags'. + (__error_internal): New function, renamed from error, but that + takes a 'mode_flags' parameter. + (error): Converted into a call to __error_internal. + (__error_at_line_internal): New function, renamed from + error_at_line, but that takes a 'mode_flags' parameter. + (error_at_line): Converted into a call to + __error_at_line_internal. + * include/stdio.h (__vfxprintf): Add mode_flags parameter. + * stdio-common/fxprintf.c (locked_vfxprintf, __vfxprintf): + Likewise. + +2019-02-20 Martin Liska + + * math/Makefile: Install math-vector-fortran.h. + * bits/math-vector-fortran.h: New file. + * sysdeps/x86/fpu/bits/math-vector-fortran.h: New file. + +2019-02-20 Gabriel F. T. Gomes + + * sysdeps/powerpc/powerpc64/le/configure.ac: Remove test. + * sysdeps/powerpc/powerpc64/le/configure: Regenerate. + +2019-02-19 Wolfram Sang + + * nptl/pthread_mutex_trylock.c: Fix comment. + +2019-02-19 Carlos O'Donell + + * nptl/pthread_tryjoin.c: Fix comment. + +2019-02-18 Joseph Myers + + [BZ #24231] + * sysdeps/sparc/sparc64/dl-machine.h (elf_machine_rela): Add break + after R_SPARC_H34 case. + +2019-02-18 Florian Weimer + + * resolv/compat-gethnamaddr.c (Dprintf): Remove definition. + (getanswer): Do not call Dprintf. + (res_gethostbyname2_context): Likewise. + (res_gethostbyaddr_context): Likewise. + +2019-02-18 Florian Weimer + + * libio/libio.h (_IO_stdin, _IO_stdout, _IO_stderr): Remove + declaration. + * libio/stdio.c (AL, AL2, _IO_stdin, _IO_stdout, _IO_stderr): + Remove definitions. + * libio/stdfiles.c: Update comment. + * libio/oldstdfiles.c (_IO_check_libio): Update comment. Do not + set _IO_stdin, _IO_stdout, _IO_stderr. + * libio/libioP.h (_IO_fake_stdiobuf): Remove unused declaration. + [SHLIB_COMPAT (libc, GLIBC_2_0, GLIBC_2_1)] (_IO_legacy_file): New + inline function. + (_IO_deallocate_file): New inline function. + * libio/iolibio.h (_IO_vprintf): Remove definition. + * libio/iofclose.c (_IO_new_fclose): Use _IO_deallocate_file. + * libio/oldiofclose.c (_IO_old_fclose): Likewise. + * libio/iofwide.c (_IO_fwide): Use __glibc_unlikely and + _IO_legacy_file. + * libio/oldfileops.c (_IO_old_file_init_internal): Remove + __builtin_expect. Use _IO_legacy_file. + +2019-02-18 Stefan Liebler + + * sysdeps/unix/sysv/linux/tst-clone3.c (do_test): + Initialize ctid with a known value and remove update of ctid + after clone. + (wait_tid): Adjust arguments and call futex_wait with ctid_val + as assumed current value of ctid_ptr. + +2019-02-16 Florian Weimer + + Check that non-sysdeps headers have wrapper headers. + * scripts/check-wrapper-headers.py: New file. + * Makefile (tests-special): Add check-wrapper-headers.out. + (check-wrapper-headers.out): New target. + * Rules (tests-special): Add check-wrapper-headers.out. + (check-wrapper-headers.out): New target. + +2019-02-16 Florian Weimer + + Add missing header wrappers under include/. + * include/ar.h: New file. + * include/bits/mqueue2.h: Likewise. + * include/bits/stdio.h: Likewise. + * include/bits/stdio2.h: Likewise. + * include/fstab.h: Likewise. + * include/fts.h: Likewise. + * include/lastlog.h: Likewise. + * include/netinet/icmp6.h: Likewise. + * include/netinet/igmp.h: Likewise. + * include/netinet/ip6.h: Likewise. + * include/re_comp.h: Likewise. + * include/regexp.h: Likewise. + * include/rpcsvc/bootparam.h: Likewise. + * include/rpcsvc/yp_prot.h: Likewise. + * include/sys/random.h: Likewise. + * include/sys/stropts.h: Likewise. + * include/sys/ttychars.h: Likewise. + * include/sys/vfs.h: Likewise. + * include/wait.h: Likewise. + +2019-02-16 Florian Weimer + + * nptl_db/proc_service.h: Move to ... + * sysdeps/nptl/proc_service.h: ... here. + * nptl_db/thread_db.h: Move to ... + * sysdeps/nptl/thread_db.h: ... here. + * nptl/descr.h: Include . + +2019-02-15 Adhemerval Zanella + + * io/Makefile (tests): Add tst-lockf. + * io/lockf.c (lockf): Use __fcntl and only define for + !__OFF_T_MATCHES_OFF64_T. + * io/lockf64.c (__lockf64): Call __fcntl64 and alias to lockf for + __OFF_T_MATCHES_OFF64_T case. + * io/tst-lockf.c: New file. + * sysdeps/unix/sysv/linux/i386/lockf64.c: Remove file. + * sysdeps/unix/sysv/linux/arm/lockf64.c: Likewise. + * sysdeps/unix/sysv/linux/m68k/lockf64.c: Likewise. + * sysdeps/unix/sysv/linux/mips/mips32/lockf64.c: Likewise. + * sysdeps/unix/sysv/linux/mips/mips64/n32/lockf64.c: Likewise. + * sysdeps/unix/sysv/linux/powerpc/powerpc32/lockf64.c: Likewise. + * sysdeps/unix/sysv/linux/s390/s390-32/lockf64.c: Likewise. + * sysdeps/unix/sysv/linux/sh/lockf64.c: Likewise. + * sysdeps/unix/sysv/linux/sparc/sparc32/lockf64.c: Likewise. + +2019-02-15 Florian Weimer + + [BZ #24211] + * nptl/pthread_join_common.c (__pthread_timedjoin_ex): Do not read + pd->result after the thread descriptor has been freed. + +2019-02-15 Joseph Myers + + * sunrpc/tst-svc_register.c (rpcbind_address): Remove qualifier + from function return type. + + * setjmp/tst-setjmp.c (jump): Use __attribute__ ((__noreturn__)). + +2019-02-14 Jan Kratochvil + + * scripts/test_printers_common.py: Set TERM to a known harmless + value. + +2019-02-14 Joseph Myers + + * sunrpc/xdr.c (xdr_int): Add fall-through comment. + (xdr_u_int): Likewise. + (xdr_enum): Likewise. + (xdr_bytes): Reword fall-through comment. + (xdr_string): Likewise. + +2019-02-14 Adhemerval Zanella + + [BZ #2421] + * nptl/Makefile (lpthread-routines): Remove lll_timedwait_tid. + (tests): Add tst-join8 tst-join9. + * nptl/lll_timedwait_tid.c: Remove file. + * sysdeps/sparc/sparc32/lll_timedwait_tid.c: Likewise. + * sysdeps/unix/sysv/linux/i386/lll_timedwait_tid.c: Likewise. + * sysdeps/sysv/linux/x86_64/lll_timedwait_tid.c: Likewise. + * nptl/pthread_join_common.c (timedwait_tid): New function. + (__pthread_timedjoin_ex): Act as cancellation entrypoint is block + is set. + * nptl/tst-join5.c (thread_join): New function. + (tf1, tf2, do_test): Use libsupport and add pthread_timedjoin_np + check. + * nptl/tst-join8.c: New file. + * nptl/tst-join9.c: Likewise. + * sysdeps/nptl/lowlevellock-futex.h (lll_futex_wait_cancel, + lll_futex_timed_wait_cancel): Add generic macros. + * sysdeps/nptl/lowlevellock.h (__lll_timedwait_tid, lll_wait_tid): + Remove definitions. + * sysdeps/unix/sysv/linux/i386/lowlevellock.h: Likewise. + * sysdeps/unix/sysv/linux/sparc/lowlevellock.h: Likewise. + * sysdeps/unix/sysv/linux/x86_64/lowlevellock.h: Likewise. + * sysdeps/sparc/sparc32/lowlevellock.c (__lll_timedwait_tid): + Remove function. + * sysdeps/unix/sysv/linux/i386/lowlevellock.S (__lll_timedwait_tid): + Likewise. + * sysdeps/unix/sysv/linux/x86_64/lowlevellock.S: Likewise. + * sysdeps/unix/sysv/linux/lowlevellock-futex.h + (lll_futex_timed_wait_cancel): New macro. + +2019-02-14 Wilco Dijkstra + + * benchtests/Makefile: Add malloc-simple benchmark. + * benchtests/bench-malloc-simple.c: New benchmark. + +2019-02-14 Siddhesh Poyarekar + + * benchtests/bench-memmove.c (do_one_test): Remove unused + ORIG_SRC. + (do_test): Adjust. + * benchtests/bench-memmove-large.c (do_one_test): Remove unused + ORIG_SRC. + (do_test): Adjust. + +2019-01-13 Jim Wilson + + [BZ #24040] + * elf/Makefile (CFLAGS-tst-unwind-main.c): Add -DUSE_PTHREADS=0. + * elf/tst-unwind-main.c: If USE_PTHEADS, include pthread.h and error.h + (func): New. + (main): If USE_PTHREADS, call pthread_create to run func. Otherwise + call func directly. + * nptl/Makefile (tests): Add tst-unwind-thread. + (CFLAGS-tst-unwind-thread.c): Define. + * nptl/tst-unwind-thread.c: New file. + * sysdeps/unix/sysv/linux/riscv/clone.S (__thread_start): Mark ra + as undefined. + +2019-02-13 Joseph Myers + + * iconvdata/cns11643.h (ucs4_to_cns11643): Adjust fall-through + comment wording. + * nis/nis_call.c (__do_niscall3): Likewise. + + * catgets/gencat.c (normalize_line): Use braces around empty + 'else' body. + * include/stap-probe.h [!USE_STAP_PROBE && !__ASSEMBLER__] + (STAP_PROBE0): Use do {} while (0) for do-nothing definition. + [!USE_STAP_PROBE && !__ASSEMBLER__] (STAP_PROBE1): Likewise. + [!USE_STAP_PROBE && !__ASSEMBLER__] (STAP_PROBE2): Likewise. + [!USE_STAP_PROBE && !__ASSEMBLER__] (STAP_PROBE3): Likewise. + [!USE_STAP_PROBE && !__ASSEMBLER__] (STAP_PROBE4): Likewise. + * libio/libio.h (_IO_funlockfile): Use ((void) 0) for do-nothing + definition. + + * support/test-container.c (recursive_remove): Use FAIL_EXIT1 if + execlp returns. + +2019-02-12 Wilco Dijkstra + + * benchtests/bench-strcasecmp.c (stupid_strcasecmp): Remove. + * benchtests/bench-strcasestr.c (stupid_strcasestr): Remove. + * benchtests/bench-strchr.c (stupid_strchr): Remove. + * benchtests/bench-strcmp.c (stupid_strcmp): Remove. + * benchtests/bench-strcspn.c (stupid_strcspn): Remove. + * benchtests/bench-strlen.c (builtin_strlen): Remove. + * benchtests/bench-strncasecmp.c (stupid_strncasecmp): Remove. + * benchtests/bench-strncmp.c (stupid_strncmp): Remove. + * benchtests/bench-strpbrk.c (stupid_strpbrk): Remove. + * benchtests/bench-strspn.c (stupid_strspn): Remove. + * benchtests/Makefile: Remove bench-bcopy.c and bench-bzero.c. + * benchtests/bench-bcopy.c: Delete file. + * benchtests/bench-bzero.c: Likewise. + * benchtests/bench-memccpy.c (stupid_memccpy): Remove. + (simple_memccpy): Remove. + (generic_memccpy): Add function. + * benchtests/bench-memcpy.c: (builtin_memcpy): Remove. + * benchtests/bench-memmove.c (simple_bcopy): Remove. + * benchtests/bench-mempcpy.c (simple_mempcpy): Remove. + (generic_mempcpy): Add new function. + * benchtests/bench-memset.c (simple_bzero): Remove. + (builtin_bzero): Remove. + (builtin_memset): Remove. + * benchtests/bench-rawmemchr.c (simple_rawmemchr): Remove. + (generic_rawmemchr): Add new function. + +2019-02-12 Florian Weimer + + * nss/getent.c (ahosts_keys_int): Include IPv6 scope ID in output. + +2019-02-12 Adhemerval Zanella + + [BZ #24122] + * elf/Makefile (tests): Add tst-audit13. + (modules-names): Add tst-audit13mod1. + (tst-audit13.out, LDFLAGS-tst-audit13mod1.so, tst-audit13-ENV): New + rule. + * elf/tst-audit13.c: New file. + * elf/tst-audit13mod1.c: Likewise. + +2019-02-12 Florian Weimer + + [BZ #24122] + * elf/rtld.c (unload_audit_module): New function. + (report_audit_module_load_error): Likewise. + (load_audit_module): Likewise. Extracted from dl_main. Call + _dl_close if the laversion symbol cannot be found. Use early + returns for error handling. Add malloc error check. Check for a + zero return value from la_version. Remove spurious comment about + static TLS initialization. Remove useless casts. + (notify_audit_modules_of_loaded_object): New function. Extracted + from dl_main. + (load_audit_module): Likewise. + (dl_main): Call load_audit_modules. + +2019-02-12 Joseph Myers + + * elf/dl-exception.c (_dl_exception_create_format): Add + fall-through comments. + * elf/ldconfig.c (parse_conf_include): Likewise. + * elf/rtld.c (print_statistics): Likewise. + * locale/programs/charmap.c (parse_charmap): Likewise. + * misc/mntent_r.c (__getmntent_r): Likewise. + * posix/wordexp.c (parse_arith): Likewise. + (parse_backtick): Likewise. + * resolv/ns_ttl.c (ns_parse_ttl): Likewise. + * sysdeps/x86/cpu-features.c (init_cpu_features): Likewise. + * sysdeps/x86_64/dl-machine.h (elf_machine_rela): Likewise. + +2019-02-11 Paul A. Clarke + + * sysdeps/powerpc/fpu/e_sqrt.c (__slow_ieee754_sqrtf): + Use float instead of double. + +2019-02-11 TAMUKI Shoichi + + * time/strftime_l.c: Fix a few whitespace arrangement inconsistencies. + +2019-02-08 Joseph Myers + + * sysdeps/powerpc/bits/mathinline.h: Remove. + +2019-02-08 Florian Weimer + + math: Enable sysdeps override, as used on ia64. + * math/bits/math-finite.h: Move to ... + * bits/math-finite.h: ... here. + +2019-02-08 Florian Weimer + + * sysdeps/generic/bits/unistd_ext.h: Move to ... + * bits/unistd_ext.h: here. + +2019-02-08 Patsy Griffin Franklin + + [BZ #21915] + * nss/Makefile (test-container): Add tst-nss-files-hosts-long. + * nss/tst-nss-files-hosts-long.c: New file. + * nss/tst-nss-files-hosts-long.root: New directory. + * nss/tst-nss-files-hosts-long.root/etc: Likewise. + * nss/tst-nss-files-hosts-long.root/etc/hosts: New file. + +2019-02-08 Florian Weimer + + * include/bits/unistd_ext.h: Remove file. + * posix/bits/unistd_ext.h: Move to ... + * sysdeps/generic/bits/unistd_ext.h: ... here. + +2019-02-08 Florian Weimer + + * include/bits/unistd_ext.h: New file. + +2019-02-08 TAMUKI Shoichi + + * time/tst-strftime2.c: Use array_length macros instead of magic + numbers. + +2019-02-08 Florian Weimer + + [BZ #24161] + * sysdeps/nptl/fork.h (__run_fork_handlers): Add multiple_threads + argument. + * nptl/register-atfork.c (__run_fork_handlers): Only perform + locking if the new do_locking argument is true. + * sysdeps/nptl/fork.c (__libc_fork): Pass multiple_threads to + __run_fork_handlers. + +2019-02-08 Florian Weimer + + [BZ #6399] + Linux: Add gettid system call wrapper. + * posix/Makefile (headers): Add bits/unistd_ext.h. + * posix/bits/unistd_ext.h: New file. + * posix/unistd.h: Include it. + * manual/process.texi (Process Identification): Document gettid. + * sysdeps/unix/sysv/linux/Makefile [subdir == misc] (tests): Add + tst-gettid, tst-gettid-kill. + (tst-gettid): Link with $(shared-thread-library). + * sysdeps/unix/sysv/linux/Version (GLIBC_2.30): Export gettid. + * sysdeps/unix/sysv/linux/bits/unistd_ext.h: New file. + * sysdeps/unix/sysv/linux/bits/syscalls.list (gettid): Add. + * sysdeps/unix/sysv/linux/bits/tst-gettid.c: New file. + * sysdeps/unix/sysv/linux/bits/tst-gettid-kill.c: Likewise. + * sysdeps/unix/sysv/linux/aarch64/libc.abilist (GLIBC_2.30): + Add gettid. + * sysdeps/unix/sysv/linux/alpha/libc.abilist (GLIBC_2.30): + Likewise. + * sysdeps/unix/sysv/linux/arm/libc.abilist (GLIBC_2.30): Likewise. + * sysdeps/unix/sysv/linux/csky/libc.abilist (GLIBC_2.30): + Likewise. + * sysdeps/unix/sysv/linux/hppa/libc.abilist (GLIBC_2.30): + Likewise. + * sysdeps/unix/sysv/linux/i386/libc.abilist (GLIBC_2.30): + Likewise. + * sysdeps/unix/sysv/linux/ia64/libc.abilist (GLIBC_2.30): + Likewise. + * sysdeps/unix/sysv/linux/m68k/coldfire/libc.abilist (GLIBC_2.30): + Likewise. + * sysdeps/unix/sysv/linux/m68k/m680x0/libc.abilist (GLIBC_2.30): + Likewise. + * sysdeps/unix/sysv/linux/microblaze/libc.abilist (GLIBC_2.30): + Likewise. + * sysdeps/unix/sysv/linux/mips/mips32/fpu/libc.abilist + (GLIBC_2.30): Likewise. + * sysdeps/unix/sysv/linux/mips/mips32/nofpu/libc.abilist + (GLIBC_2.30): Likewise. + * sysdeps/unix/sysv/linux/mips/mips64/n32/libc.abilist + (GLIBC_2.30): Likewise. + * sysdeps/unix/sysv/linux/mips/mips64/n64/libc.abilist + (GLIBC_2.30): Likewise. + * sysdeps/unix/sysv/linux/nios2/libc.abilist (GLIBC_2.30): + Likewise. + * sysdeps/unix/sysv/linux/powerpc/powerpc32/fpu/libc.abilist + (GLIBC_2.30): Likewise. + * sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/libc.abilist + (GLIBC_2.30): Likewise. + * sysdeps/unix/sysv/linux/powerpc/powerpc64/be/libc.abilist + (GLIBC_2.30): Likewise. + * sysdeps/unix/sysv/linux/powerpc/powerpc64/le/libc.abilist + (GLIBC_2.30): Likewise. + * sysdeps/unix/sysv/linux/riscv/rv64/libc.abilist (GLIBC_2.30): + Likewise. + * sysdeps/unix/sysv/linux/s390/s390-32/libc.abilist (GLIBC_2.30): + Likewise. + * sysdeps/unix/sysv/linux/s390/s390-64/libc.abilist (GLIBC_2.30): + Likewise. + * sysdeps/unix/sysv/linux/sh/libc.abilist (GLIBC_2.30): Likewise. + * sysdeps/unix/sysv/linux/sparc/sparc32/libc.abilist (GLIBC_2.30): + Likewise. + * sysdeps/unix/sysv/linux/sparc/sparc64/libc.abilist (GLIBC_2.30): + Likewise. + * sysdeps/unix/sysv/linux/x86_64/64/libc.abilist (GLIBC_2.30): + Likewise. + * sysdeps/unix/sysv/linux/x86_64/x32/libc.abilist (GLIBC_2.30): + Likewise. + * sysdeps/unix/sysv/linux/tst-setgetname.c (gettid): Remove. + +2019-02-08 Florian Weimer + + * rt/clock-compat.c (COMPAT_REDIRECT): Turn librt forwarders into + compatibility symbols. + +2019-02-07 Stefan Liebler + + [BZ #24180] + * nptl/pthread_mutex_trylock.c (__pthread_mutex_trylock): + Add compiler barriers and comments. + +2019-02-07 Florian Weimer + + * include/array_length.h (array_length): Do not use a statement + expression and _Static_assert, so that array_length can be used at + file scope and as a constant expression. + +2019-02-07 Florian Weimer + + * support/xdlfcn.h (xdlmopen): Declare. + * support/xdlmopen.c: New file. + * support/Makefile (libsupport-routines): Add xdlmopen. + +2019-02-06 Joseph Myers + + * elf/dl-load.h (_dl_postprocess_loadcmd): Use __always_inline + before return type, without separate inline. + * elf/dl-tunables.c (maybe_enable_malloc_check): Likewise. + * elf/dl-tunables.h (tunable_is_name): Likewise. + * malloc/malloc.c (do_set_trim_threshold): Likewise. + (do_set_top_pad): Likewise. + (do_set_mmap_threshold): Likewise. + (do_set_mmaps_max): Likewise. + (do_set_mallopt_check): Likewise. + (do_set_perturb_byte): Likewise. + (do_set_arena_test): Likewise. + (do_set_arena_max): Likewise. + (do_set_tcache_max): Likewise. + (do_set_tcache_count): Likewise. + (do_set_tcache_unsorted_limit): Likewise. + * nis/nis_subr.c (count_dots): Likewise. + * nptl/allocatestack.c (advise_stack_range): Likewise. + * sysdeps/ieee754/dbl-64/s_sin.c (do_cos): Likewise. + (do_sin): Likewise. + (reduce_sincos): Likewise. + (do_sincos): Likewise. + * sysdeps/unix/sysv/linux/x86/elision-conf.c + (do_set_elision_enable): Likewise. + (TUNABLE_CALLBACK_FNDECL): Likewise. + +2019-02-06 Florian Weimer + + * support/xdlfcn.c (xdlopen, xdlclose): Do not call dlerror. + (xdlsym): Use dlerror to detect a NULL symbol. + +2019-02-06 Florian Weimer + + * sysdeps/unix/sysv/linux/i386/lowlevellock.h: Do not include + . + * sysdeps/unix/sysv/linux/x86_64/lowlevellock.h: Likewise. + +2019-02-06 Stefan Liebler + + * libio/tst-bz24153.c (wide): Use wide char format specifier. + +2019-02-06 Stefan Liebler + + * sysdeps/s390/wmemcmp-vx.S: Add strong alias to + __wmemcmp and weak alias to wmemcmp. + +2019-02-06 Stefan Liebler + + [BZ #23403] + * nptl/allocatestack.c (allocate_stack): Align pointer pd for + TLS_TCB_AT_TP tls variant. + * nptl/tst-tls1.c: Migrate to support/test-driver.c. + Add alignment checks. + * support/Makefile (libsupport-routines): Add xposix_memalign and + xpthread_setstack. + * support/support.h: Add xposix_memalign. + * support/xthread.h: Add xpthread_attr_setstack. + * support/xposix_memalign.c: New File. + * support/xpthread_attr_setstack.c: Likewise. + +2019-02-05 Florian Weimer + + [BZ #24164] + arm: Use "nr" constraint for Systemtap probes, to avoid the + compiler using memory operands for constants, due to the "o" + alternative in the default "nor" constraint. + * include/stap-probe.h [USE_STAP_PROBE]: Include + + * sysdeps/generic/stap-probe-machine.h: New file. + * sysdeps/arm/stap-probe-machine.h: Likewise. + +2019-02-04 Joseph Myers + + * malloc/malloc.c (tcache_get): Compare tcache->counts[tc_idx] + with 0, not tcache->entries[tc_idx]. + + * nscd/connections.c (reqinfo): Initialize SHUTDOWN element only + once. + +2019-02-04 Andreas Schwab + + [BZ #16976] + [BZ #17396] + * posix/fnmatch_loop.c (internal_fnmatch, internal_fnwmatch): When + looking up collating elements match against (wide) character + sequence instead of name. Correct alignment adjustment. + * posix/fnmatch.c: Don't include "../locale/elem-hash.h". + (WMEMCMP) [HANDLE_MULTIBYTE]: Define. + * posix/Makefile (tests): Add tst-fnmatch4 and tst-fnmatch5. + (LOCALES): Add cs_CZ.ISO-8859-2. + * posix/tst-fnmatch4.c: New file. + * posix/tst-fnmatch5.c: New file. + * include/wchar.h (__wmemcmp): Declare. + * wcsmbs/wmemcmp.c: Define __wmemcmp and add wmemcmp as weak alias. + * sysdeps/i386/i686/multiarch/wmemcmp.c: Likewise. + * sysdeps/x86_64/multiarch/wmemcmp.c: Likewise. + * sysdeps/s390/wmemcmp.c: Likewise. + +2019-02-04 H.J. Lu + + [BZ #24155] + CVE-2019-7309 + * NEWS: Updated for CVE-2019-7309. + * sysdeps/x86_64/memcmp.S: Use RDX_LP for size. Clear the + upper 32 bits of RDX register for x32. Use unsigned Jcc + instructions, instead of signed. + * sysdeps/x86_64/x32/Makefile (tests): Add tst-size_t-memcmp-2. + * sysdeps/x86_64/x32/tst-size_t-memcmp-2.c: New test. + +2019-02-04 Florian Weimer + + * posix/spawn.h (posix_spawn, posix_spawnp): Add __nonnull attribute. + (posix_spawnattr_init, posix_spawnattr_destroy): Likewise. + (posix_spawnattr_getsigdefault, posix_spawnattr_setsigdefault): + Likewise. + (posix_spawnattr_getsigmask, posix_spawnattr_setsigmask): Likewise. + (posix_spawnattr_getflags, posix_spawnattr_setflags): Likewise. + (posix_spawnattr_getpgroup, posix_spawnattr_setpgroup): Likewise. + (posix_spawnattr_getschedpolicy, posix_spawnattr_setschedpolicy): + Likewise. + (posix_spawnattr_getschedparam, posix_spawnattr_setschedparam): + Likewise. + (posix_spawn_file_actions_init, posix_spawn_file_actions_destroy): + Likewise. + (posix_spawn_file_actions_addopen): Likewise. + (posix_spawn_file_actions_addclose): Likewise. + (posix_spawn_file_actions_adddup2): Likewise. + (posix_spawn_file_actions_addchdir_np): Likewise. Add __restrict + qualifiers. + (posix_spawn_file_actions_addfchdir_np): Likewise. + +2019-02-04 David Newall + + elf: Implement --preload option for the dynamic linker. + * elf/rtld.c (preloadarg): New variable. + (handle_preload_list): Pass through “where” argument to + do_preload. + (dl_main): Handle "--preload" and add second call to + handle_preload_list. + * elf/Makefile (tests-special): Add tst-rtld-preload.out. + (tst-rtld-preload-OBJS): Set variable. + (tst-rtld-preload.out): New target. + * elf/tst-rtld-preload.sh: New file. + +2019-02-04 Matthew Malcomson + + * Makefile (testrun.sh): Exit in case of incorrect argument. + +2019-02-04 Florian Weimer + + * time/tzfile.c (__tzfile_read): Reorder suballocations to avoid + alignment gaps. + +2019-02-03 Florian Weimer + + * time/tzfile.c (__tzfile_read): Use struct alloc_buffer and its + implicit overflow checks. + +2019-02-03 Aurelien Jarno + + * stdlib/isomac.c: Include . + +2019-02-03 Florian Weimer + + * include/time.h (__tzfile_default): Use int, not long int, for + the GMT offsets. + * time/tzfile.c (struct ttinfo): Change type of the offset member + to int. + (__tzfile_read): Remove useless cast. + (__tzfile_default): Adjust prototype. + * time/tzset.c (tz_rule): Change type of the offset member to int. + (parse_offset): Change the type of the sign variable to int. + +2019-02-03 Florian Weimer + + [BZ #24153] + * debug/gets_chk.c (__gets_chk): Use stdin instead of _IO_stdin. + * libio/getchar.c (getchar): Likewise. + * libio/getchar_u.c (getchar_unlocked): Likewise. + * libio/getwchar.c (getwchar): Likewise. + * libio/getwchar_u.c (getwchar_unlocked): Likewise. + * libio/iogets.c (_IO_gets): Likewise. + * libio/vscanf.c (_IO_vscanf): Likewise. + * libio/vwscanf.c (__vwscanf): Likewise. + * libio/tst-bz24153.c: New file. + * libio/Makefile (tests): Add it. + +2019-02-02 Florian Weimer + + [BZ #14829] + * manual/resource.texi (Basic Scheduling Functions): Add + portability note. Change process to task throughout the section. + Remove incorrect comment about sched_yield as it affects + tasks/threads, not entire processes. + * sysdeps/unix/sysv/linux/bits/posix_opt.h + (_POSIX_PRIORITY_SCHEDULING): Update comment. + +2019-02-01 Joseph Myers + + * configure.ac (libc_cv_compiler_ok): Require GCC 6.2 or later. + * configure: Regenerated. + * manual/install.texi (Tools for Compilation): Update minimum GCC + version. + * INSTALL: Regenerated. + +2019-02-01 Florian Weimer + + * support/support_test_compare_string.c + (support_test_compare_string): Use "string" in error message. + * support/tst-test_compare_string.c (do_test): Adjust. + +2019-02-01 Florian Weimer + + * support/support_format_address_family.c + (support_format_address_family): Handle AF_LOCAL, AF_UNSPEC. + +2019-02-01 Florian Weimer + + * manual/socket.texi (Internet Address Formats): Clarify the byte + order of struct sockaddr_in, struct sockaddr_in6. Document + sin6_flowinfo and sin6_scope_id. + +2019-02-01 Wilco Dijkstra + + * sysdeps/posix/clock_getres.c (__clock_getres): Cleanup. + * sysdeps/unix/clock_gettime.c (__clock_gettime): Cleanup. + * sysdeps/unix/clock_settime.c (__clock_settime): Cleanup. + * sysdeps/unix/sysv/linux/clock_getres.c (__clock_getres): Cleanup. + * sysdeps/unix/sysv/linux/clock_gettime.c (__clock_gettime): Cleanup. + * sysdeps/unix/sysv/linux/clock_settime.c (__clock_settime): Cleanup. + +2019-02-01 Feng Xue + + * sysdeps/aarch64/memchr.S (__memchr): Rename to MEMCHR. + [!MEMCHR](MEMCHR): Set to __memchr. + * sysdeps/aarch64/multiarch/Makefile (sysdep_routines): + Add memchr_generic and memchr_nosimd. + * sysdeps/aarch64/multiarch/ifunc-impl-list.c + (__libc_ifunc_impl_list): Add memchr ifuncs. + * sysdeps/aarch64/multiarch/memchr.c: New file. + * sysdeps/aarch64/multiarch/memchr_generic.S: Likewise. + * sysdeps/aarch64/multiarch/memchr_nosimd.S: Likewise. + +2019-02-01 Feng Xue + + * sysdeps/aarch64/multiarch/Makefile (sysdep_routines): + Add memset_emag. + * sysdeps/aarch64/multiarch/ifunc-impl-list.c + (__libc_ifunc_impl_list): Add __memset_emag to memset ifunc. + * sysdeps/aarch64/multiarch/memset.c (libc_ifunc): + Add IS_EMAG check for ifunc dispatch. + * sysdeps/aarch64/multiarch/memset_base64.S: New file. + * sysdeps/aarch64/multiarch/memset_emag.S: New file. + +2019-02-01 Feng Xue + + * manual/tunables.texi (Tunable glibc.cpu.name): Add emag. + * sysdeps/unix/sysv/linux/aarch64/cpu-features.c (cpu_list): + Add emag. + * sysdeps/unix/sysv/linux/aarch64/cpu-features.h (IS_EMAG): + New macro. + +2019-02-01 Stefan Liebler + + * posix/tst-spawn do_test(): Move waitpid before posix_spawn. + +2019-01-31 Vineet Gupta + + * sysdeps/unix/make-syscalls.sh: Fix comment referencing + syscall-template file. + +2019-01-31 Carlos O'Donell + Torvald Riegel + Rik Prohaska + + [BZ# 23844] + * nptl/Makefile (tests): Add tst-rwlock-tryrdlock-stall, and + tst-rwlock-trywrlock-stall. + * nptl/pthread_rwlock_tryrdlock.c (__pthread_rwlock_tryrdlock): + Wake waiters if PTHREAD_RWLOCK_FUTEX_USED is set. + * nptl/pthread_rwlock_trywrlock.c (__pthread_rwlock_trywrlock): + Set __wrphase_fute to 1 only if we started the write phase. + * nptl/tst-rwlock-tryrdlock-stall.c: New file. + * nptl/tst-rwlock-trywrlock-stall.c: New file. + * support/Makefile (libsupport-routines): Add xpthread_rwlock_destroy. + * support/xpthread_rwlock_destroy.c: New file. + * support/xthread.h: Declare xpthread_rwlock_destroy. + +2019-02-01 Joseph Myers + + * scripts/build-many-glibcs.py (Context.checkout): Default MPFR + version to 4.0.2. + +2019-01-31 Paul Pluzhnikov + + [BZ #24051] + * libio/ioputs.c (_IO_puts): Use stdout instead of _IO_stdout. + * libio/fileops.c (_IO_new_file_underflow): Likewise + * libio/wfileops.c (_IO_wfile_underflow): Likewise + * libio/putchar.c (putchar): Likewise. + * libio/putchar_u.c (putchar_unlocked): Likewise. + * libio/putwchar.c (putchar): Likewise. + * libio/putwchar_u.c (putwchar_unlocked): Likewise. + * libio/tst-bz24051.c: New test. + * libio/Makefile (tests): Add tst-bz24051 + +2019-01-31 Paul Eggert + + CVE-2019-9169 + regex: fix read overrun [BZ #24114] + Problem found by AddressSanitizer, reported by Hongxu Chen in: + https://debbugs.gnu.org/34140 + * posix/regexec.c (proceed_next_node): + Do not read past end of input buffer. + +2019-01-31 Florian Weimer + + [BZ #24059] + * nss/nss_files/files-alias.c (get_next_alias): Handle + continuation line without newline at the end. + * nss/tst-nss-files-alias-truncated.c: New file. + * nss/Makefile [$(build-shared)] (tests): Add + tst-nss-files-alias-truncated. + (tst-nss-files-alias-truncated): Link with libnss_files.so. + * support/namespace.h (struct support_chroot_configuration): Add + aliases member. + (struct support_chroot): Add path_aliases member. + * support/support_chroot.c (support_chroot_create): Handle + aliases. + (support_chroot_free): Free path_aliases. + +2019-01-31 Siddhesh Poyarekar + + * version.h (RELEASE): Set to "development". + (VERSION): Set to "2.29.9000". + * NEWS: Add section for 2.30. + + * version.h (RELEASE): Set to "stable". + (VERSION): Set to "2.29". + * include/features.h (__GLIBC_MINOR__): Set to 2.29. + + * NEWS: Add the list of bugs fixed in 2.29. + * manual/contrib.texi: Update contributors list with some more + names. + * manual/install.texi: Update latest versions of packages + tested. + * INSTALL: Regenerated. + +2019-01-25 Siddhesh Poyarekar + + * po/be.po: Update translations. + * po/bg.po: Likewise. + * po/ca.po: Likewise. + * po/cs.po: Likewise. + * po/da.po: Likewise. + * po/de.po: Likewise. + * po/el.po: Likewise. + * po/eo.po: Likewise. + * po/es.po: Likewise. + * po/fi.po: Likewise. + * po/fr.po: Likewise. + * po/gl.po: Likewise. + * po/hr.po: Likewise. + * po/hu.po: Likewise. + * po/ia.po: Likewise. + * po/id.po: Likewise. + * po/it.po: Likewise. + * po/ja.po: Likewise. + * po/ko.po: Likewise. + * po/lt.po: Likewise. + * po/nb.po: Likewise. + * po/nl.po: Likewise. + * po/pl.po: Likewise. + * po/pt_BR.po: Likewise. + * po/ru.po: Likewise. + * po/rw.po: Likewise. + * po/sk.po: Likewise. + * po/sl.po: Likewise. + * po/sv.po: Likewise. + * po/tr.po: Likewise. + * po/uk.po: Likewise. + * po/vi.po: Likewise. + * po/zh_CN.po: Likewise. + * po/zh_TW.po: Likewise. + +2019-01-24 Uroš Bizjak + + [BZ #24130] + * sysdeps/alpha/remqu.S (__remqu): Add missing restore + of $f3 register on $y_is_neg path. + +2019-01-24 Samuel Thibault + + [BZ #24110] + * hurd/hurdsig.c (_hurd_thread_sigstate): Set SS_DISABLE in + sigaltstack.ss_flags. + +2019-01-24 TAMUKI Shoichi + + [BZ #23758] + * manual/time.texi (strftime): Document "%Ey". + * time/strftime_l.c (__strftime_internal): Set the default width + padding with zero of "%Ey" to 2. + + [BZ #24096] + * manual/time.texi (strftime): Document "%EC" and "%EY". + * time/Makefile (tests): Add tst-strftime2. + (LOCALES): Add ja_JP.UTF-8, lo_LA.UTF-8, and th_TH.UTF-8. + * time/strftime_l.c (__strftime_internal): Add argument yr_spec to + override padding for "%Ey". + If an optional flag ('_' or '-') is specified to "%EY", interpret the + "%Ey" in the subformat as if decorated with that flag. + * time/tst-strftime2.c: New file. + +2019-01-24 Adhemerval Zanella + + * support/xsigstack.c (MAP_NORESERVE, MAP_STACK): Define if they + are not defined. + + [BZ #24122] + * elf/Makefile (tests): Add tst-audit13. + (modules-names): Add tst-audit13mod1. + (tst-audit13.out, LDFLAGS-tst-audit13mod1.so, tst-audit13-ENV): New + rule. + * elf/rtld.c (dl_main): Handle invalid audit module version. + * elf/tst-audit13.c: New file. + * elf/tst-audit13mod1.c: Likewise. + +2019-01-22 Samuel Thibault + + * sysdeps/mach/hurd/faccessat.c (__faccessat_common): Check for errors + returned by __hurd_at_flags. + * hurd/lookup-at.c (__file_name_lookup_at): When at_flags contains + AT_EMPTY_PATH, call __dir_lookup and __hurd_file_name_lookup_retry + directly instead of __hurd_file_name_lookup. + +2019-01-21 Joseph Myers + + * scripts/build-many-glibcs.py (Context.checkout): Default + binutils version to 2.32 branch. + +2019-01-21 Florian Weimer + + [BZ #20018] + CVE-2016-10739 + resolv: Reject trailing characters in host names + * include/arpa/inet.h (__inet_aton_exact): Declare. + (inet_aton): Remove hidden prototype. No longer used internally. + * nscd/gai.c (__inet_aton): Do not define. + * nscd/gethstbynm3_r.c (__inet_aton): Likewise. + * nss/digits_dots.c (__inet_aton): Likewise. + (__nss_hostname_digits_dots_context): Call __inet_aton_exact. + * resolv/Makefile (tests-internal): Add tst-inet_aton_exact. + (tests): Add tst-resolv-nondecimal, tst-resolv-trailing. + (tst-resolv-nondecimal): Link with libresolv.so and libpthread. + (tst-resolv-trailing): Likewise. + * resolv/Versions (GLIBC_PRIVATE): Export __inet_aton_exact from + libc. + * resolv/inet_addr.c (inet_aton_end): Remame from __inet_aton. + Make static. Add endp parameter. + (__inet_aton_exact): New function. + (__inet_aton_ignore_trailing): New function, aliased to inet_aton. + (__inet_addr): Call inet_aton_end. + * resolv/res_init.c (res_vinit_1): Truncate nameserver for IPv4, + not just IPv6. Call __inet_aton_exact. + * resolv/tst-aton.c: Switch to . + (tests): Make const. Add additional test cases with trailing + characters. + (do_test): Use array_length. + * resolv/tst-inet_aton_exact.c: New file. + * resolv/tst-resolv-trailing.c: Likewise. + * resolv/tst-resolv-nondecimal.c: Likewise. + * sysdeps/posix/getaddrinfo.c (gaih_inet): Call __inet_aton_exact. + +2019-01-21 H.J. Lu + + [BZ# 24097] + CVE-2019-6488 + * sysdeps/x86_64/multiarch/strlen-avx2.S: Use RSI_LP for length. + Clear the upper 32 bits of RSI register. + * sysdeps/x86_64/strlen.S: Use RSI_LP for length. + * sysdeps/x86_64/x32/Makefile (tests): Add tst-size_t-strnlen + and tst-size_t-wcsnlen. + * sysdeps/x86_64/x32/tst-size_t-strnlen.c: New file. + * sysdeps/x86_64/x32/tst-size_t-wcsnlen.c: Likewise. + +2019-01-21 H.J. Lu + + [BZ# 24097] + CVE-2019-6488 + * sysdeps/x86_64/multiarch/strcpy-avx2.S: Use RDX_LP for length. + * sysdeps/x86_64/multiarch/strcpy-sse2-unaligned.S: Likewise. + * sysdeps/x86_64/multiarch/strcpy-ssse3.S: Likewise. + * sysdeps/x86_64/x32/Makefile (tests): Add tst-size_t-strncpy. + * sysdeps/x86_64/x32/tst-size_t-strncpy.c: New file. + +2019-01-21 H.J. Lu + + [BZ# 24097] + CVE-2019-6488 + * sysdeps/x86_64/multiarch/strcmp-avx2.S: Use RDX_LP for length. + * sysdeps/x86_64/multiarch/strcmp-sse42.S: Likewise. + * sysdeps/x86_64/strcmp.S: Likewise. + * sysdeps/x86_64/x32/Makefile (tests): Add tst-size_t-strncasecmp, + tst-size_t-strncmp and tst-size_t-wcsncmp. + * sysdeps/x86_64/x32/tst-size_t-strncasecmp.c: New file. + * sysdeps/x86_64/x32/tst-size_t-strncmp.c: Likewise. + * sysdeps/x86_64/x32/tst-size_t-wcsncmp.c: Likewise. + +2019-01-21 H.J. Lu + + [BZ# 24097] + CVE-2019-6488 + * sysdeps/x86_64/multiarch/memset-avx512-no-vzeroupper.S: Use + RDX_LP for length. Clear the upper 32 bits of RDX register. + * sysdeps/x86_64/multiarch/memset-vec-unaligned-erms.S: Likewise. + * sysdeps/x86_64/x32/Makefile (tests): Add tst-size_t-wmemset. + * sysdeps/x86_64/x32/tst-size_t-memset.c: New file. + * sysdeps/x86_64/x32/tst-size_t-wmemset.c: Likewise. + +2019-01-21 H.J. Lu + + [BZ# 24097] + CVE-2019-6488 + * sysdeps/x86_64/memrchr.S: Use RDX_LP for length. + * sysdeps/x86_64/multiarch/memrchr-avx2.S: Likewise. + * sysdeps/x86_64/x32/Makefile (tests): Add tst-size_t-memrchr. + * sysdeps/x86_64/x32/tst-size_t-memrchr.c: New file. + +2019-01-21 H.J. Lu + + [BZ# 24097] + CVE-2019-6488 + * sysdeps/x86_64/multiarch/memcpy-ssse3-back.S: Use RDX_LP for + length. Clear the upper 32 bits of RDX register. + * sysdeps/x86_64/multiarch/memcpy-ssse3.S: Likewise. + * sysdeps/x86_64/multiarch/memmove-avx512-no-vzeroupper.S: + Likewise. + * sysdeps/x86_64/multiarch/memmove-vec-unaligned-erms.S: + Likewise. + * sysdeps/x86_64/x32/Makefile (tests): Add tst-size_t-memcpy. + tst-size_t-wmemchr. + * sysdeps/x86_64/x32/tst-size_t-memcpy.c: New file. + +2019-01-21 H.J. Lu + + [BZ# 24097] + CVE-2019-6488 + * sysdeps/x86_64/multiarch/memcmp-avx2-movbe.S: Use RDX_LP for + length. Clear the upper 32 bits of RDX register. + * sysdeps/x86_64/multiarch/memcmp-sse4.S: Likewise. + * sysdeps/x86_64/multiarch/memcmp-ssse3.S: Likewise. + * sysdeps/x86_64/x32/Makefile (tests): Add tst-size_t-memcmp and + tst-size_t-wmemcmp. + * sysdeps/x86_64/x32/tst-size_t-memcmp.c: New file. + * sysdeps/x86_64/x32/tst-size_t-wmemcmp.c: Likewise. + +2019-01-21 H.J. Lu + + [BZ# 24097] + CVE-2019-6488 + * sysdeps/x86_64/memchr.S: Use RDX_LP for length. Clear the + upper 32 bits of RDX register. + * sysdeps/x86_64/multiarch/memchr-avx2.S: Likewise. + * sysdeps/x86_64/x32/Makefile (tests): Add tst-size_t-memchr and + tst-size_t-wmemchr. + * sysdeps/x86_64/x32/test-size_t.h: New file. + * sysdeps/x86_64/x32/tst-size_t-memchr.c: Likewise. + * sysdeps/x86_64/x32/tst-size_t-wmemchr.c: Likewise. + +2019-01-18 Florian Weimer + + [BZ #24112] + resolv: Do not send queries for non-host-names in nss_dns. + * resolv/nss_dns/dns-host.c (check_name): New function. + (_nss_dns_gethostbyname2_r): Use it. + (_nss_dns_gethostbyname_r): Likewise. + (_nss_dns_gethostbyname4_r): Likewise. + +2019-01-21 Florian Weimer + + * resolv/inet_addr.c: Reformat to GNU style. + (__inet_addr, __inet_aton): Update comment. + +2019-01-18 Florian Weimer + + malloc: Revert commit 6923f6db1e688dedcf3a6556da76e0bf24a41872 + ("malloc: Use current (C11-style) atomics for fastbin access"). + This commit introduces a substantial performance regression on + POWER and Aarch64. + * malloc/malloc.c (fastbin_push_entry, fastbin_pop_entry): Remove. + (REMOVE_FB): Define. + (_int_malloc): Use it and reindent. + (_int_free): Use CAS loop with + catomic_compare_and_exchange_val_rel. + (malloc_consolidate): Use atomic_exchange_acq. + + +2019-01-18 H.J. Lu + + * signal/Makefile (LDFLAGS-tst-minsigstksz-1): New. Set to + -Wl,-z,now. + (LDFLAGS-tst-minsigstksz-2): Likewise. + (LDFLAGS-tst-minsigstksz-3): Likewise. + (LDFLAGS-tst-minsigstksz-3a): Likewise. + (LDFLAGS-tst-minsigstksz-4): Likewise. + +2019-01-18 TAMUKI Shoichi + + * manual/time.texi (strftime): Fix the wording to "alternative" rather + than "alternate". + +2019-01-16 Paul A. Clarke + + * sysdeps/powerpc/powerpc64/multiarch/strncmp.c: Fix #ifdef. + +2019-01-16 Zack Weinberg + + * support/xsignal.h (xalloc_sigstack, xfree_sigstack) + (xget_sigstack_location): New test support functions. + * support/xsigstack.c: New file, implementing them. + * support/tst-xsigstack.c: New test for them. + * support/Makefile: Update. + + * signal/tst-minsigstksz-1.c + * signal/tst-minsigstksz-2.c + * signal/tst-minsigstksz-3.c + * signal/tst-minsigstksz-3a.c + * signal/tst-minsigstksz-4.c: New tests. + * signal/Makefile: Run them. + +2019-01-16 Siddhesh Poyarekar + + * po/libc.pot: Regenerate. + +2019-01-15 Tulio Magno Quites Machado Filho + + * math/libm-test-fma.inc (fma_test_data): Set + XFAIL_ROUNDING_IBM128_LIBGCC to more tests. + +2019-01-15 Rogerio A. Cardoso + + * sysdeps/powerpc/powerpc64/tst-ucontext-ppc64-vscr.c: + (do_test): Changed __vector __int128_t to __vector unsigned int. + +2019-01-14 Leonardo Sandoval + + * sysdeps/x86_64/multiarch/Makefile (sysdep_routines): Add + strcat-avx2, strncat-avx2, strcpy-avx2, strncpy-avx2, + stpcpy-avx2 and stpncpy-avx2. + * sysdeps/x86_64/multiarch/ifunc-impl-list.c: + (__libc_ifunc_impl_list): Add tests for __strcat_avx2, + __strncat_avx2, __strcpy_avx2, __strncpy_avx2, __stpcpy_avx2 + and __stpncpy_avx2. + * sysdeps/x86_64/multiarch/{ifunc-unaligned-ssse3.h => + ifunc-strcpy.h}: rename header for a more generic name. + * sysdeps/x86_64/multiarch/ifunc-strcpy.h: + (IFUNC_SELECTOR): Return OPTIMIZE (avx2) on AVX 2 machines if + AVX unaligned load is fast and vzeroupper is preferred. + * sysdeps/x86_64/multiarch/stpcpy-avx2.S: New file. + * sysdeps/x86_64/multiarch/stpncpy-avx2.S: Likewise. + * sysdeps/x86_64/multiarch/strcat-avx2.S: Likewise. + * sysdeps/x86_64/multiarch/strcpy-avx2.S: Likewise. + * sysdeps/x86_64/multiarch/strncat-avx2.S: Likewise. + * sysdeps/x86_64/multiarch/strncpy-avx2.S: Likewise. + +2019-01-12 Dmitry V. Levin + + * argp/argp-help.c: Fix typo in comment. + * misc/sys/cdefs.h: Likewise. + * posix/regexec.c (sift_states_iter_mb): Likewise. + * socket/sockatmark.c: Likewise. + * socket/sys/socket.h: Likewise. + * sysdeps/ia64/fpu/libm_sincos_large.S: Likewise. + * sysdeps/ia64/fpu/libm_sincosl.S: Likewise. + * sysdeps/ia64/fpu/s_cosl.S: Likewise. + * sysdeps/ieee754/dbl-64/k_rem_pio2.c: Likewise. + * sysdeps/unix/sockatmark.c: Likewise. + * time/strptime_l.c: Likewise. + +2019-01-11 TAMUKI Shoichi + + * time/strftime_l.c (__strftime_internal): Use "L_" macros, also add a + missing space after the cast of "_NL_CURRENT". + +2019-01-11 Rogerio A. Cardoso + + * sysdeps/unix/sysv/linux/powerpc/sys/ucontext.h (vscr_t): Added + ifdef to fix read of VSCR. + * sysdeps/powerpc/powerpc64/Makefile [$subdir == stdlib]: Add + tst-ucontext-ppc64-vscr.c to test list. + * sysdeps/powerpc/powerpc64/tst-ucontext-ppc64-vscr.c: New test file. + +2019-01-10 Andreas K. Hüttel + + * resolv/tst-resolv-ai_idn-common.c (response): Avoid switch + fall-through. + +2019-01-09 Jim Wilson + + * sysdeps/riscv/rv64/rvd/libm-test-ulps: Update. + +2019-01-09 Wilco Dijkstra + + * manual/tunables.texi (glibc.cpu.name): Add ares tunable. + * sysdeps/aarch64/multiarch/memcpy.c (__libc_memcpy): Use + __memcpy_falkor for ares. + * sysdeps/unix/sysv/linux/aarch64/cpu-features.h (IS_ARES): + Add new define. + * sysdeps/unix/sysv/linux/aarch64/cpu-features.c (cpu_list): + Add ares cpu. + +2019-01-07 H.J. Lu + + [BZ #24066] + * soft-fp/extenddftf2.c: Use "_FP_W_TYPE_SIZE < 64" to check if + 4_FP_W_TYPEs are used for IEEE quad precision. + * soft-fp/extendhftf2.c: Likewise. + * soft-fp/extendsftf2.c: Likewise. + * soft-fp/extendxftf2.c: Likewise. + * soft-fp/trunctfdf2.c: Likewise. + * soft-fp/trunctfhf2.c: Likewise. + * soft-fp/trunctfsf2.c: Likewise. + * soft-fp/trunctfxf2.c: Likewise. + * sysdeps/alpha/ots_cvttx.c: Likewise. + * sysdeps/alpha/ots_cvtxt.c: Likewise. + * sysdeps/ieee754/soft-fp/s_daddl.c: Likewise. + * sysdeps/ieee754/soft-fp/s_ddivl.c: Likewise. + * sysdeps/ieee754/soft-fp/s_dmull.c: Likewise. + * sysdeps/ieee754/soft-fp/s_dsubl.c: Likewise. + * sysdeps/ieee754/soft-fp/s_faddl.c: Likewise. + * sysdeps/ieee754/soft-fp/s_fdivl.c: Likewise. + * sysdeps/ieee754/soft-fp/s_fmull.c: Likewise. + * sysdeps/ieee754/soft-fp/s_fsubl.c: Likewise. + * sysdeps/sparc/sparc32/q_dtoq.c: Likewise. + * sysdeps/sparc/sparc32/q_qtod.c: Likewise. + * sysdeps/sparc/sparc32/q_qtos.c: Likewise. + * sysdeps/sparc/sparc32/q_stoq.c: Likewise. + * sysdeps/sparc/sparc64/qp_dtoq.c: Likewise. + * sysdeps/sparc/sparc64/qp_qtod.c: Likewise. + * sysdeps/sparc/sparc64/qp_qtos.c: Likewise. + * sysdeps/sparc/sparc64/qp_stoq.c: Likewise. + +2019-01-07 Aurelien Jarno + + [BZ #24024] + * Makeconfig: Build libm with -fno-math-errno but build the remaining + code with -fmath-errno. + * string/Makefile [$(build-shared)] (tests): Add test-strerror-errno. + [$(build-shared)] (LDLIBS-test-strerror-errno): New variable. + * string/test-strerror-errno.c: New file. + +2019-01-07 Aurelien Jarno + + [BZ #24046] + * localedata/locales/en_US (date_fmt): Add, set to + "%a %d %b %Y %r %Z". + +2019-01-07 Florian Weimer + + [BZ #24063] + * manual/arith.texi (Math Error Reporting): Use @code{errno} + instead of @var{errno}. + (Parsing of Integers): Likewise. + (Parsing of Floats): Likewise. + * manual/filesys.texi (Working with Directory Trees): Likewise. + (Temporary Files): Likewise. + * manual/job.texi (Terminal Access Functions): Likewise. + * manual/llio.texi (Synchronizing I/O): Likewise. + * manual/math.texi (SVID Random): Likewise. + * manual/message.texi (The catgets Functions): Likewise. + (Translation with gettext): Likewise. + (Locating gettext catalog): Likewise. + (Charset conversion in gettext): Likewise. + * manual/nss.texi (NSS Module Function Internals): Likewise. + * manual/search.texi (Hash Search Function): Likewise. + * manual/setjmp.texi (System V contexts): Likewise. + * manual/time.texi (Sleeping): Likewise. + * manual/users.texi (Lookup User): Likewise. + (Lookup Group): Likewise. + +2019-01-05 Adhemerval Zanella + + * posix/tst-spawn.c (do_test): Extend spargv to new required size and + fix typo. + +2019-01-04 Martin Jansa + + [BZ #19444] + * sysdeps/ieee754/dbl-64/e_jn.c (__ieee754_jn): Use + __builtin_unreachable for default case in switch. + (__ieee754_yn): Likewise. + * sysdeps/ieee754/ldbl-96/e_jnl.c (__ieee754_jnl): Likewise. + (__ieee754_ynl): Likewise. + * sysdeps/ieee754/ldbl-128/e_jnl.c (__ieee754_jnl): Likewise. + (__ieee754_ynl): Likewise. + * sysdeps/ieee754/ldbl-128ibm/e_jnl.c (__ieee754_jnl): Likewise. + (__ieee754_ynl): Likewise. + +2019-01-04 Szabolcs Nagy + + * manual/maint.texi: Use @{ and @}. + +2019-01-04 Florian Weimer + + * sysdeps/unix/sysv/linux/tst-ttyname.c (adjust_file_limit): New + function. + (do_in_chroot_1): Call it. + (run_chroot_tests): + Improve error reporting in case it is not possible to create a + collision for the PTY name required by the test. + +2019-01-03 Adhemerval Zanella + + * nptl/pthread_join_common.c (__pthread_timedjoin_ex): Use + lll_wait_tid with timeout. + * nptl/sem_wait.c (__old_sem_wait): Use lll_futex_wait_cancel. + * sysdeps/nptl/aio_misc.h (AIO_MISC_WAIT): Use + futex_reltimed_wait_cancelable for cancelabla mode. + * sysdeps/nptl/gai_misc.h (GAI_MISC_WAIT): Likewise. + * sysdeps/posix/open64.c (__libc_open64): Do not call cancelation + macros. + * sysdeps/posix/sigwait.c (__sigwait): Likewise. + * sysdeps/posix/waitid.c (__sigwait): Likewise. + * sysdeps/unix/sysdep.h (__SYSCALL_CANCEL_CALL, + SYSCALL_CANCEL_NCS): New macro. + * sysdeps/nptl/lowlevellock.h (lll_wait_tid): Add timeout argument. + (lll_timedwait_tid): Remove macro. + * sysdeps/unix/sysv/linux/i386/lowlevellock.h (lll_wait_tid): + Likewise. + (lll_timedwait_tid): Likewise. + * sysdeps/unix/sysv/linux/sparc/lowlevellock.h (lll_wait_tid): + Likewise. + (lll_timedwait_tid): Likewise. + * sysdeps/unix/sysv/linux/x86_64/lowlevellock.h (lll_wait_tid): + Likewise. + (lll_timedwait_tid): Likewise. + * sysdeps/unix/sysv/linux/clock_nanosleep.c (__clock_nanosleep): + Use INTERNAL_SYSCALL_CANCEL. + * sysdeps/unix/sysv/linux/futex-internal.h + (futex_reltimed_wait_cancelable): Use LIBC_CANCEL_{ASYNC,RESET} + instead of __pthread_{enable,disable}_asynccancel. + * sysdeps/unix/sysv/linux/lowlevellock-futex.h + (lll_futex_wait_cancel): New macro. + + * sysdeps/i386/nptl/tls.h (THREAD_ATOMIC_CMPXCHG_VAL, + THREAD_ATOMIC_AND, THREAD_ATOMIC_BIT_SET): Remove macros. + + * sysdeps/x86_64/nptl/tls.h (THREAD_ATOMIC_CMPXCHG_VAL, + THREAD_ATOMIC_AND, THREAD_ATOMIC_BIT_SET): Remove macros. + + * debug/tst-backtrace5.c (handle_signal): Avoid cancellable wrappers + in backtrace analysis. + * nptl/tst-cancel4.c (tf_write): Handle cancelled syscall with + side-effects. + (tf_send): Likewise. + + * io/creat.c (LIBC_CANCEL_HANDLED): Remove macro. + * io/ppoll.c (LIBC_CANCEL_HANDLED): Likewise. + * misc/pselect.c (LIBC_CANCEL_HANDLED): Likewise. + * nptl/pthreadP.h (LIBC_CANCEL_HANDLED): Likewise. + * sysdeps/generic/sysdep-cancel.h (LIBC_CANCEL_HANDLED): Likewise. + * sysdeps/mach/hurd/sysdep-cancel.h (LIBC_CANCEL_HANDLED): Likewise. + * sysdeps/posix/pause.c (LIBC_CANCEL_HANDLED): Likewise. + * sysdeps/posix/sigpause.c (LIBC_CANCEL_HANDLED): Likewise. + * sysdeps/unix/sysv/linux/creat.c (LIBC_CANCEL_HANDLED): Likewise. + * sysdeps/unix/sysv/linux/creat64.c (LIBC_CANCEL_HANDLED): Likewise. + * sysdeps/unix/sysv/linux/sigwait.c (LIBC_CANCEL_HANDLED): Likewise. + * sysdeps/unix/sysv/linux/sigwaitinfo.c (LIBC_CANCEL_HANDLED): + Likewise. + * nptl/Makefile [$(run-built-tests) = yes] (tests-special): Remove + tst-cancel-wrappers.sh. + (generated): Remove tst-cancel-wrappers.out. + (tst-cancel-wrappers.out): Remove rule. + * nptl/tst-cancel-wrappers.sh: Remove file. + +2019-01-03 Szabolcs Nagy + + * sysdeps/unix/sysv/linux/aarch64/bits/hwcap.h: Add comment. + * sysdeps/unix/sysv/linux/aarch64/dl-procinfo.c (_DL_HWCAP_COUNT): + Update. + +2019-01-03 Adhemerval Zanella + + [BZ #23640] + * posix/tst-spawn.c (do_prepare, handle_restart, do_test): Add + posix_spawn_file_actions_adddup2 test to check O_CLOCEXEC reset. + * sysdeps/unix/sysv/linux/spawni.c (__spawni_child): Add + close-on-exec reset for adddup2 file action. + * sysdeps/posix/spawni.c (__spawni_child): Likewise. + +2019-01-03 Zack Weinberg + + * include/features.h (__GLIBC_USE_DEPRECATED_SCANF): New __GLIBC_USE + parameter. Only use deprecated scanf when __USE_GNU is defined + and __STDC_VERSION__ is less than 199901L or __cplusplus is less + than 201103L, whichever is relevant for the language being compiled. + + * libio/stdio.h, libio/bits/stdio-ldbl.h: Decide whether to redirect + scanf, fscanf, sscanf, vscanf, vfscanf, and vsscanf to their + __isoc99_ variants based only on __GLIBC_USE (DEPRECATED_SCANF). + * wcsmbs/wchar.h: wcsmbs/bits/wchar-ldbl.h: Likewise for + wscanf, fwscanf, swscanf, vwscanf, vfwscanf, and vswscanf. + + * libio/iovsscanf.c + * libio/fwscanf.c + * libio/iovswscanf.c + * libio/swscanf.c + * libio/vscanf.c + * libio/vwscanf.c + * libio/wscanf.c + * stdio-common/fscanf.c + * stdio-common/scanf.c + * stdio-common/vfscanf.c + * stdio-common/vfwscanf.c + * sysdeps/ieee754/ldbl-opt/nldbl-compat.c + * sysdeps/ieee754/ldbl-opt/nldbl-fscanf.c + * sysdeps/ieee754/ldbl-opt/nldbl-fwscanf.c + * sysdeps/ieee754/ldbl-opt/nldbl-iovfscanf.c + * sysdeps/ieee754/ldbl-opt/nldbl-scanf.c + * sysdeps/ieee754/ldbl-opt/nldbl-sscanf.c + * sysdeps/ieee754/ldbl-opt/nldbl-swscanf.c + * sysdeps/ieee754/ldbl-opt/nldbl-vfscanf.c + * sysdeps/ieee754/ldbl-opt/nldbl-vfwscanf.c + * sysdeps/ieee754/ldbl-opt/nldbl-vscanf.c + * sysdeps/ieee754/ldbl-opt/nldbl-vsscanf.c + * sysdeps/ieee754/ldbl-opt/nldbl-vswscanf.c + * sysdeps/ieee754/ldbl-opt/nldbl-vwscanf.c + * sysdeps/ieee754/ldbl-opt/nldbl-wscanf.c: + Override __GLIBC_USE_DEPRECATED_SCANF to 1. + + * stdio-common/sscanf.c: Likewise. Remove ldbl_hidden_def for __sscanf. + * stdio-common/isoc99_sscanf.c: Add libc_hidden_def for __isoc99_sscanf. + * include/stdio.h: Provide libc_hidden_proto for __isoc99_sscanf, + not sscanf. + [!__GLIBC_USE (DEPRECATED_SCANF)]: Define sscanf as __isoc99_scanf + with a preprocessor macro. + + * stdio-common/bug21.c, stdio-common/scanf14.c: + Use %ms instead of %as, %mS instead of %aS, %m[] instead of %a[]; + remove DIAG_IGNORE_NEEDS_COMMENT for -Wformat. + * stdio-common/scanf16.c: Likewise. Add __attribute__ ((format (scanf))) + to xscanf, xfscanf, xsscanf. + + * stdio-common/scanf14a.c: New copy of scanf14.c which still uses + %as, %aS, %a[]. Remove DIAG_IGNORE_NEEDS_COMMENT for -Wformat. + * stdio-common/scanf16a.c: New copy of scanf16.c which still uses + %as, %aS, %a[]. Add __attribute__ ((format (scanf))) to xscanf, + xfscanf, xsscanf. + * stdio-common/scanf15.c, stdio-common/scanf17.c: No need to + override feature selection macros or provide definitions of u_char etc. + * stdio-common/Makefile (tests): Add scanf14a and scanf16a. + (CFLAGS-scanf15.c, CFLAGS-scanf17.c): Remove. + (CFLAGS-scanf14a.c, CFLAGS-scanf16a.c): New. Compile these files + with -std=gnu89. + +2019-01-03 Adhemerval Zanella + + * sysdeps/unix/sysv/linux/Makefile (sysdep_headers): Add + bits/termios-misc.h. + * sysdeps/unix/sysv/linux/alpha/bits/termios.h: Remove file. + * sysdeps/unix/sysv/linux/mips/bits/termios.h: Likewise. + * sysdeps/unix/sysv/linux/sparc/bits/termios.h: Likewise. + * sysdeps/unix/sysv/linux/powerpc/bits/termios.h: Likewise. + * sysdeps/unix/sysv/linux/bits/termios-misc.h: New file. + * sysdeps/unix/sysv/linux/bits/termios.h: Include termios-misc.h. + + * sysdeps/unix/sysv/linux/powerpc/bits/termios-misc.h: New file. + * sysdeps/unix/sysv/linux/powerpc/bits/termios.h [__USE_MISC] + (struct sgtty, struct tchars, struct ltchars, TIOCPKT_DATA, + TIOCPKT_FLUSHREAD, TIOCPKT_FLUSHWRITE, TIOCPKT_STOP, TIOCPKT_START, + TIOCPKT_NOSTOP, TIOCPKT_DOSTOP, _VINTR, _VQUIT, _VERASE, _VKILL, + _VEOF, _VMIN, _VEOL, _VTIME, _VEOL2, _VSWTC): Move to + termios-misc.h. + * sysdeps/unix/sysv/linux/powerpc/Makefile [$subdir == misc] + (sysdep_headers): Add termios-misc.h. + + * sysdeps/unix/sysv/linux/bits/termios.h (_IOT_termios): Remove. + * sysdeps/unix/sysv/linux/alpha/bits/termios.h: Likewise. + * sysdeps/unix/sysv/linux/mips/bits/termios.h: Likewise. + + * sysdeps/unix/sysv/linux/Makefile (sysdep_headers): Add + termios-tcflow.h. + * sysdeps/unix/sysv/linux/bits/termios-tcflow.h: New file. + * sysdeps/unix/sysv/linux/mips/bits/termios-tcflow.h: Likewise. + * sysdeps/unix/sysv/linux/bits/termios.h (TCSANOW, TCSADRAIN, + TCSAFLUSH): Move to termios-tcflow.h. + * sysdeps/unix/sysv/linux/alpha/bits/termios.h: Likewise. + * sysdeps/unix/sysv/linux/mips/bits/termios.h: Likewise. + * sysdeps/unix/sysv/linux/powerpc/bits/termios.h: Likewise. + * sysdeps/unix/sysv/linux/sparc/bits/termios.h: Likewise. + + * sysdeps/unix/sysv/linux/Makefile (sysdep_headers): Add + termios-c_lflag.h. + * sysdeps/unix/sysv/linux/bits/termios-c_lflag.h: New file. + * sysdeps/unix/sysv/linux/alpha/bits/termios-c_lflag.h: Likewise. + * sysdeps/unix/sysv/linux/mips/bits/termios-c_lflag.h: Likewise. + * sysdeps/unix/sysv/linux/powerpc/bits/termios-c_lflag.h: Likewise. + * sysdeps/unix/sysv/linux/bits/termios.h (ISIG, ISCANON, ECHO, ECHOE, + ECHOK, ECHONL, NOFLSH, TOSTOP, IEXTEN): Move to termios-c_lflag.h. + [__USE_MISC || (__USE_XOPEN && !__USE_XOPEN2K)] (XCASE): Likewise. + [__USE_MISC] (ECHOCTL, ECHOPRT, ECHOKE, FLUSHO, PENDIN, EXTPROC): + Likewise. + * sysdeps/unix/sysv/linux/alpha/bits/termios.h: Likewise. + * sysdeps/unix/sysv/linux/mips/bits/termios.h: Likewise. + * sysdeps/unix/sysv/linux/powerpc/bits/termios.h: Likewise. + * sysdeps/unix/sysv/linux/sparc/bits/termios.h: Likewise. + + * sysdeps/unix/sysv/linux/Makefile (sysdep_headers): Add + termios-c_cflag.h. + * sysdeps/unix/sysv/linux/bits/termios-c_cflag.h: New file. + * sysdeps/unix/sysv/linux/alpha/bits/termios-c_cflag.h: Likewise. + * sysdeps/unix/sysv/linux/powerpc/bits/termios-c_cflag.h: Likewise. + * sysdeps/unix/sysv/linux/bits/termios.h (CSIZE, CS5, CS6, CS7, CS8, + CSTOPB, CREAD, PARENB, PARODD, HUPCL, CLOCAL): Move to + termios-c_cflag.h. + * sysdeps/unix/sysv/linux/alpha/bits/termios.h: Likewise. + * sysdeps/unix/sysv/linux/mips/bits/termios.h: Likewise. + * sysdeps/unix/sysv/linux/powerpc/bits/termios.h: Likewise. + * sysdeps/unix/sysv/linux/sparc/bits/termios.h: Likewise. + + [BZ #23783] + * sysdeps/unix/sysv/linux/Makefile (sysdep_headers): Add + termios-baud.h. + * sysdeps/unix/sysv/linux/bits/termios-baud.h: New file. + * sysdeps/unix/sysv/linux/alpha/bits/termios-baud.h: Likewise. + * sysdeps/unix/sysv/linux/powerpc/bits/termios-baud.h: Likewise. + * sysdeps/unix/sysv/linux/sparc/bits/termios-baud.h: Likewise. + * sysdeps/unix/sysv/linux/alpha/bits/termios.h (B57600, B115200, + B230400, B460800, B500000, B576000, B921600, B1000000, B1152000, + B1500000, B2000000, B2500000, B3000000, B3500000, B4000000, + __MAX_BAUD): Move to termios-baud.h. + [__USE_MISC] (CBAUD, CBAUDEX): Likewise. + * sysdeps/unix/sysv/linux/bits/termios.h: Likewise. + * sysdeps/unix/sysv/linux/mips/bits/termios.h: Likewise. + * sysdeps/unix/sysv/linux/powerpc/bits/termios.h: Likewise. + * sysdeps/unix/sysv/linux/sparc/bits/termios.h: Likewise. + + * sysdeps/unix/sysv/linux/Makefile (sysdep_routines): Add + termios-c_oflag.h. + * sysdeps/unix/sysv/linux/bits/termios-c_oflag.h: New file. + * sysdeps/unix/sysv/linux/alpha/bits/termios-c_oflag.h: Likewise. + * sysdeps/unix/sysv/linux/powerpc/bits/termios-c_oflag.h: Likewise. + * sysdeps/unix/sysv/linux/sparc/bits/termios-c_oflag.h: Likewise. + * sysdeps/unix/sysv/linux/bits/termios.h (OPOST, OLCUC, ONLCR, OCRNL, + ONOCR, ONLRET, OFILL, OFDEL, VTDLY, VT0, VT1): Move to + termios-c_oflag.h. + [__USE_MISC || __USE_XOPEN] (NLDLY, NL0, NL1, CRDLY, CR0, CR1, CR2, + CR3, TABDLY, TAB0, TAB1, TAB2, TAB3, BSDLY, BS0, BS1, FFDLY, FF0, + FFR1): Likewise. + [USE_MISC] (XTABS): Likewise. + * sysdeps/unix/sysv/linux/alpha/bits/termios.h: Likewise. + * sysdeps/unix/sysv/linux/mips/bits/termios.h: Likewise. + * sysdeps/unix/sysv/linux/powerpc/bits/termios.h: Likewise. + * sysdeps/unix/sysv/linux/sparc/bits/termios.h Likewise. + + * sysdeps/unix/sysv/linux/Makefile (sysdeps_headers): Add + termios-c_iflag.h. + * sysdeps/unix/sysv/linux/bits/termios-c_iflag.h: New file. + * sysdeps/unix/sysv/linux/alpha/bits/termios-c_iflag.h: Likewise. + * sysdeps/unix/sysv/linux/powerpc/bits/termios-c_iflag.h: Likewise. + * sysdeps/unix/sysv/linux/bits/termios.h (IGNBRK, BRKINT, IGNPAR, PARMRK, + INPCK, ISTRIP, INLCR, IGNCR, ICRNL, IXON, IXOFF, IXANY, IUCLC, IMAXBEL, + IUTF8): Move to termios-c_iflag.h. + * sysdeps/unix/sysv/linux/alpha/bits/termios.h: Likewise. + * sysdeps/unix/sysv/linux/mips/bits/termios.h: Likewise. + * sysdeps/unix/sysv/linux/powerpc/bits/termios.h: Likewise. + * sysdeps/unix/sysv/linux/sparc/bits/termios.h: Likewise. + + * sysdeps/unix/sysv/linux/Makefile (sysdeps_headers): Add + termios-cc.h. + * sysdeps/unix/sysv/linux/bits/termios-c_cc.h: Likewise. + * sysdeps/unix/sysv/linux/alpha/bits/termios-c_cc.h: New file. + * sysdeps/unix/sysv/linux/mips/bits/termios-c_cc.h: Likewise. + * sysdeps/unix/sysv/linux/powerpc/bits/termios-c_cc.h: Likewise. + * sysdeps/unix/sysv/linux/sparc/bits/termios-c_cc.h: Likewise. + * sysdeps/unix/sysv/linux/bits/termios.h (VINTR, VQUIT, VERASE, + VKILL, VEOF, VTIME, VMIN, VSWTC, VSTART, VSTOP, VSUSP, VEOL, + VREPRINT, VDISCARD, VWERASE, VLNEXT, VEOLF2): Move to termios-cc.h. + * sysdeps/unix/sysv/linux/alpha/bits/termios.h: Likewise. + * sysdeps/unix/sysv/linux/mips/bits/termios.h: Likewise. + * sysdeps/unix/sysv/linux/powerpc/bits/termios.h: Likewise. + * sysdeps/unix/sysv/linux/sparc/bits/termios.h: Likewise. + + * sysdeps/unix/sysv/linux/alpha/bits/termios-struct.h: New file. + * sysdeps/unix/sysv/linux/bits/termios-struct.h: Likewise. + * sysdeps/unix/sysv/linux/mips/bits/termios-struct.h: Likewise. + * sysdeps/unix/sysv/linux/sparc/bits/termios-struct.h: Likewise. + * sysdeps/unix/sysv/linux/Makefile (sysdep_headers): Add + termios-struct.h. + * sysdeps/unix/sysv/linux/bits/termios.h (struct termios): Move to + termios-struct.h. + * sysdeps/unix/sysv/linux/alpha/bits/termios.h (struct termios): + Likewise. + * sysdeps/unix/sysv/linux/mips/bits/termios.h (struct termios): + Likewise. + * sysdeps/unix/sysv/linux/powerpc/bits/termios.h (struct termios): + Likewise. + * sysdeps/unix/sysv/linux/sparc/bits/termios.h (struct termios): + Likewise. + * sysdeps/unix/sysv/linux/kernel_termios.h (_HAVE_C_ISPEED, + _HAVE_C_OSPEED): Define. + * sysdeps/unix/sysv/linux/mips/kernel_termios.h (_HAVE_C_ISPEED, + _HAVE_C_OSPEED): Likewise. + * sysdeps/unix/sysv/linux/sparc/kernel_termios.h (_HAVE_C_ISPEED, + _HAVE_C_OSPEED): Likewise. + * sysdeps/unix/sysv/linux/speed.c [_HAVE_STRUCT_TERMIOS_C_OSPEED] + (cfsetospeed): Check for define value instead of existence. + [_HAVE_STRUCT_TERMIOS_C_ISPEED] (cfsetispeed): Likewise. + * sysdeps/unix/sysv/linux/tcgetattr.c [_HAVE_STRUCT_TERMIOS_C_ISPEED + && _HAVE_C_ISPEED] (__tcgetattr): Likewise. + * sysdeps/unix/sysv/linux/tcsetattr.c [_HAVE_STRUCT_TERMIOS_C_ISPEED + && _HAVE_C_ISPEED] (__tcsetattr): Likewise. + + [BZ #17783] + * sysdeps/unix/sysv/linux/bits/termios.h [__USE_MISC] (TIOCSER_TEMT): + Define. + * sysdeps/unix/sysv/linux/powerpc/bits/termios.h [__USE_MISC] + (TIOCSER_TEMT): Likewise. + * sysdeps/unix/sysv/linux/sparc/bits/termios.h [__USE_MISC] + (TEOCSER_TEMT): Likewise. + +2019-01-02 PanderMusubi + + [BZ #24011] + * localedata/locales/bs_BA (LC_TELEPHONE): Fix a typo in comment. + +2019-01-02 Joseph Myers + + * sysdeps/powerpc/nofpu/libm-test-ulps: Update. + +2019-01-02 Samuel Thibault + + * sysdeps/htl/pt-barrierattr-setpshared.c + (pthread_barrierattr_setpshared): Add stub warning. + * sysdeps/htl/pt-condattr-setpshared.c + (pthread_condattr_setpshared): Likewise. + * sysdeps/htl/pt-mutexattr-setpshared.c + (pthread_mutexattr_setpshared): Likewise. + * sysdeps/htl/pt-rwlockattr-setpshared.c + (pthread_rwlockattr_setpshared): Likewise. + * sysdeps/mach/hurd/htl/pt-mutexattr-setpshared.c + (pthread_mutexattr_setpshared): Likewise. + +2019-01-02 Joseph Myers + + * sysdeps/unix/sysv/linux/tst-mman-consts.py (main): Expect + constants to match with Linux 4.20. + + * sysdeps/mips/mips32/libm-test-ulps: Update. + * sysdeps/mips/mips64/libm-test-ulps: Likewise. + +2019-01-02 Aurelien Jarno + + [BZ #24034] + * sysdeps/unix/sysv/linux/arm/atomic-machine.h + (__arm_assisted_compare_and_exchange_val_32_acq): Use uint32_t rather + than __typeof (...) for the a_ptr variable. + +2019-01-02 Gabriel F. T. Gomes + + * debug/sprintf_chk.c (___sprintf_chk): Use PRINTF_CHK. + * debug/vsprintf_chk.c (___vsprintf_chk): Likewise. + * libio/Makefile (tests): Add tst-sprintf-ub and + tst-sprintf-chk-ub. + (CFLAGS-tst-sprintf-ub.c): New variable. + (CFLAGS-tst-sprintf-chk-ub.c): Likewise. + * libio/iovsprintf.c (__vsprintf_internal): Only erase the + destination buffer and check for overflows in fortified mode. + * libio/libioP.h (PRINTF_CHK): New macro. + * libio/tst-sprintf-chk-ub.c: New file. + * libio/tst-sprintf-ub.c: Likewise. + +2019-01-02 Florian Weimer + + [BZ #24018] + * intl/dcigettext.c (DCIGETTEXT): Do not return NULL on asprintf + failure. + +2019-01-02 Florian Weimer + + * nptl/tst-audit-threads.c: Switch to . + +2019-01-01 Joseph Myers + + * sysdeps/unix/sysv/linux/bits/in.h (IPV6_MULTICAST_ALL): New + macro. + + * sysdeps/unix/sysv/linux/netpacket/packet.h + (PACKET_IGNORE_OUTGOING): New macro. + + * sysdeps/unix/sysv/linux/aarch64/bits/hwcap.h (HWCAP_SSBS): New + macro. + + * sysdeps/unix/sysv/linux/syscall-names.list: Update kernel + version to 4.20. + (riscv_flush_icache): New syscall. + + * manual/texinfo.tex: Update to version 2018-12-28.17 with + trailing whitespace removed. + * scripts/config.guess: Update to version 2019-01-01. + * scripts/config.sub: Update to version 2019-01-01. + * scripts/move-if-change: Update from gnulib. + + * NEWS: Update copyright dates. + * catgets/gencat.c (print_version): Likewise. + * csu/version.c (banner): Likewise. + * debug/catchsegv.sh: Likewise. + * debug/pcprofiledump.c (print_version): Likewise. + * debug/xtrace.sh (do_version): Likewise. + * elf/ldconfig.c (print_version): Likewise. + * elf/ldd.bash.in: Likewise. + * elf/pldd.c (print_version): Likewise. + * elf/sotruss.sh: Likewise. + * elf/sprof.c (print_version): Likewise. + * iconv/iconv_prog.c (print_version): Likewise. + * iconv/iconvconfig.c (print_version): Likewise. + * locale/programs/locale.c (print_version): Likewise. + * locale/programs/localedef.c (print_version): Likewise. + * login/programs/pt_chown.c (print_version): Likewise. + * malloc/memusage.sh (do_version): Likewise. + * malloc/memusagestat.c (print_version): Likewise. + * malloc/mtrace.pl: Likewise. + * manual/libc.texinfo: Likewise. + * nptl/version.c (banner): Likewise. + * nscd/nscd.c (print_version): Likewise. + * nss/getent.c (print_version): Likewise. + * nss/makedb.c (print_version): Likewise. + * posix/getconf.c (main): Likewise. + * scripts/test-installation.pl: Likewise. + * sysdeps/unix/sysv/linux/lddlibc4.c (main): Likewise. + + * All files with FSF copyright notices: Update copyright dates + using scripts/update-copyrights. + * locale/programs/charmap-kw.h: Regenerated. + * locale/programs/locfile-kw.h: Likewise. + +2018-12-31 Joseph Myers + + * timezone/zdump.c: Update from tzcode 2018i. + * timezone/zic.c: Likewise. + +2018-12-31 Paul Eggert + + regex: improve Gnulib port to AIX + From the glibc point of view, this removes duplicate macro + definitions and is obviously safe. + From the Gnulib point of view, this pacifies xlc 12.01 on AIX 7.1. + * posix/regex_internal.h: + (__attribute__, __attribute_warn_unused_result__): + Remove; already defined elsewhere. + +2018-12-31 Florian Weimer + + [BZ #24027] + * malloc/malloc.c (_int_realloc): Always call memcpy for the + copying operation. (ncopies had the wrong type, resulting in an + integer wraparound and too few elements being copied.) + +2018-12-31 H.J. Lu + + [BZ #24022] + * sysdeps/unix/sysv/linux/riscv/flush-icache.c: Check if + exists with __has_include__ before including it. + +2018-12-31 Joseph Myers + + * scripts/build-many-glibcs.py (Context.checkout): Default Linux + version to 4.20. + +2018-12-28 Justus Winter <4winter@informatik.uni-hamburg.de> + + * hurd/lookup-retry: Include . + (__hurd_file_name_lookup_retry): Keep a ref on last result in `lastdir'. + Release it on return. Handle "pid" magical lookup retry. + +2018-12-28 Rafał Lużyński + + [BZ #10496] + * localedata/locales/aa_DJ (t_fmt): Set to "%l:%M:%S %p". + (t_fmt_ampm): Likewise. + * localedata/locales/aa_ER (t_fmt): Likewise. + (t_fmt_ampm): Likewise. + * localedata/locales/aa_ER@saaho (t_fmt): Likewise. + (t_fmt_ampm): Likewise. + * localedata/locales/aa_ET (t_fmt): Likewise. + (t_fmt_ampm): Likewise. + * localedata/locales/am_ET (t_fmt): Likewise. + (t_fmt_ampm): Likewise. + * localedata/locales/byn_ER (t_fmt): Likewise. + (t_fmt_ampm): Likewise. + * localedata/locales/om_ET (t_fmt): Likewise. + (t_fmt_ampm): Likewise. + * localedata/locales/sid_ET (t_fmt): Likewise. + (t_fmt_ampm): Likewise. + * localedata/locales/so_DJ (t_fmt): Likewise. + (t_fmt_ampm): Likewise. + * localedata/locales/so_ET (t_fmt): Likewise. + (t_fmt_ampm): Likewise. + * localedata/locales/so_SO (t_fmt): Likewise. + (t_fmt_ampm): Likewise. + * localedata/locales/ti_ER (t_fmt): Likewise. + (t_fmt_ampm): Likewise. + * localedata/locales/ti_ET (t_fmt): Likewise. + (t_fmt_ampm): Likewise. + * localedata/locales/tig_ER (t_fmt): Likewise. + (t_fmt_ampm): Likewise. + * localedata/locales/wal_ET (t_fmt): Likewise. + (t_fmt_ampm): Likewise. + + * localedata/locales/anp_IN (t_fmt): Set to "%I:%M:%S %p %Z". + * localedata/locales/ar_IN (t_fmt): Likewise. + * localedata/locales/bhb_IN (t_fmt): Likewise. + * localedata/locales/bho_IN (t_fmt): Likewise. + * localedata/locales/bi_VU (t_fmt): Likewise. + * localedata/locales/bn_BD (t_fmt): Likewise. + * localedata/locales/bn_IN (t_fmt): Likewise. + * localedata/locales/brx_IN (t_fmt): Likewise. + * localedata/locales/doi_IN (t_fmt): Likewise. + * localedata/locales/en_HK (t_fmt): Likewise. + (t_fmt_ampm): Likewise. + * localedata/locales/en_IN (t_fmt): Likewise. + * localedata/locales/en_PH (t_fmt): Likewise. + * localedata/locales/gu_IN (t_fmt): Likewise. + * localedata/locales/hi_IN (t_fmt): Likewise. + * localedata/locales/hif_FJ (t_fmt): Likewise. + * localedata/locales/hne_IN (t_fmt): Likewise. + * localedata/locales/kn_IN (t_fmt): Likewise. + * localedata/locales/kok_IN (t_fmt): Likewise. + * localedata/locales/ks_IN (t_fmt): Likewise. + * localedata/locales/ks_IN@devanagari (t_fmt): Likewise. + * localedata/locales/mag_IN (t_fmt): Likewise. + * localedata/locales/mai_IN (t_fmt): Likewise. + * localedata/locales/mjw_IN (t_fmt): Likewise. + * localedata/locales/ml_IN (t_fmt): Likewise. + * localedata/locales/mni_IN (t_fmt): Likewise. + * localedata/locales/mr_IN (t_fmt): Likewise. + * localedata/locales/ms_MY (t_fmt): Likewise. + * localedata/locales/pa_IN (t_fmt): Likewise. + * localedata/locales/raj_IN (t_fmt): Likewise. + * localedata/locales/sa_IN (t_fmt): Likewise. + * localedata/locales/sat_IN (t_fmt): Likewise. + * localedata/locales/sd_IN (t_fmt): Likewise. + * localedata/locales/sd_IN@devanagari (t_fmt): Likewise. + * localedata/locales/tcy_IN (t_fmt): Likewise. + * localedata/locales/the_NP (t_fmt): Likewise. + * localedata/locales/to_TO (t_fmt): Likewise. + * localedata/locales/ur_IN (t_fmt): Likewise. + + * localedata/locales/hif_FJ (d_t_fmt): Set to + "%A %d %b %Y %I:%M:%S %p". + (date_fmt): Add, set to "%A %d %b %Y %I:%M:%S %p %Z". + + * localedata/locales/ar_AE (t_fmt): Set to "%Z %I:%M:%S %p". + * localedata/locales/ar_BH (t_fmt): Likewise. + * localedata/locales/ar_DZ (t_fmt): Likewise. + * localedata/locales/ar_EG (t_fmt): Likewise. + * localedata/locales/ar_IQ (t_fmt): Likewise. + * localedata/locales/ar_JO (t_fmt): Likewise. + * localedata/locales/ar_KW (t_fmt): Likewise. + * localedata/locales/ar_LB (t_fmt): Likewise. + * localedata/locales/ar_LY (t_fmt): Likewise. + * localedata/locales/ar_OM (t_fmt): Likewise. + * localedata/locales/ar_QA (t_fmt): Likewise. + * localedata/locales/ar_SD (t_fmt): Likewise. + * localedata/locales/ar_SS (t_fmt): Likewise. + * localedata/locales/ar_SY (t_fmt): Likewise. + * localedata/locales/ar_TN (t_fmt): Likewise. + * localedata/locales/ar_YE (t_fmt): Likewise. + + * localedata/locales/gez_ER (t_fmt): Set to "%l:%M:%S%p". + (t_fmt_ampm): Likewise. + * localedata/locales/gez_ET (t_fmt): Likewise. + (t_fmt_ampm): Likewise. + + * localedata/locales/ta_IN (t_fmt): Set to "%p %I:%M:%S %Z". + (t_fmt_ampm): Likewise. + (d_t_fmt): Set to "%A %d %B %Y %p %I:%M:%S %Z". + + * localedata/locales/zh_HK (t_fmt): + Set to "%p %I%M%S %Z". + + * localedata/locales/ar_MA (t_fmt_ampm): Set to "" (empty string) + because this locale does not use the 12-hour clock. + (t_fmt): Set to "%Z %H:%M:%S". + (d_t_fmt): Set to "%d %b, %Y %Z %H:%M:%S". + + * localedata/locales/mt_MT (t_fmt_ampm): Set to "" (empty string) + because this locale does not use the 12-hour clock. + (t_fmt): Set to "%H:%M:%S %Z". + (d_t_fmt): Set to "%A, %d ta %b, %Y %H:%M:%S %Z". + + * localedata/locales/so_KE (t_fmt_ampm): Set to "" (empty string) + because this locale does not use the 12-hour clock. + (t_fmt): Set to "%T". + (d_t_fmt): Set to "%A, %B %e, %Y %X %Z". + (date_fmt): Set to "%A, %B %e, %X %Z %Y". + + * localedata/locales/ta_LK (t_fmt_ampm): Set to "" (empty string) + because this locale does not use the 12-hour clock. + (t_fmt): Set to "%H:%M:%S %Z". + (d_t_fmt): Set to "%A %d %B %Y %H:%M:%S %Z". + + * localedata/locales/bg_BG (t_fmt_ampm): Set to "" (empty string) + because this locale does not use the 12-hour clock. + * localedata/locales/cs_CZ (t_fmt_ampm): Likewise. + * localedata/locales/sk_SK (t_fmt_ampm): Likewise. + +2018-12-28 Rafał Lużyński + + [BZ #10496] + [BZ #23724] + * localedata/locales/sq_AL (t_fmt): Set to "%I:%M:%S.%p %Z". + (t_fmt_ampm): Likewise. + (d_t_fmt): Set to "%a %-d %b %Y %I:%M:%S.%p". + (date_fmt): Add, set to "%a %-d %b %Y %I:%M:%S.%p %Z". + (d_fmt): Set to "%-d.%-m.%y". + +2018-12-28 Adhemerval Zanella + + * malloc/alloc_buffer_alloc_array.c (__libc_alloc_buffer_alloc_array): + Use __builtin_mul_overflow in place of check_mul_overflow_size_t. + * malloc/dynarray_emplace_enlarge.c (__libc_dynarray_emplace_enlarge): + Likewise. + * malloc/dynarray_resize.c (__libc_dynarray_resize): Likewise. + * malloc/reallocarray.c (__libc_reallocarray): Likewise. + * malloc/malloc-internal.h (check_mul_overflow_size_t): Remove + function. + * support/blob_repeat.c (check_mul_overflow_size_t, + (minimum_stride_size, support_blob_repeat_allocate): Likewise. + +2018-12-28 Aurelien Jarno + + * sysdeps/alpha/fpu/libm-test-ulps: Regenerated. + +2018-12-27 Paul Eggert + + regex: simplify Gnulib port + This simplifies the code, by removing stuff intended for porting + to Gnulib but no longer needed there. + * posix/regcomp.c [!_LIBC]: No need to put #ifdef _LIBC around + uses of libc_hidden_def, weak_alias. + * posix/regcomp.c, posix/regexec.c: Use __restrict rather than + _Restrict_ except for public-facing headers. + * posix/regex_internal.h (attribute_hidden) [!_LIBC]: + Remove; already defined elsewhere. + * posix/regex.c, posix/regex_internal.h: + Use __GNUC_PREREQ instead of rolling our own. + * posix/regex_internal.h (__GNUC_PREREQ): Remove duplicate defn. + +2018-12-27 Wilco Dijkstra + + * benchtests/bench-strlen.c (generic_strlen): New function. + (memchr_strlen): New function. + +2018-12-26 H.J. Lu + + * sysdeps/x86_64/fpu/s_sincosf.S: Removed. + * sysdeps/x86_64/fpu/multiarch/s_sincosf-sse2.S: Likewise. + * sysdeps/x86_64/fpu/multiarch/s_sincosf-sse2.c: New file. + +2018-12-26 H.J. Lu + + * sysdeps/x86_64/fpu/libm-test-ulps: Regenerated. + +2018-12-26 H.J. Lu + + * sysdeps/ieee754/flt-32/s_sincosf.h: Include . + (sincos_t, sincosf_poly, sinf_poly): Moved to ... + * sysdeps/ieee754/flt-32/sincosf_poly.h: Here. New file. + * sysdeps/x86/fpu/s_sincosf_data.c: New file. + * sysdeps/x86/fpu/sincosf_poly.h: Likewise. + * sysdeps/x86_64/fpu/multiarch/s_sincosf-fma.c: Just include + . + +2018-12-21 Joseph Myers + + [BZ #24023] + * sysdeps/unix/sysv/linux/nios2/localplt.data: Allow __floatundidf + PLT reference in libc.so. + * sysdeps/unix/sysv/linux/sparc/sparc32/localplt.data: Allow + _Q_lltoq and _Q_qtod PLT references in libc.so. + +2018-12-21 Wilco Dijkstra + + * benchtests/bench-memchr.c: Cleanup defines. + * benchtests/bench-memcmp.c: Likewise. + * benchtests/bench-memset.c: Likewise. + * benchtests/bench-memset-large.c: Likewise. + * benchtests/bench-memset-walk.c: Likewise. + * benchtests/bench-stpcpy.c: Likewise. + * benchtests/bench-stpncpy.c: Likewise. + * benchtests/bench-strcat.c: Likewise. + * benchtests/bench-strchr.c: Likewise. + * benchtests/bench-strcmp.c: Likewise. + * benchtests/bench-strcpy.c: Likewise. + * benchtests/bench-strcspn.c: Likewise. + * benchtests/bench-string.h: Likewise. + * benchtests/bench-strlen.c: Likewise. + * benchtests/bench-strncat.c: Likewise. + * benchtests/bench-strncmp.c: Likewise. + * benchtests/bench-strncpy.c: Likewise. + * benchtests/bench-strnlen.c: Likewise. + * benchtests/bench-strpbrk.c: Likewise. + * benchtests/bench-strrchr.c: Likewise. + * benchtests/bench-strspn.c: Likewise. + +2018-12-21 Joseph Myers + + * stdlib/longlong.h: Update from GCC. + + [BZ #23993] + * configure.ac (libc_cv_compiler_ok): Require GCC 5 or later. + * configure: Regenerated. + * manual/install.texi (Tools for Compilation): Update minimum GCC + version. + * INSTALL: Regenerated. + +2018-12-21 Istvan Kurucsai + + * malloc/malloc.c (munmap_chunk): Verify chunk alignment. + +2018-12-20 Istvan Kurucsai + + * malloc/malloc.c (mremap_chunk): Additional checks. + +2018-12-21 Mao Han + + * config.h.in (CSKYABI, CSKY_HARD_FLOAT): New Define. + * scripts/build-many-glibcs.py: Add C-SKY targets. + * sysdeps/csky/Implies: New file. + * sysdeps/csky/Makefile: Likewise. + * sysdeps/csky/abiv2/__longjmp.S: Likewise. + * sysdeps/csky/abiv2/csky-mcount.S: Likewise. + * sysdeps/csky/abiv2/dl-trampoline.S: Likewise. + * sysdeps/csky/abiv2/memcmp.S: Likewise. + * sysdeps/csky/abiv2/memcpy.S: Likewise. + * sysdeps/csky/abiv2/memmove.S: Likewise. + * sysdeps/csky/abiv2/memset.S: Likewise. + * sysdeps/csky/abiv2/setjmp.S: Likewise. + * sysdeps/csky/abiv2/start.S: Likewise. + * sysdeps/csky/abiv2/strcmp.S: Likewise. + * sysdeps/csky/abiv2/strcpy.S: Likewise. + * sysdeps/csky/abiv2/strlen.S: Likewise. + * sysdeps/csky/abiv2/tls-macros.h: Likewise. + * sysdeps/csky/abort-instr.h: Likewise. + * sysdeps/csky/atomic-machine.h: Likewise. + * sysdeps/csky/bits/endian.h: Likewise. + * sysdeps/csky/bits/fenv.h: Likewise. + * sysdeps/csky/bits/link.h: Likewise. + * sysdeps/csky/bits/setjmp.h: Likewise. + * sysdeps/csky/bsd-_setjmp.S: Likewise. + * sysdeps/csky/bsd-setjmp.S: Likewise. + * sysdeps/csky/configure: Likewise. + * sysdeps/csky/configure.ac: Likewise. + * sysdeps/csky/dl-machine.h: Likewise. + * sysdeps/csky/dl-procinfo.c: Likewise. + * sysdeps/csky/dl-procinfo.h: Likewise. + * sysdeps/csky/dl-sysdep.h: Likewise. + * sysdeps/csky/dl-tls.h: Likewise. + * sysdeps/csky/fpu/fclrexcpt.c: Likewise. + * sysdeps/csky/fpu/fedisblxcpt.c: Likewise. + * sysdeps/csky/fpu/feenablxcpt.c: Likewise. + * sysdeps/csky/fpu/fegetenv.c: Likewise. + * sysdeps/csky/fpu/fegetexcept.c: Likewise. + * sysdeps/csky/fpu/fegetmode.c: Likewise. + * sysdeps/csky/fpu/fegetround.c: Likewise. + * sysdeps/csky/fpu/feholdexcpt.c: Likewise. + * sysdeps/csky/fpu/fenv_libc.h: Likewise. + * sysdeps/csky/fpu/fenv_private.h: Likewise. + * sysdeps/csky/fpu/fesetenv.c: Likewise. + * sysdeps/csky/fpu/fesetexcept.c: Likewise. + * sysdeps/csky/fpu/fesetmode.c: Likewise. + * sysdeps/csky/fpu/fesetround.c: Likewise. + * sysdeps/csky/fpu/feupdateenv.c: Likewise. + * sysdeps/csky/fpu/fgetexcptflg.c: Likewise. + * sysdeps/csky/fpu/fix-fp-int-convert-overflow.h: Likewise. + * sysdeps/csky/fpu/fraiseexcpt.c: Likewise. + * sysdeps/csky/fpu/fsetexcptflg.c: Likewise. + * sysdeps/csky/fpu/ftestexcept.c: Likewise. + * sysdeps/csky/fpu/libm-test-ulps: Likewise. + * sysdeps/csky/fpu/libm-test-ulps-name: Likewise. + * sysdeps/csky/fpu_control.h: Likewise. + * sysdeps/csky/gccframe.h: Likewise. + * sysdeps/csky/jmpbuf-unwind.h: Likewise. + * sysdeps/csky/ldsodefs.h: Likewise. + * sysdeps/csky/libc-tls.c: Likewise. + * sysdeps/csky/linkmap.h: Likewise. + * sysdeps/csky/machine-gmon.h: Likewise. + * sysdeps/csky/memusage.h: Likewise. + * sysdeps/csky/nofpu/Implies: Likewise. + * sysdeps/csky/nofpu/libm-test-ulps: Likewise. + * sysdeps/csky/nofpu/libm-test-ulps-name: Likewise. + * sysdeps/csky/nptl/Makefile: Likewise. + * sysdeps/csky/nptl/bits/pthreadtypes-arch.h: Likewise. + * sysdeps/csky/nptl/bits/semaphore.h: Likewise. + * sysdeps/csky/nptl/pthread-offsets.h: Likewise. + * sysdeps/csky/nptl/pthreaddef.h: Likewise. + * sysdeps/csky/nptl/tcb-offsets.sym: Likewise. + * sysdeps/csky/nptl/tls.h: Likewise. + * sysdeps/csky/preconfigure: Likewise. + * sysdeps/csky/sfp-machine.h: Likewise. + * sysdeps/csky/sotruss-lib.c: Likewise. + * sysdeps/csky/stackinfo.h: Likewise. + * sysdeps/csky/sysdep.h: Likewise. + * sysdeps/csky/tininess.h: Likewise. + * sysdeps/csky/tst-audit.h: Likewise. + * sysdeps/unix/sysv/linux/csky/Implies: Likewise. + * sysdeps/unix/sysv/linux/csky/Makefile: Likewise. + * sysdeps/unix/sysv/linux/csky/Versions: Likewise. + * sysdeps/unix/sysv/linux/csky/abiv2/____longjmp_chk.S: Likewise. + * sysdeps/unix/sysv/linux/csky/abiv2/clone.S: Likewise. + * sysdeps/unix/sysv/linux/csky/abiv2/getcontext.S: Likewise. + * sysdeps/unix/sysv/linux/csky/abiv2/setcontext.S: Likewise. + * sysdeps/unix/sysv/linux/csky/abiv2/swapcontext.S: Likewise. + * sysdeps/unix/sysv/linux/csky/abiv2/syscall.S: Likewise. + * sysdeps/unix/sysv/linux/csky/abiv2/sysdep.S: Likewise. + * sysdeps/unix/sysv/linux/csky/abiv2/ucontext_i.sym: Likewise. + * sysdeps/unix/sysv/linux/csky/bits/procfs.h: Likewise. + * sysdeps/unix/sysv/linux/csky/bits/shmlba.h: Likewise. + * sysdeps/unix/sysv/linux/csky/c++-types.data: Likewise. + * sysdeps/unix/sysv/linux/csky/configure: Likewise. + * sysdeps/unix/sysv/linux/csky/configure.ac: Likewise. + * sysdeps/unix/sysv/linux/csky/ipc_priv.h: Likewise. + * sysdeps/unix/sysv/linux/csky/jmp_buf-macros.h: Likewise. + * sysdeps/unix/sysv/linux/csky/kernel-features.h: Likewise. + * sysdeps/unix/sysv/linux/csky/ld.abilist: Likewise. + * sysdeps/unix/sysv/linux/csky/ldconfig.h: Likewise. + * sysdeps/unix/sysv/linux/csky/libBrokenLocale.abilist: Likewise. + * sysdeps/unix/sysv/linux/csky/libanl.abilist: Likewise. + * sysdeps/unix/sysv/linux/csky/libc.abilist: Likewise. + * sysdeps/unix/sysv/linux/csky/libcrypt.abilist: Likewise. + * sysdeps/unix/sysv/linux/csky/libdl.abilist: Likewise. + * sysdeps/unix/sysv/linux/csky/libm.abilist: Likewise. + * sysdeps/unix/sysv/linux/csky/libpthread.abilist: Likewise. + * sysdeps/unix/sysv/linux/csky/libresolv.abilist: Likewise. + * sysdeps/unix/sysv/linux/csky/librt.abilist: Likewise. + * sysdeps/unix/sysv/linux/csky/libthread_db.abilist: Likewise. + * sysdeps/unix/sysv/linux/csky/libutil.abilist: Likewise. + * sysdeps/unix/sysv/linux/csky/localplt.data: Likewise. + * sysdeps/unix/sysv/linux/csky/makecontext.c: Likewise. + * sysdeps/unix/sysv/linux/csky/profil-counter.h: Likewise. + * sysdeps/unix/sysv/linux/csky/pt-vfork.S: Likewise. + * sysdeps/unix/sysv/linux/csky/register-dump.h: Likewise. + * sysdeps/unix/sysv/linux/csky/shlib-versions: Likewise. + * sysdeps/unix/sysv/linux/csky/sigcontextinfo.h: Likewise. + * sysdeps/unix/sysv/linux/csky/sys/cachectl.h: Likewise. + * sysdeps/unix/sysv/linux/csky/sys/ucontext.h: Likewise. + * sysdeps/unix/sysv/linux/csky/sys/user.h: Likewise. + * sysdeps/unix/sysv/linux/csky/syscalls.list: Likewise. + * sysdeps/unix/sysv/linux/csky/sysdep.h: Likewise. + +2018-12-18 Albert ARIBAUD + + * include/time.h (__difftime64): Add. + * time/difftime.c (subtract): convert to 64-bit time. + * time/difftime.c (__difftime64): Add. + * time/difftime.c (__difftime): Wrap around __difftime64. + +2018-12-20 H.J. Lu + + * manual/examples/add.c: Remove redundant "if not". + * manual/examples/argp-ex1.c: Likewise. + * manual/examples/argp-ex2.c: Likewise. + * manual/examples/argp-ex3.c: Likewise. + * manual/examples/argp-ex4.c: Likewise. + * manual/examples/atexit.c: Likewise. + * manual/examples/db.c: Likewise. + * manual/examples/dir.c: Likewise. + * manual/examples/dir2.c: Likewise. + * manual/examples/execinfo.c: Likewise. + * manual/examples/filecli.c: Likewise. + * manual/examples/filesrv.c: Likewise. + * manual/examples/fmtmsgexpl.c: Likewise. + * manual/examples/genpass.c: Likewise. + * manual/examples/inetcli.c: Likewise. + * manual/examples/inetsrv.c: Likewise. + * manual/examples/isockad.c: Likewise. + * manual/examples/longopt.c: Likewise. + * manual/examples/memopen.c: Likewise. + * manual/examples/memstrm.c: Likewise. + * manual/examples/mkdirent.c: Likewise. + * manual/examples/mkfsock.c: Likewise. + * manual/examples/mkisock.c: Likewise. + * manual/examples/mygetpass.c: Likewise. + * manual/examples/pipe.c: Likewise. + * manual/examples/popen.c: Likewise. + * manual/examples/rprintf.c: Likewise. + * manual/examples/search.c: Likewise. + * manual/examples/select.c: Likewise. + * manual/examples/setjmp.c: Likewise. + * manual/examples/sigh1.c: Likewise. + * manual/examples/sigusr.c: Likewise. + * manual/examples/stpcpy.c: Likewise. + * manual/examples/strdupa.c: Likewise. + * manual/examples/strftim.c: Likewise. + * manual/examples/subopt.c: Likewise. + * manual/examples/swapcontext.c: Likewise. + * manual/examples/termios.c: Likewise. + * manual/examples/testopt.c: Likewise. + * manual/examples/testpass.c: Likewise. + * manual/examples/timeval_subtract.c: Likewise. + +2018-12-19 Joseph Myers + + * sysdeps/x86/fpu/math_private.h: New file. + * sysdeps/x86/fpu/bits/mathinline.h: Remove. + + * sysdeps/x86/fpu/bits/mathinline.h (sinh): Remove inline + definition. + (cosh): Likewise. + (tanh): Likewise. + +2018-12-19 Tulio Magno Quites Machado Filho + + * elf/dl-sysdep.c (auxvars): Add AT_L1I_CACHESIZE, + AT_L1I_CACHEGEOMETRY, AT_L1D_CACHESIZE, AT_L1D_CACHEGEOMETRY, + AT_L2_CACHESIZE, AT_L2_CACHEGEOMETRY, AT_L3_CACHESIZE and + AT_L3_CACHEGEOMETRY. Fix indentation when printing the other + fields. + (_dl_show_auxv): Give a special treatment to + AT_L1I_CACHEGEOMETRY, AT_L1D_CACHEGEOMETRY, AT_L2_CACHEGEOMETRY + and AT_L3_CACHEGEOMETRY. + * sysdeps/powerpc/dl-procinfo.h (cache_geometry): New function. + (_dl_procinfo): Fix indentation when printing AT_HWCAP and + AT_HWCAP2. Add support for AT_L1I_CACHEGEOMETRY, + AT_L1D_CACHEGEOMETRY, AT_L2_CACHEGEOMETRY and AT_L3_CACHEGEOMETRY. + +2018-12-19 Andreas Schwab + + * nscd/connections.c (check_use): Don't abort on invalid len. + +2018-12-18 Samuel Thibault + + * sysdeps/mach/hurd/fcntl.c (__libc_fcntl): Test against 64bit `cmd' + values in the 64bit value cases. + +2018-12-18 Albert ARIBAUD + + * include/time.h + (__ctime64_r): Add. + * time/ctime_r.c + (__ctime64_r): Add. + [__TIMESIZE != 64] (__ctime_r): Turn into a wrapper. + + * include/time.h + (__ctime64): Add. + * time/gmtime.c + (__ctime64): Add. + [__TIMESIZE != 64] (ctime): Turn into a wrapper. + + * include/time.h + (__gmtime64_r): Add. + * time/gmtime.c + (__gmtime64_r): Add. + [__TIMESIZE != 64] (__gmtime): Turn into a wrapper. + + * include/time.h + (__gmtime64): Add. + * time/gmtime.c + (__gmtime64): Add. + [__TIMESIZE != 64] (__gmtime): Turn into a wrapper. + + * include/time.h + (__localtime64_r): Add. + * time/localtime.c + (__localtime64_r): Add. + [__TIMESIZE != 64] (__localtime_r): Turn into a wrapper. + +2018-12-18 Adhemerval Zanella + + * sysdeps/unix/sysv/linux/s390/kernel_sigaction.h: Use Linux generic + kernel_sigction definition. + + * sysdeps/unix/sysv/linux/ia64/kernel_sigaction.h: Remove file. + + * sysdeps/unix/sysv/linux/hppa/kernel_sigaction.h: Remove file. + + * sysdeps/unix/sysv/linux/alpha/Makefile: Update comment about + __syscall_rt_sigaction. + * sysdeps/unix/sysv/linux/alpha/kernel_sigaction.h + (kernel_sigaction): Use Linux generic defintion. + (STUB): Define. + (__syscall_rt_sigreturn, __syscall_sigreturn): Add prototype. + * sysdeps/unix/sysv/linux/alpha/rt_sigaction.S + (__syscall_rt_sigaction): Remove implementation. + (__syscall_sigreturn, __syscall_rt_sigreturn): Define as global and + hidden. + * sysdeps/unix/sysv/linux/alpha/sigaction.c: Remove file. + * sysdeps/unix/sysv/linux/alpha/sysdep.h (INLINE_SYSCALL, + INTERNAL_SYSCALL): Remove definitions. + * sysdeps/unix/sysv/linux/sigaction.c: Define STUB to accept both the + action and signal set size. + * sysdeps/unix/sysv/linux/sparc/sparc32/sigaction.c (STUB): Redefine. + * sysdeps/unix/sysv/linux/sparc/sparc64/sigaction.c (STUB): Likewise. + +2018-12-18 Adhemerval Zanella + James Clarke + + [BZ #23967] + * sysdeps/unix/sysv/linux/kernel_sigaction.h (HAS_SA_RESTORER): + Define if SA_RESTORER is defined. + (kernel_sigaction): Define sa_restorer if HAS_SA_RESTORER is defined. + (SET_SA_RESTORER, RESET_SA_RESTORER): Define iff the macro are not + already defined. + * sysdeps/unix/sysv/linux/m68k/kernel_sigaction.h (SA_RESTORER, + kernel_sigaction, SET_SA_RESTORER, RESET_SA_RESTORER): Remove + definitions. + (HAS_SA_RESTORER): Define. + * sysdeps/unix/sysv/linux/sparc/kernel_sigaction.h (SA_RESTORER, + SET_SA_RESTORER, RESET_SA_RESTORER): Remove definition. + (HAS_SA_RESTORER): Define. + * sysdeps/unix/sysv/linux/nios2/kernel_sigaction.h: Include generic + kernel_sigaction after define SET_SA_RESTORER and RESET_SA_RESTORER. + * sysdeps/unix/sysv/linux/powerpc/kernel_sigaction.h: Likewise. + * sysdeps/unix/sysv/linux/s390/kernel_sigaction.h: Likewise. + * sysdeps/unix/sysv/linux/x86_64/sigaction.c: Likewise. + +2018-12-18 Joseph Myers + + * sysdeps/unix/sysv/linux/kernel-features.h + (__ASSUME_ST_INO_64_BIT): Remove macro definition. + * sysdeps/unix/sysv/linux/alpha/kernel-features.h + (__ASSUME_ST_INO_64_BIT): Do not undefine and define. + * sysdeps/unix/sysv/linux/sh/kernel-features.h + (__ASSUME_ST_INO_64_BIT): Likewise. + * sysdeps/unix/sysv/linux/fxstat64.c: Do not include + . + (___fxstat64) [_HAVE_STAT64___ST_INO && !__ASSUME_ST_INO_64_BIT]: + Remove conditional code. + * sysdeps/unix/sysv/linux/lxstat64.c: Do not include + . + (___lxstat64) [_HAVE_STAT64___ST_INO && !__ASSUME_ST_INO_64_BIT]: + Remove conditional code. + * sysdeps/unix/sysv/linux/xstat64.c: Do not include + . + (___xstat64) [_HAVE_STAT64___ST_INO && !__ASSUME_ST_INO_64_BIT]: + Remove conditional code. + * sysdeps/unix/sysv/linux/xstatconv.c: Do not include + . + (__xstat32_conv) [_HAVE_STAT64___ST_INO]: Remove conditional code. + [!_HAVE_STAT64___ST_INO]: Make code unconditional. + +2018-12-18 Stefan Liebler + + * sysdeps/s390/multiarch/ifunc-resolve.h + (s390_vx_libc_ifunc, s390_vx_libc_ifunc_redirected, + s390_vx_libc_ifunc2, s390_vx_libc_ifunc_init, + s390_vx_libc_ifunc2_redirected, s390_libc_ifunc): + Delete macro definition. + (s390_libc_ifunc_init): Rename to + s390_libc_ifunc_expr_stfle_init. + * sysdeps/s390/bzero: Use + s390_libc_ifunc_expr_stfle_init instead of + s390_libc_ifunc_init. + * sysdeps/s390/memcmp.c: Likewise. + * sysdeps/s390/memcpy.c: Likewise. + * sysdeps/s390/mempcpy.c: Likewise. + * sysdeps/s390/memset.c: Likewise. + +2018-12-18 Stefan Liebler + + * sysdeps/s390/multiarch/gconv_simple.c (ICONV_VX_IFUNC): + Define macro dependent on HAVE_S390_MIN_Z13_ZARCH_ASM_SUPPORT. + +2018-12-18 Stefan Liebler + + * sysdeps/s390/multiarch/Makefile + (sysdep_routines): Remove wmemcmp variants. + * sysdeps/s390/Makefile (sysdep_routines): Add wmemcmp variants. + * sysdeps/s390/multiarch/ifunc-impl-list.c + (__libc_ifunc_impl_list): Refactor ifunc handling for wmemcmp. + * sysdeps/s390/multiarch/wmemcmp-c.c: Move to ... + * sysdeps/s390/wmemcmp-c.c: ... here and adjust ifunc handling. + * sysdeps/s390/multiarch/wmemcmp-vx.S: Move to ... + * sysdeps/s390/wmemcmp-vx.S: ... here and adjust ifunc handling. + * sysdeps/s390/multiarch/wmemcmp.c: Move to ... + * sysdeps/s390/wmemcmp.c: ... here and adjust ifunc handling. + * sysdeps/s390/ifunc-wmemcmp.h: New file. + +2018-12-18 Stefan Liebler + + * sysdeps/s390/multiarch/Makefile + (sysdep_routines): Remove wmemset variants. + * sysdeps/s390/Makefile (sysdep_routines): Add wmemset variants. + * sysdeps/s390/multiarch/ifunc-impl-list.c + (__libc_ifunc_impl_list): Refactor ifunc handling for wmemset. + * sysdeps/s390/multiarch/wmemset-c.c: Move to ... + * sysdeps/s390/wmemset-c.c: ... here and adjust ifunc handling. + * sysdeps/s390/multiarch/wmemset-vx.S: Move to ... + * sysdeps/s390/wmemset-vx.S: ... here and adjust ifunc handling. + * sysdeps/s390/multiarch/wmemset.c: Move to ... + * sysdeps/s390/wmemset.c: ... here and adjust ifunc handling. + * sysdeps/s390/ifunc-wmemset.h: New file. + +2018-12-18 Stefan Liebler + + * sysdeps/s390/multiarch/Makefile + (sysdep_routines): Remove wmemchr variants. + * sysdeps/s390/Makefile (sysdep_routines): Add wmemchr variants. + * sysdeps/s390/multiarch/ifunc-impl-list.c + (__libc_ifunc_impl_list): Refactor ifunc handling for wmemchr. + * sysdeps/s390/multiarch/wmemchr-c.c: Move to ... + * sysdeps/s390/wmemchr-c.c: ... here and adjust ifunc handling. + * sysdeps/s390/multiarch/wmemchr-vx.S: Move to ... + * sysdeps/s390/wmemchr-vx.S: ... here and adjust ifunc handling. + * sysdeps/s390/multiarch/wmemchr.c: Move to ... + * sysdeps/s390/wmemchr.c: ... here and adjust ifunc handling. + * sysdeps/s390/ifunc-wmemchr.h: New file. + +2018-12-18 Stefan Liebler + + * sysdeps/s390/multiarch/Makefile + (sysdep_routines): Remove wcscspn variants. + * sysdeps/s390/Makefile (sysdep_routines): Add wcscspn variants. + * sysdeps/s390/multiarch/ifunc-impl-list.c + (__libc_ifunc_impl_list): Refactor ifunc handling for wcscspn. + * sysdeps/s390/multiarch/wcscspn-c.c: Move to ... + * sysdeps/s390/wcscspn-c.c: ... here and adjust ifunc handling. + * sysdeps/s390/multiarch/wcscspn-vx.S: Move to ... + * sysdeps/s390/wcscspn-vx.S: ... here and adjust ifunc handling. + * sysdeps/s390/multiarch/wcscspn.c: Move to ... + * sysdeps/s390/wcscspn.c: ... here and adjust ifunc handling. + * sysdeps/s390/ifunc-wcscspn.h: New file. + +2018-12-18 Stefan Liebler + + * sysdeps/s390/multiarch/Makefile + (sysdep_routines): Remove wcspbrk variants. + * sysdeps/s390/Makefile (sysdep_routines): Add wcspbrk variants. + * sysdeps/s390/multiarch/ifunc-impl-list.c + (__libc_ifunc_impl_list): Refactor ifunc handling for wcspbrk. + * sysdeps/s390/multiarch/wcspbrk-c.c: Move to ... + * sysdeps/s390/wcspbrk-c.c: ... here and adjust ifunc handling. + * sysdeps/s390/multiarch/wcspbrk-vx.S: Move to ... + * sysdeps/s390/wcspbrk-vx.S: ... here and adjust ifunc handling. + * sysdeps/s390/multiarch/wcspbrk.c: Move to ... + * sysdeps/s390/wcspbrk.c: ... here and adjust ifunc handling. + * sysdeps/s390/ifunc-wcspbrk.h: New file. + +2018-12-18 Stefan Liebler + + * sysdeps/s390/multiarch/Makefile + (sysdep_routines): Remove wcsspn variants. + * sysdeps/s390/Makefile (sysdep_routines): Add wcsspn variants. + * sysdeps/s390/multiarch/ifunc-impl-list.c + (__libc_ifunc_impl_list): Refactor ifunc handling for wcsspn. + * sysdeps/s390/multiarch/wcsspn-c.c: Move to ... + * sysdeps/s390/wcsspn-c.c: ... here and adjust ifunc handling. + * sysdeps/s390/multiarch/wcsspn-vx.S: Move to ... + * sysdeps/s390/wcsspn-vx.S: ... here and adjust ifunc handling. + * sysdeps/s390/multiarch/wcsspn.c: Move to ... + * sysdeps/s390/wcsspn.c: ... here and adjust ifunc handling. + * sysdeps/s390/ifunc-wcsspn.h: New file. + +2018-12-18 Stefan Liebler + + * sysdeps/s390/multiarch/Makefile + (sysdep_routines): Remove wcsrchr variants. + * sysdeps/s390/Makefile (sysdep_routines): Add wcsrchr variants. + * sysdeps/s390/multiarch/ifunc-impl-list.c + (__libc_ifunc_impl_list): Refactor ifunc handling for wcsrchr. + * sysdeps/s390/multiarch/wcsrchr-c.c: Move to ... + * sysdeps/s390/wcsrchr-c.c: ... here and adjust ifunc handling. + * sysdeps/s390/multiarch/wcsrchr-vx.S: Move to ... + * sysdeps/s390/wcsrchr-vx.S: ... here and adjust ifunc handling. + * sysdeps/s390/multiarch/wcsrchr.c: Move to ... + * sysdeps/s390/wcsrchr.c: ... here and adjust ifunc handling. + * sysdeps/s390/ifunc-wcsrchr.h: New file. + +2018-12-18 Stefan Liebler + + * sysdeps/s390/multiarch/Makefile + (sysdep_routines): Remove wcschrnul variants. + * sysdeps/s390/Makefile (sysdep_routines): Add wcschrnul variants. + * sysdeps/s390/multiarch/ifunc-impl-list.c + (__libc_ifunc_impl_list): Refactor ifunc handling for wcschrnul. + * sysdeps/s390/multiarch/wcschrnul-c.c: Move to ... + * sysdeps/s390/wcschrnul-c.c: ... here and adjust ifunc handling. + * sysdeps/s390/multiarch/wcschrnul-vx.S: Move to ... + * sysdeps/s390/wcschrnul-vx.S: ... here and adjust ifunc handling. + * sysdeps/s390/multiarch/wcschrnul.c: Move to ... + * sysdeps/s390/wcschrnul.c: ... here and adjust ifunc handling. + * sysdeps/s390/ifunc-wcschrnul.h: New file. + +2018-12-18 Stefan Liebler + + * sysdeps/s390/multiarch/Makefile + (sysdep_routines): Remove wcschr variants. + * sysdeps/s390/Makefile (sysdep_routines): Add wcschr variants. + * sysdeps/s390/multiarch/ifunc-impl-list.c + (__libc_ifunc_impl_list): Refactor ifunc handling for wcschr. + * sysdeps/s390/multiarch/wcschr-c.c: Move to ... + * sysdeps/s390/wcschr-c.c: ... here and adjust ifunc handling. + * sysdeps/s390/multiarch/wcschr-vx.S: Move to ... + * sysdeps/s390/wcschr-vx.S: ... here and adjust ifunc handling. + * sysdeps/s390/multiarch/wcschr.c: Move to ... + * sysdeps/s390/wcschr.c: ... here and adjust ifunc handling. + * sysdeps/s390/ifunc-wcschr.h: New file. + +2018-12-18 Stefan Liebler + + * sysdeps/s390/multiarch/Makefile + (sysdep_routines): Remove wcsncmp variants. + * sysdeps/s390/Makefile (sysdep_routines): Add wcsncmp variants. + * sysdeps/s390/multiarch/ifunc-impl-list.c + (__libc_ifunc_impl_list): Refactor ifunc handling for wcsncmp. + * sysdeps/s390/multiarch/wcsncmp-c.c: Move to ... + * sysdeps/s390/wcsncmp-c.c: ... here and adjust ifunc handling. + * sysdeps/s390/multiarch/wcsncmp-vx.S: Move to ... + * sysdeps/s390/wcsncmp-vx.S: ... here and adjust ifunc handling. + * sysdeps/s390/multiarch/wcsncmp.c: Move to ... + * sysdeps/s390/wcsncmp.c: ... here and adjust ifunc handling. + * sysdeps/s390/ifunc-wcsncmp.h: New file. + +2018-12-18 Stefan Liebler + + * sysdeps/s390/multiarch/Makefile + (sysdep_routines): Remove wcscmp variants. + * sysdeps/s390/Makefile (sysdep_routines): Add wcscmp variants. + * sysdeps/s390/multiarch/ifunc-impl-list.c + (__libc_ifunc_impl_list): Refactor ifunc handling for wcscmp. + * sysdeps/s390/multiarch/wcscmp-c.c: Move to ... + * sysdeps/s390/wcscmp-c.c: ... here and adjust ifunc handling. + * sysdeps/s390/multiarch/wcscmp-vx.S: Move to ... + * sysdeps/s390/wcscmp-vx.S: ... here and adjust ifunc handling. + * sysdeps/s390/multiarch/wcscmp.c: Move to ... + * sysdeps/s390/wcscmp.c: ... here and adjust ifunc handling. + * sysdeps/s390/ifunc-wcscmp.h: New file. + +2018-12-18 Stefan Liebler + + * sysdeps/s390/multiarch/Makefile + (sysdep_routines): Remove wcsncat variants. + * sysdeps/s390/Makefile (sysdep_routines): Add wcsncat variants. + * sysdeps/s390/multiarch/ifunc-impl-list.c + (__libc_ifunc_impl_list): Refactor ifunc handling for wcsncat. + * sysdeps/s390/multiarch/wcsncat-c.c: Move to ... + * sysdeps/s390/wcsncat-c.c: ... here and adjust ifunc handling. + * sysdeps/s390/multiarch/wcsncat-vx.S: Move to ... + * sysdeps/s390/wcsncat-vx.S: ... here and adjust ifunc handling. + * sysdeps/s390/multiarch/wcsncat.c: Move to ... + * sysdeps/s390/wcsncat.c: ... here and adjust ifunc handling. + * sysdeps/s390/ifunc-wcsncat.h: New file. + +2018-12-18 Stefan Liebler + + * sysdeps/s390/multiarch/Makefile + (sysdep_routines): Remove wcscat variants. + * sysdeps/s390/Makefile (sysdep_routines): Add wcscat variants. + * sysdeps/s390/multiarch/ifunc-impl-list.c + (__libc_ifunc_impl_list): Refactor ifunc handling for wcscat. + * sysdeps/s390/multiarch/wcscat-c.c: Move to ... + * sysdeps/s390/wcscat-c.c: ... here and adjust ifunc handling. + * sysdeps/s390/multiarch/wcscat-vx.S: Move to ... + * sysdeps/s390/wcscat-vx.S: ... here and adjust ifunc handling. + * sysdeps/s390/multiarch/wcscat.c: Move to ... + * sysdeps/s390/wcscat.c: ... here and adjust ifunc handling. + * sysdeps/s390/ifunc-wcscat.h: New file. + +2018-12-18 Stefan Liebler + + * sysdeps/s390/multiarch/Makefile + (sysdep_routines): Remove wcpncpy variants. + * sysdeps/s390/Makefile (sysdep_routines): Add wcpncpy variants. + * sysdeps/s390/multiarch/ifunc-impl-list.c + (__libc_ifunc_impl_list): Refactor ifunc handling for wcpncpy. + * sysdeps/s390/multiarch/wcpncpy-c.c: Move to ... + * sysdeps/s390/wcpncpy-c.c: ... here and adjust ifunc handling. + * sysdeps/s390/multiarch/wcpncpy-vx.S: Move to ... + * sysdeps/s390/wcpncpy-vx.S: ... here and adjust ifunc handling. + * sysdeps/s390/multiarch/wcpncpy.c: Move to ... + * sysdeps/s390/wcpncpy.c: ... here and adjust ifunc handling. + * sysdeps/s390/ifunc-wcpncpy.h: New file. + +2018-12-18 Stefan Liebler + + * sysdeps/s390/multiarch/Makefile + (sysdep_routines): Remove wcsncpy variants. + * sysdeps/s390/Makefile (sysdep_routines): Add wcsncpy variants. + * sysdeps/s390/multiarch/ifunc-impl-list.c + (__libc_ifunc_impl_list): Refactor ifunc handling for wcsncpy. + * sysdeps/s390/multiarch/wcsncpy-c.c: Move to ... + * sysdeps/s390/wcsncpy-c.c: ... here and adjust ifunc handling. + * sysdeps/s390/multiarch/wcsncpy-vx.S: Move to ... + * sysdeps/s390/wcsncpy-vx.S: ... here and adjust ifunc handling. + * sysdeps/s390/multiarch/wcsncpy.c: Move to ... + * sysdeps/s390/wcsncpy.c: ... here and adjust ifunc handling. + * sysdeps/s390/ifunc-wcsncpy.h: New file. + +2018-12-18 Stefan Liebler + + * sysdeps/s390/multiarch/Makefile + (sysdep_routines): Remove wcpcpy variants. + * sysdeps/s390/Makefile (sysdep_routines): Add wcpcpy variants. + * sysdeps/s390/multiarch/ifunc-impl-list.c + (__libc_ifunc_impl_list): Refactor ifunc handling for wcpcpy. + * sysdeps/s390/multiarch/wcpcpy-c.c: Move to ... + * sysdeps/s390/wcpcpy-c.c: ... here and adjust ifunc handling. + * sysdeps/s390/multiarch/wcpcpy-vx.S: Move to ... + * sysdeps/s390/wcpcpy-vx.S: ... here and adjust ifunc handling. + * sysdeps/s390/multiarch/wcpcpy.c: Move to ... + * sysdeps/s390/wcpcpy.c: ... here and adjust ifunc handling. + * sysdeps/s390/ifunc-wcpcpy.h: New file. + +2018-12-18 Stefan Liebler + + * sysdeps/s390/multiarch/Makefile + (sysdep_routines): Remove wcscpy variants. + * sysdeps/s390/Makefile (sysdep_routines): Add wcscpy variants. + * sysdeps/s390/multiarch/ifunc-impl-list.c + (__libc_ifunc_impl_list): Refactor ifunc handling for wcscpy. + * sysdeps/s390/multiarch/wcscpy-c.c: Move to ... + * sysdeps/s390/wcscpy-c.c: ... here and adjust ifunc handling. + * sysdeps/s390/multiarch/wcscpy-vx.S: Move to ... + * sysdeps/s390/wcscpy-vx.S: ... here and adjust ifunc handling. + * sysdeps/s390/multiarch/wcscpy.c: Move to ... + * sysdeps/s390/wcscpy.c: ... here and adjust ifunc handling. + * sysdeps/s390/ifunc-wcscpy.h: New file. + +2018-12-18 Stefan Liebler + + * sysdeps/s390/multiarch/Makefile + (sysdep_routines): Remove wcsnlen variants. + * sysdeps/s390/Makefile (sysdep_routines): Add wcsnlen variants. + * sysdeps/s390/multiarch/ifunc-impl-list.c + (__libc_ifunc_impl_list): Refactor ifunc handling for wcsnlen. + * sysdeps/s390/multiarch/wcsnlen-c.c: Move to ... + * sysdeps/s390/wcsnlen-c.c: ... here and adjust ifunc handling. + * sysdeps/s390/multiarch/wcsnlen-vx.S: Move to ... + * sysdeps/s390/wcsnlen-vx.S: ... here and adjust ifunc handling. + * sysdeps/s390/multiarch/wcsnlen.c: Move to ... + * sysdeps/s390/wcsnlen.c: ... here and adjust ifunc handling. + * sysdeps/s390/ifunc-wcsnlen.h: New file. + +2018-12-18 Stefan Liebler + + * sysdeps/s390/multiarch/Makefile + (sysdep_routines): Remove wcslen variants. + * sysdeps/s390/Makefile (sysdep_routines): Add wcslen variants. + * sysdeps/s390/multiarch/ifunc-impl-list.c + (__libc_ifunc_impl_list): Refactor ifunc handling for wcslen. + * sysdeps/s390/multiarch/wcslen-c.c: Move to ... + * sysdeps/s390/wcslen-c.c: ... here and adjust ifunc handling. + * sysdeps/s390/multiarch/wcslen-vx.S: Move to ... + * sysdeps/s390/wcslen-vx.S: ... here and adjust ifunc handling. + * sysdeps/s390/multiarch/wcslen.c: Move to ... + * sysdeps/s390/wcslen.c: ... here and adjust ifunc handling. + * sysdeps/s390/ifunc-wcslen.h: New file. + +2018-12-18 Stefan Liebler + + * sysdeps/s390/multiarch/Makefile + (sysdep_routines): Remove memrchr variants. + * sysdeps/s390/Makefile (sysdep_routines): Add memrchr variants. + * sysdeps/s390/multiarch/ifunc-impl-list.c + (__libc_ifunc_impl_list): Refactor ifunc handling for memrchr. + * sysdeps/s390/multiarch/memrchr-c.c: Move to ... + * sysdeps/s390/memrchr-c.c: ... here and adjust ifunc handling. + * sysdeps/s390/multiarch/memrchr-vx.S: Move to ... + * sysdeps/s390/memrchr-vx.S: ... here and adjust ifunc handling. + * sysdeps/s390/multiarch/memrchr.c: Move to ... + * sysdeps/s390/memrchr.c: ... here and adjust ifunc handling. + * sysdeps/s390/ifunc-memrchr.h: New file. + +2018-12-18 Stefan Liebler + + * sysdeps/s390/multiarch/Makefile + (sysdep_routines): Remove memccpy variants. + * sysdeps/s390/Makefile (sysdep_routines): Add memccpy variants. + * sysdeps/s390/multiarch/ifunc-impl-list.c + (__libc_ifunc_impl_list): Refactor ifunc handling for memccpy. + * sysdeps/s390/multiarch/memccpy-c.c: Move to ... + * sysdeps/s390/memccpy-c.c: ... here and adjust ifunc handling. + * sysdeps/s390/multiarch/memccpy-vx.S: Move to ... + * sysdeps/s390/memccpy-vx.S: ... here and adjust ifunc handling. + * sysdeps/s390/multiarch/memccpy.c: Move to ... + * sysdeps/s390/memccpy.c: ... here and adjust ifunc handling. + * sysdeps/s390/ifunc-memccpy.h: New file. + +2018-12-18 Stefan Liebler + + * sysdeps/s390/multiarch/Makefile + (sysdep_routines): Remove rawmemchr variants. + * sysdeps/s390/Makefile (sysdep_routines): Add rawmemchr variants. + * sysdeps/s390/multiarch/ifunc-impl-list.c + (__libc_ifunc_impl_list): Refactor ifunc handling for rawmemchr. + * sysdeps/s390/multiarch/rawmemchr-c.c: Move to ... + * sysdeps/s390/rawmemchr-c.c: ... here and adjust ifunc handling. + * sysdeps/s390/multiarch/rawmemchr-vx.S: Move to ... + * sysdeps/s390/rawmemchr-vx.S: ... here and adjust ifunc handling. + * sysdeps/s390/multiarch/rawmemchr.c: Move to ... + * sysdeps/s390/rawmemchr.c: ... here and adjust ifunc handling. + * sysdeps/s390/ifunc-rawmemchr.h: New file. + +2018-12-18 Stefan Liebler + + * sysdeps/s390/multiarch/Makefile + (sysdep_routines): Remove memchr variants. + * sysdeps/s390/Makefile (sysdep_routines): Add memchr variants. + * sysdeps/s390/multiarch/ifunc-impl-list.c + (__libc_ifunc_impl_list): Refactor ifunc handling for memchr. + * sysdeps/s390/multiarch/memchr-vx.S: Move to ... + * sysdeps/s390/memchr-vx.S: ... here and adjust ifunc handling. + * sysdeps/s390/multiarch/memchr.c: Move to ... + * sysdeps/s390/memchr.c: ... here and adjust ifunc handling. + * sysdeps/s390/ifunc-memchr.h: New file. + * sysdeps/s390/s390-64/memchr.S: Move to ... + * sysdeps/s390/memchr-z900.S: ... here and adjust to be usable + for 31/64bit and ifunc handling. + * sysdeps/s390/s390-32/multiarch/memchr.c: Delete file. + * sysdeps/s390/s390-64/multiarch/memchr.c: Likewise. + * sysdeps/s390/s390-32/memchr.S: Likewise. + +2018-12-18 Stefan Liebler + + * sysdeps/s390/multiarch/Makefile + (sysdep_routines): Remove strcspn variants. + * sysdeps/s390/Makefile (sysdep_routines): Add strcspn variants. + * sysdeps/s390/multiarch/ifunc-impl-list.c + (__libc_ifunc_impl_list): Refactor ifunc handling for strcspn. + * sysdeps/s390/multiarch/strcspn-c.c: Move to ... + * sysdeps/s390/strcspn-c.c: ... here and adjust ifunc handling. + * sysdeps/s390/multiarch/strcspn-vx.S: Move to ... + * sysdeps/s390/strcspn-vx.S: ... here and adjust ifunc handling. + * sysdeps/s390/multiarch/strcspn.c: Move to ... + * sysdeps/s390/strcspn.c: ... here and adjust ifunc handling. + * sysdeps/s390/ifunc-strcspn.h: New file. + +2018-12-18 Stefan Liebler + + * sysdeps/s390/multiarch/Makefile + (sysdep_routines): Remove strpbrk variants. + * sysdeps/s390/Makefile (sysdep_routines): Add strpbrk variants. + * sysdeps/s390/multiarch/ifunc-impl-list.c + (__libc_ifunc_impl_list): Refactor ifunc handling for strpbrk. + * sysdeps/s390/multiarch/strpbrk-c.c: Move to ... + * sysdeps/s390/strpbrk-c.c: ... here and adjust ifunc handling. + * sysdeps/s390/multiarch/strpbrk-vx.S: Move to ... + * sysdeps/s390/strpbrk-vx.S: ... here and adjust ifunc handling. + * sysdeps/s390/multiarch/strpbrk.c: Move to ... + * sysdeps/s390/strpbrk.c: ... here and adjust ifunc handling. + * sysdeps/s390/ifunc-strpbrk.h: New file. + +2018-12-18 Stefan Liebler + + * sysdeps/s390/multiarch/Makefile + (sysdep_routines): Remove strspn variants. + * sysdeps/s390/Makefile (sysdep_routines): Add strspn variants. + * sysdeps/s390/multiarch/ifunc-impl-list.c + (__libc_ifunc_impl_list): Refactor ifunc handling for strspn. + * sysdeps/s390/multiarch/strspn-c.c: Move to ... + * sysdeps/s390/strspn-c.c: ... here and adjust ifunc handling. + * sysdeps/s390/multiarch/strspn-vx.S: Move to ... + * sysdeps/s390/strspn-vx.S: ... here and adjust ifunc handling. + * sysdeps/s390/multiarch/strspn.c: Move to ... + * sysdeps/s390/strspn.c: ... here and adjust ifunc handling. + * sysdeps/s390/ifunc-strspn.h: New file. + +2018-12-18 Stefan Liebler + + * sysdeps/s390/multiarch/Makefile + (sysdep_routines): Remove strrchr variants. + * sysdeps/s390/Makefile (sysdep_routines): Add strrchr variants. + * sysdeps/s390/multiarch/ifunc-impl-list.c + (__libc_ifunc_impl_list): Refactor ifunc handling for strrchr. + * sysdeps/s390/multiarch/strrchr-c.c: Move to ... + * sysdeps/s390/strrchr-c.c: ... here and adjust ifunc handling. + * sysdeps/s390/multiarch/strrchr-vx.S: Move to ... + * sysdeps/s390/strrchr-vx.S: ... here and adjust ifunc handling. + * sysdeps/s390/multiarch/strrchr.c: Move to ... + * sysdeps/s390/strrchr.c: ... here and adjust ifunc handling. + * sysdeps/s390/ifunc-strrchr.h: New file. + +2018-12-18 Stefan Liebler + + * sysdeps/s390/multiarch/Makefile + (sysdep_routines): Remove strchrnul variants. + * sysdeps/s390/Makefile (sysdep_routines): Add strchrnul variants. + * sysdeps/s390/multiarch/ifunc-impl-list.c + (__libc_ifunc_impl_list): Refactor ifunc handling for strchrnul. + * sysdeps/s390/multiarch/strchrnul-c.c: Move to ... + * sysdeps/s390/strchrnul-c.c: ... here and adjust ifunc handling. + * sysdeps/s390/multiarch/strchrnul-vx.S: Move to ... + * sysdeps/s390/strchrnul-vx.S: ... here and adjust ifunc handling. + * sysdeps/s390/multiarch/strchrnul.c: Move to ... + * sysdeps/s390/strchrnul.c: ... here and adjust ifunc handling. + * sysdeps/s390/ifunc-strchrnul.h: New file. + +2018-12-18 Stefan Liebler + + * sysdeps/s390/multiarch/Makefile + (sysdep_routines): Remove strchr variants. + * sysdeps/s390/Makefile (sysdep_routines): Add strchr variants. + * sysdeps/s390/multiarch/ifunc-impl-list.c + (__libc_ifunc_impl_list): Refactor ifunc handling for strchr. + * sysdeps/s390/multiarch/strchr-c.c: Move to ... + * sysdeps/s390/strchr-c.c: ... here and adjust ifunc handling. + * sysdeps/s390/multiarch/strchr-vx.S: Move to ... + * sysdeps/s390/strchr-vx.S: ... here and adjust ifunc handling. + * sysdeps/s390/multiarch/strchr.c: Move to ... + * sysdeps/s390/strchr.c: ... here and adjust ifunc handling. + * sysdeps/s390/ifunc-strchr.h: New file. + +2018-12-18 Stefan Liebler + + * sysdeps/s390/multiarch/Makefile + (sysdep_routines): Remove strncmp variants. + * sysdeps/s390/Makefile (sysdep_routines): Add strncmp variants. + * sysdeps/s390/multiarch/ifunc-impl-list.c + (__libc_ifunc_impl_list): Refactor ifunc handling for strncmp. + * sysdeps/s390/multiarch/strncmp-c.c: Move to ... + * sysdeps/s390/strncmp-c.c: ... here and adjust ifunc handling. + * sysdeps/s390/multiarch/strncmp-vx.S: Move to ... + * sysdeps/s390/strncmp-vx.S: ... here and adjust ifunc handling. + * sysdeps/s390/multiarch/strncmp.c: Move to ... + * sysdeps/s390/strncmp.c: ... here and adjust ifunc handling. + * sysdeps/s390/ifunc-strncmp.h: New file. + +2018-12-18 Stefan Liebler + + * sysdeps/s390/multiarch/Makefile + (sysdep_routines): Remove strcmp variants. + * sysdeps/s390/Makefile (sysdep_routines): Add strcmp variants. + * sysdeps/s390/multiarch/ifunc-impl-list.c + (__libc_ifunc_impl_list): Refactor ifunc handling for strcmp. + * sysdeps/s390/multiarch/strcmp-vx.S: Move to ... + * sysdeps/s390/strcmp-vx.S: ... here and adjust ifunc handling. + * sysdeps/s390/multiarch/strcmp.c: Move to ... + * sysdeps/s390/strcmp.c: ... here and adjust ifunc handling. + * sysdeps/s390/ifunc-strcmp.h: New file. + * sysdeps/s390/s390-64/strcmp.S: Move to ... + * sysdeps/s390/strcmp-z900.S: ... here and adjust to be usable + for 31/64bit and ifunc handling. + * sysdeps/s390/s390-32/multiarch/strcmp.c: Delete file. + * sysdeps/s390/s390-64/multiarch/strcmp.c: Likewise. + * sysdeps/s390/s390-32/strcmp.S: Likewise. + +2018-12-18 Stefan Liebler + + * sysdeps/s390/multiarch/Makefile + (sysdep_routines): Remove strncat variants. + * sysdeps/s390/Makefile (sysdep_routines): Add strncat variants. + * sysdeps/s390/multiarch/ifunc-impl-list.c + (__libc_ifunc_impl_list): Refactor ifunc handling for strncat. + * sysdeps/s390/multiarch/strncat-c.c: Move to ... + * sysdeps/s390/strncat-c.c: ... here and adjust ifunc handling. + * sysdeps/s390/multiarch/strncat-vx.S: Move to ... + * sysdeps/s390/strncat-vx.S: ... here and adjust ifunc handling. + * sysdeps/s390/multiarch/strncat.c: Move to ... + * sysdeps/s390/strncat.c: ... here and adjust ifunc handling. + * sysdeps/s390/ifunc-strncat.h: New file. + +2018-12-18 Stefan Liebler + + * sysdeps/s390/multiarch/Makefile + (sysdep_routines): Remove strcat variants. + * sysdeps/s390/Makefile (sysdep_routines): Add strcat variants. + * sysdeps/s390/multiarch/ifunc-impl-list.c + (__libc_ifunc_impl_list): Refactor ifunc handling for strcat. + * sysdeps/s390/multiarch/strcat-c.c: Move to ... + * sysdeps/s390/strcat-c.c: ... here and adjust ifunc handling. + * sysdeps/s390/multiarch/strcat-vx.S: Move to ... + * sysdeps/s390/strcat-vx.S: ... here and adjust ifunc handling. + * sysdeps/s390/multiarch/strcat.c: Move to ... + * sysdeps/s390/strcat.c: ... here and adjust ifunc handling. + * sysdeps/s390/ifunc-strcat.h: New file. + +2018-12-18 Stefan Liebler + + * sysdeps/s390/multiarch/Makefile + (sysdep_routines): Remove stpncpy variants. + * sysdeps/s390/Makefile (sysdep_routines): Add stpncpy variants. + * sysdeps/s390/multiarch/ifunc-impl-list.c + (__libc_ifunc_impl_list): Refactor ifunc handling for stpncpy. + * sysdeps/s390/multiarch/stpncpy-c.c: Move to ... + * sysdeps/s390/stpncpy-c.c: ... here and adjust ifunc handling. + * sysdeps/s390/multiarch/stpncpy-vx.S: Move to ... + * sysdeps/s390/stpncpy-vx.S: ... here and adjust ifunc handling. + * sysdeps/s390/multiarch/stpncpy.c: Move to ... + * sysdeps/s390/stpncpy.c: ... here and adjust ifunc handling. + * sysdeps/s390/ifunc-stpncpy.h: New file. + +2018-12-18 Stefan Liebler + + * sysdeps/s390/multiarch/Makefile + (sysdep_routines): Remove strncpy variants. + * sysdeps/s390/Makefile (sysdep_routines): Add strncpy variants. + * sysdeps/s390/multiarch/ifunc-impl-list.c + (__libc_ifunc_impl_list): Refactor ifunc handling for strncpy. + * sysdeps/s390/multiarch/strncpy-vx.S: Move to ... + * sysdeps/s390/strncpy-vx.S: ... here and adjust ifunc handling. + * sysdeps/s390/multiarch/strncpy.c: Move to ... + * sysdeps/s390/strncpy.c: ... here and adjust ifunc handling. + * sysdeps/s390/ifunc-strncpy.h: New file. + * sysdeps/s390/s390-64/strncpy.S: Move to ... + * sysdeps/s390/s390-64/strncpy-z900.S: ... here + and adjust ifunc handling. + * sysdeps/s390/s390-32/strncpy.S: Move to ... + * sysdeps/s390/s390-32/strncpy-z900.S: ... here + and adjust ifunc handling. + * sysdeps/s390/s390-32/multiarch/strncpy.c: Delete file. + * sysdeps/s390/s390-64/multiarch/strncpy.c: Likewise. + +2018-12-18 Stefan Liebler + + * sysdeps/s390/multiarch/Makefile + (sysdep_routines): Remove stpcpy variants. + * sysdeps/s390/Makefile (sysdep_routines): Add stpcpy variants. + * sysdeps/s390/multiarch/ifunc-impl-list.c + (__libc_ifunc_impl_list): Refactor ifunc handling for stpcpy. + * sysdeps/s390/multiarch/stpcpy-c.c: Move to ... + * sysdeps/s390/stpcpy-c.c: ... here and adjust ifunc handling. + * sysdeps/s390/multiarch/stpcpy-vx.S: Move to ... + * sysdeps/s390/stpcpy-vx.S: ... here and adjust ifunc handling. + * sysdeps/s390/multiarch/stpcpy.c: Move to ... + * sysdeps/s390/stpcpy.c: ... here and adjust ifunc handling. + * sysdeps/s390/ifunc-stpcpy.h: New file. + +2018-12-18 Stefan Liebler + + * sysdeps/s390/multiarch/Makefile + (sysdep_routines): Remove strcpy variants. + * sysdeps/s390/Makefile (sysdep_routines): Add strcpy variants. + * sysdeps/s390/multiarch/ifunc-impl-list.c + (__libc_ifunc_impl_list): Refactor ifunc handling for strcpy. + * sysdeps/s390/multiarch/strcpy-vx.S: Move to ... + * sysdeps/s390/strcpy-vx.S: ... here and adjust ifunc handling. + * sysdeps/s390/multiarch/strcpy.c: Move to ... + * sysdeps/s390/strcpy.c: ... here and adjust ifunc handling. + * sysdeps/s390/ifunc-strcpy.h: New file. + * sysdeps/s390/s390-64/strcpy.S: Move to ... + * sysdeps/s390/strcpy-z900.S: ... here and adjust to be usable + for 31/64bit and ifunc handling. + * sysdeps/s390/s390-32/multiarch/strcpy.c: Delete file. + * sysdeps/s390/s390-64/multiarch/strcpy.c: Likewise. + * sysdeps/s390/s390-32/strcpy.S: Likewise. + +2018-12-18 Stefan Liebler + + * sysdeps/s390/multiarch/Makefile + (sysdep_routines): Remove strnlen variants. + * sysdeps/s390/Makefile (sysdep_routines): Add strnlen variants. + * sysdeps/s390/multiarch/ifunc-impl-list.c + (__libc_ifunc_impl_list): Refactor ifunc handling for strnlen. + * sysdeps/s390/multiarch/strnlen-c.c: Move to ... + * sysdeps/s390/strnlen-c.c: ... here and adjust ifunc handling. + * sysdeps/s390/multiarch/strnlen-vx.S: Move to ... + * sysdeps/s390/strnlen-vx.S: ... here and adjust ifunc handling. + * sysdeps/s390/multiarch/strnlen.c: Move to ... + * sysdeps/s390/strnlen.c: ... here and adjust ifunc handling. + * sysdeps/s390/ifunc-strnlen.h: New file. + +2018-12-18 Stefan Liebler + + * sysdeps/s390/multiarch/Makefile + (sysdep_routines): Remove strlen variants. + * sysdeps/s390/Makefile (sysdep_routines): Add strlen variants. + * sysdeps/s390/multiarch/ifunc-impl-list.c + (__libc_ifunc_impl_list): Refactor ifunc handling for strlen. + * sysdeps/s390/multiarch/strlen-c.c: Move to ... + * sysdeps/s390/strlen-c.c: ... here and adjust ifunc handling. + * sysdeps/s390/multiarch/strlen-vx.S: Move to ... + * sysdeps/s390/strlen-vx.S: ... here and adjust ifunc handling. + * sysdeps/s390/multiarch/strlen.c: Move to ... + * sysdeps/s390/strlen.c: ... here and adjust ifunc handling. + * sysdeps/s390/ifunc-strlen.h: New file. + +2018-12-18 Stefan Liebler + + * sysdeps/s390/Makefile (sysdep_routines): Add memmem variants. + * sysdeps/s390/multiarch/ifunc-impl-list.c + (__libc_ifunc_impl_list): Add ifunc variants for memmem. + * sysdeps/s390/ifunc-memmem.h: New file. + * sysdeps/s390/memmem.c: Likewise. + * sysdeps/s390/memmem-c.c: Likewise. + * sysdeps/s390/memmem-vx.c: Likewise. + +2018-12-18 Stefan Liebler + + * sysdeps/s390/Makefile (sysdep_routines): Add strstr variants. + * sysdeps/s390/multiarch/ifunc-impl-list.c + (__libc_ifunc_impl_list): Add ifunc variants for strstr. + * sysdeps/s390/ifunc-strstr.h: New file. + * sysdeps/s390/strstr.c: Likewise. + * sysdeps/s390/strstr-c.c: Likewise. + * sysdeps/s390/strstr-vx.c: Likewise. + +2018-12-18 Stefan Liebler + + * sysdeps/s390/Makefile (sysdep_routines): Add memmove-c. + * sysdeps/s390/ifunc-memcpy.h (HAVE_MEMMOVE_IFUNC, + HAVE_MEMMOVE_IFUNC_AND_VX_SUPPORT, MEMMOVE_DEFAULT, + HAVE_MEMMOVE_C, MEMMOVE_C, HAVE_MEMMOVE_Z13, MEMMOVE_Z13): + New defines. + * sysdeps/s390/memcpy-z900.S: Add z13 memmove implementation. + * sysdeps/s390/memmove-c.c: New file. + * sysdeps/s390/memmove.c: Likewise. + * sysdeps/s390/multiarch/ifunc-impl-list.c + (__libc_ifunc_impl_list): Add ifunc variants for memmove. + +2018-12-18 Stefan Liebler + + * config.h.in (HAVE_S390_MIN_Z13_ZARCH_ASM_SUPPORT): New undefine. + * sysdeps/s390/configure.ac: Add check for z13 support. + * sysdeps/s390/configure: Regenerated. + +2018-12-18 Stefan Liebler + + * sysdeps/s390/memcopy.h: New file. + +2018-12-18 Stefan Liebler + + * sysdeps/s390/s390-32/bcopy.S: Remove. + * sysdeps/s390/s390-64/bcopy.S: Likewise. + +2018-12-18 Stefan Liebler + + * sysdeps/s390/ifunc-memcpy.h: New File. + * sysdeps/s390/memcpy.S: Move to ... + * sysdeps/s390/memcpy-z900.S ... here. + Move implementations from memcpy-s390x.s to here. + * sysdeps/s390/multiarch/memcpy-s390x.S: Delete File. + * sysdeps/s390/multiarch/Makefile (sysdep_routines): + Remove memcpy/mempcpy variants. + * sysdeps/s390/Makefile (sysdep_routines): + Add memcpy/mempcpy variants. + * sysdeps/s390/multiarch/ifunc-impl-list.c + (__libc_ifunc_impl_list): Adjust ifunc variants for + memcpy and mempcpy. + * sysdeps/s390/multiarch/memcpy.c: Move ifunc resolver + to ... + * sysdeps/s390/memcpy.c: ... here. + Adjust ifunc variants for memcpy. + * sysdeps/s390/multiarch/mempcpy.c: Move to ... + * sysdeps/s390/mempcpy.c: ... here. + Adjust ifunc variants for mempcpy. + * sysdeps/s390/mempcpy.S: Delete file. + +2018-12-18 Stefan Liebler + + * sysdeps/s390/s390-64/memcpy.S: Move to ... + * sysdeps/s390/memcpy.S: ... here. + Adjust to be usable for 31/64bit. + * sysdeps/s390/s390-32/memcpy.S: Delete File. + * sysdeps/s390/multiarch/Makefile (sysdep_routines): Add memcpy. + * sysdeps/s390/s390-32/multiarch/Makefile: Delete file. + * sysdeps/s390/s390-64/multiarch/Makefile: Likewise. + * sysdeps/s390/s390-64/multiarch/memcpy-s390x.S: Move to ... + * sysdeps/s390/multiarch/memcpy-s390x.S: ... here. + Adjust to be usable for 31/64bit. + * sysdeps/s390/s390-32/multiarch/memcpy-s390.S: Delete File. + * sysdeps/s390/s390-64/multiarch/memcpy.c: Move to ... + * sysdeps/s390/multiarch/memcpy.c: ... here. + * sysdeps/s390/s390-32/multiarch/memcpy.c: Delete File. + +2018-12-18 Stefan Liebler + + * sysdeps/s390/ifunc-memcmp.h: New File. + * sysdeps/s390/memcmp.S: Move to ... + * sysdeps/s390/memcmp-z900.S ... here. + Move implementations from memcmp-s390x.s to here. + * sysdeps/s390/multiarch/memcmp-s390x.S: Delete File. + * sysdeps/s390/multiarch/Makefile (sysdep_routines): + Remove memcmp variants. + * sysdeps/s390/Makefile (sysdep_routines): + Add memcmp variants. + * sysdeps/s390/multiarch/ifunc-impl-list.c + (__libc_ifunc_impl_list): Adjust ifunc variants for + memcmp. + * sysdeps/s390/multiarch/memcmp.c: Move ifunc resolver + to ... + * sysdeps/s390/memcmp.c: ... here. + Adjust ifunc variants for memcmp. + +2018-12-18 Stefan Liebler + + * sysdeps/s390/s390-64/memcmp.S: Move to ... + * sysdeps/s390/memcmp.S: ... here. + Adjust to be usable for 31/64bit. + * sysdeps/s390/s390-32/memcmp.S: Delete File. + * sysdeps/s390/multiarch/Makefile (sysdep_routines): Add memcmp. + * sysdeps/s390/s390-32/multiarch/Makefile (sysdep_routines): + Remove memcmp. + * sysdeps/s390/s390-64/multiarch/Makefile: Likewise. + * sysdeps/s390/s390-64/multiarch/memcmp-s390x.S: Move to ... + * sysdeps/s390/multiarch/memcmp-s390x.S: ... here. + Adjust to be usable for 31/64bit. + * sysdeps/s390/s390-32/multiarch/memcmp-s390.S: Delete File. + * sysdeps/s390/s390-64/multiarch/memcmp.c: Move to ... + * sysdeps/s390/multiarch/memcmp.c: ... here. + * sysdeps/s390/s390-32/multiarch/memcmp.c: Delete File. + +2018-12-18 Stefan Liebler + + * sysdeps/s390/s390-32/bzero.S: Delete file. + * sysdeps/s390/s390-64/bzero.S: Likewise. + * sysdeps/s390/Makefile (sysdep_routines): Add bzero. + * sysdeps/s390/bzero.c: New file. + * sysdeps/s390/memset-z900.S: Add bzero entry points. + * sysdeps/s390/ifunc-memset.h: Add bzero function macros. + * sysdeps/s390/multiarch/ifunc-impl-list.c + (__libc_ifunc_impl_list): Add bzero ifunc variants. + +2018-12-18 Stefan Liebler + + * sysdeps/s390/ifunc-memset.h: New File. + * sysdeps/s390/memset.S: Move to ... + * sysdeps/s390/memset-z900.S ... here. + Move implementations from memset-s390x.s to here. + * sysdeps/s390/multiarch/memset-s390x.S: Delete File. + * sysdeps/s390/multiarch/Makefile (sysdep_routines): + Remove memset variants. + * sysdeps/s390/Makefile (sysdep_routines): + Add memset variants. + * sysdeps/s390/multiarch/ifunc-impl-list.c + (__libc_ifunc_impl_list): Adjust ifunc variants for + memset. + * sysdeps/s390/multiarch/memset.c: Move ifunc resolver + to ... + * sysdeps/s390/memset.c: ... here. + Adjust ifunc variants for memset. + +2018-12-18 Stefan Liebler + + * sysdeps/s390/s390-64/memset.S: Move to ... + * sysdeps/s390/memset.S: ... here. + Adjust to be usable for 31/64bit. + * sysdeps/s390/s390-32/memset.S: Delete File. + * sysdeps/s390/multiarch/Makefile (sysdep_routines): Add memset. + * sysdeps/s390/s390-32/multiarch/Makefile (sysdep_routines): + Remove memset. + * sysdeps/s390/s390-64/multiarch/Makefile: Likewise. + * sysdeps/s390/s390-64/multiarch/memset-s390x.S: Move to ... + * sysdeps/s390/multiarch/memset-s390x.S: ... here. + Adjust to be usable for 31/64bit. + * sysdeps/s390/s390-32/multiarch/memset-s390.S: Delete File. + * sysdeps/s390/s390-64/multiarch/memset.c: Move to ... + * sysdeps/s390/multiarch/memset.c: ... here. + * sysdeps/s390/s390-32/multiarch/memset.c: Delete File. + +2018-12-18 Stefan Liebler + + * sysdeps/s390/multiarch/ifunc-resolve.h + (s390_libc_ifunc_init, s390_libc_ifunc, + s390_vx_libc_ifunc2_redirected): Use hwcap instead of dl_hwcap. + +2018-12-18 Stefan Liebler + + * config.h.in (HAVE_S390_MIN_Z10_ZARCH_ASM_SUPPORT): New undefine. + * sysdeps/s390/configure.ac: Add check for z10 support. + * sysdeps/s390/configure: Regenerated. + +2018-12-18 H.J. Lu + + * sysdeps/i386/atomic-machine.h: Merged with ... + * sysdeps/x86_64/atomic-machine.h: To ... + * sysdeps/x86/atomic-machine.h: This. New file. + +2018-12-18 Florian Weimer + + Rewrite locale/gen-translit.pl in Python. + * locale/Makefile (generated): Add C-translit.h. + (before-compile): Add $(objpfx)C-translit.h. + (C-translit.h): Move to $(objpfx). Create target directory. + Build using Python script. + * locale/gen-translit.py: New file. + * locale/gen-translit.pl: Remove file. + * locale/C-translit.h.in: Change comment character to '#' for + easier parsing without a C preprocessor. + * locale/C-translit.h: Remove generated file. + * manual/install.texi (Tools for Compilation): Do not mention + C-translit.h. + * scripts/build-many-glibcs.py (Context.fix_glibc_timestamps): + Remove locale/C-translit.h. + * scripts/update-copyrights: Likewise. + * INSTALL: Regenerate. + +2018-12-18 Florian Weimer + + [BZ #23995] + * localedata/locales/bi_VU: Remove executable bit from file. + +2018-12-17 Albert ARIBAUD + + * include/time.h + (__localtime64): Add. + * manual/maint.texi: Document Y2038 symbol handling. + * time/localtime.c + (__localtime64): Add. + [__TIMESIZE != 64] (__localtime): Turn into a wrapper. + +2018-12-17 Joseph Myers + + * sysdeps/unix/sysv/linux/ia64/sysdep.h (ASM_CLOBBERS_6_COMMON): + Do not clobber r12. + + * scripts/glibcextract.py (compare_macro_consts): Take parameters + to allow extra macros from first or second sources. + * sysdeps/unix/sysv/linux/tst-mman-consts.py: New file. + * sysdeps/unix/sysv/linux/Makefile [$(subdir) = misc] + (tests-special): Add $(objpfx)tst-mman-consts.out. + ($(objpfx)tst-mman-consts.out): New makefile target. + +2018-12-17 Mao Han + + * sysdeps/unix/sysv/linux/Makefile: Add statx_cp.c. + * sysdeps/unix/sysv/linux/fxstat64.c: Add conditionals for kernel + without stat64 system call support. + * sysdeps/unix/sysv/linux/fxstatat64.c: Likewise. + * sysdeps/unix/sysv/linux/generic/wordsize-32/fxstat.c: Likewise. + * sysdeps/unix/sysv/linux/generic/wordsize-32/fxstatat.c: Likewise. + * sysdeps/unix/sysv/linux/generic/wordsize-32/lxstat.c: Likewise. + * sysdeps/unix/sysv/linux/generic/wordsize-32/lxstat64.c: Likewise. + * sysdeps/unix/sysv/linux/generic/wordsize-32/xstat.c: Likewise. + * sysdeps/unix/sysv/linux/generic/wordsize-32/xstat64.c: Likewise. + * sysdeps/unix/sysv/linux/mips/mips64/statx_cp.c: New file. + * sysdeps/unix/sysv/linux/statx_cp.c: Likewise. + * sysdeps/unix/sysv/linux/statx_cp.h: Likewise. + * sysdeps/unix/sysv/linux/wordsize-64/statx_cp.c: Likewise. + +2018-12-15 Paul Eggert + + regex: fix storage-exhaustion error + [BZ #18040] + * posix/regexec.c (get_subexp): + Do not continue if storage is exhausted. + +2018-12-15 Assaf Gordon + + regex: fix heap-use-after-free error + [BZ #18040] + Problem reported by Saito Takaaki in + https://debbugs.gnu.org/32592 + Call stack get_subexp->get_subexp_sub->clean_state_log_if_needed may + call extend_buffers which reallocates the re_string_t internal buffer. + Local variable 'buf' was not updated in such case, resulting in + use-after-free. + * posix/regexec.c (get_subexp): Update 'buf' after call to + get_subexp_sub. + +2018-12-15 Florian Weimer + + * support/blob_repeat.c (check_mul_overflow_size_t): New function. + (minimum_stride_size): Use it. + (support_blob_repeat_allocate): Likewise. + +2018-12-14 Joseph Myers + + * sysdeps/x86/fpu/bits/mathinline.h (asinh): Remove inline + definition. + (acosh): Likewise. + (atanh): Likewise. + +2018-12-14 Florian Weimer + + * manual/process.texi (Process Creation Concepts): Remove + documentation of process (ID) lifetime. List more process + creation functions. Reference Process Identification section. + (Process Identification): Add information about process ID + lifetime. Describe Linux thread/task IDs. + * manual/signal.texi (Signaling Another Process): Mention that the + signal is always sent to the process. + +2018-12-14 Gabriel F. T. Gomes + + * misc/Makefile (tests): Remove tst-efgcvt. Add tst-dbl-efgcvt + and tst-ldbl-efgcvt. + * misc/tst-efgcvt.c: Renamed to misc/tst-efgcvt-template.c. + * misc/tst-efgcvt-template.c: Renamed from misc/tst-efgcvt.c. + (struct testcase, efcvt_func, efcvt_r_func, ecvt_tests) + (fcvt_tests, output_error, output_r_error, do_test): Use the + macros defined in tst-dbl-efgcvt.c and tst-ldbl-efgcvt.c to: + select the type of floating-point variables and arguments; to + produce extra tests for double and conversion specifiers for + printf; and to set the names of called functions. + * misc/tst-dbl-efgcvt.c: New file that defines the macros used + in tst-efgcvt-template.c. + * misc/tst-ldbl-efgcvt.c: Likewise. + +2018-12-14 Stefan Liebler + + * nss/Makefile (tst-nss-test3.out): New rule. + +2018-12-13 Joseph Myers + + * sysdeps/mach/hurd/i386/init-first.c (_hurd_stack_setup): Do not + clobber sp. + +2018-12-13 fanjinke + + * sysdeps/x86/cpu-features.c (init_cpu_features): Check for + "HygonGenuine". + +2018-12-13 Andreas Schwab + + [BZ #23861] + * nptl/pthread_rwlock_common.c: Reindent. Fix typos. + (__pthread_rwlock_rdlock_full): Update expected value for + __readers while waiting on PTHREAD_RWLOCK_RWAITING. + * nptl/tst-rwlock-pwn.c: New file. + * nptl/Makefile (tests): Add tst-rwlock-pwn. + +2018-12-12 Joseph Myers + + * sysdeps/x86/fpu/bits/mathinline.h (hypot): Remove inline + definition. + +2018-12-12 Leonardo Sandoval + + * benchtests/scripts/compare_bench.py (do_compare): write to + stderr in casestat is not present. + * benchtests/scripts/compare_bench.py (plot_graphs): write to + stderr in case timings field is not present. Also string showing + the output filename goes into the stderr. + +2018-12-12 Leonardo Sandoval + + * benchtests/scripts/compare_bench.py (do_compare): Catch KeyError + and ZeroDivisorError exceptions. + * benchtests/scripts/compare_bench.py (compare_runs): Use stats + argument to loop through user provided statistics. + * benchtests/scripts/compare_bench.py (main): Include the --stats + argument. + +2018-12-12 Leonardo Sandoval + + * benchtests/scripts/compare_bench.py (compare_runs): Continue + instead of return. + +2018-12-12 Florian Weimer + + * sysdeps/posix/timespec_get.c: Add missing “any later version” + clause to copyright header. + +2018-12-12 Tulio Magno Quites Machado Filho + + [BZ #23614] + * sysdeps/powerpc/powerpc64/addmul_1.S (FUNC): Add CFI offset for + registers saved in the stack frame. + * sysdeps/powerpc/powerpc64/lshift.S (__mpn_lshift): Likewise. + * sysdeps/powerpc/powerpc64/mul_1.S (__mpn_mul_1): Likewise. + +2018-12-11 Gabriel F. T. Gomes + + * include/bits/monetary-ldbl.h: New file. + * include/bits/printf-ldbl.h: Likewise. + * include/bits/stdio-ldbl.h: Likewise. + * include/bits/stdlib-ldbl.h: Likewise. + * include/bits/syslog-ldbl.h: Likewise. + * include/bits/wchar-ldbl.h: Likewise. + +2018-12-11 Gabriel F. T. Gomes + + * libio/libio.h: Remove redirection for _IO_vfprintf. + +2018-12-11 Andreas Schwab + + * Makerules: Remove all references to abilist-pattern. + (update-all-abi): Simplify find expression. + +2018-12-11 Szabolcs Nagy + + [BZ #23961] + * math/auto-libm-test-in: Add new test case. + * math/auto-libm-test-out-pow: Regenerated. + * sysdeps/ieee754/flt-32/e_powf.c (__powf): Fix overflow check. + +2018-12-10 DJ Delorie + + [BZ #23948] + * support/test-container.c: Move postclean step to before we + change namespaces. + +2018-12-10 Joseph Myers + + * scripts/gen-as-const.py (main): Handle --python option. + * scripts/gen-py-const.awk: Remove. + * Makerules (py-const-script): Use gen-as-const.py. + ($(py-const)): Likewise. + * nptl/nptl-printers.py (MutexPrinter.read_status_no_robust): Mask + with 0xffffffff together with ~(PTHREAD_MUTEX_PRIO_CEILING_MASK). + (MutexAttributesPrinter.read_values): Mask with 0xffffffff + together with ~PTHREAD_MUTEXATTR_FLAG_BITS and + ~PTHREAD_MUTEX_NO_ELISION_NP. + * manual/README.pretty-printers: Update reference to + gen-py-const.awk. + + * scripts/glibcextract.py: New file. + * scripts/gen-as-const.py: Do not import os.path, re, subprocess + or tempfile. Import glibcexctract. + (compute_c_consts): Remove. Moved to glibcextract.py. + (gen_test): Update reference to compute_c_consts. + (main): Likewise. + * sysdeps/unix/sysv/linux/tst-signal-numbers.py: New file. + * sysdeps/unix/sysv/linux/tst-signal-numbers.sh: Remove. + * sysdeps/unix/sysv/linux/Makefile + ($(objpfx)tst-signal-numbers.out): Use tst-signal-numbers.py. + Redirect stderr as well as stdout. + +2018-12-10 Rafael Ávila de Espíndola + + [BZ #19767] + * sysdeps/unix/sysv/linux/mips/init-first.c: Remove #ifdef SHARED. + * sysdeps/unix/sysv/linux/mips/libc-vdso.h: Remove #ifdef SHARED. + * sysdeps/unix/sysv/linux/mips/mips32/sysdep.h: Define + ALWAYS_USE_VSYSCALL. + * sysdeps/unix/sysv/linux/mips/mips64/n32/sysdep.h: Define + ALWAYS_USE_VSYSCALL. + * sysdeps/unix/sysv/linux/mips/mips64/n64/sysdep.h: Define + ALWAYS_USE_VSYSCALL. + +2018-12-10 Florian Weimer + + [BZ #23972] + * sysdeps/unix/sysv/linux/getdents64.c (handle_overflow): Check + offset instead of count for clarity. Fix typo in comment. + (__old_getdents64): Keep track of previous offset. Use it to call + handle_overflow. + * sysdeps/unix/sysv/linux/tst-readdir64-compat.c (do_test): Check + that d_off is never zero. + +2018-12-10 Andreas Schwab + + * sysdeps/unix/sysv/linux/powerpc/powerpc64/*-le.abilist: Move to + sysdeps/unix/sysv/linux/powerpc/powerpc64/le/*.abilist. + * sysdeps/unix/sysv/linux/powerpc/powerpc64/*.abilist: Move to + sysdeps/unix/sysv/linux/powerpc/powerpc64/be/*.abilist. + * sysdeps/powerpc/Makefile (abilist-pattern): Don't define. + +2018-12-10 Joseph Myers + + * timezone/private.h: Update from tzcode 2018g. + * timezone/tzfile.h: Likewise. + * timezone/tzselect.ksh: Likewise. + * timezone/zdump.c: Likewise. + * timezone/zic.c: Likewise. + +2018-12-08 Paul Pluzhnikov + + [BZ #23490] + * sysdeps/unix/sysv/linux/x86/tst-cet-property-2.c + (do_test): Adjust buffer size and fix format. + +2018-12-07 DJ Delorie + + [BZ #23907] + * malloc/tst-tcfree3.c: New. + * malloc/Makefile: Add it. + +2018-12-07 H.J. Lu + + * include/sched.h (__getcpu): Don't use __typeof__ (getcpu). + +2018-12-07 Gabriel F. T. Gomes + + * libio/libioP.h (SCANF_LDBL_USES_FLOAT128): New macro to be + used as a mask for the mode argument of __vfscanf_internal and + __vfwscanf_internal. + * stdio-common/vfscanf-internal.c + [defined COMPILE_WSCANF && __HAVE_FLOAT128_UNLIKE_LDBL] + (__strtof128_internal): Define to __wcstof128_internal. + [__HAVE_FLOAT128_UNLIKE_LDBL] (__vfscanf_internal): Call + __strtof128_internal or __wcstof128_internal when the format of + long double is the same as _Float128. + +2018-12-05 Samuel Thibault + + * include/unistd.h (__confstr): Add prototype and hidden prototype. + * posix/confstr.c (confstr): Rename to __confstr. + (__confstr): Add hidden def. + (confstr): Add weak alias for __confstr. + * sysdeps/mach/hurd/spawni.c (__spawni): Call __confstr instead of + confstr. + +2018-12-07 H.J. Lu + + * NEWS: Mention getcpu. + * include/sched.h (__getcpu): New libc_hidden_proto. + * manual/resource.texi: Document getcpu. + * sysdeps/unix/sysv/linux/Makefile (sysdep_routines): Add getcpu. + * sysdeps/unix/sysv/linux/Versions (GLIBC_2.29): Add getcpu. + * sysdeps/unix/sysv/linux/aarch64/libc.abilist: Add getcpu. + * sysdeps/unix/sysv/linux/alpha/libc.abilist: Likewise. + * sysdeps/unix/sysv/linux/arm/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/sysv/linux/powerpc/powerpc32/nofpu/libc.abilist: + Likewise. + * sysdeps/unix/sysv/linux/powerpc/powerpc64/libc-le.abilist: + Likewise. + * sysdeps/unix/sysv/linux/powerpc/powerpc64/libc.abilist: + Likewise. + * sysdeps/unix/sysv/linux/riscv/rv64/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/x86_64/64/libc.abilist: Likewise. + * sysdeps/unix/sysv/linux/x86_64/x32/libc.abilist: Likewise. + * sysdeps/unix/sysv/linux/bits/sched.h (getcpu): New prototype. + * sysdeps/unix/sysv/linux/getcpu.c: New file. + * sysdeps/unix/sysv/linux/tst-skeleton-affinity.c (test_size): + Also check getcpu. + +2018-12-07 Samuel Thibault + + * sysdeps/mach/hurd/spawni.c (child_lookup_under, child_fchdir): New + functions. + (__spawni): Handle spawn_do_fchdir by calling child_fchdir. + +2018-12-07 Florian Weimer + + [BZ #17405] + * posix/Makefile (routines): Add spawn_faction_addfchdir. + * posix/Versions (GLIBC_2.29): Export + posix_spawn_file_actions_addfchdir_np. + * posix/spawn.h (posix_spawn_file_actions_addfchdir_np): Declare. + * posix/spawn_faction_destroy.c + (__posix_spawn_file_actions_destroy): Handle spawn_do_fchdir. + * posix/spawn_int.h (struct __spawn_action): Add spawn_do_fchdir + and the field action.fchdir_action. + * posix/tst-spawn-chdir.c (add_chdir): New function. + (do_test): Add do_fchdir loop. Call add_chdir. + * sysdeps/posix/spawni.c (__spawni_child): Handle spawn_do_fchdir. + * sysdeps/unix/sysv/linux/spawni.c (__spawni_child): Likewise. + * sysdeps/mach/hurd/i386/libc.abilist (GLIBC_2.29): Add + posix_spawn_file_actions_addfchdir_np. + * sysdeps/unix/sysv/linux/aarch64/libc.abilist (GLIBC_2.29): + Likewise. + * sysdeps/unix/sysv/linux/alpha/libc.abilist (GLIBC_2.29): + Likewise. + * sysdeps/unix/sysv/linux/arm/libc.abilist (GLIBC_2.29): Likewise. + * sysdeps/unix/sysv/linux/hppa/libc.abilist (GLIBC_2.29): + Likewise. + * sysdeps/unix/sysv/linux/i386/libc.abilist (GLIBC_2.29): + Likewise. + * sysdeps/unix/sysv/linux/ia64/libc.abilist (GLIBC_2.29): + Likewise. + * sysdeps/unix/sysv/linux/m68k/coldfire/libc.abilist (GLIBC_2.29): + Likewise. + * sysdeps/unix/sysv/linux/m68k/m680x0/libc.abilist (GLIBC_2.29): + Likewise. + * sysdeps/unix/sysv/linux/microblaze/libc.abilist (GLIBC_2.29): + Likewise. + * sysdeps/unix/sysv/linux/mips/mips32/fpu/libc.abilist + (GLIBC_2.29): Likewise. + * sysdeps/unix/sysv/linux/mips/mips32/nofpu/libc.abilist + (GLIBC_2.29): Likewise. + * sysdeps/unix/sysv/linux/mips/mips64/n32/libc.abilist + (GLIBC_2.29): Likewise. + * sysdeps/unix/sysv/linux/mips/mips64/n64/libc.abilist + (GLIBC_2.29): Likewise. + * sysdeps/unix/sysv/linux/nios2/libc.abilist (GLIBC_2.29): + Likewise. + * sysdeps/unix/sysv/linux/powerpc/powerpc32/fpu/libc.abilist + (GLIBC_2.29): Likewise. + * sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/libc.abilist + (GLIBC_2.29): Likewise. + * sysdeps/unix/sysv/linux/powerpc/powerpc64/libc-le.abilist + (GLIBC_2.29): Likewise. + * sysdeps/unix/sysv/linux/powerpc/powerpc64/libc.abilist + (GLIBC_2.29): Likewise. + * sysdeps/unix/sysv/linux/riscv/rv64/libc.abilist (GLIBC_2.29): + Likewise. + * sysdeps/unix/sysv/linux/s390/s390-32/libc.abilist (GLIBC_2.29): + Likewise. + * sysdeps/unix/sysv/linux/s390/s390-64/libc.abilist (GLIBC_2.29): + Likewise. + * sysdeps/unix/sysv/linux/sh/libc.abilist (GLIBC_2.29): Likewise. + * sysdeps/unix/sysv/linux/sparc/sparc32/libc.abilist (GLIBC_2.29): + Likewise. + * sysdeps/unix/sysv/linux/sparc/sparc64/libc.abilist (GLIBC_2.29): + Likewise. + * sysdeps/unix/sysv/linux/x86_64/64/libc.abilist (GLIBC_2.29): + Likewise. + * sysdeps/unix/sysv/linux/x86_64/x32/libc.abilist (GLIBC_2.29): + Likewise. + +2018-12-06 Joseph Myers + + * manual/texinfo.tex: Update to version 2018-09-21.20 with + trailing whitespace removed. + * scripts/config.guess: Update to version 2018-11-28. + * scripts/config.sub: Update to version 2018-11-28. + * scripts/install-sh: Update to version 2018-03-11.20. + * scripts/mkinstalldirs: Update to version 2018-03-07.03. + * scripts/move-if-change: Update to version 2018-03-07 03:47. + +2018-12-07 Florian Weimer + + [BZ #23927] + CVE-2018-19591 + * inet/tst-if_index-long.c: New file. + * inet/Makefile (tests): Add tst-if_index-long. + +2018-12-07 Florian Weimer + + * support/check.h (support_record_failure_is_failed): Declare. + * support/descriptors.h: New file. + * support/support_descriptors.c: Likewise. + * support/tst-support_descriptors.c: Likewise. + * support/support_record_failure.c + (support_record_failure_is_failed): New function. + * support/Makefile (libsupport-routines): Add support_descriptors. + (tests): Add tst-support_descriptors. + +2018-12-05 Zack Weinberg + Gabriel F. T. Gomes + + * stdio-common/vfprintf-internal.c + (__vfprintf_internal, __vfwprintf_internal): Don't use __ldbl_is_dbl. + * sysdeps/generic/math_ldbl_opt.h: Remove __ldbl_is_dbl. + * sysdeps/ieee754/ldbl-opt/math_ldbl_opt.h: Remove __ldbl_is_dbl + and __no_long_double. + * sysdeps/ieee754/ldbl-opt/math_ldbl_opt.c: Remove file. + * sysdeps/ieee754/ldbl-opt/Makefile (routines): Remove math_ldbl_opt. + * sysdeps/ieee754/ldbl-opt/nldbl-compat.c: Remove + libc_hidden_proto and libc_hidden_def from all __nldbl_*printf* + and __nldbl_*syslog* functions. + (__nldbl_cleanup, set_no_long_double, clear_no_long_double): Remove. + (__nldbl___asprintf, __nldbl_dprintf, __nldbl_fprintf) + (__nldbl_fwprintf, __nldbl_printf, __nldbl_sprintf) + (__nldbl_vfprintf, __nldbl___vsprintf, __nldbl_obstack_vprintf) + (__ndlbl_obstack_printf, __nldbl_snprintf, __nldbl_swprintf) + (__nldbl_vasprintf, __nldbl_vdprintf, __nldbl_vfwprintf) + (__nldbl_vprintf, __nldbl_vsnprintf, __ndlbl_vswprintf) + (__nldbl_vwprintf, __nldbl_wprintf): + Directly call the appropriate __v*printf_internal routine, passing + PRINTF_LDBL_IS_DBL. Do not mess with __no_long_double. Normalize + variable names. + (__nldbl___fprintf_chk, __nldbl___fwprintf_chk) + (__nldbl___printf_chk, __nldbl___snprintf_chk) + (__nldbl___sprintf_chk, __nldbl___swprintf_chk) + (__nldbl___vfprintf_chk, __nldbl___vfwprintf_chk) + (__nldbl___vprintf_chk, __nldbl___vsnprintf_chk) + (__nldbl___vsprintf_chk, __nldbl___vswprintf_chk) + (__nldbl___vwprintf_chk, __nldbl___wprintf_chk) + (__nldbl___vasprintf_chk, __nldbl___asprintf_chk) + (__nldbl___vdprintf_chk, __nldbl___dprintf_chk) + (__nldbl___obstack_vprintf_chk, __nldbl___obstack_printf_chk): + Likewise, and also pass PRINTF_FORTIFY when appropriate. + (__nldbl_syslog, __nldbl_vsyslog): + Directly call __vsyslog_internal, passing PRINTF_LDBL_IS_DBL. + (__nldbl_syslog_chk): Likewise, and also pass PRINTF_FORTIFY when + appropriate. + (__nldbl_vsyslog_chk): Likewise, and also pass PRINTF_FORTIFY when + appropriate. + +2018-12-05 Zack Weinberg + Gabriel F. T. Gomes + + [BZ #11319] + * libio/iovsprintf.c (_IO_str_chk_overflow, libio_vtable): + Moved here from debug/vsprintf_chk.c. + (__vsprintf_internal): Add 'maxlen' argument. Change the setup + and completion logic for the strfile to match exactly what + __vsprintf_chk used to do, except, when maxlen is -1, pass -1 to + _IO_str_init_static_internal instead of maxlen-1. + (__vsprintf): Pass -1 as maxlen to __vsprintf_internal. + * stdio-common/sprintf.c (__sprintf): Pass -1 as maxlen to + __vsprintf_internal. + + * debug/vsprintf_chk.c (__vsprintf_chk) + * debug/sprintf_chk.c (__sprintf_chk): + Directly call __vsprintf_internal, passing PRINTF_FORTIFY if + 'flags' argument is positive, and slen as maxlen. No need to lock + the FILE and/or construct a temporary FILE. Minimize and normalize + header inclusions and variable names. Do not libc_hidden_def anything. + + * debug/asprintf_chk.c (__asprintf_chk) + * debug/dprintf_chk.c (__dprintf_chk) + * debug/fprintf_chk.c (__fprintf_chk) + * debug/fwprintf_chk.c (__fwprintf_chk) + * debug/printf_chk.c (__printf_chk) + * debug/snprintf_chk.c (__snprintf_chk) + * debug/swprintf_chk.c (__swprintf_chk) + * debug/vasprintf_chk.c (__vasprintf_chk) + * debug/vdprintf_chk.c (__vdprintf_chk) + * debug/vfprintf_chk.c (__vfprintf_chk) + * debug/vfwprintf_chk.c (__vfwprintf_chk) + * debug/vprintf_chk.c (__vprintf_chk) + * debug/vsnprintf_chk.c (__vsnprintf_chk) + * debug/vswprintf_chk.c (__vswprintf_chk) + * debug/vwprintf_chk.c (__vwprintf_chk) + * debug/wprintf_chk.c (__wprintf_chk): + Directly call the corresponding vxxprintf_internal function, passing + PRINTF_FORTIFY if 'flag' argument is positive. No need to lock + the FILE and/or construct a temporary FILE. Minimize and normalize + header inclusions and variable names. Do not libc_hidden_def anything. + + * debug/obprintf_chk.c (__obstack_printf_chk): Directly call + __obstack_vprintf_internal. + (__obstack_vprintf_chk): Convert into a wrapper that calls + __obstack_vprintf_internal (these two functions already had the + same code) and move to new file... + * debug/vobprintf_chk.c (__obstack_vprintf_chk): ... here. New + file. + * debug/obprintf.c (__obstack_vprintf_internal): Remove the checking of + the flags argument and the setting of _IO_FLAGS2_FORTIFY. + * debug/Makefile (routines): Add vobprintf_chk. + + * sysdeps/ieee754/ldbl-opt/nldbl-compat.c + (__nldbl___vsprintf): Pass -1 as maxlen to __vsprintf_internal. + (__nldbl___vfprintf_chk, __nldbl___vsnprintf_chk) + (__nldbl___vsprintf_chk, __nldbl___vswprintf_chk) + (__nldbl___vasprintf_chk, __nldbl___vdprintf_chk) + (__nldbl___obstack_vfprintf_chk): + Directly call the corresponding vxxprintf_internal function, + passing PRINTF_FORTIFY if 'flag' argument is positive. If necessary, + duplicate comparison of slen with 0 or maxlen from the corresponding + non-__nldbl function. + + * include/stdio.h (__vsnprintf_chk, __vfprintf_chk, __vasprintf_chk) + (__vdprintf_chk, __obstack_vfprintf_chk): Remove libc_hidden_proto. + * include/wchar.h (__vfwprintf_chk, __vswprintf_chk): + Remove libc_hidden_proto. + + * stdio-common/vfprintf-internal.c + (__vfprintf_internal, __vfwprintf_internal): + Do not check _IO_FLAGS2_FORTIFY. + * libio/libio.h (_IO_FLAGS2_FORTIFY): Remove. + * libio/libioP.h: Update prototype of __vsprintf_internal and add + a comment explaining why it has the maxlen argument. + (_IO_acquire_lock_clear_flags2_fct): Remove. + (_IO_acquire_lock_clear_flags2): Remove. + (_IO_release_lock): Remove conditional statement which will + now never execute. + (_IO_acquire_lock): Remove variable which is now unused. + * sysdeps/generic/stdio-lock.h (_IO_acquire_lock_clear_flags2): Remove. + * sysdeps/nptl/stdio-lock.h (_IO_acquire_lock_clear_flags2): Remove. + + * stdio-common/Makefile (tests): Add tst-bz11319 and + tst-bz11319-fortify2. + (CFLAGS-tst-bz11319-fortify2.c): New macro. + * stdio-common/tst-bz11319-fortify2.c: New file. + * stdio-common/tst-bz11319.c: Likewise. + +2018-12-05 Zack Weinberg + Gabriel F. T. Gomes + + * misc/syslog.c: Include libioP.h, not iolibio.h. + (__vsyslog_internal): New function with the former body of + __vsyslog_chk; takes mode_flags argument same as + __v*printf_internal. Call __vfprintf_internal directly. + + (__vsyslog_chk): Now a wrapper around __vsyslog_internal. + Remove libc_hidden_def. + (__syslog, __syslog_chk): Use __vsyslog_internal. + (__vsyslog): Move to just below __syslog. Use __vsyslog_internal. + + * include/sys/syslog.h: Add multiple inclusion guard. + Add prototype for __vsyslog_internal. + Remove declaration and libc_hidden_proto for __vsyslog_chk. + + * sysdeps/ieee754/ldbl-opt/nldbl-compat.c (__nldbl___vsyslog_chk): + Use __vsyslog_internal. + +2018-12-05 Zack Weinberg + Gabriel F. T. Gomes + + * libio/libioP.h (__vfprintf_internal, __vfwprintf_internal) + (__vasprintf_internal, __vdprintf_internal, __obstack_vprintf_internal) + (__vsprintf_internal, __vsnprintf_internal, __vswprintf_internal): + New functions. + (PRINTF_LDBL_IS_DBL, PRINTF_FORTIFY): New constants. + (_IO_vasprintf, _IO_vdprintf, _IO_vsnprintf): Remove prototypes. + + * stdio-common/vfprintf-internal.c: Rename from vfprintf.c. + Include wctype.h here if COMPILE_WPRINTF is defined. + Define __vfprintf_internal or __vfwprintf_internal, depending + on COMPILE_WPRINTF. + Temporarily, on entry to this function, update mode_flags + according to the environmental settings corresponding to + PRINTF_LDBL_IS_DBL and PRINTF_FORTIFY. + Throughout, check mode_flags instead of __ldbl_is_dbl and + _IO_FLAGS2_FORTIFY on the destination FILE. + * stdio-common/vfwprintf-internal.c: Rename from vfwprintf.c. + Include vfprintf-internal.c. Don't include wctype.h. + * stdio-common/vfprintf.c: New file. Just define __vfprintf + as a wrapper around __vfprintf_internal, with aliases _IO_vfprintf + and vfprintf. + * stdio-common/vfwprintf.c: New file. Just define __vfwprintf + as a wrapper around __vfwprintf_internal, with aliases _IO_vfwprintf + and vfwprintf. + * stdio-common/Makefile: Add vfprintf-internal and vfwprintf-internal. + + * libio/iovdprintf.c (_IO_vdprintf): Rename to __vdprintf_internal + and add mode_flags argument; use __vfprintf_internal. + (__vdprintf): New function. Alias vdprintf to this. + * libio/iovsprintf.c (_IO_vsprintf, __vsprintf): Similarly. + * libio/vasprintf.c (_IO_vasprintf, __vasprintf): Similarly. + * libio/obprintf.c (_IO_obstack_vprintf, __obstack_vprintf): Similarly. + (__obstack_printf): Use __obstack_printf_internal. + * libio/vsnprintf.c (_IO_vsnprintf, ___vsnprintf): Similarly, with + public aliases __vsnprintf and vsnprintf. + Remove use of ldbl_hidden_def, since __vsnprintf is no longer + called internally. + * libio/vswprintf (_IO_vswprintf, __vswprintf): Similarly, with + public aliases _IO_vsprintf and vsprintf. + * libio/swprintf.c (__swprintf): Use __vswprintf_internal. + * stdio-common/asprintf.c (__asprintf): Use __vasprintf_internal. + * stdio-common/dprintf.c (__dprintf): Use __vdprintf_internal. + * stdio-common/snprintf.c (__snprintf): Use __vsprintf_internal. + * stdio-common/sprintf.c (__sprintf): Use __vsprintf_internal. + + * debug/obprintf_chk.c, debug/vasprintf_chk.c, debug/vdprintf_chk.c + * debug/vsnprintf_chk.c, debug/vsprintf_chk.c, hurd/vpprintf.c + * stdio-common/fprintf.c, stdio-common/fxprintf.c + * stdio-common/printf.c: Use __vfprintf_internal. + + * debug/fwprintf_chk.c, debug/vfwprintf_chk.c, debug/vswprintf_chk.c + * debug/vwprintf_chk.c, debug/wprintf_chk.c, libio/fwprintf.c + * libio/vwprintf.c, libio/wprintf.c: Use __vfwprintf_internal. + + * sysdeps/ieee754/ldbl-opt/nldbl-compat.c: Use __vsprintf_internal, + __obstack_vprintf_internal, __vasprintf_internal, __vdprintf_internal, + __vsnprintf_internal, __vswprintf_internal, __vfprintf_internal, and + __vfwprintf_internal. + + * libio/libio.h: Remove libc_hidden_proto and declaration for + _IO_vfprintf. + Remove declaration of _IO_vfwprintf. + * libio/iolibio.h: Remove libc_hidden_proto and declaration for + _IO_vsprintf. + Remove declarations of _IO_vswprintf, _IO_obstack_printf, and + _IO_obstack_printf. + * include/stdio.h: Add prototype for __vasprintf. + (__vsnprintf): Remove declaration, because there are no more + internal calls. + * include/wchar.h (__vfwprintf, __vswprintf): Remove + declaration, because there are no more internal calls. + + * argp/argp-fmtstream.c (__argp_fmtstream_printf): Use + __vsnprintf_internal, instead of _IO_vsnprintf. + * argp/argp-help.c (__argp_error, __argp_failure): Use + __vasprintf_internal, instead of _IO_vasprintf. + * argp/argp-namefrob.h (__vsnprintf): Do not undefined then + redefine, because there are no more internal calls. + +2018-12-05 Zack Weinberg + Gabriel F. T. Gomes + + * stdio-common/vfscanf-internal.c: Don't look at __ldbl_is_dbl. + * sysdeps/ieee754/ldbl-opt/ndlbl-compat.c: + Include libio/strfile.h instead of libioP.h. + (__nldbl_IO_vfscanf, __ndlbl___vfscanf, __nldbl_sscanf) + (__nldbl___vsscanf, __nldbl_vscanf, __nldbl_fscanf) + (__nldbl_scanf, __nldbl_vfwscanf, __nldbl_swscanf) + (__nldbl_vswscanf, __nldbl_vwscanf, __nldbl_fwscanf) + (__nldbl_wscanf): Call __vfscanf_internal / __vfwscanf_internal + directly, passing SCANF_LDBL_IS_DBL. Set up a strfile if + necessary. Do not set __no_long_double. Normalize variable names. + (__nldbl___isoc99_vfscanf, __nldbl___isoc99_sscanf) + (__nldbl___isoc99_vsscanf, __nldbl___isoc99_vscanf) + (__nldbl___isoc99_fscanf, __nldbl___isoc99_scanf) + (__nldbl___isoc99_vfwscanf, __nldbl___isoc99_swscanf) + (__nldbl___isoc99_vswscanf, __nldbl___isoc99_vwscanf) + (__nldbl___isoc99_fwscanf, __nldbl___isoc99_wscanf): + Call __vfscanf_internal / __vfwscanf_internal directly, passing + SCANF_LDBL_IS_DBL | SCANF_ISOC99_A. Set up a strfile if necessary. + Do not set __no_long_double. Normalize variable names. + +2018-12-05 Zack Weinberg + Gabriel F. T. Gomes + + * stdio-common/isoc99_scanf.c + * stdio-common/isoc99_fscanf.c + * stdio-common/isoc99_sscanf.c + * stdio-common/isoc99_vscanf.c + * stdio-common/isoc99_vfscanf.c + * stdio-common/isoc99_vsscanf.c + * wcsmbs/isoc99_wscanf.c + * wcsmbs/isoc99_fwscanf.c + * wcsmbs/isoc99_swscanf.c + * wcsmbs/isoc99_vwscanf.c + * wcsmbs/isoc99_vfwscanf.c + * wcsmbs/isoc99_vswscanf.c: + Pass SCANF_ISOC99_A to __vfscanf_internal and/or __vfwscanf_internal. + Do not set _IO_FLAGS2_SCANF_STD on the FILE passed to that function. + No need to lock and unlock the FILE passed to that function. + + * stdio-common/vfscanf-internal.c + (__vfscanf_internal, __vfwscanf_internal): + Don't look at _IO_FLAGS2_SCANF_STD. + * libio/libioP.h (_IO_acquire_lock_clear_flags2_fct) + (_IO_release_lock): Don't clear _IO_FLAGS2_SCANF_STD. + * libio/libio.h (_IO_FLAGS2_SCANF_STD): Delete. + +2018-12-05 Zack Weinberg + Gabriel F. T. Gomes + + * libio/libioP.h (SCANF_LDBL_IS_DBL, SCANF_ISOC99_A): New constants. + (__vfscanf_internal, __vfwscanf_internal): New function prototypes. + * libio/libio.h: Remove libc_hidden_proto for _IO_vfscanf. + * libio/strfile.h: Add multiple inclusion guard. + (_IO_strfile_read, _IO_strfile_readw): New inline functions. + + * sysdeps/generic/math_ldbl_opt.h: Include shlib-compat.h, for + consistency with the other version of this file. + (ldbl_compat_symbol): New macro. + * sysdeps/ieee754/ldbl-opt/math_ldbl_opt.h (ldbl_compat_symbol): + New macro. + + * stdio-common/vfscanf-internal.c: Rename from vfscanf.c. + Define __vfscanf_internal or __vfwscanf_internal, depending on + COMPILE_WSCANF; don't define any other public symbols. + Remove errval and code to set errp. + Temporarily check __ldbl_is_dbl and _IO_FLAGS2_SCANF_STD as well + as the mode_flags argument. + (encode_error, conv_error, input_error): Don't set errval. + * stdio-common/vfwscanf-internal.c: Rename from vfwscanf.c. + Include vfscanf-internal.c. + * stdio-common/vfscanf.c: New file defining the public entry + point vfscanf, which calls __vfscanf_internal. + * stdio-common/vfwscanf.c: New file defining the public entry + point vfwscanf, which calls __vfwscanf_internal. + + * stdio-common/iovfscanf.c: New file. + * stdio-common/iovfwscanf.c: Likewise. + + * stdio-common/Makefile (routines): Add vfscanf-internal, + vfwscanf-internal, iovfscanf, iovfwscanf. + * stdio-common/Versions: Mention GLIBC_2.29, so that + it can be used in SHLIB_COMPAT expressions. + * sysdeps/ieee754/ldbl-opt/nldbl-compat.c (__nldbl__IO_vfscanf): + Wrap definition and compat_symbol line in #if SHLIB_COMPAT. + Call __vfscanf_internal, instead of _IO_vfscanf. + (__nldbl___vfscanf): Call __vfscanf_internal, instead of + _IO_vfscanf. + (__nldbl_vfwscanf): Call __vfwscanf_internal, instead of + _IO_vfwscanf. + + * libio/iovsscanf.c: Clean up includes, when possible. Use + _IO_strfile_read or _IO_strfile_readw, when needed. Call + __vfscanf_internal or __vfwscanf_internal directly. + * libio/iovswscanf.c: Likewise. + * libio/swscanf.c: Likewise. + * libio/vscanf.c: Likewise. + * libio/vwscanf.c: Likewise. + * libio/wscanf.c: Likewise. + * stdio-common/isoc99_fscanf.c: Likewise. + * stdio-common/isoc99_scanf.c: Likewise. + * stdio-common/isoc99_sscanf.c: Likewise. + * stdio-common/isoc99_vfscanf.c: Likewise. + * stdio-common/isoc99_vscanf.c: Likewise. + * stdio-common/isoc99_vsscanf.c: Likewise. + * stdio-common/scanf.c: Likewise. + * stdio-common/sscanf.c: Likewise. + * wcsmbs/isoc99_fwscanf.c: Likewise. + * wcsmbs/isoc99_swscanf.c: Likewise. + * wcsmbs/isoc99_vfwscanf.c: Likewise. + * wcsmbs/isoc99_vswscanf.c: Likewise. + * wcsmbs/isoc99_vwscanf.c: Likewise. + * wcsmbs/isoc99_wscanf.c: Likewise. + +2018-12-05 Albert ARIBAUD + + * include/time.h + (__tz_compute): Replace time_t with __time64_t. + (__tz_convert): Replace time_t* with __time64_t. + (__offtime): Replace time_t* with __time64_t. + * time/gmtime.c + (__gmtime_r): Adjust call to __tz_convert. + (gmtime): Likewise. + * time/localtime.c + (__localtime_r): Likewise. + (localtime): Likewise. + * time/offtime.c: Replace time_t with __time64_t. + * time/tzset.c: Likewise. + +2018-12-04 Joseph Myers + + * Makefile ($(objpfx)testroot.pristine/install.stamp): Do not run + dynamic linker unless [$(run-built-tests) = yes]. + +2018-12-03 DJ Delorie + + * support/test-container.c (check_for_unshare_hints): New. + (main): Call it if unshare fails. Add support for "su" scriptlet + command. + +2018-12-03 Joseph Myers + + * scripts/gen-as-const.py (compute_c_consts): Take an argument + 'START' to indicate that start text should be output. + (gen_test): Likewise. + (main): Generate 'START' for first symbol or '--' line, or at end + of input if not previously generated. + +2018-12-03 Rafael Ávila de Espíndola + + [BZ #19767] + * sysdeps/unix/sysv/linux/arm/init-first.c: Remove #ifdef SHARED. + * sysdeps/unix/sysv/linux/arm/libc-vdso.h: Remove #ifdef SHARED. + * sysdeps/unix/sysv/linux/arm/sysdep.h: Define + ALWAYS_USE_VSYSCALL. + +2018-12-03 Adhemerval Zanella + + [BZ #23913] + * sysdeps/posix/spawni.c (maybe_script_execute): Increment size of + new_argv by one. + +2018-12-03 Carlos O'Donell + + [BZ #23923] + * locale/programs/localedef.c: Declare boolean hard_links default true. + (options): Add --no-hard-links option. + (parse_opt): Add OPT_NO_HARD_LINKS case and set hard_links to false. + * locale/programs/localedef.h: Declare prototype for hard_links. + * locale/programs/locfile.c (write_locale_data): Don't use hard + links if hard_links is false. + +2018-12-03 H.J. Lu + + * sysdeps/x86/cacheinfo.c (intel_check_word): Updated for + cpu_features_basic. + (__cache_sysconf): Likewise. + (init_cacheinfo): Likewise. + * sysdeps/x86/cpu-features.c (get_extended_indeces): Also + populate COMMON_CPUID_INDEX_80000007 and + COMMON_CPUID_INDEX_80000008. + (get_common_indices): Also populate COMMON_CPUID_INDEX_D_ECX_1. + Use CPU_FEATURES_CPU_P (cpu_features, XSAVEC) to check if + XSAVEC is available. Set the bit_arch_XXX_Usable bits. + (init_cpu_features): Use _Static_assert on + index_arch_Fast_Unaligned_Load. + __get_cpuid_registers and __get_arch_feature. Updated for + cpu_features_basic. Set stepping in cpu_features. + * sysdeps/x86/cpu-features.h: (FEATURE_INDEX_1): Changed to enum. + (FEATURE_INDEX_2): New. + (FEATURE_INDEX_MAX): Changed to enum. + (COMMON_CPUID_INDEX_D_ECX_1): New. + (COMMON_CPUID_INDEX_80000007): Likewise. + (COMMON_CPUID_INDEX_80000008): Likewise. + (cpuid_registers): Likewise. + (cpu_features_basic): Likewise. + (CPU_FEATURE_USABLE): Likewise. + (bit_arch_XXX_Usable): Likewise. + (cpu_features): Use cpuid_registers and cpu_features_basic. + (bit_arch_XXX): Reweritten. + (bit_cpu_XXX): Likewise. + (index_cpu_XXX): Likewise. + (reg_XXX): Likewise. + * sysdeps/x86/tst-get-cpu-features.c: Include and + . + (CHECK_CPU_FEATURE): New. + (CHECK_CPU_FEATURE_USABLE): Likewise. + (cpu_kinds): Likewise. + (do_test): Print vendor, family, model and stepping. Check + HAS_CPU_FEATURE and CPU_FEATURE_USABLE. + (TEST_FUNCTION): Removed. + Include instead of + "../../test-skeleton.c". + * sysdeps/x86_64/multiarch/sched_cpucount.c (__sched_cpucount): + Check POPCNT instead of POPCOUNT. + * sysdeps/x86_64/multiarch/test-multiarch.c (do_test): Likewise. + +2018-12-03 Samuel Thibault + + * scripts/gen-as-const.py (main): Avoid emitting empty line when + there is no element in `consts'. + +2018-12-01 Florian Weimer + + * support/support_capture_subprocess.c + (support_capture_subprocess): Check that pipe descriptors have + expected values. Close original pipe descriptors in subprocess. + +2018-12-01 Samuel Thibault + + [BZ #23032] + * sysdeps/htl/pt-barrier-init.c (pthread_barrier_init): Fix comparing + attr with __pthread_default_barrierattr. + * sysdeps/htl/pt-cond-init.c (__pthread_cond_init): Fix comparing + attr with __pthread_default_condattr. + * sysdeps/htl/pt-mutex-init.c (_pthread_mutex_init): Fix comparing + attr with __pthread_default_mutexattr. + * sysdeps/htl/pt-rwlock-init.c (_pthread_rwlock_init): Fix comparing + attr with __pthread_default_rwlockattr. + +2018-12-01 Kemi Wang + + * manual/tunables.texi (POSIX Thread Tunables): New node. + * nptl/Makefile (libpthread-routines): Add pthread_mutex_conf. + * nptl/nptl-init.c: Include pthread_mutex_conf.h + (__pthread_initialize_minimal_internal) [HAVE_TUNABLES]: Call + __pthread_tunables_init. + * nptl/pthreadP.h (MAX_ADAPTIVE_COUNT): Remove. + (max_adaptive_count): Define. + * nptl/pthread_mutex_conf.c: New file. + * nptl/pthread_mutex_conf.h: New file. + * sysdeps/generic/adaptive_spin_count.h: New file. + * sysdeps/nptl/dl-tunables.list: New file. + * nptl/pthread_mutex_lock.c (__pthread_mutex_lock): Use + max_adaptive_count () not MAX_ADAPTIVE_COUNT. + * nptl/pthread_mutex_timedlock.c (__pthrad_mutex_timedlock): + Likewise. + +2018-12-01 Paul Pluzhnikov + + [BZ #20544] + * stdlib/cxa_atexit.c (__internal_atexit): assert func != NULL. + * stdlib/on_exit.c (__on_exit): Likewise. + * stdlib/Makefile (tests): Add tst-bz20544. + * stdlib/tst-bz20544.c: New test. + +2018-11-30 Rafael Ávila de Espíndola + + [BZ #19767] + * sysdeps/unix/sysv/linux/i386/init-first.c: Don't check SHARED. + * sysdeps/unix/sysv/linux/i386/sysdep.h (ALWAYS_USE_VSYSCALL): + New. + +2018-11-30 Florian Weimer + + * scripts/abilist.awk: Print "0x0" for size 0. Handle "g"/"D". + Extend error logging. + * sysdeps/mach/hurd/i386/libc.abilist (GLIBC_2.2.6): Adjust _end + symbol. + +2018-11-30 Adhemerval Zanella + + * sysdeps/unix/sysv/linux/spawni.c (__spawni_child): Use + __sigismember instead of sigismember. + * sysdeps/posix/system.c [SIGCANCEL] (cancel_handler_args, + cancel_handler): New definitions. + (do_system): Use posix_spawn instead of fork and execl and remove + reentracy code. + * sysdeps/generic/not-errno.h (__kill_noerrno): New prototype. + * sysdeps/unix/sysv/linux/not-errno.h (__kill_noerrno): Likewise. + * sysdeps/unix/sysv/linux/ia64/system.c: Remove file. + * sysdeps/unix/sysv/linux/s390/system.c: Likewise. + * sysdeps/unix/sysv/linux/sparc/system.c: Likewise. + * sysdeps/unix/sysv/linux/system.c: Likewise. + + [BZ #22834] + [BZ #17490] + * NEWS: Add new semantic for atfork with popen and system. + * libio/iopopen.c (_IO_new_proc_open): use posix_spawn instead of + fork and execl. + +2018-11-30 Tulio Magno Quites Machado Filho + + [BZ #23690] + * elf/dl-runtime.c (_dl_profile_fixup): Guarantee memory + modification order when accessing reloc_result->addr. + * include/link.h (reloc_result): Add field init. + * nptl/Makefile (tests): Add tst-audit-threads. + (modules-names): Add tst-audit-threads-mod1 and + tst-audit-threads-mod2. + Add rules to build tst-audit-threads. + * nptl/tst-audit-threads-mod1.c: New file. + * nptl/tst-audit-threads-mod2.c: Likewise. + * nptl/tst-audit-threads.c: Likewise. + * nptl/tst-audit-threads.h: Likewise. + +2018-11-30 Joseph Myers + + * scripts/gen-as-const.py: New file. + * scripts/gen-as-const.awk: Remove. + * Makerules ($(common-objpfx)%.h $(common-objpfx)%.h.d): Use + gen-as-const.py. + ($(objpfx)test-as-const-%.c): Likewise. + +2018-11-29 H.J. Lu + + * elf/dl-exception.c: Include <_itoa.h>. + +2018-11-30 Samuel Thibault + + * sysdeps/mach/hurd/fcntl.c (__libc_fcntl): Directly return value + returned by __f_setlk. + +2018-11-29 H.J. Lu + Adhemerval Zanella + + * elf/Makefile (tests-internal): Add tst-create_format1. + * elf/dl-exception.c (_dl_exception_create_format): Support + %x, %lx and %zx. + * elf/tst-create_format1.c: New file. + +2018-11-29 Charles-Antoine Couret + + * argp/argp-fmtstream.c (__argp_fmtstream_update): Use [_LIBC] + conditional on calls to _IO_fwide and putwc_unlocked. (Merge from + gnulib.) + * argp/argp-help.c (__argp_failure): Likewise. + +2018-11-29 Mao Han + + * elf/elf.h (EM_CSKY, R_CKCORE_NONE, R_CKCORE_ADDR32) + (R_CKCORE_PCRELIMM8BY4, R_CKCORE_PCRELIMM11BY2, R_CKCORE_PCREL32) + (R_CKCORE_PCRELJSR_IMM11BY2, R_CKCORE_RELATIVE, R_CKCORE_COPY) + (R_CKCORE_GLOB_DAT, R_CKCORE_JUMP_SLOT, R_CKCORE_GOTOFF) + (R_CKCORE_GOTPC, R_CKCORE_GOT32, R_CKCORE_PLT32, R_CKCORE_ADDRGOT) + (R_CKCORE_ADDRPLT, R_CKCORE_PCREL_IMM26BY2, R_CKCORE_PCREL_IMM16BY2) + (R_CKCORE_PCREL_IMM16BY4, R_CKCORE_PCREL_IMM10BY2) + (R_CKCORE_PCREL_IMM10BY4, R_CKCORE_ADDR_HI16, R_CKCORE_ADDR_LO16) + (R_CKCORE_GOTPC_HI16, R_CKCORE_GOTPC_LO16, R_CKCORE_GOTOFF_HI16) + (R_CKCORE_GOTOFF_LO16, R_CKCORE_GOT12, R_CKCORE_GOT_HI16) + (R_CKCORE_GOT_LO16, R_CKCORE_PLT12, R_CKCORE_PLT_HI16) + (R_CKCORE_PLT_LO16, R_CKCORE_ADDRGOT_HI16, R_CKCORE_ADDRGOT_LO16) + (R_CKCORE_ADDRPLT_HI16, R_CKCORE_ADDRPLT_LO16) + (R_CKCORE_PCREL_JSR_IMM26BY2, R_CKCORE_TOFFSET_LO16) + (R_CKCORE_DOFFSET_LO16, R_CKCORE_PCREL_IMM18BY2) + (R_CKCORE_DOFFSET_IMM18, R_CKCORE_DOFFSET_IMM18BY2) + (R_CKCORE_DOFFSET_IMM18BY4, R_CKCORE_GOT_IMM18BY4) + (R_CKCORE_PLT_IMM18BY4, R_CKCORE_PCREL_IMM7BY4, R_CKCORE_TLS_LE32) + (R_CKCORE_TLS_IE32, R_CKCORE_TLS_GD32, R_CKCORE_TLS_LDM32) + (R_CKCORE_TLS_LDO32, R_CKCORE_TLS_DTPMOD32, R_CKCORE_TLS_DTPOFF32) + (R_CKCORE_TLS_TPOFF32): New defines. + +2018-11-29 Florian Weimer + + * posix/Makefile (before-compile): Remove testcases.h and + ptestcases.h. + (generated): Add testcases.h and ptestcases.h. + (testcases.h, ptestcases.h): Move to $(objpfx). + (runtests.o): Add dependency on testcases.h. + (runptests.o): Add dependency on ptestcases.h. + * posix/testcases.h, posix/ptestcases.h: Remove files. + * scripts/build-many-glibcs.py (Context.fix_glibc_timestamps): Do + not touch posix/testcases.h and posix/ptestcases.h. + +2018-11-28 Florian Weimer + + support: Add signal support to support_capture_subprocess_check. + * support/capture_subprocess.h (support_capture_subprocess_check): + Adjust comment and rename parameter. + * support/support_capture_subprocess_check.c + (print_actual_status): New function. + (support_capture_subprocess_check): Support negative + status_or_signal. Call print_actual_status. + * support/tst-support_capture_subprocess.c (do_test): Call + support_capture_subprocess_check. + * libio/tst-vtables-common.c (termination_status) + (init_termination_status): Remove. + (check_for_termination): Adjust support_capture_subprocess_check + call. + (do_test): Remove call to init_termination_status. + +2018-11-28 Joseph Myers + + * scripts/build-many-glibcs.py (Glibc.build_glibc): Use original + source directory instead of a copy. + (CommandList.create_copy_dir): Remove. + +2018-11-28 Stefan Liebler + + * sysdeps/s390/fpu/libm-test-ulps: Regenerated. + +2018-11-28 Florian Weimer + + * support/support.h (support_quote_string): Do not use str + parameter name. + +2018-11-27 Joseph Myers + + * sysdeps/mach/hurd/Makefile ($(common-objpfx)stamp-errnos): Use + $(hurd-objpfx)bits/errno.h-tmp, not $(hurd)/bits/errno.h-tmp. + +2018-11-27 Florian Weimer + + * support/support.h (support_quote_string): Declare. + * support/support_quote_string.c: New file. + * support/tst-support_quote_string.c: Likewise. + * support/Makefile (libsupport-routines): Add + support_quote_string. + (tests): Add tst-support_quote_string. + +2018-11-27 Florian Weimer + + [BZ #23927] + CVE-2018-19591 + * sysdeps/unix/sysv/linux/if_index.c (__if_nametoindex): Avoid + descriptor leak in case of ENODEV error. + +2018-11-27 Rafael Ávila de Espíndola + + [BZ #19767] + * sysdeps/unix/sysv/linux/aarch64/init-first.c: Remove #ifdef SHARED. + * sysdeps/unix/sysv/linux/aarch64/libc-vdso.h: Remove #ifdef SHARED. + * sysdeps/unix/sysv/linux/aarch64/sysdep.h: Define ALWAYS_USE_VSYSCALL. + +2018-11-26 Carlos O'Donell + + * scripts/abilist.awk: Handle .tdata. Error for unknown combinations. + Error for unknown lines. + +2018-11-26 Joseph Myers + + * scripts/build-many-glibcs.py (Context.fix_glibc_timestamps): + Touch additional files. + +2018-11-26 Florian Weimer + + [BZ #23907] + * malloc/malloc.c (_int_free): Validate tc_idx before checking for + double-frees. + +2018-11-26 Rafael Ávila de Espíndola + + [BZ #19767] + * sysdeps/unix/sysv/linux/powerpc/init-first.c: Remove #ifdef SHARED. + * sysdeps/unix/sysv/linux/powerpc/libc-vdso.h: Remove #ifdef + SHARED. Include sysdep.h. + * sysdeps/unix/sysv/linux/powerpc/powerpc32/sysdep.h: Define + ALWAYS_USE_VSYSCALL. + * sysdeps/unix/sysv/linux/powerpc/powerpc64/sysdep.h: Define + ALWAYS_USE_VSYSCALL. + +2018-11-23 Rafael Ávila de Espíndola + + [BZ #19767] + * nptl/Makefile (tests-static): Add tst-cond11-static. + (tests): Likewise. + * nptl/tst-cond11-static.c: New File. + * sysdeps/unix/sysv/linux/Makefile (tests-static): Add + tst-affinity-static. + (tests): Likewise. + * sysdeps/unix/sysv/linux/sysdep-vdso.h: Check USE_VSYSCALL + instead of SHARED. + * sysdeps/unix/sysv/linux/sysdep.h (ALWAYS_USE_VSYSCALL): New. + (USE_VSYSCALL): Likewise. + * sysdeps/unix/sysv/linux/tst-affinity-static.c: New file. + * sysdeps/unix/sysv/linux/x86/libc-vdso.h: Check USE_VSYSCALL + instead of SHARED. + * sysdeps/unix/sysv/linux/x86_64/init-first.c: Don't check + SHARED. + * sysdeps/unix/sysv/linux/x86_64/sysdep.h (ALWAYS_USE_VSYSCALL): + New. + +2018-11-23 Joseph Myers + + [BZ #23915] + * sysdeps/unix/sysv/linux/arm/kernel-features.h + [__LINUX_KERNEL_VERSION < 0x040700] (__ASSUME_COPY_FILE_RANGE): + Undefine. + +2018-11-23 H.J. Lu + + * sysdeps/x86/Makefile (tests): Add tst-cet-legacy-1a. + (tst-cet-legacy-1a-ARGS): New. + ($(objpfx)tst-cet-legacy-1a): New target. + * sysdeps/x86/tst-cet-legacy-1a.c: New file. + +2018-11-22 Joseph Myers + + * conform/conformtest.py (CompileSubTest.__init__): Set + self.run_early to False. + (ExecuteSubTest.__init__): Likewise. + (HeaderTests.run): Try running all non-optional, non-XFAILed + compilation tests in a single execution of the compiler. + + * conform/conformtest.py (CompileSubTest): New class. + (ExecuteSubTest): Likewise. + (ElementTest.run): Rename to gen_subtests. Append tests to + self.subtests instead of running them. + (ConstantTest.run): Likewise. + (SymbolTest.run): Likewise. + (TypeTest.run): Likewise. + (TagTest.run): Likewise. + (FunctionTest.run): Likewise. + (VariableTest.run): Likewise. + (MacroFunctionTest.run): Likewise. + (MacroStrTest.run): Likewise. + (HeaderTests.handle_test_line): Generate subtests for tests. + (HeaderTests.run): Run subtests for tests. + +2018-11-21 Szabolcs Nagy + + * math/Versions (GLIBC_2.29): Add pow. + * math/w_pow_compat.c (__pow_compat): Change to versioned compat + symbol. + * math/w_pow.c: New file. + * sysdeps/i386/fpu/w_pow.c: New file. + * sysdeps/ia64/fpu/e_pow.S: Add versioned symbols. + * sysdeps/ieee754/dbl-64/e_pow.c (__ieee754_pow): Rename to __pow + and add necessary aliases. + * sysdeps/ieee754/dbl-64/w_pow.c: New file. + * sysdeps/m68k/m680x0/fpu/w_pow.c: New file. + * sysdeps/mach/hurd/i386/libm.abilist: Update. + * sysdeps/unix/sysv/linux/aarch64/libm.abilist: Update. + * sysdeps/unix/sysv/linux/alpha/libm.abilist: Update. + * sysdeps/unix/sysv/linux/arm/libm.abilist: Update. + * sysdeps/unix/sysv/linux/hppa/libm.abilist: Update. + * sysdeps/unix/sysv/linux/i386/libm.abilist: Update. + * sysdeps/unix/sysv/linux/ia64/libm.abilist: Update. + * sysdeps/unix/sysv/linux/m68k/coldfire/libm.abilist: Update. + * sysdeps/unix/sysv/linux/m68k/m680x0/libm.abilist: Update. + * sysdeps/unix/sysv/linux/microblaze/libm.abilist: Update. + * sysdeps/unix/sysv/linux/mips/mips32/libm.abilist: Update. + * sysdeps/unix/sysv/linux/mips/mips64/libm.abilist: Update. + * sysdeps/unix/sysv/linux/nios2/libm.abilist: Update. + * sysdeps/unix/sysv/linux/powerpc/powerpc32/fpu/libm.abilist: Update. + * sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/libm.abilist: Update. + * sysdeps/unix/sysv/linux/powerpc/powerpc64/libm-le.abilist: Update. + * sysdeps/unix/sysv/linux/powerpc/powerpc64/libm.abilist: Update. + * sysdeps/unix/sysv/linux/s390/s390-32/libm.abilist: Update. + * sysdeps/unix/sysv/linux/s390/s390-64/libm.abilist: Update. + * sysdeps/unix/sysv/linux/sh/libm.abilist: Update. + * sysdeps/unix/sysv/linux/sparc/sparc32/libm.abilist: Update. + * sysdeps/unix/sysv/linux/sparc/sparc64/libm.abilist: Update. + * sysdeps/unix/sysv/linux/x86_64/64/libm.abilist: Update. + * sysdeps/unix/sysv/linux/x86_64/x32/libm.abilist: Update. + * sysdeps/x86_64/fpu/multiarch/e_pow-fma.c (__ieee754_pow): Rename to + __pow. + * sysdeps/x86_64/fpu/multiarch/e_pow-fma4.c (__ieee754_pow): Likewise. + * sysdeps/x86_64/fpu/multiarch/e_pow.c (__ieee754_pow): Likewise. + * sysdeps/x86_64/fpu/multiarch/w_pow.c: New file. + +2018-11-21 Szabolcs Nagy + + * math/Versions (GLIBC_2.29): Add log2. + * math/w_log2_compat.c (__log2_compat): Change to versioned compat + symbol. + * math/w_log2.c: New file. + * sysdeps/i386/fpu/w_log2.c: New file. + * sysdeps/ia64/fpu/e_log2.S: Add versioned symbols. + * sysdeps/ieee754/dbl-64/e_log2.c (__ieee754_log2): Rename to __log2 + and add necessary aliases. + * sysdeps/ieee754/dbl-64/w_log2.c: New file. + * sysdeps/m68k/m680x0/fpu/w_log2.c: New file. + * sysdeps/mach/hurd/i386/libm.abilist: Update. + * sysdeps/unix/sysv/linux/aarch64/libm.abilist: Update. + * sysdeps/unix/sysv/linux/alpha/libm.abilist: Update. + * sysdeps/unix/sysv/linux/arm/libm.abilist: Update. + * sysdeps/unix/sysv/linux/hppa/libm.abilist: Update. + * sysdeps/unix/sysv/linux/i386/libm.abilist: Update. + * sysdeps/unix/sysv/linux/ia64/libm.abilist: Update. + * sysdeps/unix/sysv/linux/m68k/coldfire/libm.abilist: Update. + * sysdeps/unix/sysv/linux/m68k/m680x0/libm.abilist: Update. + * sysdeps/unix/sysv/linux/microblaze/libm.abilist: Update. + * sysdeps/unix/sysv/linux/mips/mips32/libm.abilist: Update. + * sysdeps/unix/sysv/linux/mips/mips64/libm.abilist: Update. + * sysdeps/unix/sysv/linux/nios2/libm.abilist: Update. + * sysdeps/unix/sysv/linux/powerpc/powerpc32/fpu/libm.abilist: Update. + * sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/libm.abilist: Update. + * sysdeps/unix/sysv/linux/powerpc/powerpc64/libm-le.abilist: Update. + * sysdeps/unix/sysv/linux/powerpc/powerpc64/libm.abilist: Update. + * sysdeps/unix/sysv/linux/s390/s390-32/libm.abilist: Update. + * sysdeps/unix/sysv/linux/s390/s390-64/libm.abilist: Update. + * sysdeps/unix/sysv/linux/sh/libm.abilist: Update. + * sysdeps/unix/sysv/linux/sparc/sparc32/libm.abilist: Update. + * sysdeps/unix/sysv/linux/sparc/sparc64/libm.abilist: Update. + * sysdeps/unix/sysv/linux/x86_64/64/libm.abilist: Update. + * sysdeps/unix/sysv/linux/x86_64/x32/libm.abilist: Update. + +2018-11-21 Szabolcs Nagy + + * math/Versions (GLIBC_2.29): Add log. + * math/w_log_compat.c (__log_compat): Change to versioned compat + symbol. + * math/w_log.c: New file. + * sysdeps/i386/fpu/w_log.c: New file. + * sysdeps/ia64/fpu/e_log.S: Update. + * sysdeps/ieee754/dbl-64/e_log.c (__ieee754_log): Rename to __log + and add necessary aliases. + * sysdeps/ieee754/dbl-64/w_log.c: New file. + * sysdeps/m68k/m680x0/fpu/w_log.c: New file. + * sysdeps/mach/hurd/i386/libm.abilist: Update. + * sysdeps/unix/sysv/linux/aarch64/libm.abilist: Update. + * sysdeps/unix/sysv/linux/alpha/libm.abilist: Update. + * sysdeps/unix/sysv/linux/arm/libm.abilist: Update. + * sysdeps/unix/sysv/linux/hppa/libm.abilist: Update. + * sysdeps/unix/sysv/linux/i386/libm.abilist: Update. + * sysdeps/unix/sysv/linux/ia64/libm.abilist: Update. + * sysdeps/unix/sysv/linux/m68k/coldfire/libm.abilist: Update. + * sysdeps/unix/sysv/linux/m68k/m680x0/libm.abilist: Update. + * sysdeps/unix/sysv/linux/microblaze/libm.abilist: Update. + * sysdeps/unix/sysv/linux/mips/mips32/libm.abilist: Update. + * sysdeps/unix/sysv/linux/mips/mips64/libm.abilist: Update. + * sysdeps/unix/sysv/linux/nios2/libm.abilist: Update. + * sysdeps/unix/sysv/linux/powerpc/powerpc32/fpu/libm.abilist: Update. + * sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/libm.abilist: Update. + * sysdeps/unix/sysv/linux/powerpc/powerpc64/libm-le.abilist: Update. + * sysdeps/unix/sysv/linux/powerpc/powerpc64/libm.abilist: Update. + * sysdeps/unix/sysv/linux/s390/s390-32/libm.abilist: Update. + * sysdeps/unix/sysv/linux/s390/s390-64/libm.abilist: Update. + * sysdeps/unix/sysv/linux/sh/libm.abilist: Update. + * sysdeps/unix/sysv/linux/sparc/sparc32/libm.abilist: Update. + * sysdeps/unix/sysv/linux/sparc/sparc64/libm.abilist: Update. + * sysdeps/unix/sysv/linux/x86_64/64/libm.abilist: Update. + * sysdeps/unix/sysv/linux/x86_64/x32/libm.abilist: Update. + * sysdeps/x86_64/fpu/multiarch/e_log-avx.c (__ieee754_log): Rename to + __log. + * sysdeps/x86_64/fpu/multiarch/e_log-fma.c (__ieee754_log): Likewise. + * sysdeps/x86_64/fpu/multiarch/e_log-fma4.c (__ieee754_log): Likewise. + * sysdeps/x86_64/fpu/multiarch/e_log.c (__ieee754_log): Likewise. + * sysdeps/x86_64/fpu/multiarch/w_log.c: New file. + +2018-11-21 Szabolcs Nagy + + * math/Versions (GLIBC_2.29): Add exp and exp2. + * math/w_exp2_compat.c (__exp2_compat): Change to versioned compat + symbol, handle NO_LONG_DOUBLE and LONG_DOUBLE_COMPAT explicitly. + * math/w_exp_compat.c (__exp_compat): Likewise. + * math/w_exp.c: New file. + * math/w_exp2.c: New file. + * sysdeps/i386/fpu/w_exp.c: New file. + * sysdeps/i386/fpu/w_exp2.c: New file. + * sysdeps/ia64/fpu/e_exp.S: Add versioned symbols. + * sysdeps/ia64/fpu/e_exp2.S: Likewise. + * sysdeps/ieee754/dbl-64/e_exp.c (__ieee754_exp): Rename to __exp + and add necessary aliases. + * sysdeps/ieee754/dbl-64/e_exp2.c (__ieee754_exp2): Rename to __exp2 + and add necessary aliases. + * sysdeps/ieee754/dbl-64/w_exp.c: New file. + * sysdeps/ieee754/dbl-64/w_exp2.c: New file. + * sysdeps/m68k/m680x0/fpu/w_exp.c: New file. + * sysdeps/m68k/m680x0/fpu/w_exp2.c: New file. + * sysdeps/mach/hurd/i386/libm.abilist: Update. + * sysdeps/unix/sysv/linux/aarch64/libm.abilist: Update. + * sysdeps/unix/sysv/linux/alpha/libm.abilist: Update. + * sysdeps/unix/sysv/linux/arm/libm.abilist: Update. + * sysdeps/unix/sysv/linux/hppa/libm.abilist: Update. + * sysdeps/unix/sysv/linux/i386/libm.abilist: Update. + * sysdeps/unix/sysv/linux/ia64/libm.abilist: Update. + * sysdeps/unix/sysv/linux/m68k/coldfire/libm.abilist: Update. + * sysdeps/unix/sysv/linux/m68k/m680x0/libm.abilist: Update. + * sysdeps/unix/sysv/linux/microblaze/libm.abilist: Update. + * sysdeps/unix/sysv/linux/mips/mips32/libm.abilist: Update. + * sysdeps/unix/sysv/linux/mips/mips64/libm.abilist: Update. + * sysdeps/unix/sysv/linux/nios2/libm.abilist: Update. + * sysdeps/unix/sysv/linux/powerpc/powerpc32/fpu/libm.abilist: Update. + * sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/libm.abilist: Update. + * sysdeps/unix/sysv/linux/powerpc/powerpc64/libm-le.abilist: Update. + * sysdeps/unix/sysv/linux/powerpc/powerpc64/libm.abilist: Update. + * sysdeps/unix/sysv/linux/s390/s390-32/libm.abilist: Update. + * sysdeps/unix/sysv/linux/s390/s390-64/libm.abilist: Update. + * sysdeps/unix/sysv/linux/sh/libm.abilist: Update. + * sysdeps/unix/sysv/linux/sparc/sparc32/libm.abilist: Update. + * sysdeps/unix/sysv/linux/sparc/sparc64/libm.abilist: Update. + * sysdeps/unix/sysv/linux/x86_64/64/libm.abilist: Update. + * sysdeps/unix/sysv/linux/x86_64/x32/libm.abilist: Update. + * sysdeps/x86_64/fpu/multiarch/e_exp-avx.c (__exp1): Remove. + (__ieee754_exp): Rename to __exp. + * sysdeps/x86_64/fpu/multiarch/e_exp-fma.c (__exp1): Remove. + (__ieee754_exp): Rename to __exp. + * sysdeps/x86_64/fpu/multiarch/e_exp-fma4.c (__exp1): Remove. + (__ieee754_exp): Rename to __exp. + * sysdeps/x86_64/fpu/multiarch/e_exp.c (__ieee754_exp): Rename to + __exp. + * sysdeps/x86_64/fpu/multiarch/w_exp.c: New file. + +2018-11-20 DJ Delorie + + * malloc/malloc.c (tcache_entry): Add key field. + (tcache_put): Set it. + (tcache_get): Likewise. + (_int_free): Check for double free in tcache. + * malloc/tst-tcfree1.c: New. + * malloc/tst-tcfree2.c: New. + * malloc/Makefile: Run the new tests. + * manual/probes.texi: Document memory_tcache_double_free probe. + + * dlfcn/dlerror.c (check_free): Prevent double frees. + +2018-11-20 Wilco Dijkstra + + * sysdeps/aarch64/memset.S (MEMSET): Improve non-zero memset loop. + +2018-11-20 Joseph Myers + + * conform/conformtest.py (ElementTest.run): Use unique identifiers + in tests. Use names for format arguments. + (ConstantTest.run): Likewise. + (SymbolTest.run): Likewise. + (TypeTest.run): Likewise. + (TagTest.run): Likewise. + (FunctionTest.run): Likewise. + (VariableTest.run): Likewise. + (MacroFunctionTest.run): Likewise. + (MacroStrTest.run): Likewise. + (HeaderTests.__init__): Set self.num_tests. + (HeaderTests.handle_test_line): Set test.num. Increment + self.num_tests. + +2018-11-19 Samuel Thibault + + * sysdeps/mach/hurd/f_setlk.c: Include . + (__f_setlk): When whence is SEEK_CUR, use __lseek64 to convert it to + SEEK_SET. + +2018-11-19 Mao Han + + * scripts/config.guess: Update to version 2018-08-29. + * scripts/config.sub: Update to version 2018-08-29. + +2018-11-19 Florian Weimer + + support: Print timestamps in timeout handler. + * support/support_test_main.c (print_timestamp): New function. + (signal_handler): Use it to print the termination time and the + time of the last write to standard output. + +2018-11-16 Zack Weinberg + Gabriel F. T. Gomes + + * include/monetary.h (STRFMON_LDBL_IS_DBL): New constant. + (__vstrfmon_l): Rename to __vstrfmon_l_internal and add flags + argument. + * stdlib/strfmon_l.c (__vstrfmon_l): Rename to __vstrfmon_l_internal + and add flags argument. Check flags instead of __ldbl_is_dbl when + deciding whether to set is_long_double. + (__strfmon_l): Call __vstrfmon_l_internal instead of __vstrfmon_l, + passing zero for flags argument. + * stdlib/strfmon.c (strfmon): Same change as made to __strfmon_l. + + * sysdeps/ieee754/ldbl-opt/nldbl-compat.c + (__nldbl___vstrfmon, __nldbl___vstrfmon_l) + (__nldbl_strfmon, __nldbl___strfmon_l): Call __vstrfmon_l_internal + directly, passing STRFMON_LDBL_IS_DBL for flags argument. Normalize + variable names. Remove libc_hidden_def/libc_hidden_proto from + __nldbl___vstrfmon and __nldbl___vstrfmon_l, because they are no + longer called from within the library. + * sysdeps/ieee754/ldbl-opt/nldbl-compat.h: Don't use NLDBL_DECL + for __nldbl___vstrfmon_l, declare it explicitly. + + * manual/locale.texi: Update a reference to vstrfmon_l in comments. + +2018-11-15 Samuel Thibault + + * sysdeps/mach/hurd/bits/fcntl.h (F_GETLK64, F_SETLK64, F_SETLKW64): New + macros + [__USE_FILE_OFFSET64] (F_GETLK, F_SETLK, F_SETLKW): Define to F_GETLK64, + F_SETLK64, F_SETLKW64, respectively. + * sysdeps/mach/hurd/f_setlk.c: New file. + * sysdeps/mach/hurd/f_setlk.h: New file. + * sysdeps/mach/hurd/Makefile [$(subdir) = io] (sysdeps_routines): Add + f_setlk. + * sysdeps/mach/hurd/fcntl.c: Include "f_setlk.h".h". + (__libc_fcntl): Move non-flock operations to... + * sysdeps/mach/hurd/vfcntl.c (__libc_vfcntl): ... New file. + * sysdeps/mach/hurd/fcntl.c (fcntl64): Add missing alias. + +2018-11-15 Paul Eggert + + mktime: DEBUG_MKTIME cleanup + The DEBUG_MKTIME code no longer works in glibc or in Gnulib. + And it’s no longer needed now that glibc and Gnulib both have + their own testing mechanisms for mktime. + * time/mktime.c (DEBUG_MKTIME): Remove. All uses removed. + + mktime: fix non-EOVERFLOW errno handling + [BZ#23789] + mktime was not properly reporting failures when the underlying + localtime_r fails with errno != EOVERFLOW; it incorrectly treated + them like EOVERFLOW failures, and set errno to EOVERFLOW. + The problem could happen on non-glibc platforms, with Gnulib. + * time/mktime.c (guess_time_tm): Remove, replacing with ... + (tm_diff): ... this simpler function, which does not change errno. + All callers changed to deal with errno themselves. + (ranged_convert, __mktime_internal): Return failure immediately if + the underlying function reports any failure other than EOVERFLOW. + (__mktime_internal): Set errno to EOVERFLOW if the spring-forward + gap code fails. + + mktime: fix bug with Y2038 DST transition + [BZ#23789] + * time/mktime.c (ranged_convert): On 32-bit platforms, don’t + mishandle a DST transition that jumps over the Y2038 boundary. + No such DST transitions are known so this is only a theoretical + bug, but we might as well do things right. + + mktime: make more room for overflow + [BZ#23789] + * time/mktime.c (long_int): Now 4⨯ int, not just 3⨯. + This is so that we can add tm_diff results to a previous guess, + which will be useful in a later patch. + + mktime: simplify offset guess + [BZ#23789] + * time/mktime.c (__mktime_internal): Omit excess precision. + + mktime: new test for mktime failure + [BZ#23789] + Based on a test suggested by Albert Aribaud in: + https://www.sourceware.org/ml/libc-alpha/2018-10/msg00662.html + * time/Makefile (tests): Add bug-mktime4. + * time/bug-mktime4.c: New file. + + mktime: fix EOVERFLOW bug + [BZ#23789] + * time/mktime.c [!_LIBC && !DEBUG_MKTIME]: + Include libc-config.h, not config.h, for __set_errno. + (guess_time_tm, __mktime_internal): Set errno to EOVERFLOW on overflow. + +2018-11-14 Samuel Thibault + + * sysdeps/mach/hurd/dl-sysdep.c (check_no_hidden): Use + __attribute_copy__ to copy attributes from name. Drop static qualifier + to avoid warnings about leaf attribute not having effect on static + functions. + +2018-11-13 Florian Weimer + + * malloc/malloc.c (fastbin_push_entry): New function. + (fastbin_pop_entry): Likewise. Replaces REMOVE_FB. + (REMOVE_FB): Remove macro. + (_int_malloc): Use fastbin_pop_entry and reindent. + (_int_free): Use fastbin_push_entry. + (malloc_consolidate): Use atomic_exchange_acquire. + +2018-11-13 Joseph Myers + + * sysdeps/mips/__longjmp.c (__longjmp): Define alias manually with + alias attribute, not with strong_alias. + + * include/libc-symbols.h [SHARED && !NO_HIDDEN && !__ASSEMBLER__] + (__hidden_ver2): New macro. Use old definition of __hidden_ver1 + with additional parameter thread. + [SHARED && !NO_HIDDEN && !__ASSEMBLER__] (__hidden_ver1): Define + in terms of __hidden_ver2. + (hidden_tls_def): New macro. + (libc_hidden_tls_def): Likewise. + (rtld_hidden_tls_def): Likewise. + (libm_hidden_tls_def): Likewise. + (libmvec_hidden_tls_def): Likewise. + (libresolv_hidden_tls_def): Likewise. + (librt_hidden_tls_def): Likewise. + (libdl_hidden_tls_def): Likewise. + (libnss_files_hidden_tls_def): Likewise. + (libnsl_hidden_tls_def): Likewise. + (libnss_nisplus_hidden_tls_def): Likewise. + (libutil_hidden_tls_def): Likewise. + (libutil_hidden_tls_def): Likweise. + * sysdeps/powerpc/nofpu/sim-full.c (__sim_exceptions_thread): Use + libc_hidden_tls_def. + (__sim_disabled_exceptions_thread): Likewise. + (__sim_round_mode_thread): Likewise. + + * sysdeps/sparc/sparc-ifunc.h [SHARED] + (sparc_ifunc_redirected_hidden_def): Use __attribute_copy__ to + copy attributes from name. + +2018-11-12 Joseph Myers + + * sysdeps/arm/arm-ifunc.h [SHARED] (arm_libc_ifunc_hidden_def): + Use __attribute_copy__ to copy attributes from name. + + * sysdeps/i386/i686/fpu/multiarch/e_expf.c [SHARED]: Use __THROW + with __hidden_ver1 call. + * sysdeps/i386/i686/fpu/multiarch/e_log2f.c [SHARED]: Likewise. + * sysdeps/i386/i686/fpu/multiarch/e_logf.c [SHARED]: Likewise. + * sysdeps/i386/i686/fpu/multiarch/s_cosf.c: Include . + (__cosf): Do not declare here. + * sysdeps/i386/i686/fpu/multiarch/s_sincosf.c: Include . + (__sincosf): Do not declare here. + * sysdeps/i386/i686/fpu/multiarch/s_sinf.c: Include . + (__sinf): Do not declare here. + + * sysdeps/ia64/fpu/sfp-machine.h (__LITTLE_ENDIAN): Remove. + (__BIG_ENDIAN): Likewise. + (__BYTE_ORDER): Likewise. + (strong_alias): Likewise. + (_strong_alias): Likewise. + +2018-11-12 Florian Weimer + + * malloc/malloc.c (unlink_chunk): Turn the unlink macro into this + function. Move after the definition of in_smallbin_range. Do not + use __builtin_expect for paths that lead to a noreturn function. + Drop remaining __builtin_expect (p->fd_nextsize != NULL, 0) + because it is unclear whether this is in fact an unlikely + condition. + (_int_malloc, _int_free): Adjust. + (malloc_consolidate, _int_realloc): Adjust. Remove bck, fwd + variables. + * malloc/arena.c (heap_trim): Likewise. + +2018-11-10 Samuel Thibault + + * sysdeps/mach/hurd/spawni.c (__spawni): Add ccwdir port. Test and use + it, free it if needed. + (reauthenticate): Test and use ccwdir. + (child_init_port): In non-resetids case, test and use ccwdir. + (child_chdir): New nested function to set ccwdir. + * hurd/hurd/userlink.h (_hurd_userlink_move): New function. + * hurd/hurd/port.h (_hurd_port_move): New function. + * sysdeps/mach/hurd/spawni.c (NEW_ULINK_TABLE): New macro. + (EXPAND_DTABLE): Use NEW_ULINK_TABLE macro for ulink_dtable. + * hurd/Versions (_hurd_port_move): Export function. + * sysdeps/mach/hurd/i386/libc.abilist (_hurd_port_move): Expect + symbol. + * sysdeps/mach/hurd/spawni.c (__spawni): Use orig_dtablesize instead + of dtablesize for allocating dtable_cloexec. + +2018-11-09 Martin Sebor + + * include/libc-symbols.h (__attribute_copy__): Define macro unless + it's already defined. + (_strong_alias): Use __attribute_copy__. + (_weak_alias, __hidden_ver1, __hidden_nolink2): Same. + * misc/sys/cdefs.h (__attribute_copy__): New macro. + * sysdeps/x86_64/multiarch/memchr.c (memchr): Use __attribute_copy__. + * sysdeps/x86_64/multiarch/memcmp.c (memcmp): Same. + * sysdeps/x86_64/multiarch/mempcpy.c (mempcpy): Same. + * sysdeps/x86_64/multiarch/memset.c (memset): Same. + * sysdeps/x86_64/multiarch/stpcpy.c (stpcpy): Same. + * sysdeps/x86_64/multiarch/strcat.c (strcat): Same. + * sysdeps/x86_64/multiarch/strchr.c (strchr): Same. + * sysdeps/x86_64/multiarch/strcmp.c (strcmp): Same. + * sysdeps/x86_64/multiarch/strcpy.c (strcpy): Same. + * sysdeps/x86_64/multiarch/strcspn.c (strcspn): Same. + * sysdeps/x86_64/multiarch/strlen.c (strlen): Same. + * sysdeps/x86_64/multiarch/strncmp.c (strncmp): Same. + * sysdeps/x86_64/multiarch/strncpy.c (strncpy): Same. + * sysdeps/x86_64/multiarch/strnlen.c (strnlen): Same. + * sysdeps/x86_64/multiarch/strpbrk.c (strpbrk): Same. + * sysdeps/x86_64/multiarch/strrchr.c (strrchr): Same. + * sysdeps/x86_64/multiarch/strspn.c (strspn): Same. + +2018-11-09 Gabriel F. T. Gomes + + * misc/tst-efgcvt.c: Include support/check.h and + support/test-driver.c. Do not include test-skeleton.c. + (error_count): Remove. + (output_error): Replace increments to error_count with calls to + support_record_failure. + (output_r_error): Likewise. + (special): Likewise. + (do_test): Unconditionally return zero. + (TEST_FUNCTION): Remove. + +2018-11-09 Joseph Myers + + * conform/Makefile ($(conformtest-header-tests)): Create $(@D), + not $(@D)/scratch. + ($(linknamespace-header-tests)): Likewise. + + * conform/conformtest.py: New file. + * conform/conformtest.pl: Remove. + * conform/GlibcConform.pm: Likewise. + * conform/glibcconform.py (KEYWORDS_C90): New constant. + (KEYWORDS_C99): Likewise. + (KEYWORDS): Likewise. + * conform/Makefile ($(conformtest-header-tests)): Use + conformtest.py instead of conformtest.pl. Do not pass --tmpdir + option. Use --header instead of --headers. + * conform/data/arpa/inet.h-data: Remove trailing semicolons on + function entries. + * conform/data/spawn.h-data: Likewise. + * conform/data/fcntl.h-data (openat): Add space after function + name. + * conform/data/wchar.h-data (wcscasecmp): Likewise. + (wcscasecmp_l): Likewise. + * conform/data/termios.h-data (c_cc): Add space after element + name. + +2018-11-08 Gabriel F. T. Gomes + + * argp/tst-ldbl-argp.c (do_one_test): Use TEST_COMPARE_STRING, + instead of manually comparing and reporting mismatching strings. + * misc/tst-ldbl-error.c (do_one_test): Likewise. + * misc/tst-ldbl-warn.c (do_one_test): Likewise. + +2018-11-08 Joseph Myers + + * sysdeps/unix/sysv/linux/kernel-features.h: Remove comment about + __ASSUME_SOCKETCALL. + * sysdeps/unix/sysv/linux/i386/kernel-features.h + (__ASSUME_SOCKETCALL): Remove. + * sysdeps/unix/sysv/linux/m68k/kernel-features.h + (__ASSUME_SOCKETCALL): Likewise. + * sysdeps/unix/sysv/linux/microblaze/kernel-features.h + (__ASSUME_SOCKETCALL): Likewise. + * sysdeps/unix/sysv/linux/powerpc/kernel-features.h + (__ASSUME_SOCKETCALL): Likewise. + * sysdeps/unix/sysv/linux/s390/kernel-features.h + (__ASSUME_SOCKETCALL): Likewise. + * sysdeps/unix/sysv/linux/sh/kernel-features.h + (__ASSUME_SOCKETCALL): Likewise. + * sysdeps/unix/sysv/linux/sparc/kernel-features.h + (__ASSUME_SOCKETCALL): Likewise. + +2018-11-08 H.J. Lu + + [BZ #23509] + * sysdeps/x86/dl-prop.h (_dl_process_cet_property_note): Skip + note parsing if a NT_GNU_PROPERTY_TYPE_0 note has been processed. + Update the l_cet field when processing NT_GNU_PROPERTY_TYPE_0 note. + Check multiple NT_GNU_PROPERTY_TYPE_0 notes. + * sysdeps/x86/link_map.h (l_cet): Expand to 3 bits, Add + lc_unknown. + +2018-11-08 Alexandra Hájková + + [BZ #17630] + * resolv/tst-resolv-network.c: Add test for getnetbyname. + +2018-11-07 Joseph Myers + + [BZ #23867] + * sysdeps/unix/sysv/linux/arm/kernel-features.h + [__LINUX_KERNEL_VERSION < 0x040700] (__ASSUME_MLOCK2): Undefine. + * sysdeps/unix/sysv/linux/microblaze/kernel-features.h + [__LINUX_KERNEL_VERSION < 0x040700] (__ASSUME_MLOCK2): Undefine. + +2018-11-07 Adhemerval Zanella + + * support/support_test_compare_string.c + (support_test_compare_string): Fix printf format. + +2018-11-07 Florian Weimer + + Implement TEST_COMPARE_STRING. + * support/check.h (TEST_COMPARE_STRING): Define. + (support_test_compare_string): Declare. + * support/Makefile (libsupport-routines): Add + support_test_compare_string. + (tests): Add tst-test_compare_string. + * support/support_test_compare_string.c: New file. + * support/tst-test_compare_string.c: Likewise. + +2018-11-07 Andreas Schwab + + [BZ #23864] + * sysdeps/unix/sysv/linux/riscv/kernel-features.h + (__ASSUME_SET_ROBUST_LIST) [__LINUX_KERNEL_VERSION < 0x041400]: + Undef. + +2018-11-06 Joseph Myers + + [BZ #23862] + * sysdeps/unix/sysv/linux/sh/kernel-features.h + [__LINUX_KERNEL_VERSION < 0x040800] (__ASSUME_EXECVEAT): Undefine. + [__LINUX_KERNEL_VERSION < 0x040800] (__ASSUME_MLOCK2): Likewise. + [__LINUX_KERNEL_VERSION < 0x040800] (__ASSUME_COPY_FILE_RANGE): + Likewise. + +2018-11-06 Florian Weimer + + [BZ #17405] + * posix/Makefile (routines): Add spawn_faction_addchdir. + (tests): Add tst-spawn-chdir. + * posix/Versions (GLIBC_2.29): Add + posix_spawn_file_actions_addchdir_np. + * posix/spawn_faction_addchdir.c: New file. + * posix/spawn_faction_destroy.c + (__posix_spawn_file_actions_destroy): Handle spawn_do_chdir. + * posix/spawn.h (posix_spawn_file_actions_addchdir_np): Declare. + * posix/spawn_int.h (struct __spawn_action): Add spawn_do_chdir, + chdir_action. + * posix/tst-spawn-chdir.c: New file. + * sysdeps/posix/spawni.c (__spawni_child): Handle spawn_do_chdir. + * sysdeps/unix/sysv/linux/spawni.c (__spawni_child): Likewise. + * sysdeps/mach/hurd/i386/libc.abilist (GLIBC_2.29): Add + posix_spawn_file_actions_addchdir_np. + * sysdeps/unix/sysv/linux/aarch64/libc.abilist (GLIBC_2.29): + Likewise. + * sysdeps/unix/sysv/linux/alpha/libc.abilist (GLIBC_2.29): + Likewise. + * sysdeps/unix/sysv/linux/arm/libc.abilist (GLIBC_2.29): Likewise. + * sysdeps/unix/sysv/linux/hppa/libc.abilist (GLIBC_2.29): + Likewise. + * sysdeps/unix/sysv/linux/i386/libc.abilist (GLIBC_2.29): + Likewise. + * sysdeps/unix/sysv/linux/ia64/libc.abilist (GLIBC_2.29): + Likewise. + * sysdeps/unix/sysv/linux/m68k/coldfire/libc.abilist (GLIBC_2.29): + Likewise. + * sysdeps/unix/sysv/linux/m68k/m680x0/libc.abilist (GLIBC_2.29): + Likewise. + * sysdeps/unix/sysv/linux/microblaze/libc.abilist (GLIBC_2.29): + Likewise. + * sysdeps/unix/sysv/linux/mips/mips32/fpu/libc.abilist + (GLIBC_2.29): Likewise. + * sysdeps/unix/sysv/linux/mips/mips32/nofpu/libc.abilist + (GLIBC_2.29): Likewise. + * sysdeps/unix/sysv/linux/mips/mips64/n32/libc.abilist + (GLIBC_2.29): Likewise. + * sysdeps/unix/sysv/linux/mips/mips64/n64/libc.abilist + (GLIBC_2.29): Likewise. + * sysdeps/unix/sysv/linux/nios2/libc.abilist (GLIBC_2.29): + Likewise. + * sysdeps/unix/sysv/linux/powerpc/powerpc32/fpu/libc.abilist + (GLIBC_2.29): Likewise. + * sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/libc.abilist + (GLIBC_2.29): Likewise. + * sysdeps/unix/sysv/linux/powerpc/powerpc64/libc-le.abilist + (GLIBC_2.29): Likewise. + * sysdeps/unix/sysv/linux/powerpc/powerpc64/libc.abilist + (GLIBC_2.29): Likewise. + * sysdeps/unix/sysv/linux/riscv/rv64/libc.abilist (GLIBC_2.29): + Likewise. + * sysdeps/unix/sysv/linux/s390/s390-32/libc.abilist (GLIBC_2.29): + Likewise. + * sysdeps/unix/sysv/linux/s390/s390-64/libc.abilist (GLIBC_2.29): + Likewise. + * sysdeps/unix/sysv/linux/sh/libc.abilist (GLIBC_2.29): Likewise. + * sysdeps/unix/sysv/linux/sparc/sparc32/libc.abilist (GLIBC_2.29): + Likewise. + * sysdeps/unix/sysv/linux/sparc/sparc64/libc.abilist (GLIBC_2.29): + Likewise. + * sysdeps/unix/sysv/linux/x86_64/64/libc.abilist (GLIBC_2.29): + Likewise. + * sysdeps/unix/sysv/linux/x86_64/x32/libc.abilist (GLIBC_2.29): + Likewise. + +2018-11-06 Gabriel F. T. Gomes + + * misc/Makefile (tests): Add tst-ldbl-error. + * misc/tst-ldbl-error.c: New file. + +2018-11-06 Gabriel F. T. Gomes + + * misc/Makefile (tests): Add tst-ldbl-warn. + * misc/tst-ldbl-warn.c: New file. + +2018-11-06 Gabriel F. T. Gomes + + * argp/Makefile (tests): Add tst-ldbl-argp. + * argp/tst-ldbl-argp.c: New file. + +2018-11-05 Arjun Shankar + + * iconv/gconv_conf.c (__gconv_read_conf): Remove NULL check for + __gconv_path_elem and call __gconv_get_path unconditionally. + +2018-11-05 Andreas Schwab + + [BZ #22927] + * resolv/gai_misc.c (__gai_enqueue_request): Don't crash if + creating the first helper thread failed. + +2018-11-03 Samuel Thibault + + * sysdeps/mach/hurd/msync.c: New file. + +2018-11-02 Florian Weimer + + * support/shell-container.c (copy_func): Call + support_copy_file_range instead of copy_file_range to support + cross-device copies. + +2018-11-02 Florian Weimer + + * support/test-container.c: Include for + ALIGN_UP. + +2018-11-01 Zong Li + + * soft-fp/op-8.h (_FP_FRAC_SET_8, _FP_FRAC_ADD_8, _FP_FRAC_SUB_8) + (_FP_FRAC_CLZ_8, _FP_MINFRAC_8, _FP_FRAC_NEGP_8, _FP_FRAC_ZEROP_8) + (_FP_FRAC_HIGHBIT_DW_8, _FP_FRAC_COPY_4_8, _FP_FRAC_COPY_8_4) + (__FP_FRAC_SET_8): Add implementation for RV32 use. + + * soft-fp/op-4.h (_FP_FRAC_SUB_3, _FP_FRAC_SUB_4): Use temporary + variable to avoid overlap arguments. + +2018-11-01 Joseph Myers + + * posix/bug-regex22.c (main): Use puts with distinct error + messages for unexpected success of re_compile_pattern, not printf + with NULL argument to %s. + + * stdio-common/bug22.c: Include . + (do_test): Disable -Wformat-overflow= warnings around fprintf + calls outputting more than INT_MAX characters. + * stdio-common/tst-printf.c: Disable -Wformat-overflow= warnings + around printf call with NULL %s argument. + + [BZ #23848] + * sysdeps/unix/sysv/linux/sparc/kernel-features.h [!__arch64__ && + __LINUX_KERNEL_VERSION < 0x040400] (__ASSUME_SENDMSG_SYSCALL): + Undefine. + [!__arch64__ && __LINUX_KERNEL_VERSION < 0x040400] + (__ASSUME_RECVMSG_SYSCALL): Likewise. + [!__arch64__ && __LINUX_KERNEL_VERSION < 0x040400] + (__ASSUME_SENDTO_SYSCALL): Likewise. + [!__arch64__ && __LINUX_KERNEL_VERSION < 0x040400] + (__ASSUME_ACCEPT_SYSCALL): Undefine under this condition, not just + [!__arch64__]. + [!__arch64__ && __LINUX_KERNEL_VERSION < 0x040400] + (__ASSUME_CONNECT_SYSCALL): Likewise. + [!__arch64__ && __LINUX_KERNEL_VERSION < 0x040400] + (__ASSUME_RECVFROM_SYSCALL): Likewise. + [__LINUX_KERNEL_VERSION >= 0x040400] (__ASSUME_BIND_SYSCALL): + Define. + [__LINUX_KERNEL_VERSION >= 0x040400] (__ASSUME_LISTEN_SYSCALL): + Likewise. + [__LINUX_KERNEL_VERSION >= 0x040400] + (__ASSUME_SETSOCKOPT_SYSCALL): Likewise. + * sysdeps/unix/sysv/linux/sparc/sparc64/syscalls.list (bind): + Remove. + (listen): Likewise. + (setsockopt): Likewise. + +2018-11-01 Fredrik Noring + + * sysdeps/mips/sys/tas.h (_test_and_set): Handle the R5900 CPU + with the ISA override. + +2018-10-31 Rafael Ávila de Espíndola + + * sysdeps/unix/sysv/linux/sysdep-vdso.h: Simplify an #if #else + #endif. + +2018-10-31 Samuel Thibault + + * manual/errno.texi (EIEIO): Document how translators should + translate the error message. + * sysdeps/mach/hurd/errnos.awk: Avoid printing errnos.d. Avoid + printing trailing whitespaces refused by git. + * sysdeps/gnu/errlist.c (EIEIO): Regenerate. + * sysdeps/mach/hurd/bits/errno.h: Regenerate. + * hurd/Makefile (user-interfaces): Add pci. + +2018-10-30 Joseph Myers + + * conform/linknamespace.py: New file. + * conform/linknamespace.pl: Remove file. + * conform/Makefile ($(linknamespace-header-tests)): Use + linknamespace.py instead of linknamespace.pl. Do not use --tmpdir + option. + +2018-10-30 Florian Weimer + + * stdlib/test-bz22786.c (do_test): Additional free calls to avoid + memory leaks. + +2018-10-30 Florian Weimer + + * support/blob_repeat.c (allocate_big): Call mkstemp directly. + +2018-10-30 Florian Weimer + + * stdlib/tst-strtod-overflow.c (do_test): Switch to + support_blob_repeat. + +2018-10-30 Florian Weimer + + Avoid spurious test failures in stdlib/test-bz22786. + * support/Makefile (libsupport-routines): Add blob_repeat. + (tests): Add tst-support_blob_repeat. + * support/blob_repeat.h: New file. + * support/blob_repeat.c: Likewise. + * support/tst-support_blob_repeat.c: Likewise. + * stdlib/test-bz22786.c (do_test): Replace malloc and memset with + support_blob_repeat_allocate. + +2018-10-30 Andreas Schwab + + [BZ #23125] + * sysdeps/riscv/start.S (ENTRY_POINT): Mark ra as undefined. + Don't use tail call. + * elf/tst-unwind-main.c: New file. + * elf/Makefile (tests): Add tst-unwind-main. + (CFLAGS-tst-unwind-main.c): Define. + +2018-10-29 Sergi Almacellas Abellana + + [BZ #23791] + * localedata/locales/ca_ES (LC_MONETARY): set p_cs_precedes and + n_cs_precedes to 0. + * localedata/locales/ca_ES (LC_MONETARY): set grouping to 3;3 + +2018-10-29 Joseph Myers + + * conform/glibcconform.py: Do not import shutil. + (list_exported_functions): Use tempfile.TemporaryDirectory instead + of mkdtemp. + + * configure.ac (PYTHON_PROG): Use AC_CHECK_PROG_VER. Set + critic_missing for versions before 3.4. + * configure: Regenerated. + * manual/install.texi (Tools for Compilation): Document + requirement for Python to build glibc. + * INSTALL: Regenerated. + * Rules [PYTHON]: Make code unconditional. + * benchtests/Makefile [PYTHON]: Likewise. + * conform/Makefile [PYTHON]: Likewise. + * manual/Makefile [PYTHON]: Likewise. + * math/Makefile [PYTHON]: Likewise. + +2018-10-28 Samuel Thibault + + * hurd/hurdsig.c (_hurd_interrupted_rpc_timeout): Set to 60000. + * hurd/intr-msg.c (_hurd_intr_rpc_mach_msg): When the server does not + answer to interrupt_operation, return EIEIO instead of EINTR. + * sysdeps/mach/hurd/i386/intr-msg.h (INTR_MSG_TRAP): Make + _hurd_intr_rpc_msg_about_to global point to start of controlled + assembly snippet. Make it check canceled flag. + * hurd/hurdsig.c (_hurdsig_abort_rpcs): Only mutate thread if it passed + the _hurd_intr_rpc_msg_about_to point. + * hurd/intr-msg.c (_hurd_intr_rpc_mach_msg): Remove comment on mutation + issue, remove cancel flag check. + +2018-10-26 Joseph Myers + + * scripts/build-many-glibcs.py: Remove compatibility for missing + os.cpu_count and re.fullmatch. + +2018-10-26 Szabolcs Nagy + + [BZ #23822] + * sysdeps/ia64/fpu/e_exp2f.S (exp2f): Use WEAK_LIBM_ENTRY. + * sysdeps/ia64/fpu/e_log2f.S (log2f): Likewise. + * sysdeps/ia64/fpu/e_exp2f.S (powf): Likewise. + +2018-10-25 Joseph Myers + + * sysdeps/unix/sysv/linux/sys/inotify.h (IN_MASK_CREATE): New + macro. + +2018-10-25 Florian Weimer + + [BZ #23562] + [BZ #23821] + XFAIL siginfo_t si_band conform test on sparc64. + * sysdeps/unix/sysv/linux/sparc/bits/siginfo-arch.h + (__SI_BAND_TYPE): Only override long int default type on sparc64. + * sysdeps/unix/sysv/linux/sparc/sparc64/Makefile + (conformtest-xfail-conds): Add sparc64-linux. + * conform/data/signal.h-data (siginfo_t): XFAIL si_band test on + sparc64. + * conform/data/sys/wait.h-data (siginfo_t): Likewise. + +2018-10-25 Joseph Myers + + * elf/elf.h (NT_MIPS_DSP): New macro. + (NT_MIPS_FP_MODE): Likewise. + +2018-10-25 Zong Li + + * elf/Makefile (LDFLAGS-tst-execstack-mod.so): Change variable + name by adding the file extension (.so). + +2018-10-25 Samuel Thibault + + * sysdeps/mach/hurd/i386/Makefile [$(subdir) = conform] + (test-xfail-ISO11/threads.h/linknamespace, + test-xfail-ISO11/threads.h/conform): Add. + +2018-10-24 Joseph Myers + + * math/gen-libm-test.py: Import os. + (ALL_FLOATS_MANUAL): New constant. + (ALL_FLOATS_SUFFIX): Likewise. + (Ulps.all_functions): New function. + (real_all_ulps): Likewise. + (generate_err_table_sub): Likewise. + (generate_err_table): Likewise. + (main): Handle -s and -m options. + * manual/libm-err-tab.pl: Remove. + * manual/Makefile ($(objpfx)stamp-libm-err): Use gen-libm-test.py + instead of libm-err-tab.pl. + [$(PERL) != no]: Change condition to [$(if $(PYTHON),$(PERL),no) + != no]. + * manual/install.texi (Tools for Compilation): Document + requirement for Python to build manual. + * INSTALL: Regenerated. + +2018-10-24 Albert ARIBAUD + + * bits/time64.h: New file. + * include/time.h: Replace internal_time_t with __time64_t. + * posix/bits/types (__time64_t): Add. + * stdlib/Makefile: Add bits/time64.h to includes. + * time/tzfile.c: Replace internal_time_t with __time64_t. + +2018-10-24 Adhemerval Zanella + + * include/spawn.h (__posix_spawn, posix_spawn_file_actions_addclose, + __posix_spawn_file_actions_adddup2, __posix_spawn_file_actions_destroy, + __posix_spawn_file_actions_init, __posix_spawnattr_init, + __posix_spawnattr_destroy, __posix_spawnattr_setflags, + __posix_spawnattr_setsigdefault, __posix_spawnattr_setsigmask): New + prototype. + * posix/spawn.c (__posix_spawn): Add libc_hidden_def. + * posix/spawn_faction_addclose.c + (__posix_spawn_file_actions_addclose): Add hidden definition. + * posix/spawn_faction_adddup2.c + (__posix_spawn_file_actions_adddup2): Likewise. + * posix/spawn_faction_destroy.c + (__posix_spawn_file_actions_destroy): Likewise. + * posix/spawn_faction_init.c (__posix_spawn_file_actions_init): + Likewise. + * posix/spawnattr_destroy.c (__posix_spawnattr_destroy): Likewise. + * posix/spawnattr_init.c (__posix_spawnattr_init): Likewise. + * posix/spawnattr_setdefault.c (__posix_spawnattr_setsigdefault): + Likewise. + * posix/spawnattr_setflags.c (__posix_spawnattr_setflags): Likewise. + * posix/spawnattr_setsigmask.c (__posix_spawnattr_setsigmask): + Likewise. + +2018-10-24 Andreas Schwab + + [BZ #18093] + * elf/dl-cache.c (_dl_load_cache_lookup): Check for truncated old + format cache. + * elf/cache.c (print_cache): Likewise. + +2018-10-24 Albert ARIBAUD + + * bits/timesize.h: New file. + * stdlib/Makefile (headers): Add bits/timesize.h. + * sysdeps/unix/sysv/linux/bits/msq-pad.h + (__MSQ_PAD_AFTER_TIME): Use __TIMESIZE instead of __WORDSIZE. + * sysdeps/unix/sysv/linux/bits/sem-pad.h + (__SEM_PAD_AFTER_TIME): Likewise. + * sysdeps/unix/sysv/linux/bits/shm-pad.h + (__SHM_PAD_AFTER_TIME): Likewise. + * sysdeps/unix/sysv/linux/hppa/bits/msq-pad.h + (__MSQ_PAD_BEFORE_TIME): Likewise. + * sysdeps/unix/sysv/linux/hppa/bits/sem-pad.h + (__SEM_PAD_BEFORE_TIME): Likewise. + * sysdeps/unix/sysv/linux/hppa/bits/shm-pad.h + (__SHM_PAD_BEFORE_TIME, __SHM_PAD_BETWEEN_TIME_AND_SEGSZ): Likewise. + * sysdeps/unix/sysv/linux/mips/bits/msq-pad.h + (__MSQ_PAD_AFTER_TIME, __MSQ_PAD_BEFORE_TIME): Likewise. + * sysdeps/unix/sysv/linux/powerpc/bits/msq-pad.h + (__MSQ_PAD_BEFORE_TIME): Likewise. + * sysdeps/unix/sysv/linux/powerpc/bits/sem-pad.h + (__SEM_PAD_BEFORE_TIME): Likewise. + * sysdeps/unix/sysv/linux/powerpc/bits/shm-pad.h + (__SHM_PAD_BEFORE_TIME, __SHM_PAD_BETWEEN_TIME_AND_SEGSZ): Likewise. + * sysdeps/unix/sysv/linux/sparc/bits/msq-pad.h + (__MSQ_PAD_BEFORE_TIME): Likewise. + * sysdeps/unix/sysv/linux/sparc/bits/sem-pad.h + (__SEM_PAD_BEFORE_TIME): Likewise. + * sysdeps/unix/sysv/linux/sparc/bits/shm-pad.h + (__SHM_PAD_BEFORE_TIME): Likewise. + * sysdeps/unix/sysv/linux/x86/bits/msq-pad.h: Delete file. + * sysdeps/unix/sysv/linux/x86/bits/shm-pad.h: Likewise. + * sysdeps/unix/sysv/linux/x86/bits/timesize.h: New file. + +2018-10-24 H.J. Lu + + * benchtests/Makefile (CPPFLAGS-nonlib): Add -DUSE_RDTSCP if + USE_RDTSCP is defined. + * sysdeps/x86/hp-timing.h (HP_TIMING_NOW): Use RDTSCP if + USE_RDTSCP is defined. + +2018-10-23 Adhemerval Zanella + + * misc/tst-preadvwritev2-common.c (IOV_MAX): Define if not + defined. + + [BZ #23709] + * sysdeps/x86/cpu-features.c (init_cpu_features): Set TSX bits + independently of other flags. + +2018-10-23 Florian Weimer + + * time/tst-mktime2.c (N_STRINGS): Remove. + (set_timezone): New function. + (spring_forward_gap): Call it. Use FAIL_EXIT1. + (mktime_test1): Report localtime failure and check errno value. + Use TEST_COMPARE. + (irix_6_4_bug, bigtime_test): Use TEST_COMPARE. + (do_test): Remove alarm call. Use set_timezone and array_length. + +2018-10-23 Andreas Schwab + + * sysdeps/unix/sysv/linux/riscv/setcontext.S (__setcontext) + (__start_context): Use END instead of PSEUDO_END. + +2018-10-22 Joseph Myers + + * sysdeps/unix/sysv/linux/syscall-names.list: Update kernel + version to 4.19. + + * scripts/build-many-glibcs.py (Context.checkout): Default Linux + version to 4.19. + + [BZ #23793] + * wcsmbs/c32rtomb.c: New file. + * wcsmbs/mbrtoc32.c: Likewise. + * wcsmbs/tst-c32-state.c: Likewise. + * wcsmbs/mbrtowc.c (mbrtoc32): Do not define as alias. + * wcsmbs/wcrtomb.c (c32rtomb): Likewise. + * wcsmbs/Makefile (routines): Add mbrtoc32 and c32rtomb. + (tests): Add tst-c32-state. + [$(run-built-tests) = yes] ($(objpfx)tst-c32-state.out): Depend on + $(gen-locales). + +2018-10-21 H.J. Lu + + * sysdeps/x86/hp-timing.h: Don't include . + (HP_TIMING_NOW): Replace _rdtsc with __builtin_ia32_rdtsc. + +2018-10-19 Joseph Myers + + [BZ #23794] + * wcsmbs/c16rtomb.c (c16rtomb): Save first character of surrogate + pair and return 0 in that case, and use saved character to + interpret following character. + * wcsmbs/tst-c16-surrogate.c: New file. + * wcsmbs/Makefile (tests): Add tst-c16-surrogate.c. + [$(run-built-tests) = yes] ($(objpfx)tst-c16-surrogate.out): + Depend on $(gen-locales) + +2018-10-19 Ilya Yu. Malakhov + + [BZ #23562] + * sysdeps/unix/sysv/linux/bits/types/siginfo_t.h + (struct siginfo_t): Use correct type for si_band. + +2018-10-19 Florian Weimer + + [BZ #23689] + * resource/bits/types/struct_rusage.h (struct rusage): Update + comment on struct. Remove extraneous field comment. + +2018-10-18 David S. Miller + + * sysdeps/unix/sysv/linux/sparc/init-first.c: New file. + * sysdeps/unix/sysv/linux/sparc/libc-vdso.h: New file. + * sysdeps/unix/sysv/linux/sparc/Makefile: Add dl-vdso to + sysdep_routines in subdir elf. + * sysdeps/unix/sysv/linux/sparc/Versions: Add GLIBC_PRIVATE + version for __vdso_clock_gettime. + * sysdeps/unix/sysv/linux/sparc/sysdep.h (INTERNAL_VSYSCALL_CALL): + Define. + (HAVE_CLOCK_GETTIME_VSYSCALL): Define. + (HAVE_GETTIMEOFDAY_VSYSCALL): Define. + + * sysdeps/sparc/fpu/libm-test-ulps: Regenerated. + +2018-10-17 H.J. Lu + + * sysdeps/i386/init-arch.h: Removed. + * sysdeps/i386/i586/init-arch.h: Likewise. + * sysdeps/i386/i686/init-arch.h: Likewise. + * sysdeps/i386/i686/hp-timing.h: Likewise. + * sysdeps/x86_64/hp-timing.h: Likewise. + * sysdeps/i386/isa.h: New file. + * sysdeps/i386/i586/isa.h: Likewise. + * sysdeps/i386/i686/isa.h: Likewise. + * sysdeps/x86_64/isa.h: Likewise. + * sysdeps/x86/hp-timing.h: New file. + * sysdeps/x86/init-arch.h: Include . + +2018-10-17 Joseph Myers + + * math/libm-test-pow.inc (pow_test_data): Do not allow + divide-by-zero exception for pow(+/- 0, -Inf). + +2018-10-17 Zack Weinberg + + * manual/job.texi (Job Control is Optional): Remove node, as + job control has not been optional in quite some time. + (Job Control): Mention briefly that systems older than + POSIX.1-2001 might not support job control. + * manual/conf.texi (_POSIX_JOB_CONTROL): Will always be + defined on systems conforming to POSIX.1-2001. + +2018-10-17 Arjun Shankar + + [BZ #22062] + * iconv/gconv_conf.c (__gconv_get_path): Remove locking and fix + indentation. + * (__gconv_read_conf): Mark function static. + * (once): New static variable. + * (__gconv_load_conf): New function. + * iconv/gconv_int.h (__gconv_load_conf): Likewise. + * iconv/gconv_db.c (once): Remove static variable. + * (__gconv_compare_alias): Use __gconv_load_conf instead of + __gconv_read_conf. + * (__gconv_find_transform): Likewise. + * iconv/tst-iconv-mt.c: New test. + * iconv/Makefile: Add tst-iconv_mt. + +2018-10-17 Joseph Myers + + * sysdeps/unix/sysv/linux/Makefile (sysdep_headers): Add + bits/shm-pad.h. + * sysdeps/unix/sysv/linux/bits/shm.h: Include . + (shmatt_t): Define as __syscall_ulong_t. + (__SHM_PAD_TIME): New macro, depending on [__SHM_PAD_BEFORE_TIME] + and [__SHM_PAD_AFTER_TIME]. + (struct shmid_ds): Define time fields using __SHM_PAD_TIME. + Define shm_segsz and associated padding based on + [__SHM_SEGSZ_AFTER_TIME] and [__SHM_PAD_BETWEEN_TIME_AND_SEGSZ]. + Use __syscall_ulong_t instead of unsigned long int. + [__USE_MISC] (struct shminfo): Use __syscall_ulong_t instead of + unsigned long int. + [__USE_MISC] (struct shm_info): Likewise. + * sysdeps/unix/sysv/linux/bits/shm-pad.h: New file. + * sysdeps/unix/sysv/linux/hppa/bits/shm-pad.h: Likewise. + * sysdeps/unix/sysv/linux/mips/bits/shm-pad.h: Likewise. + * sysdeps/unix/sysv/linux/powerpc/bits/shm-pad.h: Likewise. + * sysdeps/unix/sysv/linux/sparc/bits/shm-pad.h: Likewise. + * sysdeps/unix/sysv/linux/x86/bits/shm-pad.h: Likewise. + * sysdeps/unix/sysv/linux/hppa/bits/shm.h: Remove. + * sysdeps/unix/sysv/linux/mips/bits/shm.h: Likewise. + * sysdeps/unix/sysv/linux/powerpc/bits/shm.h: Likewise. + * sysdeps/unix/sysv/linux/sparc/bits/shm.h: Likewise. + * sysdeps/unix/sysv/linux/x86/bits/shm.h: Likewise. + + * sysdeps/unix/sysv/linux/Makefile (sysdep_headers): Add + bits/shmlba.h. + * sysdeps/unix/sysv/linux/bits/shm.h: Include . + (SHMLBA): Remove macro. + (__getpagesize): Remove function declaration. + * sysdeps/unix/sysv/linux/hppa/bits/shm.h: Include + . + (SHMLBA): Remove macro. + * sysdeps/unix/sysv/linux/mips/bits/shm.h: Include + . + (SHMLBA): Remove macro. + * sysdeps/unix/sysv/linux/powerpc/bits/shm.h: Include + . + (SHMLBA): Remove macro. + (__getpagesize): Remove function declaration. + * sysdeps/unix/sysv/linux/sparc/bits/shm.h: Include + . + (SHMLBA): Remove macro. + (__getshmlba): Remove function declaration. + * sysdeps/unix/sysv/linux/x86/bits/shm.h: Include . + (SHMLBA): Remove macro. + (__getpagesize): Remove function declaration. + * sysdeps/unix/sysv/linux/arm/bits/shm.h: Remove file. + * sysdeps/unix/sysv/linux/ia64/bits/shm.h: Likewise. + * sysdeps/unix/sysv/linux/sh/bits/shm.h: Likewise. + * sysdeps/unix/sysv/linux/bits/shmlba.h: New file. + * sysdeps/unix/sysv/linux/arm/bits/shmlba.h: Likewise. + * sysdeps/unix/sysv/linux/hppa/bits/shmlba.h: Likewise. + * sysdeps/unix/sysv/linux/ia64/bits/shmlba.h: Likewise. + * sysdeps/unix/sysv/linux/mips/bits/shmlba.h: Likewise. + * sysdeps/unix/sysv/linux/sh/bits/shmlba.h: Likewise. + * sysdeps/unix/sysv/linux/sparc/bits/shmlba.h: Likewise. + +2018-10-17 Stefan Liebler + + [BZ #23275] + * nptl/tst-mutex10.c: New File. + * nptl/Makefile (tests): Add tst-mutex10. + (tst-mutex10-ENV): New variable. + * sysdeps/unix/sysv/linux/s390/force-elision.h: (FORCE_ELISION): + Ensure that elision path is used if elision is available. + * sysdeps/unix/sysv/linux/powerpc/force-elision.h (FORCE_ELISION): + Likewise. + * sysdeps/unix/sysv/linux/x86/force-elision.h: (FORCE_ELISION): + Likewise. + * nptl/pthreadP.h (PTHREAD_MUTEX_TYPE, PTHREAD_MUTEX_TYPE_ELISION) + (PTHREAD_MUTEX_PSHARED): Use atomic_load_relaxed. + * nptl/pthread_mutex_consistent.c (pthread_mutex_consistent): Likewise. + * nptl/pthread_mutex_getprioceiling.c (pthread_mutex_getprioceiling): + Likewise. + * nptl/pthread_mutex_lock.c (__pthread_mutex_lock_full) + (__pthread_mutex_cond_lock_adjust): Likewise. + * nptl/pthread_mutex_setprioceiling.c (pthread_mutex_setprioceiling): + Likewise. + * nptl/pthread_mutex_timedlock.c (__pthread_mutex_timedlock): Likewise. + * nptl/pthread_mutex_trylock.c (__pthread_mutex_trylock): Likewise. + * nptl/pthread_mutex_unlock.c (__pthread_mutex_unlock_full): Likewise. + * sysdeps/nptl/bits/thread-shared-types.h (struct __pthread_mutex_s): + Add comments. + * nptl/pthread_mutex_destroy.c (__pthread_mutex_destroy): + Use atomic_load_relaxed and atomic_store_relaxed. + * nptl/pthread_mutex_init.c (__pthread_mutex_init): + Use atomic_store_relaxed. + +2018-10-17 Andreas Schwab + + * benchtests/bench-strtod.c (TIMEOUT): Don't define. + * crypt/badsalttest.c (TIMEOUT): Likewise. + * crypt/sha256c-test.c (TIMEOUT): Likewise. + * dirent/tst-fdopendir.c (TIMEOUT): Likewise. + * io/test-lfs.c (TIMEOUT): Likewise. + * libio/tst-atime.c (TIMEOUT): Likewise. + * localedata/tst-leaks.c (TIMEOUT): Likewise. + * nptl/tst-cancel19.c (TIMEOUT): Likewise. + * nptl/tst-cancel22.c (TIMEOUT): Likewise. + * nptl/tst-cancel25.c (TIMEOUT): Likewise. + * nptl/tst-cancel7.c (TIMEOUT): Likewise. + * nptl/tst-cond-except.c (TIMEOUT): Likewise. + * nptl/tst-cond11.c (TIMEOUT): Likewise. + * nptl/tst-cond14.c (TIMEOUT): Likewise. + * nptl/tst-cond15.c (TIMEOUT): Likewise. + * nptl/tst-cond24.c (TIMEOUT): Likewise. + * nptl/tst-cond25.c (TIMEOUT): Likewise. + * nptl/tst-kill2.c (TIMEOUT): Likewise. + * nptl/tst-kill3.c (TIMEOUT): Likewise. + * nptl/tst-mutex4.c (TIMEOUT): Likewise. + * nptl/tst-mutex5.c (TIMEOUT): Likewise. + * nptl/tst-mutex9.c (TIMEOUT): Likewise. + * nptl/tst-once2.c (TIMEOUT): Likewise. + * nptl/tst-once3.c (TIMEOUT): Likewise. + * nptl/tst-once4.c (TIMEOUT): Likewise. + * nptl/tst-robust8.c (TIMEOUT): Likewise. + * nptl/tst-robust9.c (TIMEOUT): Likewise. + * nptl/tst-rwlock16.c (TIMEOUT): Likewise. + * nptl/tst-sem14.c (TIMEOUT): Likewise. + * nptl/tst-sem6.c (TIMEOUT): Likewise. + * nptl/tst-signal3.c (TIMEOUT): Likewise. + * nptl/tst-spin4.c (TIMEOUT): Likewise. + * nptl/tst-tls3.c (TIMEOUT): Likewise. + * nptl/tst-tls4.c (TIMEOUT): Likewise. + * posix/tst-chmod.c (TIMEOUT): Likewise. + * posix/tst-getaddrinfo4.c (TIMEOUT): Likewise. + * posix/tst-getaddrinfo5.c (TIMEOUT): Likewise. + * posix/tst-preadwrite-common.c (TIMEOUT): Likewise. + * posix/tst-regex2.c (TIMEOUT): Likewise. + * posix/tst-waitid.c (TIMEOUT): Likewise. + * rt/tst-aio.c (TIMEOUT): Likewise. + * rt/tst-aio10.c (TIMEOUT): Likewise. + * rt/tst-aio4.c (TIMEOUT): Likewise. + * rt/tst-aio5.c (TIMEOUT): Likewise. + * rt/tst-aio6.c (TIMEOUT): Likewise. + * rt/tst-aio64.c (TIMEOUT): Likewise. + * rt/tst-aio7.c (TIMEOUT): Likewise. + * rt/tst-aio9.c (TIMEOUT): Likewise. + * rt/tst-clock.c (TIMEOUT): Likewise. + * rt/tst-cpuclock1.c (TIMEOUT): Likewise. + * rt/tst-cpuclock2.c (TIMEOUT): Likewise. + * rt/tst-mqueue2.c (TIMEOUT): Likewise. + * rt/tst-mqueue4.c (TIMEOUT): Likewise. + * rt/tst-mqueue5.c (TIMEOUT): Likewise. + * rt/tst-timer4.c (TIMEOUT): Likewise. + * stdio-common/tst-fseek.c (TIMEOUT): Likewise. + * stdio-common/tst-rndseek.c (TIMEOUT): Likewise. + * stdlib/tst-empty-env.c (TIMEOUT): Likewise. + * sysdeps/wordsize-64/tst-writev.c (TIMEOUT): Likewise. + * time/tst-ftime.c (TIMEOUT): Likewise. + * timezone/tst-tzset.c (TIMEOUT): Likewise. + +2018-10-16 Anton Youdkevitch + + * sysdeps/aarch64/multiarch/memcpy_thunderx.S: Remove thunderx2 code. + * sysdeps/aarch64/multiarch/memcpy_thunderx2.S: New implementation + for thunderX2. + +2018-10-15 Joseph Myers + + * sysdeps/unix/sysv/linux/Makefile (sysdep_headers): Add + bits/sem-pad.h. + * sysdeps/unix/sysv/linux/bits/sem.h: Include + instead of . + (__SEM_PAD_TIME): New macro, depending on [__SEM_PAD_BEFORE_TIME] + and [__SEM_PAD_AFTER_TIME]. + (struct semid_ds): Define time fields using __SEM_PAD_TIME. Use + __syscall_ulong_t instead of unsigned long int. + * sysdeps/unix/sysv/linux/bits/sem-pad.h: New file. + * sysdeps/unix/sysv/linux/hppa/bits/sem-pad.h: Likewise. + * sysdeps/unix/sysv/linux/mips/bits/sem-pad.h: Likewise. + * sysdeps/unix/sysv/linux/powerpc/bits/sem-pad.h: Likewise. + * sysdeps/unix/sysv/linux/sparc/bits/sem-pad.h: Likewise. + * sysdeps/unix/sysv/linux/x86/bits/sem-pad.h: Likewise. + * sysdeps/unix/sysv/linux/hppa/bits/sem.h: Remove. + * sysdeps/unix/sysv/linux/mips/bits/sem.h: Likewise. + * sysdeps/unix/sysv/linux/powerpc/bits/sem.h: Likewise. + * sysdeps/unix/sysv/linux/sparc/bits/sem.h: Likewise. + * sysdeps/unix/sysv/linux/x86/bits/sem.h: Likewise. + +2018-10-14 Paul Eggert + + regex: simplify by using intprops.h + [BZ#23744] + * posix/regex_internal.h [_LIBC]: Include intprops.h. + (TYPE_SIGNED, INT_ADD_WRAPV) [_LIBC]: Remove. + intprops.h defines them. + + regex: __builtin_expect → __glibc_unlikely + [BZ#23744] + This refactoring was prompted by a problem when the regex code is + used as part of Gnulib and when the builder’s compiler does not grok + __builtin_expect. Problem reported for Gawk by Nelson H.F. Beebe in: + https://lists.gnu.org/r/bug-gnulib/2018-09/msg00137.html + Although this refactoring does not fix the problem directly, + we might as well have Gawk use the now-preferred glibc style for when + __builtin_expect is unavailable. + * posix/regex_internal.h (BE): Remove. + All uses replaced by __glibc_unlikely or __glibc_likely. + +2018-10-11 Joseph Myers + + * sysdeps/unix/sysv/linux/Makefile (sysdep_headers): Add + bits/msq-pad.h. + * sysdeps/unix/sysv/linux/bits/msq.h: Include + instead of . + (msgqnum_t): Define as __syscall_ulong_t. + (msglen_t): Likewise. + (__MSQ_PAD_TIME): New macro, depending on [__MSQ_PAD_BEFORE_TIME] + and [__MSQ_PAD_AFTER_TIME]. + (struct msqid_ds): Define time fields using __MSQ_PAD_TIME. Use + __syscall_ulong_t instead of unsigned long int. + * sysdeps/unix/sysv/linux/bits/msq-pad.h: New file. + * sysdeps/unix/sysv/linux/hppa/bits/msq-pad.h: Likewise. + * sysdeps/unix/sysv/linux/mips/bits/msq-pad.h: Likewise. + * sysdeps/unix/sysv/linux/powerpc/bits/msq-pad.h: Likewise. + * sysdeps/unix/sysv/linux/sparc/bits/msq-pad.h: Likewise. + * sysdeps/unix/sysv/linux/x86/bits/msq-pad.h: Likewise. + * sysdeps/unix/sysv/linux/hppa/bits/msq.h: Remove. + * sysdeps/unix/sysv/linux/mips/bits/msq.h: Likewise. + * sysdeps/unix/sysv/linux/powerpc/bits/msq.h: Likewise. + * sysdeps/unix/sysv/linux/sparc/bits/msq.h: Likewise. + * sysdeps/unix/sysv/linux/x86/bits/msq.h: Likewise. + +2018-10-10 Joseph Myers + + * sysdeps/unix/sysv/linux/bits/shm.h: Include . + (struct shmid_ds): Condition padding after time fields on + [__WORDSIZE == 32]. + * sysdeps/unix/sysv/linux/alpha/bits/shm.h: Remove file. + * sysdeps/unix/sysv/linux/generic/bits/shm.h: Likewise. + * sysdeps/unix/sysv/linux/s390/bits/shm.h: Likewise. + + * sysdeps/unix/sysv/linux/bits/sem.h: Include . + (struct semid_ds): Condition padding after time fields on + [__WORDSIZE == 32]. + * sysdeps/unix/sysv/linux/alpha/bits/sem.h: Remove file. + * sysdeps/unix/sysv/linux/generic/bits/sem.h: Likewise. + * sysdeps/unix/sysv/linux/ia64/bits/sem.h: Likewise. + * sysdeps/unix/sysv/linux/s390/bits/sem.h: Likewise. + + * sysdeps/unix/sysv/linux/bits/msq.h: Include . + (struct msqid_ds): Condition padding after time fields on + [__WORDSIZE == 32]. + * sysdeps/unix/sysv/linux/alpha/bits/msq.h: Remove file. + * sysdeps/unix/sysv/linux/generic/bits/msq.h: Likewise. + * sysdeps/unix/sysv/linux/ia64/bits/msq.h: Likewise. + * sysdeps/unix/sysv/linux/s390/bits/msq.h: Likewise. + +2018-10-09 Szabolcs Nagy + + * nss/tst-nss-files-hosts-multi.c (TIMEOUT): Define. + +2018-10-09 Szabolcs Nagy + + * libio/tst-readline.c (TIMEOUT): Define. + +2018-10-08 Paul Eggert + + mktime fix for Gnulib + coreutils + [BZ#23745] + This fix affects only Gnulib. Problem discovered when + mktime.c was used as part of Gnulib in bleeding-edge Coreutils. + * time/mktime.c: + (my_tzset) [!_LIBC && !NEED_MKTIME_WORKING && !NEED_MKTIME_WINDOWS]: + Do not define since it is not used. Defining an unused static + function prompts a warning from GCC when Coreutils is configured + with --enable-gcc-warnings. + +2018-10-08 Leonardo Sandoval + + * benchtests/scripts/compare_bench.py (main): set float type on + threshold argument. + +2018-10-08 Rafał Lużyński + + [BZ #23740] + * localedata/locales/kl_GL (mon): Update, the relative case. + (alt_mon): Add, fill with month names in the nominative case. + (d_t_fmt): Set to "%a %b %d %Y %T %Z". + (d_fmt): Set to "%b %d %Y". + +2018-10-04 Joseph Myers + + * sysdeps/unix/sysv/linux/hppa/bits/mman.h: Include + . + (PROT_READ): Don't define here. + (PROT_WRITE): Likewise. + (PROT_EXEC): Likewise. + (PROT_NONE): Likewise. + (PROT_GROWSDOWN): Likewise. + (PROT_GROWSUP): Likewise. + (MAP_SHARED): Likewise. + (MAP_PRIVATE): Likewise. + [__USE_MISC] (MAP_SHARED_VALIDATE): Likewise. + [__USE_MISC] (MAP_FILE): Likewise. + [__USE_MISC] (MAP_ANONYMOUS): Likewise. + [__USE_MISC] (MAP_ANON): Likewise. + [__USE_MISC] (MAP_HUGE_SHIFT): Likewise. + [__USE_MISC] (MAP_HUGE_MASK): Likewise. + (MCL_CURRENT): Likewise. + (MCL_FUTURE): Likewise. + (MCL_ONFAULT): Likewise. + [__USE_MISC] (MADV_NORMAL): Likewise. + [__USE_MISC] (MADV_RANDOM): Likewise. + [__USE_MISC] (MADV_SEQUENTIAL): Likewise. + [__USE_MISC] (MADV_WILLNEED): Likewise. + [__USE_MISC] (MADV_DONTNEED): Likewise. + [__USE_MISC] (MADV_FREE): Likewise. + [__USE_MISC] (MADV_REMOVE): Likewise. + [__USE_MISC] (MADV_DONTFORK): Likewise. + [__USE_MISC] (MADV_DOFORK): Likewise. + [__USE_MISC] (MADV_HWPOISON): Likewise. + [__USE_XOPEN2K] (POSIX_MADV_NORMAL): Likewise. + [__USE_XOPEN2K] (POSIX_MADV_RANDOM): Likewise. + [__USE_XOPEN2K] (POSIX_MADV_SEQUENTIAL): Likewise. + [__USE_XOPEN2K] (POSIX_MADV_WILLNEED): Likewise. + [__USE_XOPEN2K] (POSIX_MADV_DONTNEED): Likewise. + (__MAP_ANONYMOUS): New macro. + [__USE_MISC] (MAP_TYPE): Undefine and redefine after + inclusion. + (MAP_FIXED): Likewise. + (MS_SYNC): Likewise. + (MS_ASYNC): Likewise. + (MS_INVALIDATE): Likewise. + [__USE_MISC] (MADV_MERGEABLE): Likewise. + [__USE_MISC] (MADV_UNMERGEABLE): Likewise. + [__USE_MISC] (MADV_HUGEPAGE): Likewise. + [__USE_MISC] (MADV_NOHUGEPAGE): Likewise. + [__USE_MISC] (MADV_DONTDUMP): Likewise. + [__USE_MISC] (MADV_DODUMP): Likewise. + [__USE_MISC] (MADV_WIPEONFORK): Likewise. + [__USE_MISC] (MADV_KEEPONFORK): Likewise. + + [BZ #23735] + * sysdeps/ieee754/ldbl-opt/nldbl-compat.h (NO_MATH_REDIRECT): + Define. + * sysdeps/ieee754/ldbl-opt/test-nldbl-redirect.c: New file. + * sysdeps/ieee754/ldbl-opt/Makefile [$(subdir) = math] (tests): + Add test-nldbl-redirect. + [$(subdir) = math] (CFLAGS-test-nldbl-redirect.c): New variable. + [$(subdir) = math] ($(objpfx)test-nldbl-redirect): Depend on + $(objpfx)libnldbl_nonshared.a. + +2018-10-04 Stefan Liebler + + * support/support.h (support_objdir_elf_ldso): New variable. + * support/support_paths.c (support_objdir_elf_ldso): Likewise. + * support/Makefile (CFLAGS-support_paths.c): Add definition + for OBJDIR_ELF_LDSO_PATH. + * support/test-container.c (main): Search for the ld.so + which is also used by the testsuite. + +2018-10-02 Rafał Lużyński + + [BZ #20209] + * localedata/locales/kl_GL: (abday): Fix spelling of Sun (Sunday), + should be "sap" rather than "sab". + (day): Fix spelling of Sunday, should be "sapaat" rather than + "sabaat". + +2018-10-02 Joseph Myers + + * math/libm-test-fma.inc (fma_test_data): Add more tests. + +2018-10-02 Martin Jansa + + [BZ #19444] + * sysdeps/ieee754/soft-fp/s_fdiv.c: Include and use + DIAG_PUSH_NEEDS_COMMENT, DIAG_IGNORE_NEEDS_COMMENT and + DIAG_POP_NEEDS_COMMENT to disable -Wmaybe-uninitialized. + +2018-10-02 Adhemerval Zanella + + * sysdeps/unix/sysv/linux/fd_to_filename.h: Add missing includes. + +2018-10-02 H.J. Lu + + * sysdeps/unix/sysv/linux/x86/Makefile (CFLAGS-elision-lock.c): + Add -mrtm. + (CFLAGS-elision-unlock.c): Likewise. + (CFLAGS-elision-timed.c): Likewise. + (CFLAGS-elision-trylock.c): Likewise. + * sysdeps/unix/sysv/linux/x86/hle.h: Rewritten. + +2018-10-02 Adhemerval Zanella + + [BZ #21037] + * libio/Makefile (tests): Add tst-memstream4 and tst-wmemstream4. + * libio/freopen.c (freopen): Sync stream before reopen and adjust to + new fd_to_filename interface. + * libio/freopen64.c (freopen64): Likewise. + * libio/tst-memstream.h: New file. + * libio/tst-memstream4.c: Likewise. + * libio/tst-wmemstream4.c: Likewise. + * sysdeps/generic/fd_to_filename.h (fd_to_filename): Change signature. + * sysdeps/unix/sysv/linux/fd_to_filename.h (fd_to_filename): Likewise + and remove internal dynamic allocation. + +2018-10-01 Joseph Myers + + * sysdeps/unix/sysv/linux/bits/mman-linux.h [__USE_GNU] + (MREMAP_MAYMOVE): Do not define here. + [__USE_GNU] (MREMAP_FIXED): Likewise. + * sysdeps/unix/sysv/linux/bits/mman-shared.h [__USE_GNU] + (MREMAP_MAYMOVE): Define here instead. + [__USE_GNU] (MREMAP_FIXED): Likewise. + * sysdeps/unix/sysv/linux/hppa/bits/mman.h [__USE_GNU] + (MREMAP_MAYMOVE): Remove. + [__USE_GNU] (MREMAP_FIXED): Likewise. + +2018-09-28 Joseph Myers + + * math/fromfp.h: Do not include . + * math/s_cacosh_template.c: Likewise. + * math/s_casin_template.c: Likewise. + * math/s_casinh_template.c: Likewise. + * math/s_ccos_template.c: Likewise. + * math/s_cproj_template.c: Likewise. + * math/s_fdim_template.c: Likewise. + * math/s_fmaxmag_template.c: Likewise. + * math/s_fminmag_template.c: Likewise. + * math/s_iseqsig_template.c: Likewise. + * math/s_ldexp_template.c: Likewise. + * math/s_nextdown_template.c: Likewise. + * math/w_log1p_template.c: Likewise. + * math/w_scalbln_template.c: Likewise. + * sysdeps/aarch64/fpu/feholdexcpt.c: Likewise. + * sysdeps/aarch64/fpu/fesetround.c: Likewise. + * sysdeps/aarch64/fpu/fgetexcptflg.c: Likewise. + * sysdeps/aarch64/fpu/ftestexcept.c: Likewise. + * sysdeps/aarch64/fpu/s_llrint.c: Likewise. + * sysdeps/aarch64/fpu/s_llrintf.c: Likewise. + * sysdeps/aarch64/fpu/s_lrint.c: Likewise. + * sysdeps/aarch64/fpu/s_lrintf.c: Likewise. + * sysdeps/i386/fpu/s_atanl.c: Likewise. + * sysdeps/i386/fpu/s_f32xaddf64.c: Likewise. + * sysdeps/i386/fpu/s_f32xsubf64.c: Likewise. + * sysdeps/i386/fpu/s_fdim.c: Likewise. + * sysdeps/i386/fpu/s_logbl.c: Likewise. + * sysdeps/i386/fpu/s_rintl.c: Likewise. + * sysdeps/i386/fpu/s_significandl.c: Likewise. + * sysdeps/ia64/fpu/s_matherrf.c: Likewise. + * sysdeps/ia64/fpu/s_matherrl.c: Likewise. + * sysdeps/ieee754/dbl-64/s_atan.c: Likewise. + * sysdeps/ieee754/dbl-64/s_cbrt.c: Likewise. + * sysdeps/ieee754/dbl-64/s_fma.c: Likewise. + * sysdeps/ieee754/dbl-64/s_fmaf.c: Likewise. + * sysdeps/ieee754/flt-32/s_cbrtf.c: Likewise. + * sysdeps/ieee754/k_standardf.c: Likewise. + * sysdeps/ieee754/k_standardl.c: Likewise. + * sysdeps/ieee754/ldbl-128ibm/s_copysignl.c: Likewise. + * sysdeps/ieee754/ldbl-64-128/s_finitel.c: Likewise. + * sysdeps/ieee754/ldbl-64-128/s_fpclassifyl.c: Likewise. + * sysdeps/ieee754/ldbl-64-128/s_isinfl.c: Likewise. + * sysdeps/ieee754/ldbl-64-128/s_isnanl.c: Likewise. + * sysdeps/ieee754/ldbl-64-128/s_signbitl.c: Likewise. + * sysdeps/ieee754/ldbl-96/s_cbrtl.c: Likewise. + * sysdeps/ieee754/ldbl-96/s_fma.c: Likewise. + * sysdeps/ieee754/ldbl-96/s_fmal.c: Likewise. + * sysdeps/ieee754/s_signgam.c: Likewise. + * sysdeps/powerpc/power5+/fpu/s_modf.c: Likewise. + * sysdeps/powerpc/power5+/fpu/s_modff.c: Likewise. + * sysdeps/powerpc/power7/fpu/s_logbf.c: Likewise. + * sysdeps/riscv/rv64/rvd/s_ceil.c: Likewise. + * sysdeps/riscv/rv64/rvd/s_floor.c: Likewise. + * sysdeps/riscv/rv64/rvd/s_nearbyint.c: Likewise. + * sysdeps/riscv/rv64/rvd/s_round.c: Likewise. + * sysdeps/riscv/rv64/rvd/s_roundeven.c: Likewise. + * sysdeps/riscv/rv64/rvd/s_trunc.c: Likewise. + * sysdeps/riscv/rvd/s_finite.c: Likewise. + * sysdeps/riscv/rvd/s_fmax.c: Likewise. + * sysdeps/riscv/rvd/s_fmin.c: Likewise. + * sysdeps/riscv/rvd/s_fpclassify.c: Likewise. + * sysdeps/riscv/rvd/s_isinf.c: Likewise. + * sysdeps/riscv/rvd/s_isnan.c: Likewise. + * sysdeps/riscv/rvd/s_issignaling.c: Likewise. + * sysdeps/riscv/rvf/fegetround.c: Likewise. + * sysdeps/riscv/rvf/feholdexcpt.c: Likewise. + * sysdeps/riscv/rvf/fesetenv.c: Likewise. + * sysdeps/riscv/rvf/fesetround.c: Likewise. + * sysdeps/riscv/rvf/feupdateenv.c: Likewise. + * sysdeps/riscv/rvf/fgetexcptflg.c: Likewise. + * sysdeps/riscv/rvf/ftestexcept.c: Likewise. + * sysdeps/riscv/rvf/s_ceilf.c: Likewise. + * sysdeps/riscv/rvf/s_finitef.c: Likewise. + * sysdeps/riscv/rvf/s_floorf.c: Likewise. + * sysdeps/riscv/rvf/s_fmaxf.c: Likewise. + * sysdeps/riscv/rvf/s_fminf.c: Likewise. + * sysdeps/riscv/rvf/s_fpclassifyf.c: Likewise. + * sysdeps/riscv/rvf/s_isinff.c: Likewise. + * sysdeps/riscv/rvf/s_isnanf.c: Likewise. + * sysdeps/riscv/rvf/s_issignalingf.c: Likewise. + * sysdeps/riscv/rvf/s_nearbyintf.c: Likewise. + * sysdeps/riscv/rvf/s_roundevenf.c: Likewise. + * sysdeps/riscv/rvf/s_roundf.c: Likewise. + * sysdeps/riscv/rvf/s_truncf.c: Likewise. + * sysdeps/riscv/rv64/rvd/s_rint.c: Include instead of + . + * sysdeps/riscv/rvf/s_rintf.c: Likewise. + +2018-09-28 H.J. Lu + + [BZ #23716] + * sysdeps/i386/dl-cet.c: Removed. + * sysdeps/i386/dl-machine.h (_dl_runtime_resolve_shstk): New + prototype. + (_dl_runtime_profile_shstk): Likewise. + (elf_machine_runtime_setup): Use _dl_runtime_profile_shstk or + _dl_runtime_resolve_shstk if SHSTK is enabled by kernel. + +2018-09-28 Adhemerval Zanella + + [BZ #23579] + * misc/tst-preadvwritev2-common.c (do_test_with_invalid_fd, + do_test_with_invalid_iov): New tests. + * misc/tst-preadvwritev2.c, misc/tst-preadvwritev64v2.c (do_test): + Call do_test_with_invalid_fd and do_test_with_invalid_iov. + * sysdeps/unix/sysv/linux/preadv2.c (preadv2): Use fallback code iff + errno is ENOSYS. + * sysdeps/unix/sysv/linux/preadv64v2.c (preadv64v2): Likewise. + * sysdeps/unix/sysv/linux/pwritev2.c (pwritev2): Likewise. + * sysdeps/unix/sysv/linux/pwritev64v2.c (pwritev64v2): Likewise. + +2018-09-27 Joseph Myers + + * include/math.h [!_ISOMAC && !(__FINITE_MATH_ONLY__ && + __FINITE_MATH_ONLY__ > 0) && !NO_MATH_REDIRECT] + (MATH_REDIRECT_BINARY_ARGS): New macro. + [!_ISOMAC && !(__FINITE_MATH_ONLY__ && __FINITE_MATH_ONLY__ > 0) + && !NO_MATH_REDIRECT] (copysign): Redirect using MATH_REDIRECT. + * sysdeps/alpha/fpu/s_copysign.c: Define NO_MATH_REDIRECT before + header inclusion. + * sysdeps/alpha/fpu/s_copysignf.c: Likewise. + * sysdeps/ieee754/dbl-64/s_copysign.c: Likewise. + * sysdeps/ieee754/float128/s_copysignf128.c: Likewise. + * sysdeps/ieee754/flt-32/s_copysignf.c: Likewise. + * sysdeps/ieee754/ldbl-128/s_copysignl.c: Likewise. + * sysdeps/ieee754/ldbl-128ibm/s_copysignl.c: Likewise. + * sysdeps/ieee754/ldbl-96/s_copysignl.c: Likewise. + * sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_copysign.c: + Likewise. + * sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_copysignf.c: + Likewise. + * sysdeps/powerpc/powerpc64/fpu/multiarch/s_copysign.c: Likewise. + * sysdeps/powerpc/powerpc64/fpu/multiarch/s_copysignf.c: Likewise. + * sysdeps/riscv/rvd/s_copysign.c: Likewise. + * sysdeps/riscv/rvf/s_copysignf.c: Likewise. + * sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/s_copysign.c: + Likewise. + * sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/s_copysignf.c: + Likewise. + * sysdeps/generic/math_private_calls.h + [!__MATH_DECLARING_LONG_DOUBLE || !NO_LONG_DOUBLE] (__copysign): + Do not declare and define as an inline function. + * math/divtc3.c (__divtc3): Use copysign functions instead of + __copysign variants. + * math/multc3.c (__multc3): Likewise. + * sysdeps/generic/math-type-macros.h (M_COPYSIGN): Likewise. + * sysdeps/ieee754/dbl-64/e_atan2.c (signArctan2): Likewise. + * sysdeps/ieee754/dbl-64/e_atanh.c (__ieee754_atanh): Likewise. + * sysdeps/ieee754/dbl-64/e_gamma_r.c (__ieee754_gamma_r): + Likewise. + * sysdeps/ieee754/dbl-64/e_jn.c (__ieee754_jn): Likewise. + (__ieee754_yn): Likewise. + * sysdeps/ieee754/dbl-64/s_asinh.c (__asinh): Likewise. + * sysdeps/ieee754/dbl-64/s_atan.c (__signArctan): Likewise. + * sysdeps/ieee754/dbl-64/s_scalbln.c (__scalbln): Likewise. + * sysdeps/ieee754/dbl-64/s_scalbn.c (__scalbn): Likewise. + * sysdeps/ieee754/dbl-64/s_sin.c (do_sin): Likewise. + (__sin): Likewise. + * sysdeps/ieee754/dbl-64/s_sincos.c (__sincos): Likewise. + * sysdeps/ieee754/dbl-64/wordsize-64/s_nearbyint.c (__nearbyint): + Likewise. + * sysdeps/ieee754/dbl-64/wordsize-64/s_scalbln.c (__scalbln): + Likewise. + * sysdeps/ieee754/dbl-64/wordsize-64/s_scalbn.c (__scalbn): + Likewise. + * sysdeps/ieee754/flt-32/e_atanhf.c (__ieee754_atanhf): Likewise. + * sysdeps/ieee754/flt-32/e_gammaf_r.c (__ieee754_gammaf_r): + Likewise. + * sysdeps/ieee754/flt-32/e_jnf.c (__ieee754_jnf): Likewise. + (__ieee754_ynf): Likewise. + * sysdeps/ieee754/flt-32/s_asinhf.c (__asinhf): Likewise. + * sysdeps/ieee754/flt-32/s_scalbnf.c (__scalbnf): Likewise. + * sysdeps/ieee754/k_standard.c (__kernel_standard): Likewise. + * sysdeps/ieee754/ldbl-128/e_gammal_r.c (__ieee754_gammal_r): + Likewise. + * sysdeps/ieee754/ldbl-128/e_jnl.c (__ieee754_jnl): Likewise. + (__ieee754_ynl): Likewise. + * sysdeps/ieee754/ldbl-128/s_scalblnl.c (__scalblnl): Likewise. + * sysdeps/ieee754/ldbl-128/s_scalbnl.c (__scalbnl): Likewise. + * sysdeps/ieee754/ldbl-128ibm/e_gammal_r.c (__ieee754_gammal_r): + Likewise. + * sysdeps/ieee754/ldbl-128ibm/e_jnl.c (__ieee754_jnl): Likewise. + (__ieee754_ynl): Likewise. + * sysdeps/ieee754/ldbl-128ibm/s_fmal.c (__fmal): Likewise. + * sysdeps/ieee754/ldbl-128ibm/s_scalblnl.c (__scalblnl): Likewise. + * sysdeps/ieee754/ldbl-128ibm/s_scalbnl.c (__scalbnl): Likewise. + * sysdeps/ieee754/ldbl-96/e_gammal_r.c (__ieee754_gammal_r): + Likewise. + * sysdeps/ieee754/ldbl-96/e_jnl.c (__ieee754_jnl): Likewise. + (__ieee754_ynl) + * sysdeps/ieee754/ldbl-96/s_asinhl.c (__asinhl): Likewise. + * sysdeps/ieee754/ldbl-96/s_scalblnl.c (__scalblnl): Likewise. + * sysdeps/ieee754/ldbl-opt/nldbl-copysign.c (copysignl): Likewise. + * sysdeps/powerpc/power5+/fpu/s_modf.c (__modf): Likewise. + * sysdeps/powerpc/power5+/fpu/s_modff.c (__modff): Likewise. + + * include/math.h [!_ISOMAC && !(__FINITE_MATH_ONLY__ && + __FINITE_MATH_ONLY__ > 0) && !NO_MATH_REDIRECT] (round): Redirect + using MATH_REDIRECT. + * sysdeps/aarch64/fpu/s_round.c: Define NO_MATH_REDIRECT before + header inclusion. + * sysdeps/aarch64/fpu/s_roundf.c: Likewise. + * sysdeps/ieee754/dbl-64/s_round.c: Likewise. + * sysdeps/ieee754/dbl-64/wordsize-64/s_round.c: Likewise. + * sysdeps/ieee754/float128/s_roundf128.c: Likewise. + * sysdeps/ieee754/flt-32/s_roundf.c: Likewise. + * sysdeps/ieee754/ldbl-128/s_roundl.c: Likewise. + * sysdeps/ieee754/ldbl-96/s_roundl.c: Likewise. + * sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_round.c: Likewise. + * sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_roundf.c: Likewise. + * sysdeps/powerpc/powerpc64/fpu/multiarch/s_round.c: Likewise. + * sysdeps/powerpc/powerpc64/fpu/multiarch/s_roundf.c: Likewise. + * sysdeps/riscv/rv64/rvd/s_round.c: Likewise. + * sysdeps/riscv/rvf/s_roundf.c: Likewise. + * sysdeps/ieee754/ldbl-128ibm/s_roundl.c: Likewise. + (round): Redirect to __round. + (__roundl): Call round instead of __round. + * sysdeps/powerpc/fpu/math_private.h [_ARCH_PWR5X] (__round): + Remove macro. + [_ARCH_PWR5X] (__roundf): Likewise. + * sysdeps/ieee754/dbl-64/e_gamma_r.c (gamma_positive): Use round + functions instead of __round variants. + * sysdeps/ieee754/flt-32/e_gammaf_r.c (gammaf_positive): Likewise. + * sysdeps/ieee754/ldbl-128/e_gammal_r.c (gammal_positive): + Likewise. + * sysdeps/ieee754/ldbl-128ibm/e_gammal_r.c (gammal_positive): + Likewise. + * sysdeps/ieee754/ldbl-96/e_gammal_r.c (gammal_positive): + Likewise. + * sysdeps/x86/fpu/powl_helper.c (__powl_helper): Likewise. + * sysdeps/ieee754/ldbl-128ibm/e_expl.c (lroundl): Redirect to + __lroundl. + (__ieee754_expl): Call roundl instead of __roundl. + +2018-09-27 Andreas Schwab + + [BZ #23717] + * stdlib/tst-setcontext9.c (f1a): Make st2 static. + (do_test): Make st1 static. + +2018-09-26 Andreas Schwab + + [BZ #23707] + * sysdeps/powerpc/powerpc32/dl-start.S: Add unwind information. + * elf/Makefile (tests): Add tst-unwind-ctor. + (modules-names): Add tst-unwind-ctor-lib. + ($(objpfx)tst-unwind-ctor): Depend on + $(objpfx)tst-unwind-ctor-lib.so. + +2018-09-26 Joseph Myers + + * sysdeps/unix/sysv/linux/bits/mman-map-flags-generic.h: New + file. Most contents moved from .... + * sysdeps/unix/sysv/linux/bits/mman.h: ... here. Move contents to + and include . + * sysdeps/unix/sysv/linux/Makefile [$(subdir) = misc] + (sysdep_headers): Add bits/mman-map-flags-generic.h. + * sysdeps/unix/sysv/linux/ia64/bits/mman.h: Include + . + [__USE_MISC] (MAP_GROWSUP): Only define this macro, not other + macros defined in . + * sysdeps/unix/sysv/linux/x86/bits/mman.h: Include + . + [__USE_MISC] (MAP_32BIT): Only define this macro, not other macros + defined in . + +2018-09-26 Andreas Schwab + + * Makefile ($(common-objpfx)testrun.sh): Remove leading space from + output. + +2018-09-25 Adam J. Richte + Adhemerval Zanella + Fangrui Song + + [BZ #20480] + * config.make.in (have-textrel_ifunc): New define. + * configure.ac: Add check if linker supports textrel relocation with + ifunc. + * elf/Makefile [have-textrel_ifunc == yes] (ifunc-pie-tests): Add + tst-ifunc-textrel. + (CFLAGS-tst-ifunc-textrel.c): New rule. + * elf/dl-reloc.c (_dl_relocate_object): Use all required flags on + DT_TEXTREL segments, not only PROT_READ and PROT_WRITE. + * elf/tst-ifunc-textrel.c: New file. + +2018-09-25 Joseph Myers + + * sysdeps/unix/sysv/linux/sys/procfs.h: Include + . + (prgregset_t): Define using __prgregset_t. + (prfpregset_t): Define using __prfpregset_t. + * sysdeps/unix/sysv/linux/Makefile [$(subdir) = misc] + (sysdep_headers): Add bits/procfs-prregset.h. + * sysdeps/unix/sysv/linux/bits/procfs-prregset.h: New file. + * sysdeps/unix/sysv/linux/alpha/bits/procfs-prregset.h: Likewise. + * sysdeps/unix/sysv/linux/alpha/bits/procfs.h: Likewise. + * sysdeps/unix/sysv/linux/alpha/sys/procfs.h: Remove file. + + * sysdeps/unix/sysv/linux/sys/procfs.h: Include + and . + (struct elf_prpsinfo): Use __pr_uid_t and __pr_gid_t as types of + pr_uid and pr_gid. + * sysdeps/unix/sysv/linux/Makefile [$(subdir) = misc] + (sysdep_headers): Add bits/procfs-id.h and bits/procfs-extra.h. + * sysdeps/unix/sysv/linux/bits/procfs-extra.h: New file. + * sysdeps/unix/sysv/linux/bits/procfs-id.h: Likewise. + * sysdeps/unix/sysv/linux/arm/bits/procfs-id.h: Likewise. + * sysdeps/unix/sysv/linux/arm/bits/procfs.h: Likewise. + * sysdeps/unix/sysv/linux/m68k/bits/procfs-id.h: Likewise. + * sysdeps/unix/sysv/linux/m68k/bits/procfs.h: Likewise. + * sysdeps/unix/sysv/linux/s390/bits/procfs-extra.h: Likewise. + * sysdeps/unix/sysv/linux/s390/bits/procfs-id.h: Likewise. + * sysdeps/unix/sysv/linux/s390/bits/procfs.h: Likewise. + * sysdeps/unix/sysv/linux/sh/bits/procfs-id.h: Likewise. + * sysdeps/unix/sysv/linux/sh/bits/procfs.h: Likewise. + * sysdeps/unix/sysv/linux/sparc/bits/procfs-extra.h: Likewise. + * sysdeps/unix/sysv/linux/sparc/bits/procfs-id.h: Likewise. + * sysdeps/unix/sysv/linux/sparc/bits/procfs.h: Likewise. + * sysdeps/unix/sysv/linux/x86/bits/procfs-id.h: Likewise. + * sysdeps/unix/sysv/linux/x86/bits/procfs.h: Likewise. + * sysdeps/unix/sysv/linux/arm/sys/procfs.h: Remove file. + * sysdeps/unix/sysv/linux/m68k/sys/procfs.h: Likewise. + * sysdeps/unix/sysv/linux/s390/sys/procfs.h: Likewise. + * sysdeps/unix/sysv/linux/sh/sys/procfs.h: Likewise. + * sysdeps/unix/sysv/linux/sparc/sys/procfs.h: Likewise. + * sysdeps/unix/sysv/linux/x86/sys/procfs.h: Likewise. + + * sysdeps/unix/sysv/linux/sys/procfs.h: Replace with file based on + AArch64 version. Include . + * sysdeps/unix/sysv/linux/Makefile [$(subdir) = misc] + (sysdep_headers): Add bits/procfs.h. + * sysdeps/unix/sysv/linux/bits/procfs.h: New file. + * sysdeps/unix/sysv/linux/aarch64/bits/procfs.h: Likewise. + * sysdeps/unix/sysv/linux/hppa/bits/procfs.h: Likewise. + * sysdeps/unix/sysv/linux/ia64/bits/procfs.h: Likewise. + * sysdeps/unix/sysv/linux/microblaze/bits/procfs.h: Likewise. + * sysdeps/unix/sysv/linux/mips/bits/procfs.h: Likewise. + * sysdeps/unix/sysv/linux/nios2/bits/procfs.h: Likewise. + * sysdeps/unix/sysv/linux/powerpc/bits/procfs.h: Likewise. + * sysdeps/unix/sysv/linux/riscv/bits/procfs.h: Likewise. + * sysdeps/unix/sysv/linux/aarch64/sys/procfs.h: Remove file. + * sysdeps/unix/sysv/linux/hppa/sys/procfs.h: Likewise. + * sysdeps/unix/sysv/linux/ia64/sys/procfs.h: Likewise. + * sysdeps/unix/sysv/linux/microblaze/sys/procfs.h: Likewise. + * sysdeps/unix/sysv/linux/mips/sys/procfs.h: Likewise. + * sysdeps/unix/sysv/linux/nios2/sys/procfs.h: Likewise. + * sysdeps/unix/sysv/linux/powerpc/sys/procfs.h: Likewise. + * sysdeps/unix/sysv/linux/riscv/sys/procfs.h: Likewise. + +2018-09-25 Adhemerval Zanella + + * posix/tst-spawn.c (do_prepare, handle_restart, do_test): + Use libsupport. + +2018-09-25 Arjun Shankar + + * iconv/gconv_int.h (__gconv_path_elem): Remove. + (__gconv_max_path_elem_len): Likewise. + (__gconv_nmodules): Likewise. + (__gconv_get_path): Likewise. + (path_elem): Move to ... + * iconv/gconv_conf.c: ... here. + (__gconv_get_path): Mark function static. + * iconv/gconv_int.h (GCONV_NCHAR_GOAL): Move to ... + * iconv/gconv_open.c: ... here. + +2018-09-24 Andreas Schwab + + * scripts/haveversions.awk: New file. + * Makerules ($(common-objpfx)Versions.def) + ($(common-objpfx)Versions.all, $(common-objpfx)Versions.v.i) + ($(common-objpfx)sysd-versions, $(common-objpfx)versions.stmp): + Move rules ... + * Makeconfig ($(common-objpfx)Versions.def) + ($(common-objpfx)Versions.all, $(common-objpfx)Versions.v.i) + ($(common-objpfx)sysd-versions, $(common-objpfx)versions.stmp): + ... here. + ($(common-objpfx)Versions.mk): New rule. Include it. + * nis/Makefile [!have-GLIBC_2.28]: Don't build any targets. + Emit error if build-obsolete-nsl = yes. + * manual/install.texi (Configuring and compiling): Describe + --enable-obsolete-nsl as unavaiable after version 2.28. + * INSTALL: Regenerate. + +2018-09-21 Adhemerval Zanella + + * NEWS: Add note about new TLE support on powerpc64le. + * sysdeps/powerpc/nptl/tcb-offsets.sym (TM_CAPABLE): Remove. + * sysdeps/powerpc/nptl/tls.h (tcbhead_t): Rename tm_capable to + __ununsed1. + (TLS_INIT_TP, TLS_DEFINE_INIT_TP): Remove tm_capable setup. + (THREAD_GET_TM_CAPABLE, THREAD_SET_TM_CAPABLE): Remove macros. + * sysdeps/powerpc/powerpc32/sysdep.h, + sysdeps/powerpc/powerpc64/sysdep.h (ABORT_TRANSACTION_IMPL, + ABORT_TRANSACTION): Remove macros. + * sysdeps/powerpc/sysdep.h (ABORT_TRANSACTION): Likewise. + * sysdeps/unix/sysv/linux/powerpc/elision-conf.c (elision_init): Set + __pthread_force_elision iff PPC_FEATURE2_HTM_NOSC is set. + * sysdeps/unix/sysv/linux/powerpc/powerpc32/sysdep.h, + sysdeps/unix/sysv/linux/powerpc/powerpc64/sysdep.h + sysdeps/unix/sysv/linux/powerpc/syscall.S (ABORT_TRANSACTION): Remove + usage. + * sysdeps/unix/sysv/linux/powerpc/not-errno.h: Remove file. + +2018-09-21 Rafał Lużyński + + [BZ #10425] + * localedata/locales/it_IT (d_t_fmt): Use "%a %-d %b %Y, %T". + (date_fmt): Use "%a %-d %b %Y, %T, %Z". + * localedata/locales/it_CH (d_t_fmt): Use "%a %-d %b %Y, %T" + which is the same as in it_IT. + (d_fmt): Use "%d.%m.%Y" which is the same as in de_CH. + (date_fmt): Use "%a %-d %b %Y, %T, %Z" which is the same as in it_IT. + +2018-09-20 Joseph Myers + + * include/math.h [!_ISOMAC && !(__FINITE_MATH_ONLY__ && + __FINITE_MATH_ONLY__ > 0) && !NO_MATH_REDIRECT] (trunc): Redirect + using MATH_REDIRECT. + * sysdeps/aarch64/fpu/s_trunc.c: Define NO_MATH_REDIRECT before + header inclusion. + * sysdeps/aarch64/fpu/s_truncf.c: Likewise. + * sysdeps/ieee754/dbl-64/wordsize-64/s_trunc.c: Likewise. + * sysdeps/ieee754/float128/s_truncf128.c: Likewise. + * sysdeps/ieee754/dbl-64/s_trunc.c: Likewise. + * sysdeps/ieee754/flt-32/s_truncf.c: Likewise. + * sysdeps/ieee754/ldbl-128/s_truncl.c: Likewise. + * sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_trunc.c: Likewise. + * sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_truncf.c: Likewise. + * sysdeps/powerpc/powerpc64/fpu/multiarch/s_trunc.c: Likewise. + * sysdeps/powerpc/powerpc64/fpu/multiarch/s_truncf.c: Likewise. + * sysdeps/riscv/rv64/rvd/s_trunc.c: Likewise. + * sysdeps/riscv/rvf/s_truncf.c: Likewise. + * sysdeps/sparc/sparc64/fpu/multiarch/s_trunc.c: Likewise. + * sysdeps/sparc/sparc64/fpu/multiarch/s_truncf.c: Likewise. + * sysdeps/x86_64/fpu/multiarch/s_trunc.c: Likewise. + * sysdeps/x86_64/fpu/multiarch/s_truncf.c: Likewise. + * sysdeps/m68k/m680x0/fpu/s_trunc_template.c: Likewise. + * sysdeps/ieee754/ldbl-128ibm/s_truncl.c: Likewise. + (ceil): Redirect to __ceil. + (floor): Redirect to __floor. + (trunc): Redirect to __trunc. + (__truncl): Call trunc instead of __trunc. + * sysdeps/powerpc/fpu/math_private.h [_ARCH_PWR5X] (__trunc): + Remove macro. + [_ARCH_PWR5X] (__truncf): Likewise. + * sysdeps/ieee754/dbl-64/e_gamma_r.c (__ieee754_gamma_r): Use + trunc functions instead of __trunc variants. + * sysdeps/ieee754/flt-32/e_gammaf_r.c (__ieee754_gammaf_r): + Likewise. + * sysdeps/ieee754/ldbl-128/e_gammal_r.c (__ieee754_gammal_r): + Likewise. + * sysdeps/ieee754/ldbl-128ibm/e_gammal_r.c (__ieee754_gammal_r): + Likewise. + * sysdeps/ieee754/ldbl-96/e_gammal_r.c (__ieee754_gammal_r): + Likewise. + + * sysdeps/x86/cpu-features.h [__geode__ || __k6__]: Handle like + [__i586__ || __pentium__]. + [__i486__]: Handle explicitly. + (HAS_CPUID): Define to 1 if above macros are undefined. + (HAS_I586): Likewise. + (HAS_I686): Likewise. + +2018-09-20 Florian Weimer + + * misc/tst-gethostid.c: New file. + * misc/Makefile [$(build-shared)] (tests): Add tst-gethostid. + (tst-gethostid): Link with -ldl. + +2018-09-20 Mingli Yu + + * sysdeps/unix/sysv/linux/gethostid.c (gethostid): Check for NULL + value from gethostbyname_r. + +2018-09-19 Carlos O'Donell + + * stdlib/tst-setcontext9.c (f1): Rename to... + (f1a): ... this. + (f1b): New function implementing lower half of f1 in alternate stack. + +2018-09-19 Paul Eggert + + Fix mktime localtime offset confusion + [BZ #23603] + * include/time.h (__mktime_internal): The localtime offset is now + of type long int instead of time_t. This is the longstanding type + in glibc, and it is more than enough to represent difference + between localtime and gmtime even if it is 32 bits and time_t is + 64. Changing it now will let us avoid an unnecessary change when + time_t is widened to 64 bits on 32-bit platforms. + * time/mktime-internal.h (mktime_offset_t): Now long int. + + Merge mktime, timegm from upstream Gnulib + [BZ #23603][BZ #16346] + This fixes some obscure problems with integer overflow. + Although it looks scary, it is almost all a byte-for-byte copy + from Gnulib, and the Gnulib code has been tested reasonably well. + * include/intprops.h: New file, copied from Gnulib. + * include/verify.h, time/mktime-internal.h: + New tiny files, simplified from Gnulib. + * time/mktime.c: Copy from Gnulib. This has the following changes: + Do not include config.h if DEBUG_MKTIME is nonzero. + Include stdbool.h, intprops.h, verify.h. + Include string.h only if needed. + Include stdlib.h on MS-Windows. + Include mktime-internal.h. + (DEBUG_MKTIME): Default to 0, and simplify later uses. + (NEED_MKTIME_INTERNAL, NEED_MKTIME_WINDOWS) + (NEED_MKTIME_WORKING): Give default values to pacify -Wundef, + which glibc uses. Default NEED_MKTIME_WORKING to DEBUG_MKTIME, to + simplify later conditionals; default the others to zero. Use + these conditionals to express only the code needed on the current + platform. In uses of these conditionals, explicitly spell out how + _LIBC affects things, so it’s easier to review from a glibc + viewpoint. + (WRAPV): Remove; no longer needed now that we have + systematic overflow checking. + (my_tzset, __tzset) [!_LIBC]: New function and macro, to better + compartmentalize tzset issues. Move system-dependent tzsettish + code here from mktime. + (verify): Remove; now done by verify.h. All uses changed. + (long_int): Use a more-conservative definition, to avoid + integer overflow. + (SHR): Remove, replacing with ... + (shr): New function, which means we needn’t worry about side + effects in args, and conversion analysis is simpler. + (TYPE_IS_INTEGER, TYPE_TWOS_COMPLEMENT, TYPE_SIGNED, TYPE_MINIMUM) + (TYPE_MAXIMUM, TIME_T_MIN, TIME_T_MAX, TIME_T_MIDPOINT) + (time_t_avg, time_t_add_ok): Remove. + (mktime_min, mktime_max): New constants. + (leapyear, isdst_differ): Use bool for booleans. + (ydhms_diff, guess_time_tm, ranged_convert, __mktime_internal): + Use long_int, not time_t, for mktime differences. + (long_int_avg): New function, replacing time_t_avg. + INT_ADD_WRAPV replaces time_t_add_ok. + (guess_time_tm): 6th arg is now long_int, not time_t const *. + All uses changed. + (convert_time): New function. + (ranged_convert): Use it. + (__mktime_internal): Last arg now points to mktime_offset_t, not + time_t. All uses changed. This is a no-op on glibc, where + mktime_offset_t is always time_t. Use int, not time_t, for UTC + offset guess. Directly check for integer overflow instead of + using a heuristic that works only 99.9...% of the time. + Access *OFFSET only once, to avoid an unlikely race if the + compiler delays a load and if this cascades into a signed integer + overflow. + (mktime): Move tzsettish code to my_tzset, and move + localtime_offset to within mktime so that it doesn’t + need a separate ifdef. + (main) [DEBUG_MKTIME]: Speed up by using localtime_r + instead of localtime. + * time/timegm.c: Copy from Gnulib. This has the following changes: + Include mktime-internal.h. + [!_LIBC]: Include config.h and time.h. Do not include + timegm.h or time_r.h. Make __mktime_internal a macro, + and include mktime-internal.h to get its declaration. + (timegm): Temporary is now mktime_offset_t, not time_t. + This affects only Gnulib. + +2018-09-19 Wilco Dijkstra + + [BZ #23637] + * string/test-strstr.c (pr23637): New function. + (test_main): Add tests with longer needles. + * string/strcasestr.c (AVAILABLE): Fix readahead distance. + * string/strstr.c (AVAILABLE): Likewise. + +2018-09-19 Szabolcs Nagy + + * sysdeps/ieee754/flt-32/e_powf.c (checkint): Fix documentation. + +2018-09-19 Szabolcs Nagy + + * NEWS: Mention pow improvements. + * math/Makefile (type-double-routines): Add e_pow_log_data. + * sysdeps/generic/math_private.h (__exp1): Remove. + * sysdeps/i386/fpu/e_pow_log_data.c: New file. + * sysdeps/ia64/fpu/e_pow_log_data.c: New file. + * sysdeps/ieee754/dbl-64/Makefile (CFLAGS-e_pow.c): Allow fma + contraction. + * sysdeps/ieee754/dbl-64/e_exp.c (__exp1): Remove. + (exp_inline): Remove. + (__ieee754_exp): Only single double input is handled. + * sysdeps/ieee754/dbl-64/e_pow.c: Rewrite. + * sysdeps/ieee754/dbl-64/e_pow_log_data.c: New file. + * sysdeps/ieee754/dbl-64/math_config.h (issignaling_inline): Define. + (__pow_log_data): Define. + * sysdeps/ieee754/dbl-64/upow.h: Remove. + * sysdeps/ieee754/dbl-64/upow.tbl: Remove. + * sysdeps/m68k/m680x0/fpu/e_pow_log_data.c: New file. + * sysdeps/x86_64/fpu/multiarch/Makefile (CFLAGS-e_pow-fma.c): Allow fma + contraction. + (CFLAGS-e_pow-fma4.c): Likewise. + +2018-09-18 Paul Eggert + + Simplify tzfile fstat failure code + [BZ #21716] + * time/tzfile.c (__tzfile_read): Simplify slightly. + + Fix tzfile low-memory assertion failure + [BZ #21716] + * time/tzfile.c (__tzfile_read): Check for memory exhaustion + when registering time zone abbreviations. + +2018-09-18 Joseph Myers + + * sysdeps/unix/sysv/linux/bits/mman.h: New file. + * sysdeps/unix/sysv/linux/aarch64/bits/mman.h: Remove. + * sysdeps/unix/sysv/linux/arm/bits/mman.h: Likewise. + * sysdeps/unix/sysv/linux/m68k/bits/mman.h: Likewise. + * sysdeps/unix/sysv/linux/microblaze/bits/mman.h: Likewise. + * sysdeps/unix/sysv/linux/nios2/bits/mman.h: Likewise. + * sysdeps/unix/sysv/linux/riscv/bits/mman.h: Likewise. + * sysdeps/unix/sysv/linux/s390/bits/mman.h: Likewise. + * sysdeps/unix/sysv/linux/sh/bits/mman.h: Likewise. + + * sysdeps/ieee754/ldbl-128ibm/s_ceill.c (ceil): Redirect to + __ceil. + (__ceill): Call ceil instead of __ceil. + * sysdeps/ieee754/ldbl-128ibm/s_floorl.c (floor): Redirect to + __floor. + (__floorl): Call floor instead of __floor. + +2018-09-17 Joseph Myers + + * include/math.h [!_ISOMAC && !(__FINITE_MATH_ONLY__ && + __FINITE_MATH_ONLY__ > 0) && !NO_MATH_REDIRECT] (ceil): Redirect + using MATH_REDIRECT. + * sysdeps/aarch64/fpu/s_ceil.c: Define NO_MATH_REDIRECT before + header inclusion. + * sysdeps/aarch64/fpu/s_ceilf.c: Likewise. + * sysdeps/ieee754/dbl-64/s_ceil.c: Likewise. + * sysdeps/ieee754/dbl-64/wordsize-64/s_ceil.c: Likewise. + * sysdeps/ieee754/float128/s_ceilf128.c: Likewise. + * sysdeps/ieee754/flt-32/s_ceilf.c: Likewise. + * sysdeps/ieee754/ldbl-128/s_ceill.c: Likewise. + * sysdeps/ieee754/ldbl-128ibm/s_ceill.c: Likewise. + * sysdeps/m68k/m680x0/fpu/s_ceil_template.c: Likewise. + * sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_ceil.c: Likewise. + * sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_ceilf.c: Likewise. + * sysdeps/powerpc/powerpc64/fpu/multiarch/s_ceil.c: Likewise. + * sysdeps/powerpc/powerpc64/fpu/multiarch/s_ceilf.c: Likewise. + * sysdeps/riscv/rv64/rvd/s_ceil.c: Likewise. + * sysdeps/riscv/rvf/s_ceilf.c: Likewise. + * sysdeps/sparc/sparc64/fpu/multiarch/s_ceil.c: Likewise. + * sysdeps/sparc/sparc64/fpu/multiarch/s_ceilf.c: Likewise. + * sysdeps/x86_64/fpu/multiarch/s_ceil.c: Likewise. + * sysdeps/x86_64/fpu/multiarch/s_ceilf.c: Likewise. + * sysdeps/powerpc/fpu/math_private.h [_ARCH_PWR5X] (__ceil): + Remove macro. + * sysdeps/ieee754/dbl-64/e_gamma_r.c (gamma_positive): Use ceil + functions instead of __ceil variants. + * sysdeps/ieee754/flt-32/e_gammaf_r.c (gammaf_positive): Likewise. + * sysdeps/ieee754/ldbl-128/e_gammal_r.c (gammal_positive): + Likewise. + * sysdeps/ieee754/ldbl-128ibm/e_gammal_r.c (gammal_positive): + Likewise. + * sysdeps/ieee754/ldbl-128ibm/s_truncl.c (__truncl): Likewise. + * sysdeps/ieee754/ldbl-96/e_gammal_r.c (gammal_positive): + Likewise. + * sysdeps/powerpc/power5+/fpu/s_modf.c (__modf): Likewise. + * sysdeps/powerpc/power5+/fpu/s_modff.c (__modff): Likewise. + + [BZ #21286] + * sysdeps/unix/sysv/linux/bits/siginfo-consts.h (SI_DETHREAD): New + constant. + [__USE_XOPEN_EXTENDED || __USE_XOPEN2K8] (ILL_BADIADDR): Likewise. + [__USE_XOPEN_EXTENDED || __USE_XOPEN2K8] (FPE_FLTUNK): Likewise. + [__USE_XOPEN_EXTENDED || __USE_XOPEN2K8] (FPE_CONDTRAP): Likewise. + [__USE_XOPEN_EXTENDED || __USE_XOPEN2K8] (SEGV_ACCADI): Likewise. + [__USE_XOPEN_EXTENDED || __USE_XOPEN2K8] (SEGV_ADIDERR): Likewise. + [__USE_XOPEN_EXTENDED || __USE_XOPEN2K8] (SEGV_ADIPERR): Likewise. + [__USE_XOPEN_EXTENDED] (TRAP_BRANCH): Likewise. + [__USE_XOPEN_EXTENDED] (TRAP_HWBKPT): Likewise. + [__USE_XOPEN_EXTENDED] (TRAP_UNK): Likweise. + * sysdeps/unix/sysv/linux/ia64/bits/siginfo-consts-arch.h + (ILL_BADIADDR): Remove constant. + (TRAP_BRANCH): Likewise. + (TRAP_HWBKPT): Likewise. + +2018-09-14 Joseph Myers + + [BZ #23656] + * sysdeps/unix/sysv/linux/mips/sys/procfs.h (struct elf_prstatus): + Remove [_MIPS_SIM = _ABIN32] conditional case. + (struct elf_prpsinfo): Likewise. + + [BZ #23649] + * sysdeps/unix/sysv/linux/microblaze/sys/procfs.h (struct + elf_prpsinfo): Use unsigned int for pr_uid and pr_gid. + * sysdeps/unix/sysv/linux/mips/sys/procfs.h (struct elf_prpsinfo): + Likewise. + * sysdeps/unix/sysv/linux/nios2/sys/procfs.h (struct + elf_prpsinfo): Likewise. + * sysdeps/unix/sysv/linux/riscv/sys/procfs.h (struct + elf_prpsinfo): Likewise. + * sysdeps/unix/sysv/linux/sys/procfs.h (struct elf_prpsinfo): + Likewise. + + * include/math.h [!_ISOMAC && !(__FINITE_MATH_ONLY__ && + __FINITE_MATH_ONLY__ > 0) && !NO_MATH_REDIRECT] (rint): Redirect + using MATH_REDIRECT. + * sysdeps/aarch64/fpu/s_rint.c: Define NO_MATH_REDIRECT before + header inclusion. + * sysdeps/aarch64/fpu/s_rintf.c: Likewise. + * sysdeps/alpha/fpu/s_rint.c: Likewise. + * sysdeps/alpha/fpu/s_rintf.c: Likewise. + * sysdeps/i386/fpu/s_rintl.c: Likewise. + * sysdeps/ieee754/dbl-64/s_rint.c: Likewise. + * sysdeps/ieee754/dbl-64/wordsize-64/s_rint.c: Likewise. + * sysdeps/ieee754/float128/s_rintf128.c: Likewise. + * sysdeps/ieee754/flt-32/s_rintf.c: Likewise. + * sysdeps/ieee754/ldbl-128/s_rintl.c: Likewise. + * sysdeps/ieee754/ldbl-128ibm/s_rintl.c: Likewise. + * sysdeps/m68k/coldfire/fpu/s_rint.c: Likewise. + * sysdeps/m68k/coldfire/fpu/s_rintf.c: Likewise. + * sysdeps/m68k/m680x0/fpu/s_rint.c: Likewise. + * sysdeps/m68k/m680x0/fpu/s_rintf.c: Likewise. + * sysdeps/m68k/m680x0/fpu/s_rintl.c: Likewise. + * sysdeps/powerpc/fpu/s_rint.c: Likewise. + * sysdeps/powerpc/fpu/s_rintf.c: Likewise. + * sysdeps/riscv/rv64/rvd/s_rint.c: Likewise. + * sysdeps/riscv/rvf/s_rintf.c: Likewise. + * sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/s_rint.c: Likewise. + * sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/s_rintf.c: Likewise. + * sysdeps/sparc/sparc64/fpu/multiarch/s_rint.c: Likewise. + * sysdeps/sparc/sparc64/fpu/multiarch/s_rintf.c: Likewise. + * sysdeps/x86_64/fpu/multiarch/s_rint.c: Likewise. + * sysdeps/x86_64/fpu/multiarch/s_rintf.c: Likewise. + * sysdeps/x86_64/fpu/math_private.h: Remove file. + * math/e_scalb.c (invalid_fn): Use rint functions instead of + __rint variants. + * math/e_scalbf.c (invalid_fn): Likewise. + * math/e_scalbl.c (invalid_fn): Likewise. + * sysdeps/ieee754/dbl-64/e_gamma_r.c (__ieee754_gamma_r): + Likewise. + * sysdeps/ieee754/flt-32/e_gammaf_r.c (__ieee754_gammaf_r): + Likewise. + * sysdeps/ieee754/k_standard.c (__kernel_standard): Likewise. + * sysdeps/ieee754/k_standardl.c (__kernel_standard_l): Likewise. + * sysdeps/ieee754/ldbl-128/e_gammal_r.c (__ieee754_gammal_r): + Likewise. + * sysdeps/ieee754/ldbl-128ibm/e_gammal_r.c (__ieee754_gammal_r): + Likewise. + * sysdeps/ieee754/ldbl-96/e_gammal_r.c (__ieee754_gammal_r): + Likewise. + * sysdeps/powerpc/powerpc32/fpu/s_llrint.c (__llrint): Likewise. + * sysdeps/powerpc/powerpc32/fpu/s_llrintf.c (__llrintf): Likewise. + + * include/math.h [!_ISOMAC && !(__FINITE_MATH_ONLY__ && + __FINITE_MATH_ONLY__ > 0) && !NO_MATH_REDIRECT] (MATH_REDIRECT): + New macro. + [!_ISOMAC && !(__FINITE_MATH_ONLY__ && __FINITE_MATH_ONLY__ > 0) + && !NO_MATH_REDIRECT] (MATH_REDIRECT_LDBL): Likewise. + [!_ISOMAC && !(__FINITE_MATH_ONLY__ && __FINITE_MATH_ONLY__ > 0) + && !NO_MATH_REDIRECT] (MATH_REDIRECT_F128): Likewise. + [!_ISOMAC && !(__FINITE_MATH_ONLY__ && __FINITE_MATH_ONLY__ > 0) + && !NO_MATH_REDIRECT] (MATH_REDIRECT_UNARY_ARGS): Likewise. + [!_ISOMAC && !(__FINITE_MATH_ONLY__ && __FINITE_MATH_ONLY__ > 0) + && !NO_MATH_REDIRECT] (sqrt): Redirect using MATH_REDIRECT. + [!_ISOMAC && !(__FINITE_MATH_ONLY__ && __FINITE_MATH_ONLY__ > 0) + && !NO_MATH_REDIRECT] (floor): Likewise. + * sysdeps/aarch64/fpu/s_floor.c: Define NO_MATH_REDIRECT before + header inclusion. + * sysdeps/aarch64/fpu/s_floorf.c: Likewise. + * sysdeps/ieee754/dbl-64/s_floor.c: Likewise. + * sysdeps/ieee754/dbl-64/wordsize-64/s_floor.c: Likewise. + * sysdeps/ieee754/float128/s_floorf128.c: Likewise. + * sysdeps/ieee754/flt-32/s_floorf.c: Likewise. + * sysdeps/ieee754/ldbl-128/s_floorl.c: Likewise. + * sysdeps/ieee754/ldbl-128ibm/s_floorl.c: Likewise. + * sysdeps/m68k/m680x0/fpu/s_floor_template.c: Likewise. + * sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_floor.c: Likewise. + * sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_floorf.c: Likewise. + * sysdeps/powerpc/powerpc64/fpu/multiarch/s_floor.c: Likewise. + * sysdeps/powerpc/powerpc64/fpu/multiarch/s_floorf.c: Likewise. + * sysdeps/riscv/rv64/rvd/s_floor.c: Likewise. + * sysdeps/riscv/rvf/s_floorf.c: Likewise. + * sysdeps/sparc/sparc64/fpu/multiarch/s_floor.c: Likewise. + * sysdeps/sparc/sparc64/fpu/multiarch/s_floorf.c: Likewise. + * sysdeps/x86_64/fpu/multiarch/s_floor.c: Likewise. + * sysdeps/x86_64/fpu/multiarch/s_floorf.c: Likewise. + * sysdeps/powerpc/fpu/math_private.h [_ARCH_PWR5X] (__floor): + Remove macro. + [_ARCH_PWR5X] (__floorf): Likewise. + * sysdeps/x86_64/fpu/math_private.h [__SSE4_1__] (__floor): Remove + inline function. + [__SSE4_1__] (__floorf): Likewise. + * math/w_lgamma_main.c (LGFUNC (__lgamma)): Use floor functions + instead of __floor variants. + * math/w_lgamma_r_compat.c (__lgamma_r): Likewise. + * math/w_lgammaf_main.c (LGFUNC (__lgammaf)): Likewise. + * math/w_lgammaf_r_compat.c (__lgammaf_r): Likewise. + * math/w_lgammal_main.c (LGFUNC (__lgammal)): Likewise. + * math/w_lgammal_r_compat.c (__lgammal_r): Likewise. + * math/w_tgamma_compat.c (__tgamma): Likewise. + * math/w_tgamma_template.c (M_DECL_FUNC (__tgamma)): Likewise. + * math/w_tgammaf_compat.c (__tgammaf): Likewise. + * math/w_tgammal_compat.c (__tgammal): Likewise. + * sysdeps/ieee754/dbl-64/e_lgamma_r.c (sin_pi): Likewise. + * sysdeps/ieee754/dbl-64/k_rem_pio2.c (__kernel_rem_pio2): + Likewise. + * sysdeps/ieee754/dbl-64/lgamma_neg.c (__lgamma_neg): Likewise. + * sysdeps/ieee754/flt-32/e_lgammaf_r.c (sin_pif): Likewise. + * sysdeps/ieee754/flt-32/lgamma_negf.c (__lgamma_negf): Likewise. + * sysdeps/ieee754/ldbl-128/e_lgammal_r.c (__ieee754_lgammal_r): + Likewise. + * sysdeps/ieee754/ldbl-128/e_powl.c (__ieee754_powl): Likewise. + * sysdeps/ieee754/ldbl-128/lgamma_negl.c (__lgamma_negl): + Likewise. + * sysdeps/ieee754/ldbl-128/s_expm1l.c (__expm1l): Likewise. + * sysdeps/ieee754/ldbl-128ibm/e_lgammal_r.c (__ieee754_lgammal_r): + Likewise. + * sysdeps/ieee754/ldbl-128ibm/e_powl.c (__ieee754_powl): Likewise. + * sysdeps/ieee754/ldbl-128ibm/lgamma_negl.c (__lgamma_negl): + Likewise. + * sysdeps/ieee754/ldbl-128ibm/s_expm1l.c (__expm1l): Likewise. + * sysdeps/ieee754/ldbl-128ibm/s_truncl.c (__truncl): Likewise. + * sysdeps/ieee754/ldbl-96/e_lgammal_r.c (sin_pi): Likewise. + * sysdeps/ieee754/ldbl-96/lgamma_negl.c (__lgamma_negl): Likewise. + * sysdeps/powerpc/power5+/fpu/s_modf.c (__modf): Likewise. + * sysdeps/powerpc/power5+/fpu/s_modff.c (__modff): Likewise. + +2018-09-12 Joseph Myers + + * elf/Makefile (modules-names-tests): New variable. + +2018-09-12 Szabolcs Nagy + + * NEWS: Mention log2 improvements. + * math/Makefile (type-double-routines): Add e_log2_data. + * sysdeps/i386/fpu/e_log2_data.c: New file. + * sysdeps/ia64/fpu/e_log2_data.c: New file. + * sysdeps/ieee754/dbl-64/e_log2.c: Rewrite. + * sysdeps/ieee754/dbl-64/e_log2_data.c: New file. + * sysdeps/ieee754/dbl-64/math_config.h (__log2_data): Add. + * sysdeps/ieee754/dbl-64/wordsize-64/e_log2.c: Remove. + * sysdeps/m68k/m680x0/fpu/e_log2_data.c: New file. + +2018-09-12 Szabolcs Nagy + + * NEWS: Mention log improvement. + * math/Makefile (type-double-routines): Add e_log_data. + * sysdeps/i386/fpu/e_log_data.c: New file. + * sysdeps/ia64/fpu/e_log_data.c: New file. + * sysdeps/ieee754/dbl-64/e_log.c: Rewrite. + * sysdeps/ieee754/dbl-64/e_log_data.c: New file. + * sysdeps/ieee754/dbl-64/math_config.h (__log_data): Add. + * sysdeps/ieee754/dbl-64/ulog.h: Remove. + * sysdeps/ieee754/dbl-64/ulog.tbl: Remove. + * sysdeps/m68k/m680x0/fpu/e_log_data.c: New file. + +2018-09-12 H.J. Lu + Xuepeng Guo + + [BZ #23606] + * sysdeps/i386/start.S: Include + (_start): Use ENTRY/END to insert ENDBR32 at entry when CET is + enabled. Add cfi_undefined (eip). + +2018-09-11 Joseph Myers + + * sysdeps/x86_64/fpu/math_private.h (MOVD): Remove macro. + (MOVQ): Likewise. + (EXTRACT_WORDS64): Likewise. + (INSERT_WORDS64): Likewise. + (GET_FLOAT_WORD): Likewise. + (SET_FLOAT_WORD): Likewise. + + * scripts/build-many-glibcs.py (Context.__init__): Add full_gcc + argument. + (Config.build_gcc): Use --disable-libsanitizer for first GCC + build, but not for second build if --full-gcc. Use + --enable-languages=all for second build if --full-gcc. + (get_parser): Add --full-gcc option. + (main): Update call to Context. + +2018-09-10 Rafał Lużyński + + [BZ #10797] + * localedata/locales/de_CH (mon_thousands_sep): Use "" (Right + Single Quotation Mark). + (thousands_sep): Likewise. + * localedata/locales/it_CH (LC_NUMERIC): Use “copy "de_CH"”. + * localedata/locales/it_IT (thousands_sep): Use ".". + (grouping): Use "3;3". + +2018-09-10 Joseph Myers + + * scripts/build-many-glibcs.py (Context.add_all_configs): Add + x86_64 and i686 configs using --enable-obsolete-rpc + --enable-obsolete-nsl. + +2018-09-06 Stefan Liebler + + * sysdeps/s390/fpu/libm-test-ulps: Regenerated. + +2018-09-06 Stefan Liebler + + * sysdeps/unix/sysv/linux/spawni.c (maybe_script_execute): + Increment size of new_argv by one. + +2018-09-05 Rafał Lużyński + + [BZ #17426] + * localedata/locales/anp_IN (d_fmt): Use "%-d//%-m//%y". + * localedata/locales/ar_IN (d_fmt): Likewise. + * localedata/locales/bhb_IN (d_fmt): Likewise. + * localedata/locales/bho_IN (d_fmt): Likewise. + * localedata/locales/bn_BD (d_fmt): Likewise. + * localedata/locales/bn_IN (d_fmt): Likewise. + * localedata/locales/doi_IN (d_fmt): Likewise. + * localedata/locales/gu_IN (d_fmt): Likewise. + * localedata/locales/hi_IN (d_fmt): Likewise. + * localedata/locales/hne_IN (d_fmt): Likewise. + * localedata/locales/kn_IN (d_fmt): Likewise. + * localedata/locales/mag_IN (d_fmt): Likewise. + * localedata/locales/mai_IN (d_fmt): Likewise. + * localedata/locales/mjw_IN (d_fmt): Likewise. + * localedata/locales/ml_IN (d_fmt): Likewise. + * localedata/locales/mni_IN (d_fmt): Likewise. + * localedata/locales/mr_IN (d_fmt): Likewise. + * localedata/locales/pa_IN (d_fmt): Likewise. + * localedata/locales/raj_IN (d_fmt): Likewise. + * localedata/locales/sat_IN (d_fmt): Likewise. + * localedata/locales/sd_IN (d_fmt): Likewise. + * localedata/locales/sd_IN@devanagari (d_fmt): Likewise. + * localedata/locales/ta_IN (d_fmt): Likewise. + * localedata/locales/ta_LK (d_fmt): Likewise. + * localedata/locales/tcy_IN (d_fmt): Likewise. + * localedata/locales/ur_IN (d_fmt): Likewise. + + * localedata/locales/brx_IN (d_fmt): Use "%-m//%-d//%y". + * localedata/locales/ks_IN (d_fmt): Likewise. + * localedata/locales/ks_IN@devanagari (d_fmt): Likewise. + + * localedata/locales/kok_IN (d_fmt): Use "%-d-%-m-%y". + * localedata/locales/ne_NP (d_fmt): Use "%y//%-m//%-d". + * localedata/locales/sa_IN (d_fmt): Use "%-d-%m-%y". + * localedata/locales/te_IN (d_fmt): Use "%d-%m-%y". + +2018-09-05 Szabolcs Nagy + + * NEWS: Mention exp and exp2 improvements. + * math/Makefile (libm-support): Remove t_exp. + (type-double-routines): Add math_err and e_exp_data. + * sysdeps/aarch64/libm-test-ulps: Update. + * sysdeps/arm/libm-test-ulps: Update. + * sysdeps/i386/fpu/e_exp_data.c: New file. + * sysdeps/i386/fpu/math_err.c: New file. + * sysdeps/i386/fpu/t_exp.c: Remove. + * sysdeps/ia64/fpu/e_exp_data.c: New file. + * sysdeps/ia64/fpu/math_err.c: New file. + * sysdeps/ia64/fpu/t_exp.c: Remove. + * sysdeps/ieee754/dbl-64/e_exp.c: Rewrite. + * sysdeps/ieee754/dbl-64/e_exp2.c: Rewrite. + * sysdeps/ieee754/dbl-64/e_exp_data.c: New file. + * sysdeps/ieee754/dbl-64/e_pow.c (__ieee754_pow): Update error bound. + * sysdeps/ieee754/dbl-64/eexp.tbl: Remove. + * sysdeps/ieee754/dbl-64/math_config.h: New file. + * sysdeps/ieee754/dbl-64/math_err.c: New file. + * sysdeps/ieee754/dbl-64/t_exp.c: Remove. + * sysdeps/ieee754/dbl-64/t_exp2.h: Remove. + * sysdeps/ieee754/dbl-64/uexp.h: Remove. + * sysdeps/ieee754/dbl-64/uexp.tbl: Remove. + * sysdeps/m68k/m680x0/fpu/e_exp_data.c: New file. + * sysdeps/m68k/m680x0/fpu/math_err.c: New file. + * sysdeps/m68k/m680x0/fpu/t_exp.c: Remove. + * sysdeps/powerpc/fpu/libm-test-ulps: Update. + * sysdeps/x86_64/fpu/libm-test-ulps: Update. + +2018-09-05 Joseph Myers + + * sysdeps/alpha/fpu/math_private.h: Remove. + + * sysdeps/generic/math_private.h + [__HAVE_DISTINCT_FLOAT128 && !__GNUC_PREREQ (7, 0)] (__isinff128): + Move this inline function .... + [__HAVE_DISTINCT_FLOAT128] (fabsf128): And this one .... + * include/math.h [!_ISOMAC]: To here.... + +2018-09-04 Joseph Myers + + * sysdeps/generic/fenv_private.h [FE_ALL_EXCEPT == 0]: Move this + code .... + [!FE_HAVE_ROUNDING_MODES]: And this code .... + * include/fenv.h [!_ISOMAC]: ... to here. + * math/fraiseexcpt.c (__feraiseexcept): Undefine as macro. + (feraiseexcept): Likewise. + * math/fromfp.h: Do not include . + * math/s_cexp_template.c: Likewise. + * math/s_csin_template.c: Likewise. + * math/s_csinh_template.c: Likewise. + * math/s_ctan_template.c: Likewise. + * math/s_ctanh_template.c: Likewise. + * math/s_iseqsig_template.c: Likewise. + * math/w_acos_compat.c: Likewise. + * math/w_acosf_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_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_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. + * sysdeps/ieee754/dbl-64/s_llrint.c: Likewise. + * sysdeps/ieee754/dbl-64/s_llround.c: Likewise. + * sysdeps/ieee754/dbl-64/s_lrint.c: Likewise. + * sysdeps/ieee754/dbl-64/s_lround.c: Likewise. + * sysdeps/ieee754/dbl-64/wordsize-64/s_lround.c: Likewise. + * sysdeps/ieee754/flt-32/s_llrintf.c: Likewise. + * sysdeps/ieee754/flt-32/s_llroundf.c: Likewise. + * sysdeps/ieee754/flt-32/s_lrintf.c: Likewise. + * sysdeps/ieee754/flt-32/s_lroundf.c: Likewise. + * sysdeps/ieee754/k_standardl.c: Likewise. + * sysdeps/ieee754/ldbl-128/e_expl.c: Likewise. + * sysdeps/ieee754/ldbl-128/s_fmal.c: Likewise. + * sysdeps/ieee754/ldbl-128/s_llrintl.c: Likewise. + * sysdeps/ieee754/ldbl-128/s_llroundl.c: Likewise. + * sysdeps/ieee754/ldbl-128/s_lrintl.c: Likewise. + * sysdeps/ieee754/ldbl-128/s_lroundl.c: Likewise. + * sysdeps/ieee754/ldbl-128/s_nearbyintl.c: Likewise. + * sysdeps/ieee754/ldbl-128ibm/s_llrintl.c: Likewise. + * sysdeps/ieee754/ldbl-128ibm/s_llroundl.c: Likewise. + * sysdeps/ieee754/ldbl-128ibm/s_lrintl.c: Likewise. + * sysdeps/ieee754/ldbl-128ibm/s_lroundl.c: Likewise. + * sysdeps/ieee754/ldbl-96/s_fma.c: Likewise. + * sysdeps/ieee754/ldbl-96/s_fmal.c: Likewise. + * sysdeps/ieee754/ldbl-96/s_llrintl.c: Likewise. + * sysdeps/ieee754/ldbl-96/s_llroundl.c: Likewise. + * sysdeps/ieee754/ldbl-96/s_lrintl.c: Likewise. + * sysdeps/ieee754/ldbl-96/s_lroundl.c: Likewise. + * math/w_ilogb_template.c: Include instead of + . + * math/w_llogb_template.c: Likewise. + * sysdeps/powerpc/fpu/e_sqrt.c: Likewise. + * sysdeps/powerpc/fpu/e_sqrtf.c: Likewise. + +2018-09-03 Joseph Myers + + * sysdeps/generic/math_private.h: Do not include . + * math/fromfp.h: Include . + * math/math-narrow.h: Likewise. + * math/s_cexp_template.c: Likewise. + * math/s_csin_template.c: Likewise. + * math/s_csinh_template.c: Likewise. + * math/s_ctan_template.c: Likewise. + * math/s_ctanh_template.c: Likewise. + * math/s_iseqsig_template.c: Likewise. + * math/w_acos_compat.c: Likewise. + * math/w_acosf_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_ilogb_template.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_llogb_template.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. + * sysdeps/aarch64/fpu/feholdexcpt.c: Likewise. + * sysdeps/aarch64/fpu/fesetround.c: Likewise. + * sysdeps/aarch64/fpu/fgetexcptflg.c: Likewise. + * sysdeps/aarch64/fpu/ftestexcept.c: Likewise. + * sysdeps/ieee754/dbl-64/e_atan2.c: Likewise. + * sysdeps/ieee754/dbl-64/e_exp.c: Likewise. + * sysdeps/ieee754/dbl-64/e_exp2.c: Likewise. + * sysdeps/ieee754/dbl-64/e_gamma_r.c: Likewise. + * sysdeps/ieee754/dbl-64/e_jn.c: Likewise. + * sysdeps/ieee754/dbl-64/e_pow.c: Likewise. + * sysdeps/ieee754/dbl-64/e_remainder.c: Likewise. + * sysdeps/ieee754/dbl-64/e_sqrt.c: Likewise. + * sysdeps/ieee754/dbl-64/gamma_product.c: Likewise. + * sysdeps/ieee754/dbl-64/lgamma_neg.c: Likewise. + * sysdeps/ieee754/dbl-64/s_atan.c: Likewise. + * sysdeps/ieee754/dbl-64/s_fma.c: Likewise. + * sysdeps/ieee754/dbl-64/s_fmaf.c: Likewise. + * sysdeps/ieee754/dbl-64/s_llrint.c: Likewise. + * sysdeps/ieee754/dbl-64/s_llround.c: Likewise. + * sysdeps/ieee754/dbl-64/s_lrint.c: Likewise. + * sysdeps/ieee754/dbl-64/s_lround.c: Likewise. + * sysdeps/ieee754/dbl-64/s_nearbyint.c: Likewise. + * sysdeps/ieee754/dbl-64/s_sin.c: Likewise. + * sysdeps/ieee754/dbl-64/s_sincos.c: Likewise. + * sysdeps/ieee754/dbl-64/s_tan.c: Likewise. + * sysdeps/ieee754/dbl-64/wordsize-64/s_lround.c: Likewise. + * sysdeps/ieee754/dbl-64/wordsize-64/s_nearbyint.c: Likewise. + * sysdeps/ieee754/dbl-64/x2y2m1.c: Likewise. + * sysdeps/ieee754/float128/float128_private.h: Likewise. + * sysdeps/ieee754/flt-32/e_gammaf_r.c: Likewise. + * sysdeps/ieee754/flt-32/e_j1f.c: Likewise. + * sysdeps/ieee754/flt-32/e_jnf.c: Likewise. + * sysdeps/ieee754/flt-32/lgamma_negf.c: Likewise. + * sysdeps/ieee754/flt-32/s_llrintf.c: Likewise. + * sysdeps/ieee754/flt-32/s_llroundf.c: Likewise. + * sysdeps/ieee754/flt-32/s_lrintf.c: Likewise. + * sysdeps/ieee754/flt-32/s_lroundf.c: Likewise. + * sysdeps/ieee754/flt-32/s_nearbyintf.c: Likewise. + * sysdeps/ieee754/k_standardl.c: Likewise. + * sysdeps/ieee754/ldbl-128/e_expl.c: Likewise. + * sysdeps/ieee754/ldbl-128/e_gammal_r.c: Likewise. + * sysdeps/ieee754/ldbl-128/e_j1l.c: Likewise. + * sysdeps/ieee754/ldbl-128/e_jnl.c: Likewise. + * sysdeps/ieee754/ldbl-128/gamma_productl.c: Likewise. + * sysdeps/ieee754/ldbl-128/lgamma_negl.c: Likewise. + * sysdeps/ieee754/ldbl-128/s_fmal.c: Likewise. + * sysdeps/ieee754/ldbl-128/s_llrintl.c: Likewise. + * sysdeps/ieee754/ldbl-128/s_llroundl.c: Likewise. + * sysdeps/ieee754/ldbl-128/s_lrintl.c: Likewise. + * sysdeps/ieee754/ldbl-128/s_lroundl.c: Likewise. + * sysdeps/ieee754/ldbl-128/s_nearbyintl.c: Likewise. + * sysdeps/ieee754/ldbl-128/x2y2m1l.c: Likewise. + * sysdeps/ieee754/ldbl-128ibm/e_expl.c: Likewise. + * sysdeps/ieee754/ldbl-128ibm/e_gammal_r.c: Likewise. + * sysdeps/ieee754/ldbl-128ibm/e_j1l.c: Likewise. + * sysdeps/ieee754/ldbl-128ibm/e_jnl.c: Likewise. + * sysdeps/ieee754/ldbl-128ibm/lgamma_negl.c: Likewise. + * sysdeps/ieee754/ldbl-128ibm/s_fmal.c: Likewise. + * sysdeps/ieee754/ldbl-128ibm/s_llrintl.c: Likewise. + * sysdeps/ieee754/ldbl-128ibm/s_llroundl.c: Likewise. + * sysdeps/ieee754/ldbl-128ibm/s_lrintl.c: Likewise. + * sysdeps/ieee754/ldbl-128ibm/s_lroundl.c: Likewise. + * sysdeps/ieee754/ldbl-128ibm/s_rintl.c: Likewise. + * sysdeps/ieee754/ldbl-128ibm/x2y2m1l.c: Likewise. + * sysdeps/ieee754/ldbl-96/e_gammal_r.c: Likewise. + * sysdeps/ieee754/ldbl-96/e_jnl.c: Likewise. + * sysdeps/ieee754/ldbl-96/gamma_productl.c: Likewise. + * sysdeps/ieee754/ldbl-96/lgamma_negl.c: Likewise. + * sysdeps/ieee754/ldbl-96/s_fma.c: Likewise. + * sysdeps/ieee754/ldbl-96/s_fmal.c: Likewise. + * sysdeps/ieee754/ldbl-96/s_llrintl.c: Likewise. + * sysdeps/ieee754/ldbl-96/s_llroundl.c: Likewise. + * sysdeps/ieee754/ldbl-96/s_lrintl.c: Likewise. + * sysdeps/ieee754/ldbl-96/s_lroundl.c: Likewise. + * sysdeps/ieee754/ldbl-96/x2y2m1l.c: Likewise. + * sysdeps/powerpc/fpu/e_sqrt.c: Likewise. + * sysdeps/powerpc/fpu/e_sqrtf.c: Likewise. + * sysdeps/riscv/rv64/rvd/s_ceil.c: Likewise. + * sysdeps/riscv/rv64/rvd/s_floor.c: Likewise. + * sysdeps/riscv/rv64/rvd/s_nearbyint.c: Likewise. + * sysdeps/riscv/rv64/rvd/s_round.c: Likewise. + * sysdeps/riscv/rv64/rvd/s_roundeven.c: Likewise. + * sysdeps/riscv/rv64/rvd/s_trunc.c: Likewise. + * sysdeps/riscv/rvd/s_finite.c: Likewise. + * sysdeps/riscv/rvd/s_fmax.c: Likewise. + * sysdeps/riscv/rvd/s_fmin.c: Likewise. + * sysdeps/riscv/rvd/s_fpclassify.c: Likewise. + * sysdeps/riscv/rvd/s_isinf.c: Likewise. + * sysdeps/riscv/rvd/s_isnan.c: Likewise. + * sysdeps/riscv/rvd/s_issignaling.c: Likewise. + * sysdeps/riscv/rvf/fegetround.c: Likewise. + * sysdeps/riscv/rvf/feholdexcpt.c: Likewise. + * sysdeps/riscv/rvf/fesetenv.c: Likewise. + * sysdeps/riscv/rvf/fesetround.c: Likewise. + * sysdeps/riscv/rvf/feupdateenv.c: Likewise. + * sysdeps/riscv/rvf/fgetexcptflg.c: Likewise. + * sysdeps/riscv/rvf/ftestexcept.c: Likewise. + * sysdeps/riscv/rvf/s_ceilf.c: Likewise. + * sysdeps/riscv/rvf/s_finitef.c: Likewise. + * sysdeps/riscv/rvf/s_floorf.c: Likewise. + * sysdeps/riscv/rvf/s_fmaxf.c: Likewise. + * sysdeps/riscv/rvf/s_fminf.c: Likewise. + * sysdeps/riscv/rvf/s_fpclassifyf.c: Likewise. + * sysdeps/riscv/rvf/s_isinff.c: Likewise. + * sysdeps/riscv/rvf/s_isnanf.c: Likewise. + * sysdeps/riscv/rvf/s_issignalingf.c: Likewise. + * sysdeps/riscv/rvf/s_nearbyintf.c: Likewise. + * sysdeps/riscv/rvf/s_roundevenf.c: Likewise. + * sysdeps/riscv/rvf/s_roundf.c: Likewise. + * sysdeps/riscv/rvf/s_truncf.c: Likewise. + +2018-08-31 Paul Pluzhnikov + + [BZ #20271] + * include/stdio.h (__libc_fatal): Mention newline in comment. + * grp/initgroups.c (internal_getgrouplist): Add missing newline. + * nptl/pthread_cond_wait.c (__pthread_cond_wait_common): Likewise. + * nscd/initgrcache.c (addinitgroupsX): Likewise. + * nss/nsswitch.c (__nss_next2): Likewise. + * sysdeps/aarch64/dl-irel.h (elf_irela): Likewise. + * sysdeps/arm/dl-irel.h (elf_irel): Likewise. + * sysdeps/generic/unwind-dw2.c (execute_cfa_program): Likewise. + * sysdeps/i386/dl-irel.h (elf_irel): Likewise. + * sysdeps/powerpc/powerpc32/dl-irel.h (elf_irel): Likewise. + * sysdeps/powerpc/powerpc64/dl-irel.h (elf_irel): Likewise. + * sysdeps/s390/dl-irel.h (elf_irel): Likewise. + * sysdeps/sparc/sparc32/dl-irel.h (elf_irel): Likewise. + * sysdeps/sparc/sparc64/dl-irel.h (elf_irel): Likewise. + * sysdeps/x86_64/dl-irel.h (elf_irel): Likewise. + * sysdeps/nptl/futex-internal.h (futex_wake): Likewise. + * sysdeps/unix/sysv/linux/netlink_assert_response.c + (__netlink_assert_response): Likewise. + +2018-08-31 Joseph Myers + + * conform/glibcconform.py: New file. + * conform/list-header-symbols.py: Likewise. + * conform/list-header-symbols.pl: Remove. + * conform/Makefile (tests-special): Only add linknamespace tests + if [PYTHON]. + ($(linknamespace-symlists-tests)): Use list-header-symbols.py. + +2018-08-31 H.J. Lu + + [BZ #23597] + * support/Makefile (libsupport-routines): Add + support_copy_file_range and xcopy_file_range. + * support/support.h: Include . + (support_copy_file_range): New prototype. + * support/support_copy_file_range.c: New file. Copied and + modified from io/copy_file_range-compat.c. + * support/test-container.c (copy_one_file): Call xcopy_file_rang + instead of copy_file_range. + * support/xcopy_file_range.c: New file. + * support/xunistd.h (xcopy_file_range): New prototype. + +2018-08-30 Carlos O'Donell + + * elf/tst-dlopen-aout.c: Include support/xthread.h. Use + xpthread_create and xpthread_join. + +2018-08-30 Florian Weimer + + * stdlib/stdlib.h (reallocarray): Make available under __USE_MISC. + +2018-08-30 Stefan Liebler + + * stdlib/test-bz22786.c (do_test): Return EXIT_UNSUPPORTED + if malloc fails. + +2018-08-29 Joseph Myers + + * math/gen-libm-test.py (gen_test_args_res): Also treat plus_oflow + and minus_oflow as non-finite. + +2018-08-28 Joseph Myers + + * sysdeps/aarch64/fpu/fenv_private.h: New file. Based on .... + * sysdeps/aarch64/fpu/math_private.h: ... this file. All contents + moved to fenv_private.h except for ... + (TOINT_INTRINSICS): Kept in math_private.h. + (roundtoint): Likewise. + (converttoint): Likewise. + * sysdeps/arm/fenv_private.h: Change multiple-include guard to + [ARM_FENV_PRIVATE_H]. Include next . + * sysdeps/arm/math_private.h: Remove. + * sysdeps/generic/fenv_private.h: New file. Contents moved from + .... + * sysdeps/generic/math_private.h: ... this file. Include + . Do not include or . + Include . Remove functions and macros moved to + fenv_private.h. + * sysdeps/i386/fpu/math_private.h: Remove. + * sysdeps/mips/math_private.h: Move to .... + * sysdeps/mips/fpu/fenv_private.h: ... here. Change + multiple-include guard to [MIPS_FENV_PRIVATE_H]. Remove + [__mips_hard_float] conditional. Include next . + * sysdeps/powerpc/fpu/fenv_private.h: Change multiple-include + guard to [POWERPC_FENV_PRIVATE_H]. Include next . + * sysdeps/powerpc/fpu/math_private.h: Do not include + . + * sysdeps/riscv/rvf/math_private.h: Move to .... + * sysdeps/riscv/rvf/fenv_private.h: ... here. Change + multiple-include guard to [RISCV_FENV_PRIVATE_H]. Include next + . + * sysdeps/sparc/fpu/fenv_private.h: Change multiple-include guard + to [SPARC_FENV_PRIVATE_H]. Include next . + * sysdeps/sparc/fpu/math_private.h: Remove. + * sysdeps/i386/fpu/fenv_private.h: Move to .... + * sysdeps/x86/fpu/fenv_private.h: ... here. Change + multiple-include guard to [X86_FENV_PRIVATE_H]. Include next + . + * sysdeps/x86_64/fpu/math_private.h: Do not include + . + +2018-08-28 Florian Weimer + + [BZ #23578] + * posix/tst-regcomp-truncated.c: New file. + * posix/Makefile (tests): Add it. + (tst-regcomp-truncated.out): Depend on generated locales. + +2018-08-28 Florian Weimer + + * support/test-container.c (main): Treat unshare failure with + EPERM as an unsupported test. + +2018-08-28 Florian Weimer + + [BZ #23520] + nscd: Fix use-after-free in addgetnetgrentX and its callers. + * nscd/netgroupcache.c + (addgetnetgrentX): Add tofreep parameter. Do not free + heap-allocated buffer. + (addinnetgrX): Free buffer allocated bt addgetnetgrentX. + (addgetnetgrentX_ignore): New function. + (addgetnetgrent): Call it. + (readdgetnetgrent): Likewise. + +2018-08-28 Rajalakshmi Srinivasaraghavan + + * string/memmem.c: Use memcmp for first match. + +2018-08-28 Rafał Lużyński + + [BZ #17426] + * localedata/locales/en_IN (d_fmt): Use "%d/%m/%y". + +2018-08-27 DJ Delorie + + * support/Makefile (others): Don't list programs explicitly as a + dependency of "others". + +2018-08-27 Joseph Myers + + * sysdeps/generic/math-tests-trap-force.h: New file. + * sysdeps/generic/math-tests.h: Include . + (EXCEPTION_SET_FORCES_TRAP): Do not define here. + * sysdeps/powerpc/math-tests.h: Remove file. + * sysdeps/powerpc/fpu/math-tests-trap-force.h: New file. + +2018-08-27 Martin Kuchta + Torvald Riegel + + [BZ #23538] + * nptl/pthread_cond_common.c (__condvar_quiesce_and_switch_g1): + Update r to include the set wake-request flag if waiters are + remaining after spinning. + +2018-08-27 Joseph Myers + + * sysdeps/gnu/netinet/udp.h (UDP_SEGMENT): New macro. + +2018-08-25 Paul Eggert + + [BZ #23578] + regex: fix uninitialized memory access + I introduced this bug into gnulib in commit + 8335a4d6c7b4448cd0bcb6d0bebf1d456bcfdb17 dated 2006-04-10; + eventually it was merged into glibc. The bug was found by + project-repo and reported here: + https://lists.gnu.org/r/sed-devel/2018-08/msg00017.html + Diagnosis and draft fix reported by Assaf Gordon here: + https://lists.gnu.org/r/bug-gnulib/2018-08/msg00071.html + https://lists.gnu.org/r/bug-gnulib/2018-08/msg00142.html + * posix/regex_internal.c (build_wcs_upper_buffer): + Fix bug when mbrtowc returns 0. + +2018-08-24 Carlos O'Donell + + * po/be.po: Update translation. + +2018-08-24 DJ Delorie + + * support/Makefile (LDLIBS-links-dso-program): Add -lgcc and + $(libunwind). + +2018-08-24 Paul Pluzhnikov + + [BZ #23400] + * stdlib/test-bz22786.c (do_test): Fix undefined behavior, don't + create temporary files in source tree. + +2018-08-24 Joseph Myers + + * sysdeps/generic/math-tests-trap.h: New file. + * sysdeps/generic/math-tests.h: Include . + (EXCEPTION_ENABLE_SUPPORTED): Do not define here. + * sysdeps/aarch64/math-tests.h: Remove file. + * sysdeps/arm/math-tests.h: Likewise. + * sysdeps/riscv/math-tests.h: Likewise. + * sysdeps/aarch64/math-tests-trap.h: New file. + * sysdeps/arm/math-tests-trap.h: Likewise. + * sysdeps/riscv/math-tests-trap.h: Likewise. + +2018-08-24 Wilco Dijkstra + + * math/Makefile: Remove empty files k_sin(f).c, k_cos(f).c. + Remove unused files e_rem_pio2(f).c, k_rem_pio2f.c. + * sysdeps/i386/fpu/e_rem_pio2.c: Delete file. + * sysdeps/ia64/fpu/e_rem_pio2.c: Likewise. + * sysdeps/ia64/fpu/e_rem_pio2f.c: Likewise. + * sysdeps/ia64/fpu/k_rem_pio2f.c: Likewise. + * sysdeps/ieee754/dbl-64/e_rem_pio2.c: Likewise. + * sysdeps/ieee754/dbl-64/k_cos.c: Likewise. + * sysdeps/ieee754/dbl-64/k_sin.c: Likewise. + * sysdeps/ieee754/flt-32/e_rem_pio2f.c: Likewise. + * sysdeps/ieee754/flt-32/k_cosf.c: Likewise. + * sysdeps/ieee754/flt-32/k_rem_pio2f.c: Likewise. + * sysdeps/ieee754/flt-32/k_sinf.c: Likewise. + * sysdeps/m68k/m680x0/fpu/e_rem_pio2.c: Likewise + * sysdeps/m68k/m680x0/fpu/e_rem_pio2f.c: Likewise + * sysdeps/m68k/m680x0/fpu/k_rem_pio2f.c: Likewise + * sysdeps/powerpc/fpu/e_rem_pio2f.c: Likewise. + * sysdeps/powerpc/fpu/k_rem_pio2f.c: Likewise. + +2018-08-23 Joseph Myers + + * sysdeps/generic/math-tests-exceptions.h: New file. + * sysdeps/generic/math-tests.h: Include . + (EXCEPTION_TESTS_float): Do not define here. + (EXCEPTION_TESTS_double): Likewise. + (EXCEPTION_TESTS_long_double): Likewise. + (EXCEPTION_TESTS_float128): Likewise. + * sysdeps/arm/math-tests.h [__SOFTFP__] (EXCEPTION_TESTS_float): + Likewise. + [__SOFTFP__] (EXCEPTION_TESTS_double): Likewise. + [__SOFTFP__] (EXCEPTION_TESTS_long_double): Likewise. + * sysdeps/arm/nofpu/math-tests-exceptions.h: New file. + * sysdeps/m68k/coldfire/math-tests.h: Remove file. + * sysdeps/mips/math-tests.h: Likewise. + * sysdeps/nios2/math-tests.h: Likewise. + * sysdeps/riscv/math-tests.h [!__riscv_flen] + (EXCEPTION_TESTS_float): Do not define here. + [!__riscv_flen] (EXCEPTION_TESTS_double): Likewise. + [!__riscv_flen] (EXCEPTION_TESTS_long_double): Likewise. + * sysdeps/riscv/nofpu/math-tests-exceptions.h: New file. + +2018-08-23 Wilco Dijkstra + + * NEWS: Move optimized sinf entry to 2.29. + +2018-08-23 Wilco Dijkstra + + * sysdeps/ieee754/flt-32/s_tanf.c (__tanf): Use fast range reduction. + +2018-08-22 DJ Delorie + + * Makefile (testroot.pristine): New rules to initialize the + test-in-container "testroot". + * Makerules (all-testsuite): Add tests-container. + * Rules (tests-expected): Add tests-container. + (binaries-all-tests): Likewise. + (tests-container): New, run these tests in the testroot container. + * support/Makefile (others): Add *-container, support_paths.c, + xmkdirp, and links-dso-program. + * support/links-dso-program-c.c: New. + * support/links-dso-program.cc: New. + * support/test-container.c: New. + * support/shell-container.c: New. + * support/echo-container.c: New. + * support/true-container.c: New. + * support/xmkdirp.c: New. + * support/xsymlink.c: New. + * support/support_paths.c: New. + * support/support.h: Add support paths prototypes. + * support/xunistd.h: Add xmkdirp () and xsymlink (). + + * nss/tst-nss-test3.c: Convert to test-in-container. + * nss/tst-nss-test3.root/: New. + +2018-08-22 Paul Eggert + + regex: port Gnulib code to z/OS POSIX environment + Problem reported by Arnold Robbins in: + https://lists.gnu.org/r/bug-gnulib/2018-08/msg00129.html + * posix/regex_internal.h (__iswalnum, __towlower, __towupper) [!_LIBC]: + Undef. + +2018-08-22 Joseph Myers + + * math/test-double-vlen2.h: Don't include . + (ROUNDING_TESTS_double): Remove. + * math/test-double-vlen4.h: Don't include . + (ROUNDING_TESTS_double): Remove. + * math/test-double-vlen8.h: Don't include . + (ROUNDING_TESTS_double): Remove. + * math/test-float-vlen16.h: Don't include . + (ROUNDING_TESTS_float): Remove. + * math/test-float-vlen4.h: Don't include . + (ROUNDING_TESTS_float): Remove. + * math/test-float-vlen8.h: Don't include . + (ROUNDING_TESTS_float): Remove. + * math/libm-test-driver.c (IF_ROUND_INIT_FE_DOWNWARD): Check + !TEST_MATHVEC here. + (IF_ROUND_INIT_FE_TOWARDZERO): Likewise. + (IF_ROUND_INIT_FE_UPWARD): Likewise. + + * sysdeps/generic/math-tests-rounding.h: New file. + * sysdeps/generic/math-tests.h: Include . + (ROUNDING_TESTS_float): Do not define here. + (ROUNDING_TESTS_double): Likewise. + (ROUNDING_TESTS_long_double): Likewise. + (ROUNDING_TESTS_float128): Likewise. + * math/test-double-vlen2.h: Include . + (ROUNDING_TESTS_double): Undefine before defining. + * math/test-double-vlen4.h: Include . + (ROUNDING_TESTS_double): Undefine before defining. + * math/test-double-vlen8.h: Include . + (ROUNDING_TESTS_double): Undefine before defining. + * math/test-float-vlen16.h: Include . + (ROUNDING_TESTS_float): Undefine before defining. + * math/test-float-vlen4.h: Include . + (ROUNDING_TESTS_float): Undefine before defining. + * math/test-float-vlen8.h: Include . + (ROUNDING_TESTS_float): Undefine before defining. + * sysdeps/arm/nofpu/math-tests-rounding.h: New file. + * sysdeps/arm/math-tests.h [__SOFTFP__] (ROUNDING_TESTS_float): Do + not define here. + [__SOFTFP__] (ROUNDING_TESTS_double): Likewise. + [__SOFTFP__] (ROUNDING_TESTS_long_double): Likewise. + * sysdeps/riscv/nofpu/math-tests-rounding.h: New file. + * sysdeps/riscv/math-tests.h [!__riscv_flen] + (ROUNDING_TESTS_float): Do not define here. + [!__riscv_flen] (ROUNDING_TESTS_double): Likewise. + [!__risv_flen] (ROUNDING_TESTS_long_double): Likewise. + * sysdeps/m68k/coldfire/math-tests.h [!__mcffpu__] + (ROUNDING_TESTS_float): Likewise. + [!__mcffpu__] (ROUNDING_TESTS_double): Likewise. + [!__mcffpu__] (ROUNDING_TESTS_long_double): Likewise. + * sysdeps/mips/math-tests.h [__mips_soft_float] + (ROUNDING_TESTS_float): Likewise. + [__mips_soft_float] (ROUNDING_TESTS_double): Likewise. + [__mips_soft_float] (ROUNDING_TESTS_long_double): Likewise. + * sysdeps/nios2/math-tests.h (ROUNDING_TESTS_float): Likewise. + (ROUNDING_TESTS_double): Likewise. + (ROUNDING_TESTS_long_double): Likewise. + +2018-08-21 Tobias Klauser + + * sysdeps/unix/sysv/linux/bits/socket.h (PF_MAX): Set to 45. + (PF_XDP): New macro. + (AF_XDP): New macro. + (SOL_XDP): New macro. + +2018-08-21 Joseph Myers + + * sysdeps/gnu/netinet/tcp.h (TCP_ZEROCOPY_RECEIVE): New macro. + (TCP_INQ): Likewise. + (TCP_CM_INQ): Likewise. + (TCP_REPAIR_ON): Likewise. + (TCP_REPAIR_OFF): Likewise. + (TCP_REPAIR_OFF_NO_WP): Likewise. + (struct tcp_zerocopy_receive): New type. + +2018-08-21 Florian Weimer + + * support/support.h (support_descriptor_supports_holes): Declare. + * support/Makefile (libsupport-routines): Add + support_descriptor_supports_holes. + * support/support_descriptor_supports_holes.c: New file. + * io/tst-copy_file_range.c: Call support_descriptor_supports_holes + and stop testing if holes are not supported. + * io/test-lfs.c (do_prepare): Likewise. + * sysdeps/unix/sysv/linux/tst-fallocate-common.c (do_prepare): + Likewise. + * timezone/tst-tzset.c (create_tz_file): Likewise. + * misc/tst-preadvwritev-common.c (temp_fd_supports_holes) New + variable. + (do_prepare): Set it. + * misc/tst-preadvwritev64.c (do_test): Use temp_fd_supports_holes. + +2018-08-21 Florian Weimer + + [BZ #17248] + * Makeconfig (+cflags): Do not sort (and deduplicate). + +2018-08-21 Florian Weimer + + * debug/readlink_chk.c (__readlink_chk): Always call __readlink. + * sysdeps/unix/sysv/linux/generic/readlink_chk.c: Remove file. + +2018-08-20 Florian Weimer + + * sysdeps/unix/sysv/linux/generic/readlink_chk.c: Remove + HAVE_INLINED_SYSCALLS conditionals. Use INLINE_SYSCALL_CALL. + +2018-08-20 Joseph Myers + + * sysdeps/unix/sysv/linux/sys/signalfd.h (struct + signalfd_siginfo): Add ssi_addr_lsb, ssi_syscall, ssi_call_addr + and ssi_arch members. + + * elf/elf.c (NT_VMCOREDD): New macro. + (AT_MINSIGSTKSZ): Likewise. + +2018-08-20 Rajalakshmi Srinivasaraghavan + + * sysdeps/powerpc/powerpc64/fpu/multiarch/Makefile + (libm-sysdep_routines): Remove s_sinf-ppc64, s_sinf-power8, + s_cosf-ppc64 and s_cosf-power8. + * sysdeps/powerpc/fpu/s_cosf.c: Remove file. + * sysdeps/powerpc/fpu/s_sinf.c: Likewise. + * sysdeps/powerpc/fpu/k_sinf.c: Likewise. + * sysdeps/powerpc/fpu/k_cosf.c: Likewise. + * sysdeps/powerpc/powerpc64/fpu/multiarch/s_cosf-power8.S: Likewise. + * sysdeps/powerpc/powerpc64/fpu/multiarch/s_cosf-ppc64.c: Likewise. + * sysdeps/powerpc/powerpc64/fpu/multiarch/s_cosf.c: Likewise. + * sysdeps/powerpc/powerpc64/fpu/multiarch/s_sinf-power8.S: Likewise. + * sysdeps/powerpc/powerpc64/fpu/multiarch/s_sinf-ppc64.c: Likewise. + * sysdeps/powerpc/powerpc64/fpu/multiarch/s_sinf.c: Likewise. + * sysdeps/powerpc/powerpc64/power8/fpu/s_cosf.S: Likewise. + * sysdeps/powerpc/powerpc64/power8/fpu/s_sinf.S: Likewise. + +2018-08-17 Florian Weimer + + * sysdeps/s390/fpu/libm-test-ulps: Regenerate. + +2018-08-17 Istvan Kurucsai + + * malloc/malloc.c (_int_malloc): Additional binning code checks. + +2018-08-16 Florian Weimer + + * configure.ac: Add --with-nonshared-cflags option. + * config.make.in (extra-nonshared-cflags): Set variable. + * Makeconfig (CFLAGS-.oS): Use it. + * manual/install.texi (Configuring and compiling): Document + --with-nonshared-cflags. + * configure: Regenerate. + * INSTALL: Likewise. + +2018-08-16 Florian Weimer + + * Makeconfig (ASFLAGS): Always append required assembler flags. + +2018-08-16 Moritz Eckert + + * malloc/malloc.c (_int_free): Check for corrupt prev_size vs size. + (malloc_consolidate): Likewise. + +2018-08-16 Pochang Chen + + * malloc/malloc.c (_int_malloc.c): Verify size of top chunk. + +2018-08-16 Siddhesh Poyarekar + + * benchtests/bench-strlen.c (do_test): Allocate buffers before + every strlen call. + + * benchtests/bench-strlen.c: Print performance numbers in json. + +2018-08-16 Rajalakshmi Srinivasaraghavan + + * sysdeps/powerpc/powerpc64/multiarch/Makefile + (sysdep_routines): Build strcmp-power9 and strncmp-power9 + only for little endian. + * sysdeps/powerpc/powerpc64/multiarch/ifunc-impl-list.c + (strncmp): Move __strncmp_power9 inside ifdef __LITTLE_ENDIAN__. + (STRCMP): Move __strcmp_power9 inside ifdef __LITTLE_ENDIAN__. + * sysdeps/powerpc/powerpc64/multiarch/strcmp-power9.S: + Add check for little endian. + * sysdeps/powerpc/powerpc64/multiarch/strcmp.c + (__strcmp_power9): Add check for little endian. + * sysdeps/powerpc/powerpc64/multiarch/strncmp-power9.S: + Add check for little endian. + * sysdeps/powerpc/powerpc64/multiarch/strncmp.c + (__strncmp_power9): Add check for little endian. + * sysdeps/powerpc/powerpc64/power9/strcmp.S: Removed ifdef + __LITTLE_ENDIAN__ and moved to sysdeps/powerpc/powerpc64/le/power9. + * sysdeps/powerpc/powerpc64/power9/strncmp.S: Likewise. + * sysdeps/powerpc/powerpc64/le/power9/strcmp.S: New file. + * sysdeps/powerpc/powerpc64/le/power9/strncmp.S: Likewise. + +2018-08-15 Siddhesh Poyarekar + + * sysdeps/aarch64/strlen.S (__strlen): Rename to STRLEN. + [!STRLEN](STRLEN): Set to __strlen. + * sysdeps/aarch64/multiarch/strlen.c: New file. + * sysdeps/aarch64/multiarch/strlen_generic.S: Likewise. + * sysdeps/aarch64/multiarch/strlen_asimd.S: Likewise. + * sysdeps/aarch64/multiarch/ifunc-impl-list.c + (__libc_ifunc_impl_list): Add strlen. + * sysdeps/aarch64/multiarch/Makefile (sysdep_routines): Add + strlen_generic and strlen_asimd. + +2018-08-15 Wilco Dijkstra + + * sysdeps/ieee754/flt-32/e_lgammaf_r.c (sin_pif): Use __sinf/__cosf. + * sysdeps/ieee754/flt-32/k_cosf.c (__kernel_cosf): Remove all code. + * sysdeps/ieee754/flt-32/k_sinf.c (__kernel_sinf): Likewise. + +2018-08-15 Wilco Dijkstra + + * sysdeps/x86_64/fpu/libm-test-ulps: Regenerate to fix spaces. + +2018-08-14 Florian Weimer + + [BZ #23519] + * include/stdio.h (__vfxprintf): Declare. + * stdio-common/fxprintf.c (__vfxprintf): New function. + (__fxprintf): Call it. + * misc/err.c (convert_and_print): Remove function. + (vwarnx, vwarn): Call __fxprintf and __vfxprintf. + * misc/error.c [_LIBC] (error_tail): Call __vfxprintf. + * misc/Makefile (tests): Add tst-warn-wide. + * misc/tst-warn-wide.c: New file. + +2018-08-14 Wilco Dijkstra + Szabolcs Nagy + + * NEWS: Mention sinf, cosf, sincosf. + * sysdeps/aarch64/libm-test-ulps: Update ULP for sinf, cosf, sincosf. + * sysdeps/x86_64/fpu/libm-test-ulps: Update ULP for sinf and cosf. + * sysdeps/x86_64/fpu/multiarch/s_sincosf-fma.c: Add definitions of + constants rather than including generic sincosf.h. + * sysdeps/x86_64/fpu/s_sincosf_data.c: Remove. + * sysdeps/ieee754/flt-32/s_cosf.c (cosf): Rewrite. + * sysdeps/ieee754/flt-32/s_sincosf.h (reduced_sin): Remove. + (reduced_cos): Remove. + (sinf_poly): New function. + * sysdeps/ieee754/flt-32/s_sinf.c (sinf): Rewrite. + +2018-08-14 Florian Weimer + + [BZ #23521] + [BZ #23522] + * nss/nss_files/files-alias.c (get_next_alias): During :include: + processing, bail out if no room, and close the stream before + returning ERANGE. + * nss/Makefile (tests): Add tst-nss-files-alias-leak. + (tst-nss-files-alias-leak): Link with libdl. + (tst-nss-files-alias-leak.out): Depend on nss_files. + + * nss/tst-nss-files-alias-leak.c: New file. + +2018-08-14 Florian Weimer + + * nscd/nscd_conf.c (nscd_parse_file): Deallocate old storage for + server_user, stat_user. + +2018-08-13 Joseph Myers + + * sysdeps/unix/sysv/linux/syscall-names.list: Update kernel + version to 4.18. + (io_pgetevents): New syscall. + (rseq): Likewise. + + * manual/install.texi (Configuring and compiling): Do not list + tools used for testing pretty printers here. + (Tools for Compilation): List Python, PExpect and GDB here. + Update descriptions of uses of Perl and Python. + * INSTALL: Regenerate. + + * scripts/build-many-glibcs.py (Context.checkout): Default Linux + version to 4.18. + +2018-08-13 Florian Weimer + + * misc/error.c (error): Add missing va_end call. + (error_at_line): Likewise. + +2018-08-13 Florian Weimer + + * stdlib/mbstowcs.c (mbstowcs): Remove outdated comment. + +2018-08-11 Siddhesh Poyarekar + + * benchtests/scripts/benchout.schema.json (properties): Add + new properties. + + * benchtests/bench-skeleton.c (main): Add duration and + iterations attributes. + +2018-08-10 Paul Eggert + + regex: Gnulib unibyte RRI uses bytes not chars + Adjust the non-glibc code to agree with what Gawk needs for + rational range interpretation (RRI) for regular expression ranges. + In unibyte locales, Gawk wants ranges to use the underlying byte + rather than the character code point. This change does not affect + glibc proper. + * posix/regcomp.c (parse_byte) [!LIBC && RE_ENABLE_I18N]: + In unibyte locales, use the byte value rather than + running it through btowc. + +2018-08-10 Joseph Myers + + * sysdeps/generic/math-tests-snan.h: New file. + * sysdeps/generic/math-tests.h: Include . + (SNAN_TESTS_float): Do not define here. + (SNAN_TESTS_double): Likewise. + (SNAN_TESTS_long_double): Likewise. + (SNAN_TESTS_float128): Likewise. + * sysdeps/i386/fpu/math-tests-snan.h: New file. + * sysdeps/i386/fpu/math-tests.h: Remove file. + * sysdeps/ia64/math-tests-snan.h: New file. + * sysdeps/ia64/math-tests.h: Remove file. + * sysdeps/x86/math-tests.h: Likewise. + * sysdeps/x86_64/fpu/math-tests-snan.h: New file. + +2018-08-10 Wilco Dijkstra + Szabolcs Nagy + + * math/Makefile: Add s_sincosf_data.c. + * sysdeps/ia64/fpu/s_sincosf_data.c: New file. + * sysdeps/ieee754/flt-32/s_sincosf.h (abstop12): Add new function. + (sincosf_poly): Likewise. + (reduce_small): Likewise. + (reduce_large): Likewise. + * sysdeps/ieee754/flt-32/s_sincosf.c (sincosf): Rewrite. + * sysdeps/ieee754/flt-32/s_sincosf_data.c: New file with sincosf data. + * sysdeps/m68k/m680x0/fpu/s_sincosf_data.c: New file. + * sysdeps/x86_64/fpu/s_sincosf_data.c: New file. + +2018-08-10 Wilco Dijkstra + Szabolcs Nagy + + * sysdeps/aarch64/fpu/math_private.h (roundtoint): Use round. + (converttoint): Use lround. + * sysdeps/ieee754/flt-32/math_config.h (roundtoint): Declare and + document the semantics when TOINT_INTRINSICS is set. + (converttoint): Likewise. + (TOINT_RINT): Remove. + (TOINT_SHIFT): Remove. + * sysdeps/ieee754/flt-32/e_expf.c (__expf): Remove the TOINT_RINT code + path. + +2018-08-10 Florian Weimer + + [BZ #23497] + * sysdeps/unix/sysv/linux/getdents64.c (handle_overflow): New + function. + (__old_getdents64): Use getdents64. Convert entries without + moving them. + * sysdeps/unix/sysv/linux/tst-readdir64-compat.c: New file. + * sysdeps/unix/sysv/linux/Makefile (tests-internal): Add + tst-readdir64-compat. + +2018-08-10 Ilya Leoshkevich + + * sysdeps/s390/s390-32/s390-mcount.S (_mcount): + Fix unwind. + +2018-08-10 Ilya Leoshkevich + + * sysdeps/s390/s390-64/Versions (__fentry__): Add. + * sysdeps/s390/s390-64/s390x-mcount.S: Move the common + code to s390x-mcount.h and #include it. + * sysdeps/s390/s390-64/s390x-mcount.h: New file. + * sysdeps/unix/sysv/linux/s390/s390-64/libc.abilist + (__fentry__): Add. + +2018-08-10 Ilya Leoshkevich + + * stdlib/Versions: Remove __fentry__. + * sysdeps/i386/Versions: Add __fentry__. + * sysdeps/x86_64/Versions: Add __fentry__. + +2018-08-10 Ilya Leoshkevich + + * sysdeps/s390/Makefile: Register the new tests. + * sysdeps/s390/tst-dl-runtime-mod.S: New file. + * sysdeps/s390/tst-dl-runtime-profile-audit.c: New file. + * sysdeps/s390/tst-dl-runtime-profile-noaudit.c: New file. + * sysdeps/s390/tst-dl-runtime-resolve-audit.c: New file. + * sysdeps/s390/tst-dl-runtime-resolve-noaudit.c: New file. + * sysdeps/s390/tst-dl-runtime.c: New file. + +2018-08-10 Ilya Leoshkevich + + * sysdeps/s390/s390-64/dl-trampoline.h (_dl_runtime_profile): + Do not clobber R0. + +2018-08-10 Ilya Leoshkevich + + * sysdeps/s390/s390-64/dl-trampoline.h (_dl_runtime_resolve): + Do not clobber R0. + +2018-08-10 Ilya Leoshkevich + + * sysdeps/s390/s390-32/dl-trampoline.h (_dl_runtime_profile): + Do not clobber R0. + +2018-08-10 Ilya Leoshkevich + + * sysdeps/s390/s390-32/dl-trampoline.h (_dl_runtime_resolve): + Do not clobber R0. + +2018-08-10 Ilya Leoshkevich + + * sysdeps/s390/s390-64/dl-trampoline.h (_dl_runtime_profile): + Use symbolic offsets for stack variables. + +2018-08-10 Ilya Leoshkevich + + * sysdeps/s390/s390-64/dl-trampoline.h (_dl_runtime_resolve): + Use symbolic offsets for stack variables. + +2018-08-10 Ilya Leoshkevich + + * sysdeps/s390/s390-32/dl-trampoline.h (_dl_runtime_profile): + Use symbolic offsets for stack variables. + +2018-08-10 Ilya Leoshkevich + + * sysdeps/s390/s390-32/dl-trampoline.h (_dl_runtime_resolve): + Use symbolic offsets for stack variables. + +2018-08-09 Joseph Myers + + * math/gen-libm-test.py: New file. + * math/gen-libm-test.pl: Remove. + * math/Makefile [$(PERL) != no]: Change condition to [PYTHON]. + ($(objpfx)libm-test-ulps.h): Use gen-libm-test.py instead of + gen-libm-test.pl. + ($(libm-test-c-noauto-obj)): Likewise. + ($(libm-test-c-auto-obj)): Likewise. + ($(libm-test-c-narrow-obj)): Likewise. + (regen-ulps): Likewise. + * math/README.libm-test: Update references to gen-libm-test.pl. + * math/libm-test-driver.c (struct test_fj_f_data): Update comment + referencing gen-libm-test.pl. + * math/libm-test-nexttoward.inc (nexttoward_test_data): Likewise. + * math/libm-test-support.c: Likewise. + * math/libm-test-support.h: Likewise. + * sysdeps/generic/libm-test-ulps: Likewise. + +2018-08-08 Siddhesh Poyarekar + + * sysdeps/aarch64/strlen.S [TEST_PAGE_CROSS](MIN_PAGE_SIZE): + Fix value. + +2018-08-08 Joseph Myers + + * math/libm-test-nextdown.inc (do_test): Move comment to .... + * math/libm-test-nexttoward.inc (nexttoward_test_data): ... here. + +2018-08-08 Samuel Thibault + + * htl/Versions (__pthread_getspecific, __pthread_setspecific): Add + symbols. + * sysdeps/htl/pthreadP.h [IS_IN (libpthread)] (__pthread_getspecific, + __pthread_setspecific): Add hidden proto. + * sysdeps/htl/pt-getspecific.c (__pthread_getspecific): Add hidden def. + * sysdeps/htl/pt-setspecific.c (__pthread_setspecific): Add hidden def. + +2018-08-07 Siddhesh Poyarekar + + * benchtests/bench-string.h (buf1_size, buf2_size): New + variables. + (init_sizes): New function. + (test_init): Use it. + (alloc_buf, exit_error): New functions. + (alloc_bufs): Use ALLOC_BUF. + (realloc_bufs): Remove. + * benchtests/bench-memcmp.c (do_test): Adjust. + * benchtests/bench-memset-large.c (do_test): Likewise. + * benchtests/bench-memset-walk.c (do_test): Likewise. + * benchtests/bench-memset.c (do_test): Likewise. + * benchtests/bench-strncmp.c (do_test): Likewise. + +2018-08-06 Andreas Schwab + + * sysdeps/riscv/nptl/tls.h (DB_THREAD_SELF): Use REGISTER instead + of CONST_THREAD_AREA. + +2018-08-06 H.J. Lu + + * sysdeps/x86/cpu-features.h (STATE_SAVE_OFFSET): Removed. + (STATE_SAVE_MASK): Likewise. + Don't check __ASSEMBLER__ to include . + * sysdeps/x86/sysdep.h (STATE_SAVE_OFFSET): New. + (STATE_SAVE_MASK): Likewise. + * sysdeps/x86_64/dl-trampoline.S: Include + instead of . + +2018-08-03 DJ Delorie + + * sysdeps/riscv/rvf/math_private.h (libc_feholdexcept_setround_riscv): + Move libc_fesetround_riscv after libc_feholdexcept_riscv. + + * sysdeps/riscv/rv64/rvd/libm-test-ulps: Update. + +2018-08-03 Joseph Myers + + * math/libm-test-ilogb.inc (ilogb_test_data): Use ',' not ';' + after TEST_* calls. + * math/libm-test-llogb.inc (llogb_test_data): Likewise. + * math/libm-test-logb.inc (logb_test_data): Likewise. + +2018-08-03 Wilco Dijkstra + + * string/strcasestr.c (STRCASESTR): Simplify and speedup first match. + * string/strstr.c (AVAILABLE): Likewise. + +2018-08-03 H.J. Lu + + * sysdeps/i386/i686/multiarch/bzero-ia32.S: Don't include + . + * sysdeps/x86_64/fpu/multiarch/svml_d_sin8_core-avx2.S: Likewise. + * sysdeps/x86_64/fpu/multiarch/svml_s_expf16_core-avx2.S: Likewise. + * sysdeps/x86_64/multiarch/memset-sse2-unaligned-erms.S: Likewise. + +2018-08-03 Carlos O'Donell + + * po/be.po: Update translation. + + * po/be.po: Update translation. + +2018-08-03 H.J. Lu + + * sysdeps/x86/cpu-features-offsets.sym + (rtld_global_ro_offsetof): Removed. + (CPU_FEATURES_SIZE): Likewise. + (CPUID_OFFSET): Likewise. + (CPUID_SIZE): Likewise. + (CPUID_EAX_OFFSET): Likewise. + (CPUID_EBX_OFFSET): Likewise. + (CPUID_ECX_OFFSET): Likewise. + (CPUID_EDX_OFFSET): Likewise. + (FAMILY_OFFSET): Likewise. + (MODEL_OFFSET): Likewise. + (FEATURE_OFFSET): Likewise. + (FEATURE_SIZ): Likewise. + (COMMON_CPUID_INDEX_1): Likewise. + (COMMON_CPUID_INDEX_7): Likewise. + (FEATURE_INDEX_1): Likewise. + (RTLD_GLOBAL_RO_DL_X86_CPU_FEATURES_OFFSET): Updated. + +2018-08-02 Carlos O'Donell + + * localedata/Makefile (INSTALL-SUPPORTED-LOCALES): Remove. + (INSTALL-SUPPORTED-LOCALE-ARCHIVE): Define. + (INSTALL-SUPPORTED-LOCALE-FILES): Define. + (install-locales): Depend on install-locale-archive. + (install-locale-archive): Define. + (install-locale-files): Define. + (build-one-locale): Define macro. + * manual/install.texi (Running make install): Document. + * manual/INSTALL: Regenerate. + +2018-08-02 Siddhesh Poyarekar + + * benchtests/scripts/compare_strings.py: Import traceback. + (parse_file): Pretty-print error. + + * NEWS: Mention the change. + * elf/dl-tunables.list: Rename tune namespace to cpu. + * sysdeps/powerpc/dl-tunables.list: Likewise. + * sysdeps/x86/dl-tunables.list: Likewise. + * sysdeps/aarch64/dl-tunables.list: Rename tune.cpu to + cpu.name. + * elf/dl-hwcaps.c (_dl_important_hwcaps): Adjust. + * elf/dl-hwcaps.h (GET_HWCAP_MASK): Likewise. + * manual/README.tunables: Likewise. + * manual/tunables.texi: Likewise. + * sysdeps/powerpc/cpu-features.c: Likewise. + * sysdeps/unix/sysv/linux/aarch64/cpu-features.c + (init_cpu_features): Likewise. + * sysdeps/x86/cpu-features.c: Likewise. + * sysdeps/x86/cpu-features.h: Likewise. + * sysdeps/x86/cpu-tunables.c: Likewise. + * sysdeps/x86_64/Makefile: Likewise. + * sysdeps/x86/dl-cet.c: Likewise. + +2018-08-02 Joseph Myers + + [BZ #23479] + * sysdeps/mips/bits/fenv.h (FE_INEXACT): Define only if + [__mips_hard_float]. + (FE_UNDERFLOW): Likewise. + (FE_OVERFLOW): Likewise. + (FE_DIVBYZERO): Likewise. + (FE_INVALID): Likewise. + (FE_ALL_EXCEPT): Define to 0 if [!__mips_hard_float]. + (FE_TOWARDZERO): Define only if [__mips_hard_float]. + (FE_UPWARD): Likewise. + (FE_DOWNWARD): Likewise. + (__FE_UNDEFINED): Define if [!__mips_hard_float] + (FE_NOMASK_ENV): Define only if [__mips_hard_float]. + * sysdeps/mips/mips64/sfp-machine.h (_FP_DECL_EX): Define only if + [__mips_hard_float]. + (FP_ROUNDMODE): Likewise. + (FP_RND_NEAREST): Likewise. + (FP_RND_ZERO): Likewise. + (FP_RND_PINF): Likewise. + (FP_RND_MINF): Likewise. + (FP_EX_INVALID): Likewise. + (FP_EX_OVERFLOW): Likewise. + (FP_EX_UNDERFLOW): Likewise. + (FP_EX_DIVZERO): Likewise. + (FP_EX_INEXACT): Likewise. + (FP_INIT_ROUNDMODE): Likewise. + * sysdeps/mips/nofpu/fesetenv.c: New file. + * sysdeps/mips/nofpu/feupdateenv.c: Likewise. + +2018-08-01 Joseph Myers + + * math/test-misc.c (do_test) [LDBL_MANT_DIG > DBL_MANT_DIG]: Make + code using FE_UNDERFLOW conditional on [FE_UNDERFLOW], code using + FE_OVERFLOW conditional on [FE_OVERFLOW] and code using FE_UPWARD + conditional on [FE_UPWARD]. + +2018-08-01 Paul Eggert + + regex: fix memory leak in Gnulib + Problem and fix reported by Assaf Gordon in: + https://lists.gnu.org/r/bug-gnulib/2018-07/txtqLKNwBdefE.txt + * posix/regcomp.c (free_charset) [!_LIBC]: Free range_starts and + range_ends members too, as they are defined in 'struct + re_charset_t' even if not _LIBC. This affects only Gnulib. + +2018-08-01 H.J. Lu + + * sysdeps/x86/cpu-features.c (get_common_indeces): Renamed to + ... + (get_common_indices): This. + (init_cpu_features): Updated. + +2018-08-01 Joseph Myers + + * sysdeps/generic/math-tests-snan-payload.h: New file. + * sysdeps/hppa/math-tests-snan-payload.h: Likewise. + * sysdeps/mips/math-tests-snan-payload.h: Likewise. + * sysdeps/riscv/math-tests-snan-payload.h: Likewise. + * sysdeps/generic/math-tests.h: Include + . + (SNAN_TESTS_PRESERVE_PAYLOAD): Do not define macro here. + * sysdeps/hppa/math-tests.h: Remove file. + * sysdeps/mips/math-tests.h [!__mips_nan2008] + (SNAN_TESTS_PRESERVE_PAYLOAD): Do not define macro here. + * sysdeps/riscv/math-tests.h (SNAN_TESTS_PRESERVE_PAYLOAD): + Likewise. + + * sysdeps/generic/math-tests-snan-cast.h: New file. + * sysdeps/powerpc/math-tests-snan-cast.h: Likewise. + * sysdeps/generic/math-tests.h: Include . + (SNAN_TESTS_TYPE_CAST): Do not define macro here. + * sysdeps/powerpc/math-tests.h (SNAN_TESTS_TYPE_CAST): Likewise. + +2018-08-01 Carlos O'Donell + + * version.h (RELEASE): Set to "development". + (VERSION): Set to "2.28.9000". + * NEWS (2.29): New section. + + * version.h (RELEASE): Set to "stable". + (VERSION): Set to "2.28". + * include/features.h (__GLIBC_MINOR__): Set to 2.28. + * NEWS: Add the list of bugs fixed in 2.28. + + * po/ca.po: Update to latest version. + * po/cs.po: Likewise + * po/da.po: Likewise + * po/el.po: Likewise + * po/eo.po: Likewise + * po/es.po: Likewise + * po/fi.po: Likewise + * po/fr.po: Likewise + * po/gl.po: Likewise + * po/hu.po: Likewise + * po/ia.po: Likewise + * po/id.po: Likewise + * po/it.po: Likewise + * po/ja.po: Likewise + * po/ko.po: Likewise + * po/lt.po: Likewise + * po/nb.po: Likewise + * po/nl.po: Likewise + * po/pt_BR.po: Likewise + * po/ru.po: Likewise + * po/rw.po: Likewise + * po/sk.po: Likewise + * po/sl.po: Likewise + * po/tr.po: Likewise + * po/zh_CN.po: Likewise + * po/zh_TW.po: Likewise + +2018-07-31 Samuel Thibault + + * sysdeps/mach/hurd/i386/init-first.c (init1): Move ELF hdr and TLS + initialization... + (init): ... before initializing libpthread. + + * mach/mach.h (__mach_setup_tls, mach_setup_tls): Add prototypes. + * mach/setup-thread.c (__mach_setup_thread): Move TLS setup to... + (__mach_setup_tls): ... new function. + (mach_setup_tls): New alias. + * hurd/hurdsig.c (_hurdsig_init): Call __mach_setup_tls after + __mach_setup_thread. + * sysdeps/mach/hurd/profil.c (update_waiter): Likewise. + * sysdeps/mach/hurd/setitimer.c (setitimer_locked): Likewise. + * mach/Versions [libc] (mach_setup_tls): Add symbol. + * sysdeps/mach/hurd/i386/libc.abilist (mach_setup_tls): Likewise. + +2018-07-31 Carlos O'Donell + + * manual/install.texi: Update versions. + * INSTALL: Regenerate. + + * manual/contrib.texi (Contributors): Update contributions. + +2018-07-31 Carlos O'Donell + + * po/be.po: Update translations. + +2018-07-31 Adhemerval Zanella + + * sysdeps/sh/libm-test-ulps: Update. + +2018-07-30 Carlos O'Donell + + * po/bg.po: Update translations. + * po/de.po: Likewise. + * po/hr.po: Likewise. + * po/pt_BR.po: Likewise. + * po/sv.po: Likewise. + * po/vi.po: Likewise. + +2018-07-30 H.J. Lu + + [BZ #23467] + * sysdeps/unix/sysv/linux/x86/Makefile (tests): Add + tst-cet-property-1 and tst-cet-property-2 if CET is enabled. + (CFLAGS-tst-cet-property-1.o): New. + (ASFLAGS-tst-cet-property-dep-2.o): Likewise. + ($(objpfx)tst-cet-property-2): Likewise. + ($(objpfx)tst-cet-property-2.out): Likewise. + * sysdeps/unix/sysv/linux/x86/tst-cet-property-1.c: New file. + * sysdeps/unix/sysv/linux/x86/tst-cet-property-2.c: Likewise. + * sysdeps/unix/sysv/linux/x86/tst-cet-property-dep-2.S: Likewise. + * sysdeps/x86/dl-prop.h (_dl_process_cet_property_note): Parse + each property item until GNU_PROPERTY_X86_FEATURE_1_AND is found. + +2018-07-30 H.J. Lu + + [BZ #23458] + * sysdeps/x86/Makefile (tests): Add tst-get-cpu-features-static. + +2018-07-28 Samuel Thibault + + * sysdeps/mach/hurd/dl-unistd.h (__access, __brk, __lseek, __read, + __sbrk): Do not set attribute_hidden. + * sysdeps/mach/hurd/not-errno.h: New file. + * sysdeps/mach/hurd/i386/ld.abilist: Update accordingly. + * sysdeps/mach/hurd/i386/localplt.data: Update accordingly. + +2018-07-27 Carlos O'Donell + + * po/uk.po: Update translations. + * po/cs.po: Likewise. + * po/pl.po: Likewise. + +2018-07-27 H.J. Lu + + * sysdeps/x86/dl-prop.h (_dl_process_cet_property_note): Don't + parse beyond the note end. + +2018-07-27 Adhemerval Zanella + + * sysdeps/unix/sysv/linux/tst-ofdlocks.c: Return unsupported if + kernel does not support OFD locks. + * sysdeps/unix/sysv/linux/tst-ofdlocks-compat.c: Likewise. + +2018-07-27 Samuel Thibault + + * sysdeps/mach/hurd/Versions (libc): Make __access and + __access_noerrno external so they can override the ld symbols. + (ld): Make __access, __read, __sbrk, __strtoul_internal, __write, + __writev, __open64, __access_noerrno extern so they can be overrided. + * sysdeps/mach/hurd/i386/libc.abilist: Update accordingly. + * sysdeps/mach/hurd/i386/ld.abilist: Update accordingly. + +2018-07-26 Carlos O'Donell + + * po/libc.pot: Regenerate. + +2018-07-26 Joseph Myers + + * sysdeps/powerpc/nofpu/libm-test-ulps: Update. + +2018-07-26 H.J. Lu + + [BZ #23459] + * sysdeps/x86/cpu-features.c (get_extended_indices): New + function. + (init_cpu_features): Call get_extended_indices for both Intel + and AMD CPUs. + * sysdeps/x86/cpu-features.h (COMMON_CPUID_INDEX_80000001): + Remove "for AMD" comment. + +2018-07-26 H.J. Lu + + [BZ # 23456] + * sysdeps/x86/cpu-features.h (index_cpu_LZCNT): Set to + COMMON_CPUID_INDEX_80000001. + +2018-07-26 Stefan Liebler + + * string/tst-xbzero-opt.c (use_test_buffer): New function. + (prepare_test_buffer): Call use_test_buffer as compiler barrier. + +2018-07-26 Florian Weimer + + * htl/lockfile.c (flockfile, funlockfile, ftrylockfile): Use weak + aliases for symbols not in the implementation namespace. + +2018-07-25 Carlos O'Donell + + [BZ #23393] + * localedata/locales/iso14651_t1_common: Deinterlace uppercase and + lowercase in LATIN script. + * localedata/Makefile (test-input): Add en_US.UTF-8. + * localedata/en_US.UTF-8.in: New file. + * posix/tst-fnmatch.input: Add comments and new tests for en_US.UTF-8, + and restore old tests. + * posix/tst-regexloc.c (do_test): Add back range expression test. + +2018-07-25 H.J. Lu + + * sysdeps/unix/sysv/linux/ia64/tst-setcontext4.c: New file. + +2018-07-25 Adhemerval Zanella + + * nptl/threads.h: Move to ... + * sysdeps/nptl/threads.h: ... here. + * sysdeps/hurd/stdc-predef.h: New file. + +2018-07-25 H.J. Lu + + * sysdeps/unix/sysv/linux/x86/Makefile (tests): Add + tst-cet-setcontext-1 if CET is enabled. + (CFLAGS-tst-cet-setcontext-1.c): Add -mshstk. + * sysdeps/unix/sysv/linux/x86/tst-cet-setcontext-1.c: New file. + +2018-07-25 Adhemerval Zanella + + * include/threads.h: Move to ... + * sysdeps/nptl/threads.h: ... here. + * sysdeps/htl/threads.h: New file. + * conform/Makefile (linknamespace-libs-ISO11): Use + static-thread-library instead of linking libpthread. + (linknamespace-libs-XPG4): Revert wrong libcrypt.a addition. + +2018-07-25 Florian Weimer + + * nptl/tst-mtx-timedlock.c (do_test): Implement carry from + nanoseconds into seconds. + * nptl/tst-cnd-basic.c (signal_parent): Lock and unlock mutex. + (do_test): Likewise. + * nptl/tst-cnd-timedwait.c (signal_parent): Likewise. + (do_test): Likewise. Avoid nanosecond overflow and spurious + timeouts due to system load. + * nptl/tst-cnd-broadcast.c (waiting_threads): New variable. + (child_wait): Increment it. + (do_test): Wait as long as necessary until all expected threads + have arrived. + +2018-07-25 Vedvyas Shanbhogue + H.J. Lu + + * sysdeps/unix/sysv/linux/x86/sys/ucontext.h (ucontext_t): Add + __ssp. + * sysdeps/unix/sysv/linux/x86_64/__start_context.S: Include + and "ucontext_i.h" when shadow stack is enabled. + (__push___start_context): New. + * sysdeps/unix/sysv/linux/x86_64/getcontext.S: Include + . + (__getcontext): Record the current shadow stack base. Save the + caller's shadow stack pointer and base. + * sysdeps/unix/sysv/linux/x86_64/makecontext.c: Include + , and . + (__push___start_context): New prototype. + (__makecontext): Call __push___start_context to allocate a new + shadow stack, push __start_context onto the new stack as well + as the new shadow stack. + * sysdeps/unix/sysv/linux/x86_64/setcontext.S: Include + . + (__setcontext): Restore the target shadow stack. + * sysdeps/unix/sysv/linux/x86_64/swapcontext.S: Include + . + (__swapcontext): Record the current shadow stack base. Save + the caller's shadow stack pointer and base. Restore the target + shadow stack. + * sysdeps/unix/sysv/linux/x86_64/sysdep.h + (STACK_SIZE_TO_SHADOW_STACK_SIZE_SHIFT): New. + * sysdeps/unix/sysv/linux/x86_64/ucontext_i.sym (oSSP): New. + +2018-07-25 H.J. Lu + + * stdlib/Makefile ((tests): Add tst-setcontext6, tst-setcontext7, + tst-setcontext8 and tst-setcontext9. + * stdlib/tst-setcontext6.c: New file. + * stdlib/tst-setcontext7.c: Likewise. + * stdlib/tst-setcontext8.c: Likewise. + * stdlib/tst-setcontext9.c: Likewise. + +2018-07-25 H.J. Lu + + * stdlib/Makefile ((tests): Add tst-setcontext5. + * stdlib/tst-setcontext5.c: New file. + +2018-07-25 H.J. Lu + + * stdlib/Makefile (tests): Add tst-setcontext4. + * stdlib/tst-setcontext4.c: New file. + +2018-07-25 H.J. Lu + + * stdlib/Makefile (tests): Add tst-swapcontext1. + * stdlib/tst-swapcontext1.c: New test. + +2018-07-25 H.J. Lu + + * sysdeps/x86/Makefile (tests): Add tst-cet-legacy-1, + tst-cet-legacy-2, tst-cet-legacy-2a, tst-cet-legacy-3, + tst-cet-legacy-4, tst-cet-legacy-4a, tst-cet-legacy-4b + and tst-cet-legacy-4c. + (modules-names): Add tst-cet-legacy-mod-1, tst-cet-legacy-mod-2 + and tst-cet-legacy-mod-4. + (CFLAGS-tst-cet-legacy-2.c): New. + (CFLAGS-tst-cet-legacy-mod-1.c): Likewise. + (CFLAGS-tst-cet-legacy-mod-2.c): Likewise. + (CFLAGS-tst-cet-legacy-3.c): Likewise. + (CFLAGS-tst-cet-legacy-4.c): Likewise. + (CFLAGS-tst-cet-legacy-mod-4.c): Likewise. + ($(objpfx)tst-cet-legacy-1): Likewise. + ($(objpfx)tst-cet-legacy-2): Likewise. + ($(objpfx)tst-cet-legacy-2.out): Likewise. + ($(objpfx)tst-cet-legacy-2a): Likewise. + ($(objpfx)tst-cet-legacy-2a.out): Likewise. + ($(objpfx)tst-cet-legacy-4): Likewise. + ($(objpfx)tst-cet-legacy-4.out): Likewise. + ($(objpfx)tst-cet-legacy-4a): Likewise. + ($(objpfx)tst-cet-legacy-4a.out): Likewise. + (tst-cet-legacy-4a-ENV): Likewise. + ($(objpfx)tst-cet-legacy-4b): Likewise. + ($(objpfx)tst-cet-legacy-4b.out): Likewise. + (tst-cet-legacy-4b-ENV): Likewise. + ($(objpfx)tst-cet-legacy-4c): Likewise. + ($(objpfx)tst-cet-legacy-4c.out): Likewise. + (tst-cet-legacy-4c-ENV): Likewise. + * sysdeps/x86/tst-cet-legacy-1.c: New file. + * sysdeps/x86/tst-cet-legacy-2.c: Likewise. + * sysdeps/x86/tst-cet-legacy-2a.c: Likewise. + * sysdeps/x86/tst-cet-legacy-3.c: Likewise. + * sysdeps/x86/tst-cet-legacy-4.c: Likewise. + * sysdeps/x86/tst-cet-legacy-4a.c: Likewise. + * sysdeps/x86/tst-cet-legacy-4b.c: Likewise. + * sysdeps/x86/tst-cet-legacy-4c.c: Likewise. + * sysdeps/x86/tst-cet-legacy-mod-1.c: Likewise. + * sysdeps/x86/tst-cet-legacy-mod-2.c: Likewise. + * sysdeps/x86/tst-cet-legacy-mod-4.c: Likewise. + +2018-07-25 H.J. Lu + + * sysdeps/i386/nptl/tcb-offsets.sym (SSP_BASE_OFFSET): New. + * sysdeps/i386/nptl/tls.h (tcbhead_t): Replace __glibc_reserved2 + with ssp_base. + * sysdeps/x86_64/nptl/tcb-offsets.sym (SSP_BASE_OFFSET): New. + * sysdeps/x86_64/nptl/tls.h (tcbhead_t): Replace __glibc_reserved2 + with ssp_base. + +2018-07-25 Andreas Schwab + + [BZ #23442] + * locale/weightwc.h (findidx): Handle the case where usrc is a + prefix of cp but one character too short. + +2018-07-24 Adhemerval Zanella + + * NEWS: Add ISO C threads addition. + +2018-07-24 Florian Weimer + + * sysdeps/unix/sysv/linux/alpha/kernel-features.h + [__LINUX_KERNEL_VERSION < 0x040D00] (__ASSUME_MLOCK2) + (__ASSUME_COPY_FILE_RANGE): Undefine. Kernel support was added in + 4.13. + +2018-07-24 H.J. Lu + + * sysdeps/unix/sysv/linux/x86/include/asm/prctl.h: New file. + * sysdeps/unix/sysv/linux/x86/cpu-features.c: Include + and . + (get_cet_status): Call arch_prctl with ARCH_CET_STATUS. + * sysdeps/unix/sysv/linux/x86/dl-cet.h: Include + and . + (dl_cet_allocate_legacy_bitmap): Call arch_prctl with + ARCH_CET_LEGACY_BITMAP. + (dl_cet_disable_cet): Call arch_prctl with ARCH_CET_DISABLE. + (dl_cet_lock_cet): Call arch_prctl with ARCH_CET_LOCK. + * sysdeps/x86/libc-start.c: Include . + +2018-07-24 Florian Weimer + + * sysdeps/unix/sysv/linux/sh/kernel-features.h (__ASSUME_STATX): + Undefine. Suggested by Romain Naour . + +2018-07-24 Rical Jasan + Adhemerval Zanella + Juan Manuel Torres Palma + + [BZ #14092] + * manual/debug.texi: Update adjacent chapter name. + * manual/probes.texi: Likewise. + * manual/threads.texi (ISO C Threads): New section. + (POSIX Threads): Convert to a section. + +2018-07-24 Adhemerval Zanella + Juan Manuel Torres Palma + + [BZ# 14092] + * nptl/Makefile (tests): Add new test files. + * nptl/tst-call-once.c : New file. Tests C11 functions and types. + * nptl/tst-cnd-basic.c: Likewise. + * nptl/tst-cnd-broadcast.c: Likewise. + * nptl/tst-cnd-timedwait.c: Likewise. + * nptl/tst-mtx-basic.c: Likewise. + * nptl/tst-mtx-recursive.c: Likewise. + * nptl/tst-mtx-timedlock.c: Likewise. + * nptl/tst-mtx-trylock.c: Likewise. + * nptl/tst-thrd-basic.c: Likewise. + * nptl/tst-thrd-detach.c: Likewise. + * nptl/tst-thrd-sleep.c: Likewise. + * nptl/tst-tss-basic.c: Likewise. + +2018-07-24 Adhemerval Zanella + + [BZ #14092] + * sysdeps/unix/sysv/linux/aarch64/libc.abilist [GLIBC_2.28] + (thrd_current, thrd_equal, thrd_sleep, thrd_yield): Add C11 thread + symbols. + * sysdeps/unix/sysv/linux/alpha/libc.abilist: Likewise. + * sysdeps/unix/sysv/linux/arm/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/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/sysv/linux/powerpc/powerpc32/nofpu/libc.abilist: + Likewise. + * sysdeps/unix/sysv/linux/powerpc/powerpc64/libc-le.abilist: + Likewise. + * sysdeps/unix/sysv/linux/powerpc/powerpc64/libc.abilist: Likewise. + * sysdeps/unix/sysv/linux/riscv/rv64/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/x86_64/64/libc.abilist: Likewise. + * sysdeps/unix/sysv/linux/x86_64/x32/libc.abilist: Likewise. + * sysdeps/unix/sysv/linux/aarch64/libpthread.abilist [[GLIBC_2.28] + (call_once, cnd_broadcast, cnd_destroy, cnd_init, cnd_signal, + cnd_timedwait, cnd_wait, mtx_destroy, mtx_init, mtx_lock, + mtx_timedlock, mtx_trylock, mtx_unlokc, thrd_create, thrd_detach, + thrd_exit, thrd_join, tss_create, tss_delete, tss_get, tss_set): + Likewise. + * sysdeps/unix/sysv/linux/aarch64/libpthread.abilist: Likewise. + * sysdeps/unix/sysv/linux/alpha/libpthread.abilist: Likewise. + * sysdeps/unix/sysv/linux/arm/libpthread.abilist: Likewise. + * sysdeps/unix/sysv/linux/hppa/libpthread.abilist: Likewise. + * sysdeps/unix/sysv/linux/i386/libpthread.abilist: Likewise. + * sysdeps/unix/sysv/linux/ia64/libpthread.abilist: Likewise. + * sysdeps/unix/sysv/linux/m68k/coldfire/libpthread.abilist: Likewise. + * sysdeps/unix/sysv/linux/m68k/m680x0/libpthread.abilist: Likewise. + * sysdeps/unix/sysv/linux/microblaze/libpthread.abilist: Likewise. + * sysdeps/unix/sysv/linux/mips/mips32/libpthread.abilist: Likewise. + * sysdeps/unix/sysv/linux/mips/mips64/libpthread.abilist: Likewise. + * sysdeps/unix/sysv/linux/nios2/libpthread.abilist: Likewise. + ikewise. + * sysdeps/unix/sysv/linux/powerpc/powerpc32/libpthread.abilist: + * sysdeps/unix/sysv/linux/powerpc/powerpc64/libpthread-le.abilist: + Likewise. + * sysdeps/unix/sysv/linux/powerpc/powerpc64/libpthread.abilist: + Likewise. + * sysdeps/unix/sysv/linux/riscv/rv64/libpthread.abilist: Likewise. + * sysdeps/unix/sysv/linux/s390/s390-32/libpthread.abilist: Likewise. + * sysdeps/unix/sysv/linux/s390/s390-64/libpthread.abilist: Likewise. + * sysdeps/unix/sysv/linux/sh/libpthread.abilist: Likewise. + * sysdeps/unix/sysv/linux/sparc/sparc32/libpthread.abilist: Likewise. + * sysdeps/unix/sysv/linux/sparc/sparc64/libpthread.abilist: Likewise. + * sysdeps/unix/sysv/linux/x86_64/64/libpthread.abilist: Likewise. + * sysdeps/unix/sysv/linux/x86_64/x32/libpthread.abilist: Likewise. + + [BZ #14092] + * conform/data/threads.h-data (thread_local): New macro. + (TSS_DTOR_ITERATIONS): Likewise. + (tss_t): New type. + (tss_dtor_t): Likewise. + (tss_create): New function. + (tss_get): Likewise. + (tss_set): Likewise. + (tss_delete): Likewise. + * nptl/Makefile (libpthread-routines): Add tss_create, tss_delete, + tss_get, and tss_set objects. + * nptl/Versions (libpthread) [GLIBC_2.28]: Likewise. + * nptl/tss_create.c: New file. + * nptl/tss_delete.c: Likewise. + * nptl/tss_get.c: Likewise. + * nptl/tss_set.c: Likewise. + * sysdeps/nptl/threads.h (thread_local): New define. + (TSS_DTOR_ITERATIONS): Likewise. + (tss_t): New typedef. + (tss_dtor_t): Likewise. + (tss_create): New prototype. + (tss_get): Likewise. + (tss_set): Likewise. + (tss_delete): Likewise. + + [BZ #14092] + * conform/data/threads.h-data (cnd_t): New type. + (cnd_init): New function. + (cnd_signal): Likewise. + (cnd_broadcast): Likewise. + (cnd_wait): Likewise. + (cnd_timedwait): Likewise. + (cnd_destroy): Likewise. + * nptl/Makefile (libpthread-routines): Add cnd_broadcast, + cnd_destroy, cnd_init, cnd_signal, cnd_timedwait, and cnd_wait + object. + * nptl/Versions (libpthread) [GLIBC_2.28]: Likewise. + * nptl/cnd_broadcast.c: New file. + * nptl/cnd_destroy.c: Likewise. + * nptl/cnd_init.c: Likewise. + * nptl/cnd_signal.c: Likewise. + * nptl/cnd_timedwait.c: Likewise. + * nptl/cnd_wait.c: Likewise. + * sysdeps/nptl/threads.h (cnd_t): New type. + (cnd_init): New prototype. + (cnd_signa): Likewise. + (cnd_broadcast): Likewise. + (cnd_wait): Likewise. + (cnd_timedwait): Likewise. + (cnd_destroy): Likewise. + + [BZ #14092] + * conform/data/threads.h-data (ONCE_FLAG_INIT): New macro. + (once_flag): New type. + (call_once): New function. + * nptl/Makefile (libpthread-routines): Add call_once object. + * nptl/Versions (libphread) [GLIBC_2.28]: Add call_once symbol. + * nptl/call_once.c: New file. + * sysdeps/nptl/threads.h (ONCE_FLAG_INIT): New define. + (once_flag): New type. + (call_once): New prototype. + + [BZ #14092] + * conform/data/threads.h-data (mtx_plain): New constant. + (mtx_recursive): Likewise. + (mtx_timed): Likewise. + (mtx_t): New type. + (mtx_init): New function. + (mtx_lock): Likewise. + (mtx_timedlock): Likewise. + (mtx_trylock): Likewise. + (mtx_unlock): Likewise. + (mtx_destroy): Likewise. + * nptl/Makefile (libpthread-routines): Add mtx_destroy, mtx_init, + mtx_lock, mtx_timedlock, mtx_trylock, and mtx_unlock object. + * nptl/Versions (libpthread) [GLIBC_2.28]): Add mtx_init, mtx_lock, + mtx_timedlock, mtx_trylock, mtx_unlock, and mtx_destroy. + * nptl/mtx_destroy.c: New file. + * nptl/mtx_init.c: Likewise. + * nptl/mtx_lock.c: Likewise. + * nptl/mtx_timedlock.c: Likewise. + * nptl/mtx_trylock.c: Likewise. + * nptl/mtx_unlock.c: Likewise. + * sysdeps/nptl/threads.h (mtx_plain): New enumeration. + (mtx_recursive): Likewise. + (mtx_timed): Likewise. + (mtx_t): New type. + (mtx_init): New prototype. + (mtx_lock): Likewise. + (mtx_timedlock): Likewise. + (mtx_trylock): Likewise. + (mtx_unlock): Likewise. + (mtx_destroy): Likewise. + + [BZ #14092] + * conform/Makefile (conformtest-headers-ISO11): Add threads.h. + (linknamespace-libs-ISO11): Add libpthread.a. + * conform/data/threads.h-data: New file: add C11 thrd_* types and + functions. + * include/stdc-predef.h (__STDC_NO_THREADS__): Remove definition. + * nptl/Makefile (headers): Add threads.h. + (libpthread-routines): Add new C11 thread thrd_create, thrd_current, + thrd_detach, thrd_equal, thrd_exit, thrd_join, thrd_sleep, and + thrd_yield. + * nptl/Versions (libpthread) [GLIBC_2.28]): Add new C11 thread + thrd_create, thrd_current, thrd_detach, thrd_equal, thrd_exit, + thrd_join, thrd_sleep, and thrd_yield symbols. + * nptl/descr.h (struct pthread): Add c11 field. + * nptl/pthreadP.h (ATTR_C11_THREAD): New define. + * nptl/pthread_create.c (START_THREAD_DEFN): Call C11 thread start + routine with expected function prototype. + (__pthread_create_2_1): Add C11 threads check based on attribute + value. + * sysdeps/unix/sysdep.h (INTERNAL_SYSCALL_CANCEL): New macro. + * nptl/thrd_create.c: New file. + * nptl/thrd_current.c: Likewise. + * nptl/thrd_detach.c: Likewise. + * nptl/thrd_equal.c: Likewise. + * nptl/thrd_exit.c: Likewise. + * nptl/thrd_join.c: Likewise. + * nptl/thrd_priv.h: Likewise. + * nptl/thrd_sleep.c: Likewise. + * nptl/thrd_yield.c: Likewise. + * include/threads.h: Likewise. + +2018-07-24 H.J. Lu + + * bits/indirect-return.h: New file. + * misc/sys/cdefs.h (__glibc_has_attribute): New. + * sysdeps/x86/bits/indirect-return.h: Likewise. + * stdlib/Makefile (headers): Add bits/indirect-return.h. + * stdlib/ucontext.h: Include . + (swapcontext): Add __INDIRECT_RETURN. + * string/tst-xbzero-opt.c (ALWAYS_INLINE): New. + (prepare_test_buffer): Use it. + +2018-07-24 Andreas Schwab + + [BZ #23448] + * iconvdata/ibm1364.c (MAX_NEEDED_OUTPUT) [FROM_LOOP]: Define. + (MAX_NEEDED_INPUT) [TO_LOOP]: Define. + +2018-07-24 H.J. Lu + + * sysdeps/unix/sysv/linux/i386/vfork.S (SYSCALL_ERROR_HANDLER): + Redefine if shadow stack is enabled. + (SYSCALL_ERROR_LABEL): Likewise. + (__vfork): Pop shadow stack and jump back to to caller directly + when shadow stack is in use. + * sysdeps/unix/sysv/linux/x86_64/vfork.S (SYSCALL_ERROR_HANDLER): + Redefine if shadow stack is enabled. + (SYSCALL_ERROR_LABEL): Likewise. + (__vfork): Pop shadow stack and jump back to to caller directly + when shadow stack is in use. + +2018-07-24 H.J. Lu + + * sysdeps/x86_64/tst-quadmod1.S (func): Add endbr64 if IBT is + enabled. + (foo): Likewise. + * sysdeps/x86_64/tst-quadmod2.S (func) : Likewise. + (foo): Likewise. + +2018-07-20 Joseph Myers + + * scripts/build-many-glibcs.py (Context.checkout): Default + binutils version to 2.31 branch. + +2018-07-20 Zong Li + + * scripts/build-many-glibcs.py (Context.checkout_tar): Change the + URL of gcc's tarball. + +2018-07-20 Florian Weimer + + [BZ #23396] + * posix/regcomp.c (build_equiv_class): When comparing weights, do + not compare an extra byte after the end of the weights. + +2018-07-20 Samuel Thibault + + * sysdeps/mach/hurd/i386/tls.h (_hurd_tls_init): Set multiple_threads + to 1. + * sysdeps/hurd/include/hurd/port.h [!_ISOMAC]: Do not declare libc + hidden prototypes. + * sysdeps/mach/include/mach-shortcuts-hidden.h [!_ISOMAC]: Likewise. + * sysdeps/mach/include/mach/mach_traps.h [!_ISOMAC]: Likewise. + * scripts/check-execstack.awk: Consider `xfail' variable containing a + list of libraries whose stack executability is expected. + * elf/Makefile ($(objpfx)check-execstack.out): Pass + $(check-execstack-xfail) to check-execstack.awk through `xfail' + variable. + * sysdeps/mach/hurd/i386/Makefile (check-execstack-xfail): Set to ld.so + libc.so libpthread.so. + +2018-07-20 Thomas Schwinge + + * sysdeps/mach/hurd/socket.c (__socket): Handle SOCK_CLOEXEC and + SOCK_NONBLOCK. + * sysdeps/mach/hurd/socketpair.c (__socketpair): Handle SOCK_CLOEXEC + and SOCK_NONBLOCK. + * sysdeps/mach/hurd/pipe2.c: New file, copy from pipe.c. Evolve it to + implement __pipe2. + * sysdeps/mach/hurd/pipe.c (__pipe): Reimplement using __pipe2. + +2018-07-19 Leonardo Sandoval + + * benchtests/scripts/compare_bench.py (__main__): use the argparse + library to improve command line parsing. + (__main__): make schema file as optional parameter (--schema), + defaulting to benchtests/scripts/benchout.schema.json. + (main): move out of the parsing stuff to __main_  and leave it + only as caller of main comparison functions. + +2018-07-19 H.J. Lu + + * NEWS: Add a note for Intel CET status. + * manual/install.texi: Likewise. + * INSTALL: Regenerated. + +2018-07-18 Quentin PAGÈS + + [BZ #23140] + * localedata/locales/oc_FR (mon): Rename to... + (alt_mon): This, then update October (typo fix). + (mon): New content (genitive case, month names preceded by + "de" or "d’"). + + [BZ #23422] + * localedata/locales/oc_FR (abday): Update all items. + (day): Update Wednesday and Saturday (typo fixes). + (abmon): Update all items, except May. + (d_fmt): Update "%d.%m.%Y" -> "%d/%m/%Y". + (LC_IDENTIFICATION): Bump the revision number and date. + Keep the "category" entries in alphabetic order. + (LC_ADDRESS): Remove no longer needed comment. + (LC_COLLATE): Use “copy "ca_ES"”. + (LC_NAME): Set the correct values of "name_fmt", "name_mr", and + "name_mrs". + +2018-07-18 Joseph Myers + + * grp/tst_fgetgrent.c: Include . + (main): Use mkstemp instead of tmpnam. + * io/test-utime.c (main): Likewise. + * posix/annexc.c (macrofile): Change to modifiable array. + (main): Remove macrofile here. + (get_null_defines): Use mkstemp instead of tmpnam. Do not remove + macrofile here. + (check_header): Do not remove macrofile here. + * posix/bug-getopt1.c: Include . + (do_test): Use mkstemp instead of tmpnam. + * posix/bug-getopt2.c: Include . + (do_test): Use mkstemp instead of tmpnam. + * posix/bug-getopt3.c: Include . + (do_test): Use mkstemp instead of tmpnam. + * posix/bug-getopt4.c: Include . + (do_test): Use mkstemp instead of tmpnam. + * posix/bug-getopt5.c: Include . + (do_test): Use mkstemp instead of tmpnam. + * stdio-common/bug7.c: Include and . + (main): Use mkstemp instead of tmpnam. + * stdio-common/tst-fdopen.c: Include . + (main): Use mkstemp instead of tmpnam. + * stdio-common/tst-ungetc.c: Include . + (main): use mkstemp instead of tmpnam. + * stdlib/isomac.c (macrofile): Change to modifiable array. + (main): Remove macrofile here. + (get_null_defines): Use mkstemp instead of tmpnam. Do not remove + macrofile here. + (check_header): Do not remove macrofile here. + +2018-07-18 H.J. Lu + + * manual/tunables.texi: Document glibc.tune.x86_ibt and + glibc.tune.x86_shstk. + +2018-07-18 H.J. Lu + + * NEWS: Mention --enable-cet. + * manual/install.texi: Document --enable-cet. + * INSTALL: Regenerated. + +2018-07-18 H.J. Lu + + * sysdeps/x86_64/multiarch/memcmp-sse4.S (BRANCH_TO_JMPTBL_ENTRY): + Add _CET_NOTRACK before indirect jump to jump table. + +2018-07-18 H.J. Lu + + * sysdeps/i386/i686/multiarch/memset-sse2-rep.S + (BRANCH_TO_JMPTBL_ENTRY): Add _CET_NOTRACK before indirect jump + to jump table. + +2018-07-18 H.J. Lu + + * sysdeps/i386/i686/multiarch/strcat-sse2.S + (BRANCH_TO_JMPTBL_ENTRY): Add _CET_NOTRACK before indirect jump + to jump table. + +2018-07-18 H.J. Lu + + * sysdeps/i386/i686/multiarch/strcpy-sse2.S + (BRANCH_TO_JMPTBL_ENTRY): Add _CET_NOTRACK before indirect jump + to jump table. + +2018-07-18 H.J. Lu + + * sysdeps/i386/i686/multiarch/memcpy-ssse3.S + (BRANCH_TO_JMPTBL_ENTRY): Add _CET_NOTRACK before indirect jump + to jump table. + +2018-07-18 H.J. Lu + + * sysdeps/i386/i686/multiarch/memcpy-ssse3-rep.S + (BRANCH_TO_JMPTBL_ENTRY): Add _CET_NOTRACK before indirect jump + to jump table. + (BRANCH_TO_JMPTBL_ENTRY_TAIL): Likewise. + +2018-07-18 H.J. Lu + + * sysdeps/i386/i686/multiarch/memcmp-sse4.S + (BRANCH_TO_JMPTBL_ENTRY): Add _CET_NOTRACK before indirect jump + to jump table. + +2018-07-18 H.J. Lu + + * sysdeps/i386/i686/multiarch/memset-sse2.S + (BRANCH_TO_JMPTBL_ENTRY): Add _CET_NOTRACK before indirect jump + to jump table. + +2018-07-18 H.J. Lu + + * sysdeps/i386/i686/memcmp.S (memcmp): Add _CET_NOTRACK before + indirect jump to jump table. + +2018-07-18 H.J. Lu + + * sysdeps/x86_64/multiarch/memcpy-ssse3.S + (BRANCH_TO_JMPTBL_ENTRY): Add _CET_NOTRACK before indirect jump + to jump table. + (MEMCPY): Likewise. + +2018-07-18 H.J. Lu + + * sysdeps/x86_64/multiarch/memcpy-ssse3-back.S + (BRANCH_TO_JMPTBL_ENTRY): Add _CET_NOTRACK before indirect jump + to jump table. + (MEMCPY): Likewise. + +2018-07-18 H.J. Lu + + * sysdeps/x86_64/multiarch/strcmp-sse42.S (STRCMP_SSE42): Add + _CET_NOTRACK before indirect jump to jump table. + +2018-07-18 H.J. Lu + + * sysdeps/x86_64/multiarch/strcpy-sse2-unaligned.S + (BRANCH_TO_JMPTBL_ENTRY): Add _CET_NOTRACK before indirect jump + to jump table. + +2018-07-18 H.J. Lu + + * sysdeps/x86_64/strcmp.S (STRCMP): Add _CET_NOTRACK before + indirect jump to jump table. + +2018-07-18 Valery Timiriliyev + + [BZ #22241] + * localedata/Makefile (test-input): Add sah_RU.UTF-8. + (LOCALES): Likewise. + * localedata/SUPPORTED (sah_RU/UTF-8): New entry. + * localedata/locales/sah_RU: New file. + * localedata/sah_RU.UTF-8.in: New file. + +2018-07-17 H.J. Lu + + * sysdeps/i386/add_n.S: Include , instead of + "sysdep.h". + (__mpn_add_n): Save and restore %ebx if IBT is enabed. Add + _CET_ENDBR to indirect jump targets and adjust jump destination + for _CET_ENDBR. + * sysdeps/i386/i686/add_n.S: Include , instead of + "sysdep.h". + (__mpn_add_n): Save and restore %ebx if IBT is enabed. Add + _CET_ENDBR to indirect jump targets and adjust jump destination + for _CET_ENDBR. + * sysdeps/i386/sub_n.S: Include , instead of + "sysdep.h". + (__mpn_sub_n): Save and restore %ebx if IBT is enabed. Add + _CET_ENDBR to indirect jump targets and adjust jump destination + for _CET_ENDBR. + +2018-07-17 H.J. Lu + + * sysdeps/x86_64/multiarch/strcmp-sse42.S (STRCMP_SSE42): Add + _CET_ENDBR. + +2018-07-17 H.J. Lu + + * sysdeps/i386/dl-tlsdesc.S (_dl_tlsdesc_return): Add + _CET_ENDBR. + (_dl_tlsdesc_undefweak): Likewise. + (_dl_tlsdesc_dynamic): Likewise. + (_dl_tlsdesc_resolve_abs_plus_addend): Likewise. + (_dl_tlsdesc_resolve_rel): Likewise. + (_dl_tlsdesc_resolve_rela): Likewise. + (_dl_tlsdesc_resolve_hold): Likewise. + * sysdeps/x86_64/dl-tlsdesc.S (_dl_tlsdesc_return): Likewise. + (_dl_tlsdesc_undefweak): Likewise. + (_dl_tlsdesc_dynamic): Likewise. + (_dl_tlsdesc_resolve_rela): Likewise. + (_dl_tlsdesc_resolve_hold): Likewise. + +2018-07-17 H.J. Lu + + * sysdeps/i386/crti.S (_init): Add _CET_ENDBR. + (_fini): Likewise. + * sysdeps/x86_64/crti.S (_init): Likewise. + (_fini): Likewise. + +2018-07-17 Rafał Lużyński + + [BZ #23140] + * localedata/locales/os_RU (mon): Rename to... + (alt_mon): This. + (mon): Import from CLDR (genitive case). + +2018-07-17 H.J. Lu + + * sysdeps/x86/cpu-features.c: Always include and + cet-tunables.h> when CET is enabled. + +2018-07-16 H.J. Lu + + [BZ #21598] + * configure.ac: Add --enable-cet. + * configure: Regenerated. + * elf/Makefille (all-built-dso): Add a comment. + * elf/dl-load.c (filebuf): Moved before "dynamic-link.h". + Include . + (_dl_map_object_from_fd): Call _dl_process_pt_note on PT_NOTE + segment. + * elf/dl-open.c: Include . + (dl_open_worker): Call _dl_open_check. + * elf/rtld.c: Include . + (dl_main): Call _rtld_process_pt_note on PT_NOTE segment. Call + _rtld_main_check. + * sysdeps/generic/dl-prop.h: New file. + * sysdeps/i386/dl-cet.c: Likewise. + * sysdeps/unix/sysv/linux/x86/cpu-features.c: Likewise. + * sysdeps/unix/sysv/linux/x86/dl-cet.h: Likewise. + * sysdeps/x86/cet-tunables.h: Likewise. + * sysdeps/x86/check-cet.awk: Likewise. + * sysdeps/x86/configure: Likewise. + * sysdeps/x86/configure.ac: Likewise. + * sysdeps/x86/dl-cet.c: Likewise. + * sysdeps/x86/dl-procruntime.c: Likewise. + * sysdeps/x86/dl-prop.h: Likewise. + * sysdeps/x86/libc-start.h: Likewise. + * sysdeps/x86/link_map.h: Likewise. + * sysdeps/i386/dl-trampoline.S (_dl_runtime_resolve): Add + _CET_ENDBR. + (_dl_runtime_profile): Likewise. + (_dl_runtime_resolve_shstk): New. + (_dl_runtime_profile_shstk): Likewise. + * sysdeps/linux/x86/Makefile (sysdep-dl-routines): Add dl-cet + if CET is enabled. + (CFLAGS-.o): Add -fcf-protection if CET is enabled. + (CFLAGS-.os): Likewise. + (CFLAGS-.op): Likewise. + (CFLAGS-.oS): Likewise. + (asm-CPPFLAGS): Add -fcf-protection -include cet.h if CET + is enabled. + (tests-special): Add $(objpfx)check-cet.out. + (cet-built-dso): New. + (+$(cet-built-dso:=.note)): Likewise. + (common-generated): Add $(cet-built-dso:$(common-objpfx)%=%.note). + ($(objpfx)check-cet.out): New. + (generated): Add check-cet.out. + * sysdeps/x86/cpu-features.c: Include and + . + (TUNABLE_CALLBACK (set_x86_ibt)): New prototype. + (TUNABLE_CALLBACK (set_x86_shstk)): Likewise. + (init_cpu_features): Call get_cet_status to check CET status + and update dl_x86_feature_1 with CET status. Call + TUNABLE_CALLBACK (set_x86_ibt) and TUNABLE_CALLBACK + (set_x86_shstk). Disable and lock CET in libc.a. + * sysdeps/x86/cpu-tunables.c: Include . + (TUNABLE_CALLBACK (set_x86_ibt)): New function. + (TUNABLE_CALLBACK (set_x86_shstk)): Likewise. + * sysdeps/x86/sysdep.h (_CET_NOTRACK): New. + (_CET_ENDBR): Define if not defined. + (ENTRY): Add _CET_ENDBR. + * sysdeps/x86/dl-tunables.list (glibc.tune): Add x86_ibt and + x86_shstk. + * sysdeps/x86_64/dl-trampoline.h (_dl_runtime_resolve): Add + _CET_ENDBR. + (_dl_runtime_profile): Likewise. + +2018-07-16 Rogerio A. Cardoso + + [BZ #21895] + * sysdeps/powerpc/powerpc64/__longjmp-common.S: Remove condition code for + restore r2 on longjmp. + * sysdeps/powerpc/powerpc64/Makefile: Added tst-setjmp-bug21895-static to + test list. + Added rules to build test tst-setjmp-bug21895-static. + Added module setjmp-bug21895 and rules to build a shared object from it. + * sysdeps/powerpc/powerpc64/setjmp-bug21895.c: New test file. + * sysdeps/powerpc/powerpc64/tst-setjmp-bug21895-static.c: New test file. + +2018-07-15 Wilco Dijkstra + + * benchtests/bench-strcasestr.c: Rename __strnlen to strnlen. + * benchtests/bench-strstr.c: Likewise. + * string/memmem.c (FASTSEARCH): Define. + * string/str-two-way.h (two_way_short_needle): Minor cleanups. + Add support for FASTSEARCH. + * string/strcasestr.c (AVAILABLE): Use read-ahead __strnlen. + * string/strstr.c (AVAILABLE): Use read-ahead __strnlen. + (FASTSEARCH): Define. + * string/test-strcasestr.c: Rename __strnlen to strnlen. + * string/test-strstr.c: Likewise. + +2018-07-15 H.J. Lu + + * sysdeps/unix/sysv/linux/x86_64/____longjmp_chk.S: Undef + SHADOW_STACK_POINTER_OFFSET after including . + +2018-07-14 Igor Tsimbalist + H.J. Lu + + * sysdeps/i386/__longjmp.S: Include . + (__longjmp): Restore shadow stack pointer if shadow stack is + enabled, SHADOW_STACK_POINTER_OFFSET is defined and __longjmp + isn't defined for __longjmp_cancel. + * sysdeps/i386/bsd-_setjmp.S: Include . + (_setjmp): Save shadow stack pointer if shadow stack is enabled + and SHADOW_STACK_POINTER_OFFSET is defined. + * sysdeps/i386/bsd-setjmp.S: Include . + (setjmp): Save shadow stack pointer if shadow stack is enabled + and SHADOW_STACK_POINTER_OFFSET is defined. + * sysdeps/i386/setjmp.S: Include . + (__sigsetjmp): Save shadow stack pointer if shadow stack is + enabled and SHADOW_STACK_POINTER_OFFSET is defined. + * sysdeps/unix/sysv/linux/i386/____longjmp_chk.S: Include + . + (____longjmp_chk): Restore shadow stack pointer if shadow stack + is enabled and SHADOW_STACK_POINTER_OFFSET is defined. + * sysdeps/unix/sysv/linux/x86/Makefile (gen-as-const-headers): + Remove jmp_buf-ssp.sym. + * sysdeps/unix/sysv/linux/x86_64/____longjmp_chk.S: Include + . + (____longjmp_chk): Restore shadow stack pointer if shadow stack + is enabled and SHADOW_STACK_POINTER_OFFSET is defined. + * sysdeps/x86/Makefile (gen-as-const-headers): Add + jmp_buf-ssp.sym. + * sysdeps/x86/jmp_buf-ssp.sym: New dummy file. + * sysdeps/x86_64/__longjmp.S: Include . + (__longjmp): Restore shadow stack pointer if shadow stack is + enabled, SHADOW_STACK_POINTER_OFFSET is defined and __longjmp + isn't defined for __longjmp_cancel. + * sysdeps/x86_64/setjmp.S: Include . + (__sigsetjmp): Save shadow stack pointer if shadow stack is + enabled and SHADOW_STACK_POINTER_OFFSET is defined. + +2018-07-14 H.J. Lu + + [BZ #22563] + * nptl/pthread_create.c: Include . + (__pthread_create_2_1): Call tls_setup_tcbhead. + * sysdeps/generic/tls-setup.h: New file. + * sysdeps/x86/nptl/tls-setup.h: Likewise. + * sysdeps/i386/nptl/tcb-offsets.sym (FEATURE_1_OFFSET): New. + * sysdeps/x86_64/nptl/tcb-offsets.sym (FEATURE_1_OFFSET): + Likewise. + * sysdeps/i386/nptl/tls.h (tcbhead_t): Rename __glibc_reserved1 + to feature_1. + * sysdeps/x86_64/nptl/tls.h (tcbhead_t): Likewise. + * sysdeps/x86/sysdep.h (X86_FEATURE_1_IBT): New. + (X86_FEATURE_1_SHSTK): Likewise. + (CET_ENABLED): Likewise. + (IBT_ENABLED): Likewise. + (SHSTK_ENABLED): Likewise. + +2018-07-13 Rafał Lużyński + + [BZ #23208] + * localedata/Makefile (test-input): Add dsb_DE.UTF-8. + (LOCALES): Likewise. + * localedata/dsb_DE.UTF-8.in: New file. + * localedata/locales/dsb_DE (LC_COLLATE): Fix syntax error. + +2018-07-12 Florian Weimer + + * nptl/allocatestack.c [_STACK_GROWS_UP] (allocate_stack): Call + __mprotect, not mprotect. + +2018-07-11 Florian Weimer + + * io/Makefile (headers): Add bits/statx.h. + +2018-07-10 Mike FABIAN + + * localedata/charmaps/UTF-8: Use correct Unicode version 11.0.0 in comment. + * localedata/locales/i18n_ctype: Use correct Unicode version in comments + and headers. + * localedata/unicode-gen/utf8_gen.py: Add option to specify Unicode version + * localedata/unicode-gen/Makefile: Use option to specify Unicode version + for utf8_gen.py + +2018-07-10 Florian Weimer + + * io/Makefile (routines): Add statx. + (tests-internal): Add tst-statx. + * io/Versions (GLIBC_2.28): Export statx. + * io/bits/statx.h: New file. + * io/sys/stat.h [__USE_GNU]: Include it. + * io/fcntl.h [__USE_GNU] (AT_STATX_SYNC_TYPE) + (AT_STATX_SYNC_AS_STAT, AT_STATX_FORCE_SYNC, AT_STATX_DONT_SYNC): + Define. + * io/statx.c: New file. + * io/statx_generic.: Likewise. + * io/tst-statx.: Likewise. + * include/bits/statx.h: Likewise. + * sysdeps/unix/sysv/linux/kernel-features.h + [__LINUX_KERNEL_VERSION >= 0x040B00] (__ASSUME_STATX): Define. + * sysdeps/unix/sysv/linux/alpha/kernel-features.h + [__LINUX_KERNEL_VERSION < 0x040D00] (__ASSUME_STATX): Undefine. + * sysdeps/unix/sysv/linux/ia64/kernel-features.h (__ASSUME_STATX): + Undefine. + * sysdeps/unix/sysv/linux/microblaze/kernel-features.h + [__LINUX_KERNEL_VERSION < 0x040C00] (__ASSUME_STATX): Undefine. + * sysdeps/unix/sysv/linux/statx.c: New file. + * manual/filesys.texi: Note that statx is undocumented. + * sysdeps/**/libc*.abilist: Update. + +2018-07-10 Adhemerval Zanella + + * sysdeps/unix/sysv/linux/tst-ofdlocks-compat.c: Add a comment about + a kernel issue which lead to test failure in some cases. + +2018-07-10 Florian Weimer + + [BZ #23036] + * posix/regexec.c (check_node_accept_bytes): When comparing + weights, do not compare an extra byte after the end of the + weights. + +2018-07-10 Florian Weimer + + * libio/readline.c: Fix copyright year. + * libio/tst-readline.c Likewise. + * nss/tst-nss-files-hosts-getent.c: Likewise. + +2018-07-06 Florian Weimer + + [BZ #18991] + * nss/nss_files/files-XXX.c (internal_getent): Use + __libc_readline_unlocked. Seek back to the start of the line if + parsing failes with ERANGE. + (get_contents_ret, get_contents): Remove. + * nss/tst-nss-files-hosts-getent.c: New file. + * nss/Makefile (tests): Add tst-nss-files-hosts-getent. + (tst-nss-files-hosts-getent): Link with -ldl. + +2018-07-06 Florian Weimer + + * include/stdio.h (__libc_readline_unlocked): Declare. + (__ftello64, __fseeko64): Declare aliases. + * libio/readline.c: New file. + * libio/tst-readline.c: Likewise. + (routines): Add readline. + (tests-internal): Add tst-readlime. + * libio/Versions (GLIBC_PRIVATE): Export __fseeko64, __ftello64, + __libc_readline_unlocked. + * libio/fseeko.c (__fseeko): Rename from fseeko. + (fseeko): Add alias. + [__OFF_T_MATCHES_OFF64_T] (fseeko64, __fseeko64): Likewise. + * libio/fseeko64.c (__fseeko64): Rename from fseeko64. + (fseeko64): Add alias. + * libio/ftello.c [__OFF_T_MATCHES_OFF64_T] (__ftello64): Add alias. + * libio/ftello64.c (__ftello64): Rename from ftello64. + (ftello64): Add alias. + +2018-07-06 Szabolcs Nagy + + * sysdeps/unix/sysv/linux/aarch64/dl-procinfo.h (HWCAP_IMPORTANT): Add + HWCAP_ATOMICS. + +2018-07-06 Szabolcs Nagy + + * sysdeps/unix/sysv/linux/aarch64/cpu-features.c (init_cpu_features): + Use dl_hwcap without masking. + * sysdeps/unix/sysv/linux/aarch64/dl-procinfo.h (HWCAP_IMPORTANT): + Remove HWCAP_CPUID. + +2018-07-06 Florian Weimer + + * conform/conformtest.pl (checknamespace): Escape literal braces + in regular expressions. + +2018-07-06 Amit Pawar + + * sysdeps/x86/cpu-features.c (get_common_indeces): + AVX_Fast_Unaligned_Load is enabled when AVX2 is detected. + * sysdeps/x86/cpu-features.c (init_cpu_features): + AVX_Fast_Unaligned_Load is disabled for Excavator core. + +2018-07-05 Florian Weimer + + * csu/Makefile (CFLAGS-static-reloc.os): Build with stack + protector. + (CFLAGS-elf-init.oS): Likewise. + +2018-07-05 Florian Weimer + Carlos O'Donell + + * debug/Makefile (CFLAGS-stack_chk_fail_local.c): Remove + $(no-stack-protector). stack_chk_fail_local.c can be compiled + with stack protector enabled because there is no risk of infinite + recursion. + +2018-07-05 Maciej W. Rozycki + + [BZ #19818] + [BZ #23307] + * libc-abis (ABSOLUTE): New ABI. + * sysdeps/unix/sysv/linux/mips/libc-abis (ABSOLUTE): New ABI. + * NEWS: Mention the new ABI. + +2018-07-05 Florian Weimer + + [BZ # 17662] + * libio/stdio.h [__USE_GNU] (RENAME_NOREPLACE, RENAME_EXCHANGE) + (RENAME_WHITEOUT): Define. + [__USE_GNU] (renameat2): Declare. + * stdio-common/Makefile (routines): Add renameat2. + (tests): Add tst-renameat2. + * stdio-common/Versions (GLIBC_2_28): Export renameat2. + * stdio-common/renameat2.c: New file. + * stdio-common/tst-renameat2.c: Likewise. + * sysdeps/unix/sysv/linux/renameat2.c: Likewise. + * manual/filesys.texi (Temporary Files): Note that renameat2 is + undocumented. + * sysdeps/unix/sysv/linux/kernel-features.h + [__LINUX_KERNEL_VERSION >= 0x030F00] (__ASSUME_RENAMEAT2): Define. + * sysdeps/unix/sysv/linux/alpha/kernel-features.h + [__LINUX_KERNEL_VERSION < 0x031100] (__ASSUME_RENAMEAT2): Undefine. + * sysdeps/unix/sysv/linux/microblaze/kernel-features.h + [__LINUX_KERNEL_VERSION < 0x031100] (__ASSUME_RENAMEAT2): Undefine. + * sysdeps/unix/sysv/linux/sh/kernel-features.h + [__LINUX_KERNEL_VERSION < 0x040800] (__ASSUME_RENAMEAT2): Undefine. + * sysdeps/unix/sysv/linux/sparc/kernel-features.h + [__LINUX_KERNEL_VERSION < 0x031000] (__ASSUME_RENAMEAT2): Undefine. + * include/stdio.h (__renameat): Add alias for renameat. + * stdio-common/renameat.c (__renameat): Rename from renameat. + Add hidden definition and alias. + * sysdeps/unix/sysv/linux/renameat.c: Likewise. + * sysdeps/mach/hurd/renameat.c: Likewise. + * sysdeps/**/libc*.abilist: Add renameat2. + +2018-07-04 Adhemerval Zanella + + * posix/bug-regex33.c: Fix build after regex sync. + +2018-07-04 Carlos O'Donell + + [BZ #23164] + * localedata/tst-langinfo-setlocale.c: New file. + * localedata/tst-langinfo-setlocale-static.c: New file. + * localedata/tst-langinfo-newlocale.c: New file. + * localedata/tst-langinfo-newlocale-static.c: New file. + * localedata/Makefile (test-srcs): Remove tst-langinfo. Add + tst-langinfo-setlocale, tst-langinfo-setlocale-static, + tst-langinfo-newlocale, tst-langinfo-newlocale-static. + (tests-static): Remove tst-langinfo-static. Add + tst-langinfo-newlocale-static, tst-langinfo-setlocale-static. + (tests-special): Remove $(objpfx)tst-langinfo.out, + $(objpfx)tst-langinfo-static.out. Add + $(objpfx)tst-langinfo-setlocale.out, + $(objpfx)tst-langinfo-newlocale.out, + $(objpfx)tst-langinfo-setlocale-static.out, + $(objpfx)tst-langinfo-newlocale-static.out. + ($(objpfx)tst-langinfo.out): Remove. + ($(objpfx)tst-langinfo-static.out): Remove. + ($(objpfx)tst-langinfo-newlocale.out): New target. + ($(objpfx)tst-langinfo-newlocale-static.out): New target. + (test-xfail-tst-langinfo-newlocale-static): Add. + ($(objpfx)tst-langinfo-setlocale.out): New target. + ($(objpfx)tst-langinfo-setlocale-static.out): New target. + * localedata/tst-langinfo.c: Call test_locale. + * localedata/tst-langinfo.sh: Add LC_MONETARY CURRENCY_SYMBOL test + data. + +2018-07-04 Florian Weimer + + testrun.sh: Implement --tool=strace, --tool=valgrind + * Makefile (testrun-script): Define variable. + (testrun.sh): Use variable. + * manual/install.texi (Tools for Compilation): make 4.0 or later + is required. + * configure.ac: Check for make 4.0 or later. + * INSTALL: Regenerate. + * configure: Likewise. + +2018-07-04 Adhemerval Zanella + + [BZ #23233] + [BZ #21163] + [BZ #18986] + [BZ #13762] + * posix/Makefile (tests): Add bug-regex37 and bug-regex38. + * posix/PCRE.tests: Remove invalid test. + * posix/bug-regex28.c: Fix expected values for used syntax. + * posix/bug-regex37.c: New file. + * posix/bug-regex38.c: Likewise. + * posix/regcomp.c: Sync with gnulib. + * posix/regex.c: Likewise. + * posix/regex.h: Likewise. + * posix/regex_internal.c: Likewise. + * posix/regex_internal.h: Likewise. + * posix/regexec.c: Likewise. + +2018-06-26 Mike FABIAN + + [BZ #23308] + * unicode-gen/Makefile (UNICODE_VERSION): Set to 11.0.0. + * localedata/unicode-gen/DerivedCoreProperties.txt: Update to Unicode 11.0.0. + * localedata/unicode-gen/EastAsianWidth.txt: likewise. + * localedata/unicode-gen/PropList.txt: likewise. + * localedata/unicode-gen/UnicodeData.txt: likewise. + * localedata/charmaps/UTF-8: Regenerate. + * localedata/locales/i18n_ctype: likewise. + * localedata/locales/tr_TR: likewise. + * localedata/locales/translit_circle: likewise. + * localedata/locales/translit_cjk_compat: likewise. + * localedata/locales/translit_combining: likewise. + * localedata/locales/translit_compat: likewise. + * localedata/locales/translit_font: likewise. + * localedata/locales/translit_fraction: likewise. + +2018-07-03 Florian Weimer + + [BZ #23363] + * stdio-common/tst-printf.c (DEC, INT, UNS, fp_test): Remove. + * stdio-common/tst-printf.sh: Adjust expected output. + * LICENSES: Update. + +2018-07-03 Adhemerval Zanella + + * sysdeps/mach/hurd/i386/libc.abilist [GLIBC_2.28] (fcntl): Remove + symbol. + +2018-07-02 Gabriel F. T. Gomes + + * stdio-common/Makefile (test-srcs): Add tst-printfsz-islongdouble. + (tests-special) Add $(objpfx)tst-printfsz-islongdouble.out. + ($(objpfx)tst-printfsz-islongdouble.out): New build and run rule. + * stdio-common/tst-printfsz-islongdouble.c: New file. + * stdio-common/tst-printfsz-islongdouble.sh: Likewise. + * sysdeps/ieee754/ldbl-128ibm-compat/Makefile: + [subdir == stdio-common] (routines): Add ieee128-printf_size. + [subdir == stdio-common] (tests-internal): Add + test-printf-size-ieee128, and test-printf-size-ibm128. + [subdir == stdio-common] (CFLAGS-test-printf-size-ieee128.c) + (CFLAGS-test-printf-size-ibm128.c): New variables. + [subdir == stdio-common] (tests-special): Add + $(objpfx)test-printf-size-ieee128.out and + $(objpfx)test-printf-size-ibm128.out. + [subdir == stdio-common] ($(objpfx)test-printf-size-ieee128.out) + ($(objpfx)test-printf-size-ibm128.out): New build and run rules. + * sysdeps/ieee754/ldbl-128ibm-compat/Versions (libc): Add + __printf_sizeieee128. + * sysdeps/ieee754/ldbl-128ibm-compat/ieee128-printf_size.c: + New file. + * sysdeps/ieee754/ldbl-128ibm-compat/test-printf-size-ibm128.c: + Likewise. + * sysdeps/ieee754/ldbl-128ibm-compat/test-printf-size-ieee128.c: + Likewise. + +2018-07-02 Szabolcs Nagy + + * sysdeps/ieee754/flt-32/e_powf.c (__powf): Use uint32_t. + (exp2f_inline): Likewise. + * sysdeps/ieee754/flt-32/math_config.h (__math_oflowf): Likewise. + (__math_uflowf): Likewise. + (__math_may_uflowf): Likewise. + (__math_divzerof): Likewise. + (__math_invalidf): Likewise. + * sysdeps/ieee754/flt-32/math_errf.c (xflowf): Likewise. + (__math_oflowf): Likewise. + (__math_uflowf): Likewise. + (__math_may_uflowf): Likewise. + (__math_divzerof): Likewise. + (__math_invalidf): Likewise. + +2018-06-29 DJ Delorie + Carlos O'Donell + + [BZ #23329] + * include/libc-symbols.h: Comment the freeres framework. + * include/set-hooks.h: Include libc-symbols.h. Fix comment. + * dlfcn/Makefile (libdl-routines): Add dlfreeres. + * dlfcn/Versions (GLIBC_PRIVATE): Add __libdl_freeres. + * dlfcn/dlerror.c: Include libc-symbols.h + (__dlerror_main_freeres): New function. + * dlfcn/dlfreeres.c: New file. + * dlfcn/sdlfreeres.c: New file. + * include/dlfcn.h: Declare __dlerror_main_freeres. + * malloc/set-freeres.c: Declare __libdl_freeres, and + __libpthread_freeres. + (__libc_subfreeres): Call __libdl_freeres, and __libpthread_freeres if + the releavant libraries are loaded. + * malloc/thread-freeres.c: Add comments. + * nptl/Makefile (libpthread-routines): Add nptlfreeres. + * nptl/Version (GLIBC_PRIVATE): Add __libpthread_freeres. + * nptl/allocatestack.c (__nptl_free_stacks): New function. + (__free_stacks): Rename to... + (free_stacks): ...this. Mark static. + (queue_stack): Call free_stacks. + * nptl/libc_pthread_init.c [SHARED] (freeres_libpthread): Delete. + * nptl/nptl-init.c: Delete delcaration of nptl_freeres. + * sysdeps/nptl/pthread-functions.h (pthread_functions): Remove + ptr_freeres element from struct. + (pthread_functions): Remove .ptr_freeres from struct initializer. + [SHARED] (nptl_freeres): Remove. + * nptl/nptlfreeres.c: New file. + * nptl/pthreadP.h + [IS_IN (libpthread) && SHARED ] (__unwind_freeres): Rename to... + [IS_IN (libpthread)] (__nptl_unwind_freeres): ...this. Mark + attribute_hidden. + (__free_stacks): Rename to... + (__nptl_stacks_freeres): ...this. + (__shm_directory_freeres): Declare. + * nptl/unwind-forcedunwind.c (__unwind_freeres): Rename to... + (__nptl_unwind_freeres): ...this. + * resolv/res-close.c: Add comment. + * resolv/resolv_conf.c: Include libc-symbols.h. + * string/strerror_l.c: Include libc-symbols.h. + * sunrpc/rpc_thread.c: Include libc-symbols.h. + * sysdeps/mach/strerror_l.c: Inlcude libc-symbols.h + * sysdeps/unix/sysv/linux/shm-directory.c (freeit): Rename to... + [IS_IN (libpthread)] (__shm_directory_freeres): ...this. + +2018-06-29 Rajalakshmi Srinivasaraghavan + + * stdlib/tst-strfmon_l.c: Add tests for long double. + +2018-06-29 Michael Wolf + + [BZ #23208] + * localedata/SUPPORTED (dsb_DE/UTF-8): New entry. + * localedata/locales/dsb_DE: New file. + +2018-06-29 Rafał Lużyński + + [BZ #23140] + * localedata/locales/hy_AM (mon): Synchronize with CLDR (lowercase, + genitive case). + (alt_mon): New entry, import from CLDR (nominative case). + +2018-06-29 Sylvain Lesage + + [BZ #22996] + * localedata/locales/es_BO (LC_PAPER): Change to “copy "en_US"”. + +2018-06-29 Siddhesh Poyarekar + + * sysdeps/aarch64/multiarch/memcpy_falkor.S (__memcpy_falkor): + Use vector registers. + + * sysdeps/aarch64/multiarch/memmove_falkor.S + (__memcpy_falkor): Use vector registers. + +2018-06-29 Martin Sebor + + * manual/stdio.texi (Customizing Printf): Mention interaction + with GCC built-ins. + +2018-06-29 Maciej W. Rozycki + + [BZ #23307] + * elf/dl-lookup.c (check_match): Do not reject a symbol whose + `st_value' is 0 if `st_shndx' is SHN_ABS. + * elf/tst-absolute-zero.c: New file. + * elf/tst-absolute-zero-lib.c: New file. + * elf/tst-absolute-zero-lib.lds: New file. + * elf/Makefile (tests): Add `tst-absolute-zero'. + (modules-names): Add `tst-absolute-zero-lib'. + (LDLIBS-tst-absolute-zero-lib.so): New variable. + ($(objpfx)tst-absolute-zero-lib.so): New dependency. + ($(objpfx)tst-absolute-zero: New dependency. + +2018-06-29 Zack Weinberg + + * configure.ac: New command-line option --disable-crypt. + Force --disable-nss-crypt when --disable-crypt is given, with a + warning if it was explicitly enabled. + * configure: Regenerate. + * config.make.in: New boolean substitution variable $(build-crypt). + * Makeconfig: Only include 'crypt' in all-subdirs and rpath-dirs + when $(build-crypt). + * manual/install.texi: Document --disable-crypt. + * INSTALL: Regenerate. + + * crypt/Makefile: Remove code conditional on $(crypt-in-libc), + which is never set. + * conform/Makefile: Only include libcrypt.a in + linknamespace-libs-xsi and linknamespace-libs-XPG4 + when $(build-crypt). + * elf/Makefile (CFLAGS-tst-linkall-static.c): Only define + USE_CRYPT to 1 when $(build-crypt). + (tst-linkall-static): Only link libcrypt.a when $(build-crypt). + (localplt-built-dso): Only add libcrypt.so when $(build-crypt). + * elf/tst-linkall-static.c: Only include crypt.h when USE_CRYPT. + +2018-06-29 Zack Weinberg + + * crypt/crypt.h, posix/unistd.h: Update comments and + prototypes for crypt and crypt_r. + + * manual/crypt.texi (Cryptographic Functions): New initial + exposition. + (crypt): Section renamed to 'Passphrase Storage'. Full rewrite. + (Unpredictable Bytes): Improve initial exposition. Clarify error + behavior of getentropy and getrandom. + * manual/examples/genpass.c: Generate a salt using getentropy + instead of the current time. Use hash $5$ (SHA-2-256). + * manual/examples/testpass.c: Demonstrate validation against + hashes generated with three different one-way functions. + + * manual/intro.texi: crypt.texi does not need an overview + anymore. + + * manual/nss.texi, manual/memory.texi, manual/socket.texi + * manual/terminal.texi: Consistently refer to "passphrases" + * instead of "passwords", and to the "user database" instead + * of the "password database". + * manual/users.texi: Similarly. Add notes about how actual + passphrase hashes are now stored in the shadow database. + Remove 20-year-old junk todo note. + +2018-06-29 Zack Weinberg + + * manual/crypt.texi: Use a normal top-level @node declaration. + Move most of the introductory text to the 'crypt' section. + Move the example programs below the @deftypefun for 'crypt_r'. + Move the 'getpass' section... + * manual/terminal.texi: ...here. + +2018-06-29 Zack Weinberg + Florian Weimer + + * posix/unistd.h: Do not declare encrypt. + (_XOPEN_CRYPT): Remove macro definition. + (crypt): Declare only for _USE_MISC. + * stdlib/stdlib.h: Do not declare setkey. + * crypt/crypt.h: Do not declare encrypt, setkey, encrypt_r, setkey_r. + * sunrpc/Makefile: Do not install des_crypt.h nor rpc_des.h. + + * crypt/crypt-entry.c: Make fcrypt a compat symbol. + * crypt/crypt_util.c: Make encrypt, encrypt_r, setkey, setkey_r + into compat symbols. Don't define initial_perm if it's not + going to be used. + * crypt/cert.c: Link explicitly with the expected versions for + setkey and encrypt. If they are not available at all, mark + the test as unsupported. + + * sunrpc/des_crypt.c: Unconditionally block linkage with + cbc_crypt and ecb_crypt for new binaries. + * sunrpc/des_soft.c: Unconditionally block linkage with + des_setparity for new binaries. + + * manual/crypt.texi: Remove the entire "DES Encryption" + section. Also remove the paragraph talking about FIPS 140-2 + from the introduction. + * manual/string.texi (strfry, memfrob): Revise. Recommend use + of libgcrypt for "real" encryption, not DES. + * manual/conf.texi (Constants for Sysconf): Mention that + _XOPEN_CRYPT is no longer impelemented. + + * conform/data/unistd.h-data: Remove crypt function declaration. + +2018-06-29 Florian Weimer + + [BZ #23351] + * malloc/hooks.c: Update comments on restoring of dumped heaps. + (disallow_malloc_check): Remove variable. + (__malloc_check_init): Adjust. + (malloc_set_state): Update comment. + * malloc/malloc.c (__malloc_get_state, __malloc_set_state): Remove + declarations. + +2018-06-29 Rafał Lużyński + + [BZ #23140] + * localedata/locales/ast_ES (mon): Rename to... + (alt_mon): This. + (mon): Import from CLDR (genitive case). + +2018-06-29 Daniel Alvarez + Jakub Sitnicki + + [BZ #21812] + * sysdeps/unix/sysv/linux/ifaddrs.c (getifaddrs_internal): Retry + on NLM_F_DUMP_INTR. + +2018-06-28 Szabolcs Nagy + + * manual/llio.texi: Remove spurious space. + +2018-06-28 Florian Weimer + + [BZ #23349] + * time/bits/types/struct_timespec.h: Change header inclusion guard to + _STRUCT_TIMESPEC. + +2018-06-28 Rajalakshmi Srinivasaraghavan + + * sysdeps/ieee754/ldbl-128ibm-compat/Versions: Add __strfromieee128, + __strtoieee128, __strtoieee128_l,__wcstoieee128 and __wcstoieee128_l. + * sysdeps/ieee754/ldbl-128ibm-compat/strfromf128.c: New file. + * sysdeps/ieee754/ldbl-128ibm-compat/strtof128.c: New file. + * sysdeps/ieee754/ldbl-128ibm-compat/strtof128_l.c: New file. + * sysdeps/ieee754/ldbl-128ibm-compat/wcstof128.c: New file. + * sysdeps/ieee754/ldbl-128ibm-compat/wcstof128_l.c: New file. + +2018-06-27 Maciej W. Rozycki + + [BZ #23266] + * nis/nss_nisplus/nisplus-parser.c (_nss_nisplus_parse_pwent): + Copy and null-terminate entries that are not terminated, in + addition to empty ones. + +2018-06-27 Florian Weimer + + [BZ #18023] + * include/alloca.h (stackinfo_alloca_round, extend_alloca) + (extend_alloca_account): Remove. + * manual/stdio.texi (Variable Arguments Output): Update comment. + +2018-06-27 Joseph Myers + + * nptl/sockperf.c: Remove file. + +2018-06-27 Florian Weimer + + [BZ #18023] + * elf/dl-deps.c (_dl_map_object_deps): Use struct + scratch_buffer instead of extend_alloca. + +2018-06-27 Florian Weimer + + [BZ #18023] + * sysdeps/unix/sysv/linux/gethostid.c (gethostid): Use struct + scratch_buffer instead of extend_alloca. Update comments. + +2018-06-27 Florian Weimer + + [BZ #18023] + * posix/wordexp.c (parse_tilde): Use struct scratch_buffer + instead of extend_alloca. + +2018-06-26 Joseph Myers + + [BZ #13888] + * posix/Makefile (CFLAGS-tst-spawn3.c): New variable. + * posix/tst-spawn3.c (do_test): Put tst-spwan3.pid in OBJPFX, not + /tmp. + * scripts/test-installation.pl: Put temporary files in build + directory, not /tmp. + * stdio-common/Makefile (CFLAGS-bug3.c): New variable. + (CFLAGS-bug4.c): Likewise. + (CFLAGS-bug5.c): Likewise. + (CFLAGS-test-fseek.c): Likewise. + (CFLAGS-test-popen.c): Likewise. + (CFLAGS-test_rdwr.c): Likewise. + * stdio-common/bug3.c (main): Put temporary file in OBJPFX, not + /tmp. + * stdio-common/bug4.c (main): Likewise. + * stdio-common/bug5.c (main): Likewise. + * stdio-common/test-fseek.c (TESTFILE): Likewise. + * stdio-common/test-popen.c (do_test): Likewise. + * stdio-common/test_rdwr.c (main): Likewise. + +2018-06-26 Patsy Franklin + + * nptl/sem_open.c [!__HAVE_64B_ATOMICS] (sem_open): Don't update pad. + (sem_open): Set sem.newsem.pad to zero for valgrind. + +2018-06-26 Adhemerval Zanella + + [BZ #20251] + * NEWS: Mention fcntl64 addition. + * csu/check_fds.c: Replace __fcntl_nocancel by __fcntl64_nocancel. + * login/utmp_file.c: Likewise. + * sysdeps/posix/fdopendir.c: Likewise. + * sysdeps/posix/opendir.c: Likewise. + * sysdeps/unix/pt-fcntl.c: Likewise. + * include/fcntl.h (__libc_fcntl64, __fcntl64, + __fcntl64_nocancel_adjusted): New prototype. + (__fcntl_nocancel_adjusted): Remove prototype. + * io/Makefile (routines): Add fcntl64. + (CFLAGS-fcntl64.c): New rule. + * io/Versions [GLIBC_2.28] (fcntl64): New symbol. + [GLIBC_PRIVATE] (__libc_fcntl): Rename to __libc_fcntl64. + * io/fcntl.h (fcntl64): Add prototype and redirect if + __USE_FILE_OFFSET64 is defined. + * io/fcntl64.c: New file. + * manual/llio.text: Add a note for which commands fcntl acts a + cancellation point. + * nptl/Makefile (CFLAGS-fcntl64.c): New rule. + * sysdeps/mach/hurd/fcntl.c: Alias fcntl to fcntl64 symbols. + * sysdeps/mach/hurd/i386/libc.abilist [GLIBC_2.28] (fcntl, fcntl64): + New symbols. + * sysdeps/unix/sysv/linux/fcntl.c (__libc_fcntl): Fix F_GETLK64, + F_OFD_GETLK, F_SETLK64, F_SETLKW64, F_OFD_SETLK, and F_OFD_SETLKW for + non-LFS case. + * sysdeps/unix/sysv/linux/fcntl64.c: New file. + * sysdeps/unix/sysv/linux/fcntl_nocancel.c (__fcntl_nocancel): Rename + to __fcntl64_nocancel. + (__fcntl_nocancel_adjusted): Rename to __fcntl64_nocancel_adjusted. + * sysdeps/unix/sysv/linux/not-cancel.h (__fcntl_nocancel): Rename + to __fcntl64_nocancel. + * sysdeps/generic/not-cancel.h: Likewise. + * sysdeps/unix/sysv/linux/tst-ofdlocks.c: New file. + * sysdeps/unix/sysv/linux/Makefile (tests): Add tst-ofdlocks. + * sysdeps/unix/sysv/linux/aarch64/libc.abilist [GLIBC_2.28] + (fcntl64): New symbol. + * sysdeps/unix/sysv/linux/alpha/libc.abilist: Likewise. + * sysdeps/unix/sysv/linux/ia64/libc.abilist: Likewise. + * sysdeps/unix/sysv/linux/mips/mips64/n64/libc.abilist: Likewise. + * sysdeps/unix/sysv/linux/powerpc/powerpc64/libc.abilist: Likewise. + * sysdeps/unix/sysv/linux/powerpc/powerpc64/libc-le.abilist: Likewise. + * sysdeps/unix/sysv/linux/riscv/rv64/libc.abilist: Likewise. + * sysdeps/unix/sysv/linux/s390/s390-64/libc.abilist: Likewise. + * sysdeps/unix/sysv/linux/sparc/sparc64/libc.abilist: Likewise. + * sysdeps/unix/sysv/linux/x86_64/64/libc.abilist: Likewise. + * sysdeps/unix/sysv/linux/x86_64/x32/libc.abilist: Likewise. + * sysdeps/unix/sysv/linux/arm/libc.abilist [GLIBC_2.28] (fcntl, + fcntl64): Likewise. + * sysdeps/unix/sysv/linux/hppa/libc.abilist: Likewise. + * sysdeps/unix/sysv/linux/i386/libc.abilis: 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/nios2/libc.abilist: Likewise. + * sysdeps/unix/sysv/linux/powerpc/powerpc32/fpu/libc.abilist: + Likewise. + * sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/libc.abilist: + Likewise. + * sysdeps/unix/sysv/linux/s390/s390-32/libc.abilist: Likewise. + * sysdeps/unix/sysv/linux/sh/libc.abilist: Likewise. + * sysdeps/unix/sysv/linux/sparc/sparc32/libc.abilist: Likewise. + +2018-06-26 Florian Weimer + + Run thread shutdown functions in an explicit order. + * malloc/thread-freeres.c (__libc_thread_subfreeres): Remove hook + definition. + (__libc_thread_freeres): Call thread shutdown functions + explicitly. + * include/rpc/rpc.h (__rpc_thread_destroy): Add hidden attribute. + * include/string.h (__strerror_thread_freeres): Declare. + * malloc/arena.c (__malloc_arena_thread_freeres): Renamed from + arena_thread_freeres. No longer static. Remove thread shutdown + hook registration. + * malloc/malloc-internal.h (__malloc_arena_thread_freeres): + Declare. + * resolv/res-close.c (__res_thread_freeres): Renamed from + res_thread_freeres. No longer static. Remove thread shutdown + hook registration. + * resolv/resolv-internal.h (__res_thread_freeres): Declare. + * resolv/resolv_conf.c (freeres): Remove incorrect section + attribute and use libc_freeres_fn. + * string/strerror_l.c (__strerror_thread_freeres): Renamed from + strerror_thread_freeres. No longer static. Remove thread + shutdown hook registration. + * sysdeps/mach/strerror_l.c (__strerror_thread_freeres): Likewise. + * sunrpc/rpc_thread.c (__rpc_thread_destroy): Remove thread + shutdown hook registration. + * Makerules (shlib.lds): Do not provide section boundary symbols + for __libc_thread_subfreeres. + * manual/memory.texi (Basic Allocation): Update comment. + +2018-06-26 Florian Weimer + + Remove always-defined _RPC_THREAD_SAFE_ macro. + * sunrpc/Makefile (sunrpc-CPPFLAGS, CPPFLAGS, BUILD_CPPFLAGS): + Do not define _RPC_THREAD_SAFE_. + * include/rpc/rpc.h: Remove _RPC_THREAD_SAFE_ preprocessor + conditional. + * sunrpc/clnt_perr.c: Likewise. + * sunrpc/clnt_raw.c: Likewise. + * sunrpc/clnt_simp.c: Likewise. + * sunrpc/key_call.c: Likewise. + * sunrpc/rpc_common.c: Likewise. + * sunrpc/rpc_main.c: Likewise. + * sunrpc/rpc_thread.c: Likewise. + * sunrpc/svc.c: Likewise. + * sunrpc/svc_raw.c: Likewise. + * sunrpc/svc_simple.c: Likewise. + * sumrpc/svcauth_des.c: Likewise. + +2018-06-26 Florian Weimer + + * libio/Makefile (tests-internal): Add tst-vtables, + tst-vtables-interposed. + * libio/tst-vtables.c: New file. + * libio/tst-vtables-common.c: Likewise. + * libio/tst-vtables-interposed.c: Likewise. + +2018-06-26 Florian Weimer + + * support/support_test_main.c (support_test_main): Only call + setvbuf if not disables. + * support/test-driver.c (main): Check TEST_NO_SETVBUF. + * support/test-driver.h (struct test_config): Add no_setvbuf member. + +2018-06-26 Florian Weimer + + [BZ #23313] + * libio/vtables.c (check_stdfiles_vtables): New ELF constructor. + +2018-06-25 Florian Weimer + + [BZ #18023] + * nss/nss_files/files-initgroups.c (_nss_files_initgroups_dyn): + Use struct scratch_buffer instead of extend_alloca. + +2018-06-25 Florian Weimer + + [BZ #18023] + * nss/getent.c (initgroups_keys): Use dynarray instead of + extend_alloca. + +2018-06-25 Florian Weimer + + [BZ #18023] + * nis/nss_nis/nis-initgroups.c (get_uid, _nss_nis_initgroups_dyn): + Use struct scratch_buffer instead of extend_alloca. + +2018-06-25 Florian Weimer + + [BZ #18023] + * nss/nss_compat/compat-initgroups.c (getgrent_next_nss): Fall + back to malloc directly, without stack allocations. + +2018-06-25 Florian Weimer + + [BZ #18023] + * nscd/aicache.c (addhstaiX): Use struct scratch_buffer instead + of extend_alloca. + +2018-06-25 Florian Weimer + + [BZ #18023] + * nscd/grpcache.c (addgrbyX): Use struct scratch_buffer instead + of extend_alloca. + * nscd/hstcache.c (addhstbyX): Likewise. + * nscd/pwdcache.c (addpwbyX): Likewise. + * nscd/servicescache.c (addservbyX): Likewise. + +2018-06-25 Florian Weimer + + [BZ #18023] + * nscd/connections.c (read_cmdline): New function. + (restart): Use it. Update comment. + +2018-06-25 Rafał Lużyński + + [BZ #23140] + * localedata/locales/csb_PL (mon): Rename to... + (alt_mon): This. + (abmon): Rename to... + (ab_alt_mon): This. + (mon): Add with proper genitive forms, copy from Wikipedia. + (abmon): Likewise. + +2018-06-25 Rafał Lużyński + + [BZ #19485] + * localedata/locales/csb_PL (mon): Fix typos: + "łżëkwiôt" -> "łżëkwiat" (April); "lëpinc" -> "lëpińc" (July). + (yesstr): Add, value is "jo". + (nostr): Add, value is "nié". + +2018-06-22 Tulio Magno Quites Machado Filho + + * sysdeps/m68k/m680x0/fpu/s_log1p.c: Set as the generic file for + all log1p and significand functions on m680x0. + * sysdeps/m68k/m680x0/fpu/s_log1pf.c: Include s_log1p.c instead + of s_significand.c.. + * sysdeps/m68k/m680x0/fpu/s_log1pl.c: Likewise. + * sysdeps/m68k/m680x0/fpu/s_significandf.c: Likewise. + * sysdeps/m68k/m680x0/fpu/s_significandl.c: Likewise. + * sysdeps/m68k/m680x0/fpu/s_significand.c: Move all the code to + s_log1p.c and include it.. + +2018-06-21 Vincent Chen + + * elf/elf.h (R_NDS32_NONE): New define. + (R_NDS32_32_RELA): Likewise. + (R_NDS32_COPY): Likewise. + (R_NDS32_GLOB_DAT): Likewise. + (R_NDS32_JUMP_SLOT): Likewise. + (R_NDS32_RELATIVE): Likewise. + (R_NDS32_TLS_TPOFF): Likewise. + (R_NDS32_TLS_DESC): Likewise. + +2018-06-21 Mark Wielaard + + * elf/elf.h (R_BPF_MAP_FD): Removed. + (R_BPF_64_64, R_BPF_64_32): New. + +2018-06-21 Florian Weimer + + [BZ #23253] + * sysdeps/generic/math_private.h (default_libc_feholdsetround_ctx): + Renamed from libc_feholdsetround_ctx. + (default_libc_feresetround_ctx): Renamed from + libc_feresetround_ctx. + (default_libc_feholdsetround_noex_ctx): Renamed from + libc_feholdsetround_noex_ctx. + (default_libc_feresetround_noex_ctx): Renamed from + libc_feresetround_noex_ctx. + [!HAVE_RM_CTX] (libc_feholdsetround_ctx, libc_feresetround_ctx) + (libc_feholdsetround_noex_ctx, libc_feresetround_noex_ctx): Macros + forwardning to the old implementations under the new names. + * sysdeps/i386/fpu/fenv_private.h [__SSE_MATH__] + (libc_feholdexcept_setround_ctx, libc_fesetenv_ctx) + (libc_feupdateenv_ctx, libc_feholdsetround_ctx) + (libc_feresetround_ctx): Forward to default implements for i386 + and MATH_SET_BOTH_ROUNDING_MODES. + * sysdeps/i386/Makefile [$(subdir) == math] (CFLAGS-e_gamma_r.c): + Add -DMATH_SET_BOTH_ROUNDING_MODES. + +2018-06-20 Joseph Myers + + * string/tst-cmp.c: Include . + (strncmp_max): Disable -Wstringop-overflow= around call to + strncmp. + (strncasecmp_max): Disable -Wstringop-overflow= around call to + strncasecmp. + + * string/bug-strpbrk1.c: Include . + (main): Disable -Wunused-value around call to strpbrk. + * string/bug-strspn1.c: Include . + (main): Disable -Wunused-value around call to strspn. + +2018-06-20 Tulio Magno Quites Machado Filho + Gabriel F. T. Gomes + + * sysdeps/ieee754/ldbl-128ibm-compat/Versions: New file. + * sysdeps/ieee754/ldbl-128ibm-compat/libm-alias-float128.h: New file. + +2018-06-20 Tulio Magno Quites Machado Filho + + * math/Makefile (libm-calls): Move s_significandF to... + (gen-libm-calls): ... here. + * math/s_significand_template.c: New file. + * math/s_significand.c: Removed. + * math/s_significandf.c: Removed. + * math/s_significandl.c: Removed. + * sysdeps/ieee754/ldbl-opt/s_significand.c: Removed. + * sysdeps/ieee754/ldbl-opt/s_significandl.c: Removed. + + * math/e_exp2_template.c (declare_mgen_finite_alias, + declare_mgen_finite_alias_s, declare_mgen_finite_alias_x): Move to... + * sysdeps/generic/math-type-macros.h (declare_mgen_finite_alias, + declare_mgen_finite_alias_s, declare_mgen_finite_alias_x): ... here. + +2018-06-20 Florian Weimer + + * libio/libioP.h (IO_validate_vtable): Avoid ptrdiff_t overflow. + +2018-06-19 Joseph Myers + + [BZ #23280] + * stdio-common/vfscanf.c (_IO_vfscanf_internal): Pass sign of + floating-point number to strtod functions rather than possibly + negating result of those functions. + * stdio-common/tst-scanf-round.c: New file. + * stdio-common/Makefile (tests): Add tst-scanf-round. + ($(objpfx)tst-scanf-round): Depend on $(libm). + +2018-06-18 Samuel Thibault + + * sysdeps/mach/hurd/localplt.data: Move to... + * sysdeps/mach/hurd/i386/localplt.data: new file. Add + REL + R_386_GLOB_DAT like on Linux i386. + +2018-06-18 Joseph Myers + + * sysdeps/unix/sysv/linux/alpha/bits/shm.h [__USE_MISC] + (SHM_STAT_ANY): New macro. + * sysdeps/unix/sysv/linux/arm/bits/shm.h [__USE_MISC] + (SHM_STAT_ANY): Likewise. + * sysdeps/unix/sysv/linux/bits/shm.h [__USE_MISC] + (SHM_STAT_ANY): Likewise. + * sysdeps/unix/sysv/linux/generic/bits/shm.h [__USE_MISC] + (SHM_STAT_ANY): Likewise. + * sysdeps/unix/sysv/linux/hppa/bits/shm.h [__USE_MISC] + (SHM_STAT_ANY): Likewise. + * sysdeps/unix/sysv/linux/ia64/bits/shm.h [__USE_MISC] + (SHM_STAT_ANY): Likewise. + * sysdeps/unix/sysv/linux/mips/bits/shm.h [__USE_MISC] + (SHM_STAT_ANY): Likewise. + * sysdeps/unix/sysv/linux/powerpc/bits/shm.h [__USE_MISC] + (SHM_STAT_ANY): Likewise. + * sysdeps/unix/sysv/linux/s390/bits/shm.h [__USE_MISC] + (SHM_STAT_ANY): Likewise. + * sysdeps/unix/sysv/linux/sh/bits/shm.h [__USE_MISC] + (SHM_STAT_ANY): Likewise. + * sysdeps/unix/sysv/linux/sparc/bits/shm.h [__USE_MISC] + (SHM_STAT_ANY): Likewise. + * sysdeps/unix/sysv/linux/x86/bits/shm.h [__USE_MISC] + (SHM_STAT_ANY): Likewise. + + * sysdeps/unix/sysv/linux/alpha/bits/sem.h [__USE_MISC] + (SEM_STAT_ANY): New macro. + * sysdeps/unix/sysv/linux/bits/sem.h [__USE_MISC] + (SEM_STAT_ANY): Likewise. + * sysdeps/unix/sysv/linux/generic/bits/sem.h [__USE_MISC] + (SEM_STAT_ANY): Likewise. + * sysdeps/unix/sysv/linux/hppa/bits/sem.h [__USE_MISC] + (SEM_STAT_ANY): Likewise. + * sysdeps/unix/sysv/linux/ia64/bits/sem.h [__USE_MISC] + (SEM_STAT_ANY): Likewise. + * sysdeps/unix/sysv/linux/mips/bits/sem.h [__USE_MISC] + (SEM_STAT_ANY): Likewise. + * sysdeps/unix/sysv/linux/powerpc/bits/sem.h [__USE_MISC] + (SEM_STAT_ANY): Likewise. + * sysdeps/unix/sysv/linux/s390/bits/sem.h [__USE_MISC] + (SEM_STAT_ANY): Likewise. + * sysdeps/unix/sysv/linux/sparc/bits/sem.h [__USE_MISC] + (SEM_STAT_ANY): Likewise. + * sysdeps/unix/sysv/linux/x86/bits/sem.h [__USE_MISC] + (SEM_STAT_ANY): Likewise. + + * sysdeps/unix/sysv/linux/alpha/bits/msq.h [__USE_MISC] + (MSG_STAT_ANY): New macro. + * sysdeps/unix/sysv/linux/bits/msq.h [__USE_MISC] + (MSG_STAT_ANY): Likewise. + * sysdeps/unix/sysv/linux/generic/bits/msq.h [__USE_MISC] + (MSG_STAT_ANY): Likewise. + * sysdeps/unix/sysv/linux/hppa/bits/msq.h [__USE_MISC] + (MSG_STAT_ANY): Likewise. + * sysdeps/unix/sysv/linux/ia64/bits/msq.h [__USE_MISC] + (MSG_STAT_ANY): Likewise. + * sysdeps/unix/sysv/linux/mips/bits/msq.h [__USE_MISC] + (MSG_STAT_ANY): Likewise. + * sysdeps/unix/sysv/linux/powerpc/bits/msq.h [__USE_MISC] + (MSG_STAT_ANY): Likewise. + * sysdeps/unix/sysv/linux/s390/bits/msq.h [__USE_MISC] + (MSG_STAT_ANY): Likewise. + * sysdeps/unix/sysv/linux/sparc/bits/msq.h [__USE_MISC] + (MSG_STAT_ANY): Likewise. + * sysdeps/unix/sysv/linux/x86/bits/msq.h [__USE_MISC] + (MSG_STAT_ANY): Likewise. + + * sysdeps/unix/sysv/linux/hppa/bits/mman.h [__USE_MISC] + (MAP_TYPE): Change value to 0x2b. + +2018-06-18 Florian Weimer + + [BZ #15722] + * sysdeps/unix/sysv/linux/check_pf.c (__check_pf): Create Netlink + socket with SOCK_CLOEXEC. + +2018-06-18 Joseph Myers + + [BZ #23303] + * sysdeps/powerpc/powerpc64/le/Makefile + (CFLAGS-tst-strtod-nan-sign.c): Add -mfloat128. + (CFLAGS-tst-wcstod-nan-sign.c): Likewise. + (gnulib-tests): Also add $(f128-loader-link) for + tst-strtod-nan-sign abd tst-wcstod-nan-sign. + +2018-06-15 Samuel Thibault + + * include/sys/sendfile.h (__sendfile64): Declare hidden prototype. + * sysdeps/mach/hurd/sendfile.c (sendfile): Call __sendfile64 instead + of sendfile. + * sysdeps/mach/hurd/sendfile64.c (sendfile64): Rename to __sendfile64. + (sendfile64): New strong alias. + * sysdeps/mach/hurd/lseek.c: Include . + * sysdeps/mach/hurd/lseek.c (__libc_lseek): Check that the value + returned by __lseek64 can fit off_t, return EOVERFLOW otherwise. + * sysdeps/htl/pthreadP.h (___pthread_get_cleanup_stack): Add hidden + attribute. + * htl/pt-join.c (__pthread_get_cleanup_stack): Define to + ___pthread_get_cleanup_stack. + * sysdeps/mach/hurd/localplt.data (ld.so): Make ref to __open optional. + * sysdeps/mach/include/mach-shortcuts-hidden.h: New file. + * mach/shortcut.awk: Make syscall stubs include + and add hidden definition. + * sysdeps/mach/include/mach.h: Include . + (__mach_msg): Add hidden prototype. + * mach/msg.c: Include . + (__mach_msg): Add hidden definition. + * mach/Makefile ($(mach-syscalls:%=$(objpfx))): Add hidden definition. + * sysdeps/mach/include/mach/mach_traps.h (__mach_reply_port, + __mach_thread_self, __mach_task_self, __mach_host_self, __swtch, + __swtch_pri, __thread_switch, __evc_wait): Add hidden prototypes. + * sysdeps/mach/hurd/localplt.data (siglongjmp, longjmp, + __libc_lseek64, _IO_funlockfile): Whitelist PLT references. + * sysdeps/hurd/include/hurd/signal.h (_hurd_self_sigstate): Add hidden + prototype and definition. + * sysdeps/mach/hurd/i386/____longjmp_chk.S (____longjmp_chk): Use + hidden target for _hurd_self_sigstate. + +2018-06-15 Joseph Myers + + [BZ #23007] + * stdlib/tst-strtod-nan-sign-main.c: New file. + * stdlib/tst-strtod-nan-sign.c: Likewise. + * wcsmbs/tst-wcstod-nan-sign.c: Likewise. + * stdlib/Makefile (tests): Add tst-strtod-nan-sign. + ($(objpfx)tst-strtod-nan-sign): Depend on $(libm). + * wcsmbs/Makefile (tests) Add tst-wcstod-nan-sign. + ($(objpfx)tst-wcstod-nan-sign): Depend on $(libm). + +2018-06-15 Herman ten Brugge + + [BZ #23007] + * stdlib/strtod_l.c (____STRTOF_INTERNAL): Return NaN of + appropriate sign. + +2018-06-14 Florian Weimer + + [BZ #23290] + * localedata/charmaps/IBM273: Map codepoint 0xbc to U+00AF, so + that the result stays within the ISO-8859-1 range. + * iconvdata/ibm273.c (HAS_HOLES): Define as 0 because all 256 + characters are defined in IBM273. + +2018-06-14 Samuel Thibault + + * sysdeps/mach/include/mach/mach_traps.h (__mach_thread_self, + __mach_task_self): Remove attribute_hidden. + +2018-06-14 Joseph Myers + + * string/tester.c (test_strncat) [__GNUC_PREREQ (7, 0)]: Also + ignore -Wrestrict for one test. + +2018-06-14 Steve Ellcey + Szabolcs Nagy + + * sysdeps/unix/sysv/linux/aarch64/gettimeofday.c: New file. + +2018-06-14 Florian Weimer + + * scripts/update-abilist.sh: Accept empty list of files to patch. + +2018-06-13 Samuel Thibault + + * sysdeps/mach/hurd/i386/Makefile (test-xfail-check-abi-libhurduser, + test-xfail-check-abi-libmachuser): Add. + * sysdeps/mach/hurd/localplt.data (ld.so): Add __open64, rename + __libc_read and __libc_write to __read and __write. + * sysdeps/hurd/include/hurd/port.h: New file. + * mach/mach/mach_traps.h (__mach_reply_port, __mach_thread_self, + __mach_task_self, __mach_host_self, __swtch, __swtch_pri, + __thread_switch, __evc_wait): Move declarations to... + * sysdeps/mach/include/mach/mach_traps.h: ... new file, and add + attribute_hidden. + * sysdeps/mach/hurd/i386/____longjmp_chk.S (____longjmp_chk): Do not + use PLT to call _hurd_self_sigstate. + +2018-06-13 Joseph Myers + + [BZ #23279] + * stdlib/strtod_l.c (round_and_return): Handle an exponent of + MAX_EXP as overflowing. + * stdlib/gen-tst-strtod-round.c (string_to_fp): Clear MPFR + overflow flag. + (round_str): Output also whether result overflows in each rounding + mode. + * stdlib/tst-strtod-round-data: Add more tests. + * stdlib/tst-strtod-round-data.h: Regenerated. + * stdlib/tst-strtod-round-skeleton.c (_XNTRY): Update comment. + (TEST): Handle extra arguments for overflow flags. + (struct test_overflow): New type. + [!FE_OVERFLOW] (FE_OVERFLOW): Define to 0. + (GEN_ONE_TEST): Clear all exceptions. Test overflow flag. + (test_in_one_mode): Take argument with overflow information. + (do_test): Update calls to test_in_one_mode. + +2018-06-12 Carlos O'Donell + + * elf/dl-load (_dl_dst_substitute): Correct comment. + (_dl_dst_count): Likewise. + + * nptl/pthread_mutex_timedlock.c (__pthread_mutex_timedlock): Call + lll_futex_timed_wait. + +2018-06-12 Joseph Myers + + [BZ #23277] + * math/bits/mathcalls.h [__USE_ISOC99] (nan): Do not use __const__ + attribute. + * math/test-nan-const.c: New file. + * math/Makefile (tests): Add test-nan-const. + (CFLAGS-test-nan-const.c): New variable. + +2018-06-12 H.J. Lu + + * benchtests/scripts/compare_strings.py (process_results): Add + funcs argument. Compare only functions which are selected. + (main): Check if base function is among selected functions. + Pass selected functions to process_results. + (__main__): Add -f/--functions argument. + +2018-06-12 Minfeng Kang + Hongbo Zhang + + * sysdeps/aarch64/multiarch/memcpy.c (libc_ifunc): reuse + __memcpy_falkor for phecda core. + * sysdeps/aarch64/multiarch/memmove.c (libc_ifunc): reuse + __memmove_falkor for phecda core. + * sysdeps/aarch64/multiarch/memset.c (libc_ifunc): reuse + __memset_falkor for phecda core. + * sysdeps/unix/sysv/linux/aarch64/cpu-features.c: add MIDR entry + for phecda core. + * sysdeps/unix/sysv/linux/aarch64/cpu-features.h (IS_PHECDA): add + macro to identify phecda core. + +2018-06-12 Carlos O'Donell + Andreas Schwab + Dmitry V. Levin + Florian Weimer + + [BZ #23102] + [BZ #21942] + [BZ #18018] + [BZ #23259] + CVE-2011-0536 + * elf/dl-dst.h: Remove DL_DST_COUNT. + * elf/dl-deps.c (expand_dst): Call _dl_dst_count. + * elf/dl-load.c (is_trusted_path_normalize): Don't handle colons. + (is_dst): Comment. Support ELF gABI. + (_dl_dst_count): Comment. Simplify and count DSTs. + (_dl_dst_substitute): Comment. Support __libc_enable_secure handling. + (expand_dybamic_string_token): Comment. Call _dl_dst_count. Rename + locals. + +2018-06-12 Zack Weinberg + + * elf/dl-load.c, elf/dl-misc.c, elf/dl-profile.c, elf/rtld.c + * sysdeps/unix/sysv/linux/dl-sysdep.c + Include not-cancel.h. Use __close_nocancel instead of __close, + __open64_nocancel instead of __open, __read_nocancel instead of + __libc_read, and __write_nocancel instead of __libc_write. + + * csu/check_fds.c (check_one_fd) + * sysdeps/posix/fdopendir.c (__fdopendir) + * sysdeps/posix/opendir.c (__alloc_dir): Use __fcntl_nocancel + instead of __fcntl and/or __libc_fcntl. + + * sysdeps/unix/sysv/linux/pthread_setname.c (pthread_setname_np) + * sysdeps/unix/sysv/linux/pthread_getname.c (pthread_getname_np) + * sysdeps/unix/sysv/linux/i386/smp.h (is_smp_system): + Use __open64_nocancel instead of __open_nocancel. + + * sysdeps/unix/sysv/linux/not-cancel.h: Move all of the + hidden_proto declarations to the end and issue them if either + IS_IN(libc) or IS_IN(rtld). + * sysdeps/unix/sysv/linux/Makefile [subdir=io] (sysdep_routines): + Add close_nocancel, fcntl_nocancel, nanosleep_nocancel, + open_nocancel, open64_nocancel, openat_nocancel, pause_nocancel, + read_nocancel, waitpid_nocancel, write_nocancel. + + * io/Versions [GLIBC_PRIVATE]: Add __libc_fcntl, + __fcntl_nocancel, __open64_nocancel, __write_nocancel. + * posix/Versions: Add __nanosleep_nocancel, __pause_nocancel. + + * nptl/pt-fcntl.c: New file. + * nptl/Makefile (pthread-compat-wrappers): Remove fcntl. + (libpthread-routines): Add pt-fcntl. + * include/fcntl.h (__fcntl_nocancel_adjusted): New function. + (__libc_fcntl): Remove attribute_hidden. + * sysdeps/unix/sysv/linux/fcntl.c (__libc_fcntl): Call + __fcntl_nocancel_adjusted, not fcntl_common. + (__fcntl_nocancel): Move to new file fcntl_nocancel.c. + (fcntl_common): Rename to __fcntl_nocancel_adjusted; also move + to fcntl_nocancel.c. + * sysdeps/unix/sysv/linux/fcntl_nocancel.c: New file. + * sysdeps/unix/sysv/linux/powerpc/powerpc64/fcntl.c: Remove file. + * sysdeps/unix/sysv/linux/powerpc/powerpc64/sysdep.h: + Define FCNTL_ADJUST_CMD here, as a self-contained macro. + + * sysdeps/unix/sysv/linux/close.c: Move __close_nocancel to... + * sysdeps/unix/sysv/linux/close_nocancel.c: ...this new file. + * sysdeps/unix/sysv/linux/nanosleep.c: Move __nanosleep_nocancel to... + * sysdeps/unix/sysv/linux/nanosleep_nocancel.c: ...this new file. + * sysdeps/unix/sysv/linux/open.c: Move __open_nocancel to... + * sysdeps/unix/sysv/linux/open_nocancel.c: ...this new file. + * sysdeps/unix/sysv/linux/open64.c: Move __open64_nocancel to... + * sysdeps/unix/sysv/linux/open64_nocancel.c: ...this new file. + * sysdeps/unix/sysv/linux/openat.c: Move __openat_nocancel to... + * sysdeps/unix/sysv/linux/openat_nocancel.c: ...this new file. + * sysdeps/unix/sysv/linux/openat64.c: Move __openat64_nocancel to... + * sysdeps/unix/sysv/linux/openat64_nocancel.c: ...this new file. + * sysdeps/unix/sysv/linux/pause.c: Move __pause_nocancel to... + * sysdeps/unix/sysv/linux/pause_nocancel.c: ...this new file. + * sysdeps/unix/sysv/linux/read.c: Move __read_nocancel to... + * sysdeps/unix/sysv/linux/read_nocancel.c: ...this new file. + * sysdeps/unix/sysv/linux/waitpid.c: Move __waitpid_nocancel to... + * sysdeps/unix/sysv/linux/waitpid_nocancel.c: ...this new file. + * sysdeps/unix/sysv/linux/write.c: Move __write_nocancel to... + * sysdeps/unix/sysv/linux/write_nocancel.c: ...this new file. + + * sysdeps/unix/sysv/linux/nios2/Makefile: Don't override + libpthread-routines. + * sysdeps/unix/sysv/linux/nios2/pt-vfork.S: New file which + defines nothing. + + * sysdeps/mach/hurd/dl-sysdep.c: Define __read instead of + __libc_read, and __write instead of __libc_write. Define + __open64 in addition to __open. + +2018-06-12 H.J. Lu + + [BZ #23250] + [BZ #10686] + * sysdeps/i386/nptl/tls.h (tcbhead_t): Change __private_tm[4] + to _private_tm[3] and add __glibc_reserved2. + Add _Static_assert of offset of __private_ss == 0x30. + * sysdeps/x86_64/nptl/tls.h: Add _Static_assert of offset of + __private_ss == 0x40 for ILP32 and == 0x70 for LP64. + +2018-06-12 Florian Weimer + + x86: Make strncmp usable from rtld. + * sysdeps/i386/i686/multiarch/strncmp-c.c: Only rename strncmp to + __strncmp_ia32 if in libc (and not in rtld). + * sysdeps/x86_64/multiarch/strncmp-sse2.S: Rename strcmp to + strncmp if not in libc (and not to __strncmp_sse2). + +2018-06-12 Rafał Lużyński + + [BZ #23140] + * localedata/locales/gd_GB (mon): Rename to... + (alt_mon): This. + (mon): Import from CLDR (genitive case). + * localedata/locales/hsb_DE (mon): Rename to... + (alt_mon): This. + (mon): Import from CLDR (genitive case). + * localedata/locales/wa_BE (mon): Rename to... + (alt_mon): This. + (mon): Add, fill with the proper genitive forms, but CLDR data + is incomplete; completed according to the comments in this file. + (d_t_fmt): Do not use "di" before the month name, no longer needed. + + * localedata/locales/wa_BE (country_name): Reword + "Beljike" -> "Beldjike". + +2018-06-11 Joseph Myers + + [BZ #23272] + * sysdeps/ieee754/ldbl-96/s_fma.c (__fma): Start by handling all + cases of non-finite arguments. + * math/libm-test-fma.inc (fma_test_data): Add more tests. + +2018-06-10 John David Anglin + + [BZ #23174] + * sysdeps/unix/sysv/linux/hppa/Makefile: xfail check-execstack. + +2018-06-08 Adhemerval Zanella + + [BZ #23264] + * include/unistd.h (__execvpex): New prototype. + * posix/Makefile (tests): Add tst-spawn4. + (tests-internal): Add tst-spawn4-compat. + * posix/execvpe.c (__execvpe_common, __execvpex): New functions. + * posix/tst-spawn4-compat.c: New file. + * posix/tst-spawn4.c: Likewise. + * sysdeps/unix/sysv/linux/spawni.c (__spawni): Do not interpret invalid + binaries as shell scripts. + * sysdeps/posix/spawni.c (__spawni): Likewise. + +2018-06-08 H.J. Lu + + [BZ #23145] + * elf/Makefile (tests-special): Add $(objpfx)check-initfini.out. + ($(all-built-dso:=.dynsym): New target. + (common-generated): Add $(all-built-dso:$(common-objpfx)%=%.dynsym). + ($(objpfx)check-initfini.out): New target. + (generated): Add check-initfini.out. + * scripts/check-initfini.awk: New file. + * sysdeps/aarch64/crti.S (_init): Mark as hidden. + (_fini): Likewise. + * sysdeps/alpha/crti.S (_init): Mark as hidden. + (_fini): Likewise. + * sysdeps/arm/crti.S (_init): Mark as hidden. + (_fini): Likewise. + * sysdeps/hppa/crti.S (_init): Mark as hidden. + (_fini): Likewise. + * sysdeps/i386/crti.S (_init): Mark as hidden. + (_fini): Likewise. + * sysdeps/ia64/crti.S (_init): Mark as hidden. + (_fini): Likewise. + * sysdeps/m68k/crti.S (_init): Mark as hidden. + (_fini): Likewise. + * sysdeps/microblaze/crti.S (_init): Mark as hidden. + (_fini): Likewise. + * sysdeps/mips/mips32/crti.S (_init): Mark as hidden. + (_fini): Likewise. + * sysdeps/mips/mips64/n32/crti.S (_init): Mark as hidden. + (_fini): Likewise. + * sysdeps/mips/mips64/n64/crti.S (_init): Mark as hidden. + (_fini): Likewise. + * sysdeps/nios2/crti.S (_init): Mark as hidden. + (_fini): Likewise. + * sysdeps/powerpc/powerpc32/crti.S (_init): Mark as hidden. + (_fini): Likewise. + * sysdeps/powerpc/powerpc64/crti.S (_init): Mark as hidden. + (_fini): Likewise. + * sysdeps/s390/s390-32/crti.S (_init): Mark as hidden. + (_fini): Likewise. + * sysdeps/s390/s390-64/crti.S (_init): Mark as hidden. + (_fini): Likewise. + * sysdeps/sh/crti.S (_init): Mark as hidden. + (_fini): Likewise. + * sysdeps/sparc/crti.S (_init): Mark as hidden. + (_fini): Likewise. + * sysdeps/x86_64/crti.S (_init): Mark as hidden. + (_fini): Likewise. + +2018-06-06 Tulio Magno Quites Machado Filho + + * sysdeps/powerpc/powerpc64/le/fpu/e_sqrtf128.c + [__HAVE_FLOAT128_UNLIKE_LDBL] (TFtype, TF): Restrict TFtype + and TF redirection to KFtype and KF only when the default + long double type is not the IEEE 128-bit floating point type. + +2018-06-05 Joseph Myers + + * sysdeps/unix/sysv/linux/aarch64/bits/hwcap.h (HWCAP_DIT): New + macro. + (HWCAP_USCAT): Likewise. + (HWCAP_ILRCPC): Likewise. + (HWCAP_FLAGM): Likewise. + * sysdeps/unix/sysv/linux/aarch64/dl-procinfo.c (_DL_HWCAP_COUNT): + Increase to 28. + (_dl_aarch64_cap_flags): Add new flag names. + + * sysdeps/unix/sysv/linux/aarch64/bits/mman.h [__USE_MISC] + (MAP_FIXED_NOREPLACE): New macro. + * sysdeps/unix/sysv/linux/alpha/bits/mman.h [__USE_MISC] + (MAP_FIXED_NOREPLACE): Likewise. + * sysdeps/unix/sysv/linux/arm/bits/mman.h [__USE_MISC] + (MAP_FIXED_NOREPLACE): Likewise. + * sysdeps/unix/sysv/linux/hppa/bits/mman.h [__USE_MISC] + (MAP_FIXED_NOREPLACE): Likewise. + * sysdeps/unix/sysv/linux/ia64/bits/mman.h [__USE_MISC] + (MAP_FIXED_NOREPLACE): Likewise. + * sysdeps/unix/sysv/linux/m68k/bits/mman.h [__USE_MISC] + (MAP_FIXED_NOREPLACE): Likewise. + * sysdeps/unix/sysv/linux/microblaze/bits/mman.h [__USE_MISC] + (MAP_FIXED_NOREPLACE): Likewise. + * sysdeps/unix/sysv/linux/mips/bits/mman.h [__USE_MISC] + (MAP_FIXED_NOREPLACE): Likewise. + * sysdeps/unix/sysv/linux/nios2/bits/mman.h [__USE_MISC] + (MAP_FIXED_NOREPLACE): Likewise. + * sysdeps/unix/sysv/linux/powerpc/bits/mman.h [__USE_MISC] + (MAP_FIXED_NOREPLACE): Likewise. + * sysdeps/unix/sysv/linux/riscv/bits/mman.h [__USE_MISC] + (MAP_FIXED_NOREPLACE): Likewise. + * sysdeps/unix/sysv/linux/s390/bits/mman.h [__USE_MISC] + (MAP_FIXED_NOREPLACE): Likewise. + * sysdeps/unix/sysv/linux/sh/bits/mman.h [__USE_MISC] + (MAP_FIXED_NOREPLACE): Likewise. + * sysdeps/unix/sysv/linux/sparc/bits/mman.h [__USE_MISC] + (MAP_FIXED_NOREPLACE): Likewise. + * sysdeps/unix/sysv/linux/x86/bits/mman.h [__USE_MISC] + (MAP_FIXED_NOREPLACE): Likewise. + + * sysdeps/unix/sysv/linux/syscall-names.list: Update kernel + version to 4.17. + +2018-06-04 Joseph Myers + + * scripts/build-many-glibcs.py (Context.checkout): Default Linux + version to 4.17 + +2018-06-02 Samuel Thibault + + * bits/shm.h (struct shmid_ds): Make shm_segsz field size_t instead of + int. + * sysdeps/gnu/bits/shm.h (struct shmid_ds): Likewise. + +2018-06-01 Leonardo Sandoval + + * benchtests/scripts/compare_string.py: (process_results) Catch + exception in non-existent base_func and catch exception in + non-existent attribute. + (parse_file) Catch exception if input file does not exist. + +2018-06-01 Leonardo Sandoval + + * benchtests/scripts/compare_string.py: Add --no-diff and --no-header + options to avoid diff calculation and omit header, respectively. + (main): process --no-diff and --no-header + +2018-06-01 Leonardo Sandoval + H.J. Lu + + * sysdeps/x86_64/multiarch/Makefile (sysdep_routines): Add + strcmp-avx2, strncmp-avx2, wcscmp-avx2, wcscmp-sse2, wcsncmp-avx2 and + wcsncmp-sse2. + * sysdeps/x86_64/multiarch/ifunc-impl-list.c + (__libc_ifunc_impl_list): Add tests for __strcmp_avx2, + __strncmp_avx2, __wcscmp_avx2, __wcsncmp_avx2, __wcscmp_sse2 + and __wcsncmp_sse2. + * sysdeps/x86_64/multiarch/strcmp.c (OPTIMIZE (avx2)): + (IFUNC_SELECTOR): Return OPTIMIZE (avx2) on AVX 2 machines if + AVX unaligned load is fast and vzeroupper is preferred. + * sysdeps/x86_64/multiarch/strncmp.c: Likewise. + * sysdeps/x86_64/multiarch/strcmp-avx2.S: New file. + * sysdeps/x86_64/multiarch/strncmp-avx2.S: Likewise. + * sysdeps/x86_64/multiarch/wcscmp-avx2.S: Likewise. + * sysdeps/x86_64/multiarch/wcscmp-sse2.S: Likewise. + * sysdeps/x86_64/multiarch/wcscmp.c: Likewise. + * sysdeps/x86_64/multiarch/wcsncmp-avx2.S: Likewise. + * sysdeps/x86_64/multiarch/wcsncmp-sse2.c: Likewise. + * sysdeps/x86_64/multiarch/wcsncmp.c: Likewise. + * sysdeps/x86_64/wcscmp.S (__wcscmp): Add alias only if __wcscmp + is undefined. + +2018-06-01 Florian Weimer + + * sysdeps/i386/fpu/libm-test-ulps: Update with results from + configuring with --disable-multi-arch, building with + “-march=x86-64 -mtune=generic -mfpmath=sse” and running on a + Haswell-era CPU. + +2018-06-01 Florian Weimer + + * sysdeps/i386/i686/fpu/multiarch/libm-test-ulps: Update with + results from building with “-march=x86-64 -mtune=generic + -mfpmath=sse” and running on a Haswell-era CPU. + +2018-06-01 Joseph Myers + + [BZ #18473] + * soft-fp/sqrttf2.c: Remove file. + * soft-fp/sqrtdf2.c: Move to .... + * sysdeps/powerpc/nofpu/sqrtdf2.c: ... here. Include + . + (__sqrtdf2): Make conditional on + [SHLIB_COMPAT (libc, GLIBC_2_3_2, GLIBC_2_28)]. Define as compat + symbol. + * soft-fp/sqrtsf2.c: Move to .... + * sysdeps/powerpc/nofpu/sqrtsf2.c: ... here. Include + . + (__sqrtsf2): Make conditional on + [SHLIB_COMPAT (libc, GLIBC_2_3_2, GLIBC_2_28)]. Define as compat + symbol. + * soft-fp/Makefile (gcc-single-routines): Remove sqrtsf2. + (gcc-double-routines): Remove sqrtdf2. + (gcc-quad-routines): Remove sqrttf2. + * sysdeps/nios2/Makefile [$(subdir) = soft-fp] (sysdep_routines): + Do not filter out sqrtsf2 and sqrtdf2. + * sysdeps/powerpc/nofpu/Makefile [$(subdir) = soft-fp] + (sysdep_routines): Add sqrtsf2 and sqrtdf2. + +2018-06-01 Florian Weimer + + * sysdeps/generic/libcidn.abilist: Remove file. + +2018-06-01 Florian Weimer + + [BZ #23236] + * libio/strfile.h (struct _IO_str_fields): Rename members to + discourage their use and add comment. + (_IO_STR_DYNAMIC): Remove unused macro. + * libio/strops.c (_IO_str_init_static_internal): Do not use + callback pointers. Call malloc and free. + (_IO_str_overflow): Do not use callback pointers. Call malloc + and free. + (enlarge_userbuf): Likewise. + (_IO_str_finish): Call free. + * libio/wstrops.c (_IO_wstr_init_static): Initialize + _allocate_buffer_unused. + (_IO_wstr_overflow): Do not use callback pointers. Call malloc + and free. + (enlarge_userbuf): Likewise. + (_IO_wstr_finish): Call free. + * debug/vasprintf_chk.c (__vasprintf_chk): Initialize + _allocate_buffer_unused, _free_buffer_unused. + * libio/memstream.c (__open_memstream): Likewise. + * libio/vasprintf.c (_IO_vasprintf): Likewise. + * libio/wmemstream.c (open_wmemstream): Likewise. + +2018-05-30 Paul Pluzhnikov + + * sysdeps/x86_64/fpu/libm-test-ulps (log_vlen8_avx2): Update for + AMD Ryzen 7 1800X. + +2018-05-30 Rajalakshmi Srinivasaraghavan + + * sysdeps/powerpc/powerpc64/le/fpu/multiarch/Makefile: New file to + add w_sqrtf128-power9 and w_sqrtf128-ppc64le to libm-sysdep_routines. + * sysdeps/powerpc/powerpc64/le/fpu/multiarch/w_sqrtf128-power9.c: + New file. + * sysdeps/powerpc/powerpc64/le/fpu/multiarch/w_sqrtf128-ppc64le.c: + Likewise. + * sysdeps/powerpc/powerpc64/le/fpu/multiarch/w_sqrtf128.c: Likewise. + +2018-05-29 Florian Weimer + + * support/Makefile (libsupport-routines): Add + xpthread_barrierattr_destroy, xpthread_barrierattr_init, + xpthread_barrierattr_setpshared. + * support/xpthread_barrierattr_destroy.c: New file. + * support/xpthread_barrierattr_init.c: Likewise. + * support/xpthread_barrierattr_setpshared.c: Likewise. + +2018-05-29 H.J. Lu + + [BZ #23206] + * elf/dl-reloc-static-pie.c (_dl_relocate_static_pie): Initialize + _r_debug and update DT_DEBUG for debugger. + +2018-05-29 Florian Weimer + + * stdlib/Makefile (tst-strtod1i.out): Depend on generated locales. + (tst-strtod5i.out): Likewise. + +2018-05-25 Joseph Myers + + * sysdeps/sparc/sparc64/Implies: Remove sparc/sparc64/soft-fp. + * sysdeps/sparc/sparc64/Makefile [$(subdir) = soft-fp] + (sparc64-quad-routines): New variable. Moved from .... + [$(subdir) = soft-fp] (sysdep_routines): Add + $(sparc64-quad-routines). Moved from .... + [$(subdir) = math] (CPPFLAGS): Add -I../soft-fp/. Moved from .... + * sysdeps/sparc/sparc64/soft-fp/Makefile: ... here. Remove file. + * sysdeps/sparc/sparc64/Versions (libc): Add GLIBC_2.2 symbols + moved from .... + * sysdeps/sparc/sparc64/soft-fp/Versions: ... here. Remove file. + * sysdeps/sparc/sparc64/soft-fp/e_ilogbl.c: Remove file. + * sysdeps/sparc/sparc64/soft-fp/qp_add.c: Move to .... + * sysdeps/sparc/sparc64/qp_add.c: ... here. + * sysdeps/sparc/sparc64/soft-fp/qp_cmp.c: Move to .... + * sysdeps/sparc/sparc64/qp_cmp.c: ... here. + * sysdeps/sparc/sparc64/soft-fp/qp_cmpe.c: Move to .... + * sysdeps/sparc/sparc64/qp_cmpe.c: ... here. + * sysdeps/sparc/sparc64/soft-fp/qp_div.c: Move to .... + * sysdeps/sparc/sparc64/qp_div.c: ... here. + * sysdeps/sparc/sparc64/soft-fp/qp_dtoq.c: Move to .... + * sysdeps/sparc/sparc64/qp_dtoq.c: ... here. + * sysdeps/sparc/sparc64/soft-fp/qp_feq.c: Move to .... + * sysdeps/sparc/sparc64/qp_feq.c: ... here. + * sysdeps/sparc/sparc64/soft-fp/qp_fge.c: Move to .... + * sysdeps/sparc/sparc64/qp_fge.c: ... here. + * sysdeps/sparc/sparc64/soft-fp/qp_fgt.c: Move to .... + * sysdeps/sparc/sparc64/qp_fgt.c: ... here. + * sysdeps/sparc/sparc64/soft-fp/qp_fle.c: Move to .... + * sysdeps/sparc/sparc64/qp_fle.c: ... here. + * sysdeps/sparc/sparc64/soft-fp/qp_flt.c: Move to .... + * sysdeps/sparc/sparc64/qp_flt.c: ... here. + * sysdeps/sparc/sparc64/soft-fp/qp_fne.c: Move to .... + * sysdeps/sparc/sparc64/qp_fne.c: ... here. + * sysdeps/sparc/sparc64/soft-fp/qp_itoq.c: Move to .... + * sysdeps/sparc/sparc64/qp_itoq.c: ... here. + * sysdeps/sparc/sparc64/soft-fp/qp_mul.c: Move to .... + * sysdeps/sparc/sparc64/qp_mul.c: ... here. + * sysdeps/sparc/sparc64/soft-fp/qp_neg.S: Move to .... + * sysdeps/sparc/sparc64/qp_neg.S: ... here. + * sysdeps/sparc/sparc64/soft-fp/qp_qtod.c: Move to .... + * sysdeps/sparc/sparc64/qp_qtod.c: ... here. + * sysdeps/sparc/sparc64/soft-fp/qp_qtoi.c: Move to .... + * sysdeps/sparc/sparc64/qp_qtoi.c: ... here. + * sysdeps/sparc/sparc64/soft-fp/qp_qtos.c: Move to .... + * sysdeps/sparc/sparc64/qp_qtos.c: ... here. + * sysdeps/sparc/sparc64/soft-fp/qp_qtoui.c: Move to .... + * sysdeps/sparc/sparc64/qp_qtoui.c: ... here. + * sysdeps/sparc/sparc64/soft-fp/qp_qtoux.c: Move to .... + * sysdeps/sparc/sparc64/qp_qtoux.c: ... here. + * sysdeps/sparc/sparc64/soft-fp/qp_qtox.c: Move to .... + * sysdeps/sparc/sparc64/qp_qtox.c: ... here. + * sysdeps/sparc/sparc64/soft-fp/qp_sqrt.c: Move to .... + * sysdeps/sparc/sparc64/qp_sqrt.c: ... here. + * sysdeps/sparc/sparc64/soft-fp/qp_stoq.c: Move to .... + * sysdeps/sparc/sparc64/qp_stoq.c: ... here. + * sysdeps/sparc/sparc64/soft-fp/qp_sub.c: Move to .... + * sysdeps/sparc/sparc64/qp_sub.c: ... here. + * sysdeps/sparc/sparc64/soft-fp/qp_uitoq.c: Move to .... + * sysdeps/sparc/sparc64/qp_uitoq.c: ... here. + * sysdeps/sparc/sparc64/soft-fp/qp_util.c: Move to .... + * sysdeps/sparc/sparc64/qp_util.c: ... here. + * sysdeps/sparc/sparc64/soft-fp/qp_uxtoq.c: Move to .... + * sysdeps/sparc/sparc64/qp_uxtoq.c: ... here. + * sysdeps/sparc/sparc64/soft-fp/qp_xtoq.c: Move to .... + * sysdeps/sparc/sparc64/qp_xtoq.c: ... here. + * sysdeps/sparc/sparc64/soft-fp/sfp-machine.h: Move to .... + * sysdeps/sparc/sparc64/sfp-machine.h: ... here. + + * sysdeps/sparc/sparc32/Implies: Remove sparc/sparc32/soft-fp. + * sysdeps/sparc/sparc32/Makefile [$(subdir) = soft-fp] + (sparc32-quad-routines): New variable. Moved from .... + [$(subdir) = soft-fp] (sysdep_routines): Add + $(sparc32-quad-routines). Moved from .... + * sysdeps/sparc/sparc32/soft-fp/Makefile: ... here. Remove file. + * sysdeps/sparc/sparc32/Versions (libc): Add GLIBC_2.4 symbols + moved from .... + * sysdeps/sparc/sparc32/soft-fp/Versions: ... here. Remove file. + * sysdeps/sparc/sparc32/soft-fp/q_add.c: Move to .... + * sysdeps/sparc/sparc32/q_add.c: ... here. + * sysdeps/sparc/sparc32/soft-fp/q_cmp.c: Move to .... + * sysdeps/sparc/sparc32/q_cmp.c: ... here. + * sysdeps/sparc/sparc32/soft-fp/q_cmpe.c: Move to .... + * sysdeps/sparc/sparc32/q_cmpe.c: ... here. + * sysdeps/sparc/sparc32/soft-fp/q_div.c: Move to .... + * sysdeps/sparc/sparc32/q_div.c: ... here. + * sysdeps/sparc/sparc32/soft-fp/q_dtoq.c: Move to .... + * sysdeps/sparc/sparc32/q_dtoq.c: ... here. + * sysdeps/sparc/sparc32/soft-fp/q_feq.c: Move to .... + * sysdeps/sparc/sparc32/q_feq.c: ... here. + * sysdeps/sparc/sparc32/soft-fp/q_fge.c: Move to .... + * sysdeps/sparc/sparc32/q_fge.c: ... here. + * sysdeps/sparc/sparc32/soft-fp/q_fgt.c: Move to .... + * sysdeps/sparc/sparc32/q_fgt.c: ... here. + * sysdeps/sparc/sparc32/soft-fp/q_fle.c: Move to .... + * sysdeps/sparc/sparc32/q_fle.c: ... here. + * sysdeps/sparc/sparc32/soft-fp/q_flt.c: Move to .... + * sysdeps/sparc/sparc32/q_flt.c: ... here. + * sysdeps/sparc/sparc32/soft-fp/q_fne.c: Move to .... + * sysdeps/sparc/sparc32/q_fne.c: ... here. + * sysdeps/sparc/sparc32/soft-fp/q_itoq.c: Move to .... + * sysdeps/sparc/sparc32/q_itoq.c: ... here. + * sysdeps/sparc/sparc32/soft-fp/q_lltoq.c: Move to .... + * sysdeps/sparc/sparc32/q_lltoq.c: ... here. + * sysdeps/sparc/sparc32/soft-fp/q_mul.c: Move to .... + * sysdeps/sparc/sparc32/q_mul.c: ... here. + * sysdeps/sparc/sparc32/soft-fp/q_neg.c: Move to .... + * sysdeps/sparc/sparc32/q_neg.c: ... here. + * sysdeps/sparc/sparc32/soft-fp/q_qtod.c: Move to .... + * sysdeps/sparc/sparc32/q_qtod.c: ... here. + * sysdeps/sparc/sparc32/soft-fp/q_qtoi.c: Move to .... + * sysdeps/sparc/sparc32/q_qtoi.c: ... here. + * sysdeps/sparc/sparc32/soft-fp/q_qtoll.c: Move to .... + * sysdeps/sparc/sparc32/q_qtoll.c: ... here. + * sysdeps/sparc/sparc32/soft-fp/q_qtos.c: Move to .... + * sysdeps/sparc/sparc32/q_qtos.c: ... here. + * sysdeps/sparc/sparc32/soft-fp/q_qtou.c: Move to .... + * sysdeps/sparc/sparc32/q_qtou.c: ... here. + * sysdeps/sparc/sparc32/soft-fp/q_qtoull.c: Move to .... + * sysdeps/sparc/sparc32/q_qtoull.c: ... here. + * sysdeps/sparc/sparc32/soft-fp/q_sqrt.c: Move to .... + * sysdeps/sparc/sparc32/q_sqrt.c: ... here. + * sysdeps/sparc/sparc32/soft-fp/q_stoq.c: Move to .... + * sysdeps/sparc/sparc32/q_stoq.c: ... here. + * sysdeps/sparc/sparc32/soft-fp/q_sub.c: Move to .... + * sysdeps/sparc/sparc32/q_sub.c: ... here. + * sysdeps/sparc/sparc32/soft-fp/q_ulltoq.c: Move to .... + * sysdeps/sparc/sparc32/q_ulltoq.c: ... here. + * sysdeps/sparc/sparc32/soft-fp/q_util.c: Move to .... + * sysdeps/sparc/sparc32/q_util.c: ... here. + * sysdeps/sparc/sparc32/soft-fp/q_utoq.c: Move to .... + * sysdeps/sparc/sparc32/q_utoq.c: ... here. + * sysdeps/sparc/sparc32/soft-fp/sfp-machine.h: Move to .... + * sysdeps/sparc/sparc32/sfp-machine.h: ... here. + +2018-05-24 Tulio Magno Quites Machado Filho + Gabriel F. T. Gomes + + * sysdeps/powerpc/Implies: Removed. Previous contents copied to... + * sysdeps/powerpc/powerpc32/Implies-after: ... here. + * sysdeps/powerpc/powerpc64/be/Implies-after: ... here. + * sysdeps/powerpc/powerpc64/le/Implies-before: ... and here. + +2018-05-24 Joseph Myers + + * sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/Implies: Remove + powerpc/soft-fp. + * sysdeps/unix/sysv/linux/powerpc/powerpc32/e500/nofpu/Implies: + Likewise. + * sysdeps/powerpc/soft-fp/sfp-machine.h: Move to .... + * sysdeps/powerpc/nofpu/sfp-machine.h: ... here. + +2018-05-24 Gabriel F. T. Gomes + + [BZ #23171] + * math/math.h [C++] (iseqsig): Fix parameter type for the long + double version. + +2018-05-23 Joseph Myers + + * sysdeps/sh/Implies: Remove sh/soft-fp. + * sysdeps/sh/soft-fp/sfp-machine.h: Move to .... + * sysdeps/sh/sfp-machine.h: ... here. + +2018-05-23 H.J. Lu + + * sysdeps/x86_64/multiarch/memmove-vec-unaligned-erms.S + (__mempcpy_erms): Skip zero length. + (__memmove_erms): Likewise. + * sysdeps/x86_64/multiarch/memset-vec-unaligned-erms.S + (__memset_erms): Likewise. + +2018-05-23 Joseph Myers + + * sysdeps/alpha/Implies: Remove alpha/soft-fp. + * sysdeps/alpha/Makefile [$(subdir) = soft-fp] (sysdep_routines): + Add functions moved from .... + [$(subdir) = math] (CPPFLAGS): Add -I../soft-fp. Moved from .... + * sysdeps/alpha/soft-fp/Makefile: ... here. Remove file. + * sysdeps/alpha/Versions (libc): Add GLIBC_2.3.4 symbols moved + from .... + * sysdeps/alpha/soft-fp/Versions: ... here. Remove file. + * sysdeps/alpha/soft-fp/e_sqrtl.c: Move to .... + * sysdeps/alpha/e_sqrtl.c: ... here. + * sysdeps/alpha/soft-fp/local-soft-fp.h: Move to .... + * sysdeps/alpha/local-soft-fp.h: ... here. + * sysdeps/alpha/soft-fp/ots_add.c: Move to .... + * sysdeps/alpha/ots_add.c: ... here. + * sysdeps/alpha/soft-fp/ots_cmp.c: Move to .... + * sysdeps/alpha/ots_cmp.c: ... here. + * sysdeps/alpha/soft-fp/ots_cmpe.c: Move to .... + * sysdeps/alpha/ots_cmpe.c: ... here. + * sysdeps/alpha/soft-fp/ots_cvtqux.c: Move to .... + * sysdeps/alpha/ots_cvtqux.c: ... here. + * sysdeps/alpha/soft-fp/ots_cvtqx.c: Move to .... + * sysdeps/alpha/ots_cvtqx.c: ... here. + * sysdeps/alpha/soft-fp/ots_cvttx.c: Move to .... + * sysdeps/alpha/ots_cvttx.c: ... here. + * sysdeps/alpha/soft-fp/ots_cvtxq.c: Move to .... + * sysdeps/alpha/ots_cvtxq.c: ... here. + * sysdeps/alpha/soft-fp/ots_cvtxt.c: Move to .... + * sysdeps/alpha/ots_cvtxt.c: ... here. + * sysdeps/alpha/soft-fp/ots_div.c: Move to .... + * sysdeps/alpha/ots_div.c: ... here. + * sysdeps/alpha/soft-fp/ots_mul.c: Move to .... + * sysdeps/alpha/ots_mul.c: ... here. + * sysdeps/alpha/soft-fp/ots_nintxq.c: Move to .... + * sysdeps/alpha/ots_nintxq.c: ... here. + * sysdeps/alpha/soft-fp/ots_sub.c: Move to .... + * sysdeps/alpha/ots_sub.c: ... here. + * sysdeps/alpha/soft-fp/sfp-machine.h: Move to .... + * sysdeps/alpha/sfp-machine.h: ... here. + +2018-05-23 Florian Weimer + + [BZ #19728] + [BZ #19729] + [BZ #22247] + CVE-2016-6261 + CVE-2016-6263 + CVE-2017-14062 + Switch to extern IDNA implementation (libidn2). + * libidn: Remove subdirectory. + * LICENSES: Do not mention licensing conditions for the removed + libidn code. + * config.h.in (HAVE_LIBIDN): Remove. + * include/dlfcn.h (__libc_dlopen): Update comment. + * include/idna.h: Remove file. + * inet/Makefile (routines): Add idna. + (tests-static, tests-internal): Add tst-idna_name_classify. + (LOCALES): Generate locales for tests. + (tst-idna_name_classify.out): Depend on generated locales. + * inet/idna_name_classify.c: New file. + * inet/tst-idna_name_classify.c: Likewise. + * inet/net-internal.h (__idna_to_dns_encoding) + (__idna_from_dns_encoding): Declare. + * inet/net-internal.h (enum idna_name_classification): Define. + (__idna_name_classify): Declare. + * inet/Versions (GLIBC_PRIVATE): Add __idna_to_dns_encoding, + __idna_from_dns_encoding. + * inet/getnameinfo.c (DEPRECATED_NI_IDN): Define. + (gni_host_inet_name): Call __idna_from_dns_encoding. Use punycode + name as a fallback in case of encoding errors. + (getnameinfo): Use DEPRECATED_NI_IDN. + * inet/idna.c: New file. + * nscd/gai.c: Do not include . + * resolv/Makefile (tests): Add tst-resolv-ai_idn, + tst-resolv-ai_idn-latin1, tst-resolv-ai_idn-nolibidn2. + (modules-names): Add tst-no-libidn2. + (extra-test-objs): Add tst-no-libidn2.os. + (LDFLAGS-tst-no-libidn2.so): Set soname. + (LOCALES): Set, and generate locales. + (tst-resolv-ai_idn): Link with -ldl -lresolv -lpthread. + (tst-resolv-ai_idn-latin1): Likewise. + (tst-resolv-ai_idn-nolibidn2): Likewise. + (tst-resolv-ai_idn.out): Depend on locales. + (tst-resolv-ai_idn-latin1.out): Depend on locales. + (tst-resolv-ai_idn-nolibidn2.out): Depend on locales and + tst-no-libidn2.so. + * resolv/netdb.h (AI_IDN_ALLOW_UNASSIGNED) + (AI_IDN_USE_STD3_ASCII_RULES, NI_IDN_ALLOW_UNASSIGNED) + (NI_IDN_USE_STD3_ASCII_RULES): Deprecate. + * resolv/tst-resolv-ai_idn.c: New file. + * resolv/tst-resolv-ai_idn-latin1.c: Likewise. + * resolv/tst-resolv-ai_idn-nolibidn2.c: Likewise. + * resolv/tst-no-libidn2.c: Likewise. + * support/support_format_addrinfo.c (format_ai_flags): Do not + handle AI_IDN_ALLOW_UNASSIGNED, AI_IDN_USE_STD3_ASCII_RULES. + * sysdeps/posix/getaddrinfo.c (DEPRECATED_AI_IDN): Define. + (gaih_inet): Call __idna_to_dns_encoding and + __idna_from_dns_encoding, and use the original (punycode) name if + __idna_from_dns_encoding fails due to an encoding error. + (getaddrinfo): Use DEPRECATED_AI_IDN. + * sysdeps/unix/inet/Subdirs (libidn): Remove. + * sysdeps/unix/inet/configure: Remove file. + * sysdeps/unix/inet/configure.ac: Likewise. + +2018-05-23 Florian Weimer + + Implement allocate_once. + * include/allocate_once.h: New file. + * misc/allocate_once.c: Likewise. + * misc/tst-allocate_once.c: Likewise. + * misc/Makefile (routines): Add allocate_once. + (tests-internal): Add tst-allocate_once. + (generated): Add tst-allocate_once.mtrace, + tst-allocate_once-mem.out. + (tests-special): Add tst-allocate_once-mem.out. + (tst-allocate_once-ENV): Set MALLOC_TRACE. + (tst-allocate_once-mem.out): Call mtrace. + * misc/Versions (GLIBC_PRIVATE): Add __libc_allocate_once_slow. + +2018-05-23 H.J. Lu + + [BZ #23196] + * string/test-memcpy.c (do_test1): New function. + (test_main): Call it. + +2018-05-23 Andreas Schwab + + [BZ #23196] + CVE-2018-11237 + * sysdeps/x86_64/multiarch/memmove-avx512-no-vzeroupper.S + (L(preloop_large)): Save initial destination pointer in %r11 and + use it instead of %rax after the loop. + * string/test-mempcpy.c (MIN_PAGE_SIZE): Define. + +2018-05-22 Joseph Myers + + * sysdeps/aarch64/Implies: Remove aarch64/soft-fp. + * sysdeps/aarch64/Makefile [$(subdir) = math] (CPPFLAGS): Add + -I../soft-fp. Moved from .... + * sysdeps/aarch64/soft-fp/Makefile: ... here. Remove file. + * sysdeps/aarch64/soft-fp/e_sqrtl.c: Move to .... + * sysdeps/aarch64/e_sqrtl.c: ... here. + * sysdeps/aarch64/soft-fp/sfp-machine.h: Move to .... + * sysdeps/aarch64/sfp-machine.h: ... here. + + * sysdeps/ieee754/dbl-64/k_rem_pio2.c (__kernel_rem_pio2): Ignore + -Wmaybe-uninitialized around access to fq[0]. + * sysdeps/ieee754/flt-32/k_rem_pio2f.c (__kernel_rem_pio2f): + Likewise. + + [BZ #18471] + * sysdeps/unix/make-syscalls.sh (emit_weak_aliases): Use weak + aliases for non-libc case of versioned symbols. + * sysdeps/unix/sysv/linux/lseek64.c: Include . + (llseek): Define as compat symbol if + [SHLIB_COMPAT (libc, GLIBC_2_0, GLIBC_2_28)], not as weak alias + with link warning. + * sysdeps/unix/sysv/linux/mips/mips64/n32/syscalls.list (llseek): + Make into a compat symbol, disabled for minimum symbol version + GLIBC_2.28 and later. + * sysdeps/unix/sysv/linux/x86_64/x32/llseek.S: Remove file. + +2018-05-22 Florian Weimer + + * sysdeps/i386/Makefile [$(subdir) == math] (sysdep-CFLAGS): Do + not add -mpreferred-stack-boundary=4. + [$(subdir) == csu] (sysdep-CFLAGS): Likewise. + (stack-align-test-flags): Likewise. + [$(subdir) == stdlib] (CFLAGS-exit.c, CFLAGS-cxa_finalize.c): + Likewise. + [$(subdir) == elf] (CFLAGS-dl-init.c, CFLAGS-dl-fini.c) + (CFLAGS-dl-open.c, CFLAGS-dl-close.c, CFLAGS-dl-error.c): Likewise. + [$(subdir) == dlfcn] (CFLAGS-dlopen.c, CFLAGS-dlopenold.c) + (CFLAGS-dlclose.c, CFLAGS-dlerror.c): Likewise. + * sysdeps/i386/nptl/Makefile [$(subdir) == nptl] + (CFLAGS-pthread_create.c, CFLAGS-tst-align.c) + (CFLAGS-tst-align2.c): Likewise. + +2018-05-21 H.J. Lu + + * sysdeps/x86/cpu-features.h (bit_arch_Prefer_FSRM): New. + (index_arch_Prefer_FSRM): Likewise. + * sysdeps/x86/cpu-tunables.c (TUNABLE_CALLBACK (set_hwcaps)): + Also check Prefer_FSRM. + * sysdeps/x86_64/multiarch/ifunc-memmove.h (IFUNC_SELECTOR): + Also return OPTIMIZE (erms) for Prefer_FSRM. + +2018-05-21 H.J. Lu + + * sysdeps/x86/cpu-features.h (bit_cpu_FSRM): New. + (index_cpu_FSRM): Likewise. + (reg_FSRM): Likewise. + +2018-05-18 Joseph Myers + + * math/gen-tgmath-tests.py: Import sys. + (Tests.__init__): Initialize macros_seen. + (Tests.add_tests): Add macro to macros_seen. Only generate tests + if requested to do so for this macro. + (Tests.add_all_tests): Take argument for macro for which to + generate tests. + (Tests.check_macro_list): New function. + (main): Handle check-list argument and argument specifying macro + for which to generate tests. + * math/Makefile [PYTHON] (tgmath3-macros): New variable. + [PYTHON] (tgmath3-macro-tests): Likewise. + [PYTHON] (tests): Add $(tgmath3-macro-tests) not test-tgmath3. + [PYTHON] (generated): Add $(addsuffix .c,$(tgmath3-macro-tests)) + not test-tgmath3.c. + [PYTHON] (CFLAGS-test-tgmath3.c): Remove. + [PYTHON] ($(tgmath3-macro-tests:%=$(objpfx)%.o): Add -fno-builtin + to CFLAGS. + [PYTHON] ($(objpfx)test-tgmath3.c): Replace rule by.... + [PYTHON] ($(foreach + m,$(tgmath3-macros),$(objpfx)test-tgmath3-$(m).c): ... this. New + rule. + [PYTHON] (tests-special): Add + $(objpfx)test-tgmath3-macro-list.out. + [PYTHON] ($(objpfx)test-tgmath3-macro-list.out): New rule. + + * sysdeps/unix/sysv/linux/syscalls.list (nfsservctl): Make into a + compat symbol, disabled for minimum symbol version GLIBC_2.28 and + later. + + [BZ #22639] + * time/tzset.c (SECSPERDAY): Cast to time_t. + * time/tst-y2039.c: New file. + * time/Makefile (tests): Add tst-y2039. + +2018-05-17 Leonardo Sandoval + + * sysdeps/x86_64/multiarch/memmove-vec-unaligned-erms.S + (PREFETCH_ONE_SET): Remove duplicate line. + +2018-05-17 Florian Weimer + + * sysdeps/generic/math-type-macros-double.h: Include + after . + * sysdeps/generic/math-type-macros-float.h: Include + after . + * sysdeps/generic/math-type-macros-float128.h: Include + after . + * sysdeps/generic/math-type-macros-ldouble.h: Include + after . + +2018-05-17 Andreas Schwab + + * resolv/res_send.c (__res_context_send): Don't set errno when + returing error after malloc failure. + +2018-05-17 H.J. Lu + + * nptl/allocatestack.c (allocate_stack): Remove the + !__ASSUME_PRIVATE_FUTEX paths. + * nptl/descr.h (header): Remove the !__ASSUME_PRIVATE_FUTEX path. + * nptl/nptl-init.c (__pthread_initialize_minimal_internal): + Likewise. + * sysdeps/i386/nptl/tcb-offsets.sym (PRIVATE_FUTEX): Removed. + * sysdeps/powerpc/nptl/tcb-offsets.sym (PRIVATE_FUTEX): Likewise. + * sysdeps/sh/nptl/tcb-offsets.sym (PRIVATE_FUTEX): Likewise. + * sysdeps/x86_64/nptl/tcb-offsets.sym (PRIVATE_FUTEX): Likewise. + * sysdeps/i386/nptl/tls.h: (tcbhead_t): Remve the + !__ASSUME_PRIVATE_FUTEX path. + * sysdeps/s390/nptl/tls.h (tcbhead_t): Likewise. + * sysdeps/sparc/nptl/tls.h (tcbhead_t): Likewise. + * sysdeps/x86_64/nptl/tls.h (tcbhead_t): Likewise. + * sysdeps/unix/sysv/linux/i386/lowlevellock.S: Remove the + !__ASSUME_PRIVATE_FUTEX macros. + * sysdeps/unix/sysv/linux/lowlevellock-futex.h: Likewise. + * sysdeps/unix/sysv/linux/x86_64/cancellation.S: Likewise. + * sysdeps/unix/sysv/linux/x86_64/lowlevellock.S: Likewise. + * sysdeps/unix/sysv/linux/kernel-features.h + (__ASSUME_PRIVATE_FUTEX): Removed. + +2018-05-17 Joseph Myers + + * math/Makefile (libm-narrow-fns): Add div. + (libm-test-funcs-narrow): Likewise. + * math/Versions (GLIBC_2.28): Add narrowing divide functions. + * math/bits/mathcalls-narrow.h (div): Use __MATHCALL_NARROW. + * math/gen-auto-libm-tests.c (test_functions): Add div. + * math/math-narrow.h (CHECK_NARROW_DIV): New macro. + (NARROW_DIV_ROUND_TO_ODD): Likewise. + (NARROW_DIV_TRIVIAL): Likewise. + * sysdeps/ieee754/float128/float128_private.h (__fdivl): New + macro. + (__ddivl): Likewise. + * sysdeps/ieee754/ldbl-opt/Makefile (libnldbl-calls): Add fdiv and + ddiv. + (CFLAGS-nldbl-ddiv.c): New variable. + (CFLAGS-nldbl-fdiv.c): Likewise. + * sysdeps/ieee754/ldbl-opt/Versions (GLIBC_2.28): Add + __nldbl_ddivl. + * sysdeps/ieee754/ldbl-opt/nldbl-compat.h (__nldbl_ddivl): New + prototype. + * manual/arith.texi (Misc FP Arithmetic): Document fdiv, fdivl, + ddivl, fMdivfN, fMdivfNx, fMxdivfN and fMxdivfNx. + * math/auto-libm-test-in: Add tests of div. + * math/auto-libm-test-out-narrow-div: New generated file. + * math/libm-test-narrow-div.inc: New file. + * sysdeps/i386/fpu/s_f32xdivf64.c: Likewise. + * sysdeps/ieee754/dbl-64/s_f32xdivf64.c: Likewise. + * sysdeps/ieee754/dbl-64/s_fdiv.c: Likewise. + * sysdeps/ieee754/float128/s_f32divf128.c: Likewise. + * sysdeps/ieee754/float128/s_f64divf128.c: Likewise. + * sysdeps/ieee754/float128/s_f64xdivf128.c: Likewise. + * sysdeps/ieee754/ldbl-128/s_ddivl.c: Likewise. + * sysdeps/ieee754/ldbl-128/s_f64xdivf128.c: Likewise. + * sysdeps/ieee754/ldbl-128/s_fdivl.c: Likewise. + * sysdeps/ieee754/ldbl-128ibm/s_ddivl.c: Likewise. + * sysdeps/ieee754/ldbl-128ibm/s_fdivl.c: Likewise. + * sysdeps/ieee754/ldbl-96/s_ddivl.c: Likewise. + * sysdeps/ieee754/ldbl-96/s_fdivl.c: Likewise. + * sysdeps/ieee754/ldbl-opt/nldbl-ddiv.c: Likewise. + * sysdeps/ieee754/ldbl-opt/nldbl-fdiv.c: Likewise. + * sysdeps/ieee754/soft-fp/s_ddivl.c: Likewise. + * sysdeps/ieee754/soft-fp/s_fdiv.c: Likewise. + * sysdeps/ieee754/soft-fp/s_fdivl.c: Likewise. + * sysdeps/powerpc/fpu/libm-test-ulps: Update. + * sysdeps/mach/hurd/i386/libm.abilist: Likewise. + * sysdeps/unix/sysv/linux/aarch64/libm.abilist: Likewise. + * 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/riscv/rv64/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/x86_64/64/libm.abilist: Likewise. + * sysdeps/unix/sysv/linux/x86_64/x32/libm.abilist: Likewise. + +2018-05-16 Adhemerval Zanella + + [BZ #23178] + * nscd/nscd-client.h (sendfileall): Remove prototype. + * nscd/connections.c [HAVE_SENDFILE] (sendfileall): Remove function. + (handle_request): Use writeall instead of sendfileall. + * nscd/aicache.c (addhstaiX): Likewise. + * nscd/grpcache.c (cache_addgr): Likewise. + * nscd/hstcache.c (cache_addhst): Likewise. + * nscd/initgrcache.c (addinitgroupsX): Likewise. + * nscd/netgroupcache.c (addgetnetgrentX, addinnetgrX): Likewise. + * nscd/pwdcache.c (cache_addpw): Likewise. + * nscd/servicescache.c (cache_addserv): Likewise. + * sysdeps/unix/sysv/linux/Makefile [$(subdir) == nscd] + (sysdep-CFLAGS): Remove -DHAVE_SENDFILE. + * sysdeps/unix/sysv/linux/kernel-features.h (__ASSUME_SENDFILE): + Remove define. + +2018-05-16 H.J. Lu + + * sysdeps/x86_64/multiarch/strncat-c.c (STRNCAT_PRIMARY): Removed. + Include . + * sysdeps/x86_64/multiarch/strncat.c (__strncat): New strong + alias. + (__GI___strncat): New hidden alias. + +2018-05-16 Joseph Myers + + * sysdeps/mips/mips32/libm-test-ulps: Update. + * sysdeps/mips/mips64/libm-test-ulps: Likewise. + +2018-05-16 Florian Weimer + + * support/Makefile (libsupport-routines): Add support_quote_blob, + support_test_compare_blob. + (tests): Add tst-support_quote_blob, tst-test_compare_blob. + * support/check.h (TEST_COMPARE_BLOB): Define. + (support_test_compare_blob): Declare. + * support/support.h (support_quote_blob): Declare. + * support/support_quote_blob.c: New file. + * support/support_test_compare_blob.c: Likewise. + * support/tst-support_quote_blob.c: Likewise. + * support/tst-test_compare_blob.c: Likewise. + +2018-05-16 Florian Weimer + + * stdlib/strtod_nan.c: Include instead + of . + * stdlib/strtod_nan_main.c (STRTOD_NAN): Use SET_NAN_PAYLOAD + instead of SET_MANTISSA. + * stdlib/strtof_nan.c: Include instead + of include . + * stdlib/strtold_nan.c: Include + instead of . + * stdlib/strtod_nan_double.h: Move to ... + * sysdeps/generic/math-nan-payload-double.h: ... here. + (FLOAT): Remove definition. + (SET_MANTISSA): Rename to ... + (SET_NAN_PAYLOAD): ... this. + * stdlib/strtod_nan_float.h: Move to ... + * sysdeps/generic/math-nan-payload-float.h: ... here. + (FLOAT): Remove definition. + (SET_MANTISSA): Rename to ... + (SET_NAN_PAYLOAD): ... this. + * sysdeps/generic/math-type-macros-double.h: Include + . Include + instead of . + * sysdeps/generic/math-type-macros-float.h: Include + . Include + instead of . + * sysdeps/generic/math-type-macros-float128.h: Include + . + * sysdeps/generic/math-type-macros-ldouble.h: Include + . Include + instead of . + * sysdeps/generic/math-type-macros.h: Document SET_NAN_PAYLOAD and + check for definition. + * sysdeps/ieee754/float128/strtod_nan_float128.h: Move to ... + * sysdeps/ieee754/float128/math-nan-payload-float128.h: ... here. + Include . + (FLOAT): Remove definition. + (SET_MANTISSA): Rename to ... + (SET_NAN_PAYLOAD): ... this. + * sysdeps/ieee754/float128/strtof128_nan.c: Include + instead of . + Do not include . + * sysdeps/ieee754/float128/wcstof128_nan.c: Likewise. + * sysdeps/ieee754/ldbl-128/strtod_nan_ldouble.h: Move to ... + * sysdeps/ieee754/ldbl-128/math-nan-payload-ldouble.h: ... here. + (FLOAT): Remove definition. + (SET_MANTISSA): Rename to ... + (SET_NAN_PAYLOAD): ... this. + * sysdeps/ieee754/ldbl-128ibm/strtod_nan_ldouble.h: Move to ... + * sysdeps/ieee754/ldbl-128ibm/math-nan-payload-ldouble.h: ... here. + (FLOAT): Remove definition. + (SET_MANTISSA): Rename to ... + (SET_NAN_PAYLOAD): ... this. + * sysdeps/ieee754/ldbl-96/strtod_nan_ldouble.h: Move to ... + * sysdeps/ieee754/ldbl-96/math-nan-payload-ldouble.h: ... here. + (FLOAT): Remove definition. + (SET_MANTISSA): Rename to ... + (SET_NAN_PAYLOAD): ... this. + * wcsmbs/wcstod_nan.c: Include instead + of "../stdlib/strtod_nan_double.h". + * wcsmbs/wcstof_nan.c: Include instead + of "../stdlib/strtod_nan_float.h". + * wcsmbs/wcstold_nan.c: Include + instead of "../stdlib/strtod_nan_ldouble.h". + * manual/arith.texi (Parsing of Floats): Adjust comment. + +2018-05-16 Joseph Myers + + * math/Makefile (libm-narrow-fns): Add mul. + (libm-test-funcs-narrow): Likewise. + * math/Versions (GLIBC_2.28): Add narrowing multiply functions. + * math/bits/mathcalls-narrow.h (mul): Use __MATHCALL_NARROW. + * math/gen-auto-libm-tests.c (test_functions): Add mul. + * math/math-narrow.h (CHECK_NARROW_MUL): New macro. + (NARROW_MUL_ROUND_TO_ODD): Likewise. + (NARROW_MUL_TRIVIAL): Likewise. + * soft-fp/op-common.h (FP_TRUNC_COOKED): Likewise. + * sysdeps/ieee754/float128/float128_private.h (__fmull): New + macro. + (__dmull): Likewise. + * sysdeps/ieee754/ldbl-opt/Makefile (libnldbl-calls): Add fmul and + dmul. + (CFLAGS-nldbl-dmul.c): New variable. + (CFLAGS-nldbl-fmul.c): Likewise. + * sysdeps/ieee754/ldbl-opt/Versions (GLIBC_2.28): Add + __nldbl_dmull. + * sysdeps/ieee754/ldbl-opt/nldbl-compat.h (__nldbl_dmull): New + prototype. + * manual/arith.texi (Misc FP Arithmetic): Document fmul, fmull, + dmull, fMmulfN, fMmulfNx, fMxmulfN and fMxmulfNx. + * math/auto-libm-test-in: Add tests of mul. + * math/auto-libm-test-out-narrow-mul: New generated file. + * math/libm-test-narrow-mul.inc: New file. + * sysdeps/i386/fpu/s_f32xmulf64.c: Likewise. + * sysdeps/ieee754/dbl-64/s_f32xmulf64.c: Likewise. + * sysdeps/ieee754/dbl-64/s_fmul.c: Likewise. + * sysdeps/ieee754/float128/s_f32mulf128.c: Likewise. + * sysdeps/ieee754/float128/s_f64mulf128.c: Likewise. + * sysdeps/ieee754/float128/s_f64xmulf128.c: Likewise. + * sysdeps/ieee754/ldbl-128/s_dmull.c: Likewise. + * sysdeps/ieee754/ldbl-128/s_f64xmulf128.c: Likewise. + * sysdeps/ieee754/ldbl-128/s_fmull.c: Likewise. + * sysdeps/ieee754/ldbl-128ibm/s_dmull.c: Likewise. + * sysdeps/ieee754/ldbl-128ibm/s_fmull.c: Likewise. + * sysdeps/ieee754/ldbl-96/s_dmull.c: Likewise. + * sysdeps/ieee754/ldbl-96/s_fmull.c: Likewise. + * sysdeps/ieee754/ldbl-opt/nldbl-dmul.c: Likewise. + * sysdeps/ieee754/ldbl-opt/nldbl-fmul.c: Likewise. + * sysdeps/ieee754/soft-fp/s_dmull.c: Likewise. + * sysdeps/ieee754/soft-fp/s_fmul.c: Likewise. + * sysdeps/ieee754/soft-fp/s_fmull.c: Likewise. + * sysdeps/powerpc/fpu/libm-test-ulps: Update. + * sysdeps/mach/hurd/i386/libm.abilist: Likewise. + * sysdeps/unix/sysv/linux/aarch64/libm.abilist: Likewise. + * 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/riscv/rv64/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/x86_64/64/libm.abilist: Likewise. + * sysdeps/unix/sysv/linux/x86_64/x32/libm.abilist: Likewise. + +2018-05-14 H.J. Lu + + * sysdeps/i386/crti.S (_init): Replace PREINIT_FUNCTION@PLT + with *%eax in call. + +2018-05-14 H.J. Lu + + * sysdeps/i386/ldsodefs.h: Removed. + * sysdeps/x86_64/ldsodefs.h: Moved to ... + * sysdeps/x86/ldsodefs.h: This. + (La_i86_regs): New. + (La_i86_retval): Likewise. + (ARCH_PLTENTER_MEMBERS): Add i86_gnu_pltenter. + (ARCH_PLTEXIT_MEMBERS): i86_gnu_pltexit. + +2018-05-14 H.J. Lu + + * sysdeps/x86_64/multiarch/strlen-avx2.S (STRLEN): Remove the + unnecessary testl. + +2018-05-13 Alan Modra + + * sysdeps/hppa/dl-machine.h (elf_machine_rela): Add + R_PARISC_TLS_DTPOFF32 reloc addend. + +2018-05-11 Tulio Magno Quites Machado Filho + + * bits/floatn-common.h: Define __HAVE_FLOAT128_UNLIKE_LDBL. + * math/math.h: Restrict the prototype definition for the functions + issignaling(_Float128) and iszero(_Float128); and template + __iseqsig_type<_Float128>, from __HAVE_DISTINCT_FLOAT128 to + __HAVE_FLOAT128_UNLIKE_LDBL. + * sysdeps/powerpc/bits/floatn.h [__HAVE_FLOAT128 + && (!__GNUC_PREREQ (7, 0) || defined __cplusplus) + && __LDBL_MANT_DIG__ == 113]: Use long double suffix for + __f128() constants; define the type _Float128 as long double; + and reuse long double in __CFLOAT128. + +2018-05-11 Joseph Myers + + * sysdeps/generic/math_private.h: Do not include + . + * stdlib/strtod_l.c: Include instead of + . + * math/fromfp.h: Include . + * math/math-narrow.h: Likewise. + * math/s_nextafter.c: Likewise. + * math/s_nexttowardf.c: Likewise. + * sysdeps/aarch64/fpu/s_llrint.c: Likewise. + * sysdeps/aarch64/fpu/s_llrintf.c: Likewise. + * sysdeps/aarch64/fpu/s_lrint.c: Likewise. + * sysdeps/aarch64/fpu/s_lrintf.c: Likewise. + * sysdeps/i386/fpu/s_nextafterl.c: Likewise. + * sysdeps/i386/fpu/s_nexttoward.c: Likewise. + * sysdeps/i386/fpu/s_nexttowardf.c: Likewise. + * sysdeps/ieee754/dbl-64/e_atan2.c: Likewise. + * sysdeps/ieee754/dbl-64/e_atanh.c: Likewise. + * sysdeps/ieee754/dbl-64/e_exp.c: Likewise. + * sysdeps/ieee754/dbl-64/e_exp2.c: Likewise. + * sysdeps/ieee754/dbl-64/e_j0.c: Likewise. + * sysdeps/ieee754/dbl-64/e_sqrt.c: Likewise. + * sysdeps/ieee754/dbl-64/s_expm1.c: Likewise. + * sysdeps/ieee754/dbl-64/s_fma.c: Likewise. + * sysdeps/ieee754/dbl-64/s_fmaf.c: Likewise. + * sysdeps/ieee754/dbl-64/s_log1p.c: Likewise. + * sysdeps/ieee754/dbl-64/s_nearbyint.c: Likewise. + * sysdeps/ieee754/dbl-64/wordsize-64/s_nearbyint.c: Likewise. + * sysdeps/ieee754/flt-32/e_atanhf.c: Likewise. + * sysdeps/ieee754/flt-32/e_j0f.c: Likewise. + * sysdeps/ieee754/flt-32/s_expm1f.c: Likewise. + * sysdeps/ieee754/flt-32/s_log1pf.c: Likewise. + * sysdeps/ieee754/flt-32/s_nearbyintf.c: Likewise. + * sysdeps/ieee754/flt-32/s_nextafterf.c: Likewise. + * sysdeps/ieee754/k_standardl.c: Likewise. + * sysdeps/ieee754/ldbl-128/e_asinl.c: Likewise. + * sysdeps/ieee754/ldbl-128/e_expl.c: Likewise. + * sysdeps/ieee754/ldbl-128/e_powl.c: Likewise. + * sysdeps/ieee754/ldbl-128/s_fmal.c: Likewise. + * sysdeps/ieee754/ldbl-128/s_nearbyintl.c: Likewise. + * sysdeps/ieee754/ldbl-128/s_nextafterl.c: Likewise. + * sysdeps/ieee754/ldbl-128/s_nexttoward.c: Likewise. + * sysdeps/ieee754/ldbl-128/s_nexttowardf.c: Likewise. + * sysdeps/ieee754/ldbl-128ibm/e_asinl.c: Likewise. + * sysdeps/ieee754/ldbl-128ibm/s_fmal.c: Likewise. + * sysdeps/ieee754/ldbl-128ibm/s_nextafterl.c: Likewise. + * sysdeps/ieee754/ldbl-128ibm/s_nexttoward.c: Likewise. + * sysdeps/ieee754/ldbl-128ibm/s_nexttowardf.c: Likewise. + * sysdeps/ieee754/ldbl-128ibm/s_rintl.c: Likewise. + * sysdeps/ieee754/ldbl-96/e_atanhl.c: Likewise. + * sysdeps/ieee754/ldbl-96/e_j0l.c: Likewise. + * sysdeps/ieee754/ldbl-96/s_fma.c: Likewise. + * sysdeps/ieee754/ldbl-96/s_fmal.c: Likewise. + * sysdeps/ieee754/ldbl-96/s_nexttoward.c: Likewise. + * sysdeps/ieee754/ldbl-96/s_nexttowardf.c: Likewise. + * sysdeps/ieee754/ldbl-opt/s_nexttowardfd.c: Likewise. + * sysdeps/m68k/m680x0/fpu/s_nextafterl.c: Likewise. + +2018-05-11 Florian Weimer + + Use 64-bit epoch values in the time zone file parser. + * include/time.h (internal_time_t): Define. + (__tzfile_compute): Use it. + * time/tzfile.c (struct leap): Use internal_time_t for epoch + member. + (transitions): Switch to internal_time_t. + (__tzfile_read): Likewise. Remove code dealing with 4-byte time_t + types. + (__tzfile_compute): Use internal_time_t for timer argument. Check + for truncation before calling __offtime. + +2018-05-11 Florian Weimer + + [BZ #23166] + * include/rpc/clnt.h (rpc_createerr): Declare hidden alias. + * include/rpc/svc.h (svc_pollfd, svc_max_pollfd, svc_fdset): + Likewise. + * sunrpc/rpc_common.c (svc_fdset, rpc_createerr, svc_pollfd) + (svc_max_pollfd): Add nocommon attribute and hidden alias. Do not + export without --enable-obsolete-rpc. + * sunrpc/svcauth_des.c (svcauthdes_stats): Turn into compatibility + symbol. This should not have been exported, ever. + +2018-05-11 Rafał Lużyński + + [BZ #23152] + * localedata/locales/gd_GB (abmon): Fix typo in May: + "Mhàrt" -> "Cèit". Adjust the comment according to the change. + +2018-05-11 Siddhesh Poyarekar + + * sysdeps/aarch64/multiarch/memcpy_falkor.S (__memcpy_falkor): + Use multiple registers to copy data in loop tail. + + * sysdeps/aarch64/multiarch/memmove_falkor.S + (__memmove_falkor): Use multiple registers to move data in + loop tail. + +2018-05-10 Joseph Myers + + * math/math-underflow.h: New file. + * sysdeps/generic/math_private.h: Do not include . + (fabs_tg): Remove macro. Moved to math-underflow.h. + (min_of_type_f): Likewise. + (min_of_type_): Likewise. + (min_of_type_l): Likewise. + (min_of_type_f128): Likewise. + (min_of_type): Likewise. + (math_check_force_underflow): Likewise. + (math_check_force_underflow_nonneg): Likewise. + (math_check_force_underflow_complex): Likewise. + * math/e_exp2_template.c: Include . + * math/k_casinh_template.c: Likewise. + * math/s_catan_template.c: Likewise. + * math/s_catanh_template.c: Likewise. + * math/s_ccosh_template.c: Likewise. + * math/s_cexp_template.c: Likewise. + * math/s_clog10_template.c: Likewise. + * math/s_clog_template.c: Likewise. + * math/s_csin_template.c: Likewise. + * math/s_csinh_template.c: Likewise. + * math/s_csqrt_template.c: Likewise. + * math/s_ctan_template.c: Likewise. + * math/s_ctanh_template.c: Likewise. + * sysdeps/ieee754/dbl-64/e_asin.c: Likewise. + * sysdeps/ieee754/dbl-64/e_atanh.c: Likewise. + * sysdeps/ieee754/dbl-64/e_exp2.c: Likewise. + * sysdeps/ieee754/dbl-64/e_gamma_r.c: Likewise. + * sysdeps/ieee754/dbl-64/e_hypot.c: Likewise. + * sysdeps/ieee754/dbl-64/e_j1.c: Likewise. + * sysdeps/ieee754/dbl-64/e_jn.c: Likewise. + * sysdeps/ieee754/dbl-64/e_pow.c: Likewise. + * sysdeps/ieee754/dbl-64/e_sinh.c: Likewise. + * sysdeps/ieee754/dbl-64/s_asinh.c: Likewise. + * sysdeps/ieee754/dbl-64/s_atan.c: Likewise. + * sysdeps/ieee754/dbl-64/s_erf.c: Likewise. + * sysdeps/ieee754/dbl-64/s_expm1.c: Likewise. + * sysdeps/ieee754/dbl-64/s_log1p.c: Likewise. + * sysdeps/ieee754/dbl-64/s_sin.c: Likewise. + * sysdeps/ieee754/dbl-64/s_sincos.c: Likewise. + * sysdeps/ieee754/dbl-64/s_tan.c: Likewise. + * sysdeps/ieee754/dbl-64/s_tanh.c: Likewise. + * sysdeps/ieee754/flt-32/e_asinf.c: Likewise. + * sysdeps/ieee754/flt-32/e_atanhf.c: Likewise. + * sysdeps/ieee754/flt-32/e_gammaf_r.c: Likewise. + * sysdeps/ieee754/flt-32/e_j1f.c: Likewise. + * sysdeps/ieee754/flt-32/e_jnf.c: Likewise. + * sysdeps/ieee754/flt-32/e_sinhf.c: Likewise. + * sysdeps/ieee754/flt-32/k_sinf.c: Likewise. + * sysdeps/ieee754/flt-32/k_tanf.c: Likewise. + * sysdeps/ieee754/flt-32/s_asinhf.c: Likewise. + * sysdeps/ieee754/flt-32/s_atanf.c: Likewise. + * sysdeps/ieee754/flt-32/s_erff.c: Likewise. + * sysdeps/ieee754/flt-32/s_expm1f.c: Likewise. + * sysdeps/ieee754/flt-32/s_log1pf.c: Likewise. + * sysdeps/ieee754/flt-32/s_tanhf.c: Likewise. + * sysdeps/ieee754/ldbl-128/e_asinl.c: Likewise. + * sysdeps/ieee754/ldbl-128/e_atanhl.c: Likewise. + * sysdeps/ieee754/ldbl-128/e_expl.c: Likewise. + * sysdeps/ieee754/ldbl-128/e_gammal_r.c: Likewise. + * sysdeps/ieee754/ldbl-128/e_hypotl.c: Likewise. + * sysdeps/ieee754/ldbl-128/e_j1l.c: Likewise. + * sysdeps/ieee754/ldbl-128/e_jnl.c: Likewise. + * sysdeps/ieee754/ldbl-128/e_sinhl.c: Likewise. + * sysdeps/ieee754/ldbl-128/k_sincosl.c: Likewise. + * sysdeps/ieee754/ldbl-128/k_sinl.c: Likewise. + * sysdeps/ieee754/ldbl-128/k_tanl.c: Likewise. + * sysdeps/ieee754/ldbl-128/s_asinhl.c: Likewise. + * sysdeps/ieee754/ldbl-128/s_atanl.c: Likewise. + * sysdeps/ieee754/ldbl-128/s_erfl.c: Likewise. + * sysdeps/ieee754/ldbl-128/s_expm1l.c: Likewise. + * sysdeps/ieee754/ldbl-128/s_log1pl.c: Likewise. + * sysdeps/ieee754/ldbl-128/s_tanhl.c: Likewise. + * sysdeps/ieee754/ldbl-128ibm/e_asinl.c: Likewise. + * sysdeps/ieee754/ldbl-128ibm/e_atanhl.c: Likewise. + * sysdeps/ieee754/ldbl-128ibm/e_gammal_r.c: Likewise. + * sysdeps/ieee754/ldbl-128ibm/e_hypotl.c: Likewise. + * sysdeps/ieee754/ldbl-128ibm/e_j1l.c: Likewise. + * sysdeps/ieee754/ldbl-128ibm/e_jnl.c: Likewise. + * sysdeps/ieee754/ldbl-128ibm/e_powl.c: Likewise. + * sysdeps/ieee754/ldbl-128ibm/e_sinhl.c: Likewise. + * sysdeps/ieee754/ldbl-128ibm/k_sincosl.c: Likewise. + * sysdeps/ieee754/ldbl-128ibm/k_sinl.c: Likewise. + * sysdeps/ieee754/ldbl-128ibm/k_tanl.c: Likewise. + * sysdeps/ieee754/ldbl-128ibm/s_asinhl.c: Likewise. + * sysdeps/ieee754/ldbl-128ibm/s_atanl.c: Likewise. + * sysdeps/ieee754/ldbl-128ibm/s_erfl.c: Likewise. + * sysdeps/ieee754/ldbl-128ibm/s_fmal.c: Likewise. + * sysdeps/ieee754/ldbl-128ibm/s_tanhl.c: Likewise. + * sysdeps/ieee754/ldbl-96/e_asinl.c: Likewise. + * sysdeps/ieee754/ldbl-96/e_atanhl.c: Likewise. + * sysdeps/ieee754/ldbl-96/e_gammal_r.c: Likewise. + * sysdeps/ieee754/ldbl-96/e_hypotl.c: Likewise. + * sysdeps/ieee754/ldbl-96/e_j1l.c: Likewise. + * sysdeps/ieee754/ldbl-96/e_jnl.c: Likewise. + * sysdeps/ieee754/ldbl-96/e_sinhl.c: Likewise. + * sysdeps/ieee754/ldbl-96/k_sinl.c: Likewise. + * sysdeps/ieee754/ldbl-96/k_tanl.c: Likewise. + * sysdeps/ieee754/ldbl-96/s_asinhl.c: Likewise. + * sysdeps/ieee754/ldbl-96/s_erfl.c: Likewise. + * sysdeps/ieee754/ldbl-96/s_tanhl.c: Likewise. + * sysdeps/powerpc/fpu/e_hypot.c: Likewise. + * sysdeps/x86/fpu/powl_helper.c: Likewise. + * sysdeps/ieee754/dbl-64/s_nextup.c: Include . + * sysdeps/ieee754/flt-32/s_nextupf.c: Likewise. + * sysdeps/ieee754/ldbl-128/s_nextupl.c: Likewise. + * sysdeps/ieee754/ldbl-128ibm/s_nextupl.c: Likewise. + * sysdeps/ieee754/ldbl-96/s_nextupl.c: Likewise. + +2018-05-09 Joseph Myers + + * sysdeps/generic/math-barriers.h: New file. + * sysdeps/generic/math_private.h [!math_opt_barrier] + (math_opt_barrier): Move to math-barriers.h. + [!math_opt_barrier] (math_force_eval): Likewise. + * sysdeps/aarch64/fpu/math-barriers.h: New file. + * sysdeps/aarch64/fpu/math_private.h (math_opt_barrier): Move to + math-barriers.h. + (math_force_eval): Likewise. + * sysdeps/alpha/fpu/math-barriers.h: New file. + * sysdeps/alpha/fpu/math_private.h (math_opt_barrier): Move to + math-barriers.h. + (math_force_eval): Likewise. + * sysdeps/x86/fpu/math-barriers.h: New file. + * sysdeps/i386/fpu/fenv_private.h (math_opt_barrier): Move to + math-barriers.h. + (math_force_eval): Likewise. + * sysdeps/m68k/m680x0/fpu/math_private.h: Move to.... + * sysdeps/m68k/m680x0/fpu/math-barriers.h: ... here. Adjust + multiple-include guard for rename. + * sysdeps/powerpc/fpu/math-barriers.h: New file. + * sysdeps/powerpc/fpu/math_private.h (math_opt_barrier): Move to + math-barriers.h. + (math_force_eval): Likewise. + +2018-05-09 Paul Pluzhnikov + + [BZ #22786] + CVE-2018-11236 + * stdlib/canonicalize.c (__realpath): Fix overflow in path length + computation. + * stdlib/Makefile (test-bz22786): New test. + * stdlib/test-bz22786.c: New test. + +2018-05-09 Joseph Myers + + * include/math-narrow-eval.h: New file. Contents moved from .... + * sysdeps/generic/math_private.h: ... here. + (math_narrow_eval): Remove macro. Moved to math-narrow-eval.h. + [FLT_EVAL_METHOD != 0] (excess_precision): Likewise. + * math/s_fdim_template.c: Include . + * stdlib/strtod_l.c: Likewise. + * sysdeps/i386/fpu/s_f32xaddf64.c: Likewise. + * sysdeps/i386/fpu/s_f32xsubf64.c: Likewise. + * sysdeps/i386/fpu/s_fdim.c: Likewise. + * sysdeps/ieee754/dbl-64/e_cosh.c: Likewise. + * sysdeps/ieee754/dbl-64/e_gamma_r.c: Likewise. + * sysdeps/ieee754/dbl-64/e_j1.c: Likewise. + * sysdeps/ieee754/dbl-64/e_jn.c: Likewise. + * sysdeps/ieee754/dbl-64/e_lgamma_r.c: Likewise. + * sysdeps/ieee754/dbl-64/e_sinh.c: Likewise. + * sysdeps/ieee754/dbl-64/gamma_productf.c: Likewise. + * sysdeps/ieee754/dbl-64/k_rem_pio2.c: Likewise. + * sysdeps/ieee754/dbl-64/lgamma_neg.c: Likewise. + * sysdeps/ieee754/dbl-64/s_erf.c: Likewise. + * sysdeps/ieee754/dbl-64/s_llrint.c: Likewise. + * sysdeps/ieee754/dbl-64/s_lrint.c: Likewise. + * sysdeps/ieee754/flt-32/e_coshf.c: Likewise. + * sysdeps/ieee754/flt-32/e_exp2f.c: Likewise. + * sysdeps/ieee754/flt-32/e_expf.c: Likewise. + * sysdeps/ieee754/flt-32/e_gammaf_r.c: Likewise. + * sysdeps/ieee754/flt-32/e_j1f.c: Likewise. + * sysdeps/ieee754/flt-32/e_jnf.c: Likewise. + * sysdeps/ieee754/flt-32/e_lgammaf_r.c: Likewise. + * sysdeps/ieee754/flt-32/e_sinhf.c: Likewise. + * sysdeps/ieee754/flt-32/k_rem_pio2f.c: Likewise. + * sysdeps/ieee754/flt-32/lgamma_negf.c: Likewise. + * sysdeps/ieee754/flt-32/s_erff.c: Likewise. + * sysdeps/ieee754/flt-32/s_llrintf.c: Likewise. + * sysdeps/ieee754/flt-32/s_lrintf.c: Likewise. + * sysdeps/ieee754/ldbl-96/gamma_product.c: Likewise. + +2018-05-08 Andreas Schwab + + * sysdeps/nptl/internaltypes.h: Fix comment. + +2018-05-07 H.J. Lu + + * sysdeps/x86_64/multiarch/memset-vec-unaligned-erms.S + (MEMSET_SYMBOL (__memset, erms)): Mark the debugger symbol as + hidden. + +2018-05-07 Siddhesh Poyarekar + + * benchtests/bench-memcpy-walk.c (test_main): Move declaration + of I into loop header. + * benchtests/bench-memmove-walk.c + (test_main): Likewise. + +2018-05-07 Alexandre Oliva + + Revert: + 2018-04-30 Raymond Nicholson + * manual/startup.texi (Aborting a Program): Remove inappropriate joke. + +2018-05-05 Paul Pluzhnikov + + [BZ #20419] + * elf/dl-load.c (open_verify): Fix stack overflow. + * elf/Makefile (tst-big-note): New test. + * elf/tst-big-note-lib.S: New. + * elf/tst-big-note.c: New. + +2018-05-04 Joseph Myers + + * scripts/abilist.awk: Ignore absolute symbols. + * sysdeps/mach/hurd/i386/ld.abilist: Remove absolute symbols. + * sysdeps/mach/hurd/i386/libBrokenLocale.abilist: Likewise. + * sysdeps/mach/hurd/i386/libanl.abilist: Likewise. + * sysdeps/mach/hurd/i386/libc.abilist: Likewise. + * sysdeps/mach/hurd/i386/libcrypt.abilist: Likewise. + * sysdeps/mach/hurd/i386/libdl.abilist: Likewise. + * sysdeps/mach/hurd/i386/libm.abilist: Likewise. + * sysdeps/mach/hurd/i386/libnsl.abilist: Likewise. + * sysdeps/mach/hurd/i386/libpthread.abilist: Likewise. + * sysdeps/mach/hurd/i386/libresolv.abilist: Likewise. + * sysdeps/mach/hurd/i386/librt.abilist: Likewise. + * sysdeps/mach/hurd/i386/libutil.abilist: Likewise. + * sysdeps/unix/sysv/linux/aarch64/ld.abilist: Likewise. + * sysdeps/unix/sysv/linux/aarch64/libBrokenLocale.abilist: Likewise. + * sysdeps/unix/sysv/linux/aarch64/libanl.abilist: Likewise. + * sysdeps/unix/sysv/linux/aarch64/libc.abilist: Likewise. + * sysdeps/unix/sysv/linux/aarch64/libcrypt.abilist: Likewise. + * sysdeps/unix/sysv/linux/aarch64/libdl.abilist: Likewise. + * sysdeps/unix/sysv/linux/aarch64/libm.abilist: Likewise. + * sysdeps/unix/sysv/linux/aarch64/libnsl.abilist: Likewise. + * sysdeps/unix/sysv/linux/aarch64/libpthread.abilist: Likewise. + * sysdeps/unix/sysv/linux/aarch64/libresolv.abilist: Likewise. + * sysdeps/unix/sysv/linux/aarch64/librt.abilist: Likewise. + * sysdeps/unix/sysv/linux/aarch64/libthread_db.abilist: Likewise. + * sysdeps/unix/sysv/linux/aarch64/libutil.abilist: Likewise. + * sysdeps/unix/sysv/linux/alpha/ld.abilist: Likewise. + * sysdeps/unix/sysv/linux/alpha/libBrokenLocale.abilist: Likewise. + * sysdeps/unix/sysv/linux/alpha/libanl.abilist: Likewise. + * sysdeps/unix/sysv/linux/alpha/libc.abilist: Likewise. + * sysdeps/unix/sysv/linux/alpha/libcrypt.abilist: Likewise. + * sysdeps/unix/sysv/linux/alpha/libdl.abilist: Likewise. + * sysdeps/unix/sysv/linux/alpha/libm.abilist: Likewise. + * sysdeps/unix/sysv/linux/alpha/libnsl.abilist: Likewise. + * sysdeps/unix/sysv/linux/alpha/libpthread.abilist: Likewise. + * sysdeps/unix/sysv/linux/alpha/libresolv.abilist: Likewise. + * sysdeps/unix/sysv/linux/alpha/librt.abilist: Likewise. + * sysdeps/unix/sysv/linux/alpha/libthread_db.abilist: Likewise. + * sysdeps/unix/sysv/linux/alpha/libutil.abilist: Likewise. + * sysdeps/unix/sysv/linux/arm/ld.abilist: Likewise. + * sysdeps/unix/sysv/linux/arm/libBrokenLocale.abilist: Likewise. + * sysdeps/unix/sysv/linux/arm/libanl.abilist: Likewise. + * sysdeps/unix/sysv/linux/arm/libc.abilist: Likewise. + * sysdeps/unix/sysv/linux/arm/libcrypt.abilist: Likewise. + * sysdeps/unix/sysv/linux/arm/libdl.abilist: Likewise. + * sysdeps/unix/sysv/linux/arm/libm.abilist: Likewise. + * sysdeps/unix/sysv/linux/arm/libnsl.abilist: Likewise. + * sysdeps/unix/sysv/linux/arm/libpthread.abilist: Likewise. + * sysdeps/unix/sysv/linux/arm/libresolv.abilist: Likewise. + * sysdeps/unix/sysv/linux/arm/librt.abilist: Likewise. + * sysdeps/unix/sysv/linux/arm/libthread_db.abilist: Likewise. + * sysdeps/unix/sysv/linux/arm/libutil.abilist: Likewise. + * sysdeps/unix/sysv/linux/hppa/ld.abilist: Likewise. + * sysdeps/unix/sysv/linux/hppa/libBrokenLocale.abilist: Likewise. + * sysdeps/unix/sysv/linux/hppa/libanl.abilist: Likewise. + * sysdeps/unix/sysv/linux/hppa/libc.abilist: Likewise. + * sysdeps/unix/sysv/linux/hppa/libcrypt.abilist: Likewise. + * sysdeps/unix/sysv/linux/hppa/libdl.abilist: Likewise. + * sysdeps/unix/sysv/linux/hppa/libm.abilist: Likewise. + * sysdeps/unix/sysv/linux/hppa/libnsl.abilist: Likewise. + * sysdeps/unix/sysv/linux/hppa/libpthread.abilist: Likewise. + * sysdeps/unix/sysv/linux/hppa/libresolv.abilist: Likewise. + * sysdeps/unix/sysv/linux/hppa/librt.abilist: Likewise. + * sysdeps/unix/sysv/linux/hppa/libthread_db.abilist: Likewise. + * sysdeps/unix/sysv/linux/hppa/libutil.abilist: Likewise. + * sysdeps/unix/sysv/linux/i386/ld.abilist: Likewise. + * sysdeps/unix/sysv/linux/i386/libBrokenLocale.abilist: Likewise. + * sysdeps/unix/sysv/linux/i386/libanl.abilist: Likewise. + * sysdeps/unix/sysv/linux/i386/libc.abilist: Likewise. + * sysdeps/unix/sysv/linux/i386/libcrypt.abilist: Likewise. + * sysdeps/unix/sysv/linux/i386/libdl.abilist: Likewise. + * sysdeps/unix/sysv/linux/i386/libm.abilist: Likewise. + * sysdeps/unix/sysv/linux/i386/libnsl.abilist: Likewise. + * sysdeps/unix/sysv/linux/i386/libpthread.abilist: Likewise. + * sysdeps/unix/sysv/linux/i386/libresolv.abilist: Likewise. + * sysdeps/unix/sysv/linux/i386/librt.abilist: Likewise. + * sysdeps/unix/sysv/linux/i386/libthread_db.abilist: Likewise. + * sysdeps/unix/sysv/linux/i386/libutil.abilist: Likewise. + * sysdeps/unix/sysv/linux/ia64/ld.abilist: Likewise. + * sysdeps/unix/sysv/linux/ia64/libBrokenLocale.abilist: Likewise. + * sysdeps/unix/sysv/linux/ia64/libanl.abilist: Likewise. + * sysdeps/unix/sysv/linux/ia64/libc.abilist: Likewise. + * sysdeps/unix/sysv/linux/ia64/libcrypt.abilist: Likewise. + * sysdeps/unix/sysv/linux/ia64/libdl.abilist: Likewise. + * sysdeps/unix/sysv/linux/ia64/libm.abilist: Likewise. + * sysdeps/unix/sysv/linux/ia64/libnsl.abilist: Likewise. + * sysdeps/unix/sysv/linux/ia64/libpthread.abilist: Likewise. + * sysdeps/unix/sysv/linux/ia64/libresolv.abilist: Likewise. + * sysdeps/unix/sysv/linux/ia64/librt.abilist: Likewise. + * sysdeps/unix/sysv/linux/ia64/libthread_db.abilist: Likewise. + * sysdeps/unix/sysv/linux/ia64/libutil.abilist: Likewise. + * sysdeps/unix/sysv/linux/m68k/coldfire/ld.abilist: Likewise. + * sysdeps/unix/sysv/linux/m68k/coldfire/libBrokenLocale.abilist: + Likewise. + * sysdeps/unix/sysv/linux/m68k/coldfire/libanl.abilist: Likewise. + * sysdeps/unix/sysv/linux/m68k/coldfire/libc.abilist: Likewise. + * sysdeps/unix/sysv/linux/m68k/coldfire/libcrypt.abilist: Likewise. + * sysdeps/unix/sysv/linux/m68k/coldfire/libdl.abilist: Likewise. + * sysdeps/unix/sysv/linux/m68k/coldfire/libm.abilist: Likewise. + * sysdeps/unix/sysv/linux/m68k/coldfire/libnsl.abilist: Likewise. + * sysdeps/unix/sysv/linux/m68k/coldfire/libpthread.abilist: Likewise. + * sysdeps/unix/sysv/linux/m68k/coldfire/libresolv.abilist: Likewise. + * sysdeps/unix/sysv/linux/m68k/coldfire/librt.abilist: Likewise. + * sysdeps/unix/sysv/linux/m68k/coldfire/libthread_db.abilist: Likewise. + * sysdeps/unix/sysv/linux/m68k/coldfire/libutil.abilist: Likewise. + * sysdeps/unix/sysv/linux/m68k/m680x0/ld.abilist: Likewise. + * sysdeps/unix/sysv/linux/m68k/m680x0/libBrokenLocale.abilist: + Likewise. + * sysdeps/unix/sysv/linux/m68k/m680x0/libanl.abilist: Likewise. + * sysdeps/unix/sysv/linux/m68k/m680x0/libc.abilist: Likewise. + * sysdeps/unix/sysv/linux/m68k/m680x0/libcrypt.abilist: Likewise. + * sysdeps/unix/sysv/linux/m68k/m680x0/libdl.abilist: Likewise. + * sysdeps/unix/sysv/linux/m68k/m680x0/libm.abilist: Likewise. + * sysdeps/unix/sysv/linux/m68k/m680x0/libnsl.abilist: Likewise. + * sysdeps/unix/sysv/linux/m68k/m680x0/libpthread.abilist: Likewise. + * sysdeps/unix/sysv/linux/m68k/m680x0/libresolv.abilist: Likewise. + * sysdeps/unix/sysv/linux/m68k/m680x0/librt.abilist: Likewise. + * sysdeps/unix/sysv/linux/m68k/m680x0/libthread_db.abilist: Likewise. + * sysdeps/unix/sysv/linux/m68k/m680x0/libutil.abilist: Likewise. + * sysdeps/unix/sysv/linux/microblaze/ld.abilist: Likewise. + * sysdeps/unix/sysv/linux/microblaze/libBrokenLocale.abilist: Likewise. + * sysdeps/unix/sysv/linux/microblaze/libanl.abilist: Likewise. + * sysdeps/unix/sysv/linux/microblaze/libc.abilist: Likewise. + * sysdeps/unix/sysv/linux/microblaze/libcrypt.abilist: Likewise. + * sysdeps/unix/sysv/linux/microblaze/libdl.abilist: Likewise. + * sysdeps/unix/sysv/linux/microblaze/libm.abilist: Likewise. + * sysdeps/unix/sysv/linux/microblaze/libnsl.abilist: Likewise. + * sysdeps/unix/sysv/linux/microblaze/libpthread.abilist: Likewise. + * sysdeps/unix/sysv/linux/microblaze/libresolv.abilist: Likewise. + * sysdeps/unix/sysv/linux/microblaze/librt.abilist: Likewise. + * sysdeps/unix/sysv/linux/microblaze/libthread_db.abilist: Likewise. + * sysdeps/unix/sysv/linux/microblaze/libutil.abilist: Likewise. + * sysdeps/unix/sysv/linux/mips/mips32/fpu/libc.abilist: Likewise. + * sysdeps/unix/sysv/linux/mips/mips32/ld.abilist: Likewise. + * sysdeps/unix/sysv/linux/mips/mips32/libBrokenLocale.abilist: + Likewise. + * sysdeps/unix/sysv/linux/mips/mips32/libanl.abilist: Likewise. + * sysdeps/unix/sysv/linux/mips/mips32/libcidn.abilist: Likewise. + * sysdeps/unix/sysv/linux/mips/mips32/libcrypt.abilist: Likewise. + * sysdeps/unix/sysv/linux/mips/mips32/libdl.abilist: Likewise. + * sysdeps/unix/sysv/linux/mips/mips32/libm.abilist: Likewise. + * sysdeps/unix/sysv/linux/mips/mips32/libnsl.abilist: Likewise. + * sysdeps/unix/sysv/linux/mips/mips32/libnss_compat.abilist: Likewise. + * sysdeps/unix/sysv/linux/mips/mips32/libnss_db.abilist: Likewise. + * sysdeps/unix/sysv/linux/mips/mips32/libnss_dns.abilist: Likewise. + * sysdeps/unix/sysv/linux/mips/mips32/libnss_files.abilist: Likewise. + * sysdeps/unix/sysv/linux/mips/mips32/libnss_hesiod.abilist: Likewise. + * sysdeps/unix/sysv/linux/mips/mips32/libnss_nis.abilist: Likewise. + * sysdeps/unix/sysv/linux/mips/mips32/libnss_nisplus.abilist: Likewise. + * sysdeps/unix/sysv/linux/mips/mips32/libpthread.abilist: Likewise. + * sysdeps/unix/sysv/linux/mips/mips32/libresolv.abilist: Likewise. + * sysdeps/unix/sysv/linux/mips/mips32/librt.abilist: Likewise. + * sysdeps/unix/sysv/linux/mips/mips32/libthread_db.abilist: Likewise. + * sysdeps/unix/sysv/linux/mips/mips32/libutil.abilist: Likewise. + * sysdeps/unix/sysv/linux/mips/mips32/nofpu/libc.abilist: Likewise. + * sysdeps/unix/sysv/linux/mips/mips64/libBrokenLocale.abilist: + Likewise. + * sysdeps/unix/sysv/linux/mips/mips64/libanl.abilist: Likewise. + * sysdeps/unix/sysv/linux/mips/mips64/libcrypt.abilist: Likewise. + * sysdeps/unix/sysv/linux/mips/mips64/libdl.abilist: Likewise. + * sysdeps/unix/sysv/linux/mips/mips64/libm.abilist: Likewise. + * sysdeps/unix/sysv/linux/mips/mips64/libnsl.abilist: Likewise. + * sysdeps/unix/sysv/linux/mips/mips64/libpthread.abilist: Likewise. + * sysdeps/unix/sysv/linux/mips/mips64/librt.abilist: Likewise. + * sysdeps/unix/sysv/linux/mips/mips64/libthread_db.abilist: Likewise. + * sysdeps/unix/sysv/linux/mips/mips64/libutil.abilist: Likewise. + * sysdeps/unix/sysv/linux/mips/mips64/n32/ld.abilist: Likewise. + * sysdeps/unix/sysv/linux/mips/mips64/n32/libc.abilist: Likewise. + * sysdeps/unix/sysv/linux/mips/mips64/n32/libresolv.abilist: Likewise. + * sysdeps/unix/sysv/linux/mips/mips64/n64/ld.abilist: Likewise. + * sysdeps/unix/sysv/linux/mips/mips64/n64/libc.abilist: Likewise. + * sysdeps/unix/sysv/linux/mips/mips64/n64/libresolv.abilist: Likewise. + * sysdeps/unix/sysv/linux/nios2/ld.abilist: Likewise. + * sysdeps/unix/sysv/linux/nios2/libBrokenLocale.abilist: Likewise. + * sysdeps/unix/sysv/linux/nios2/libanl.abilist: Likewise. + * sysdeps/unix/sysv/linux/nios2/libc.abilist: Likewise. + * sysdeps/unix/sysv/linux/nios2/libcrypt.abilist: Likewise. + * sysdeps/unix/sysv/linux/nios2/libdl.abilist: Likewise. + * sysdeps/unix/sysv/linux/nios2/libm.abilist: Likewise. + * sysdeps/unix/sysv/linux/nios2/libnsl.abilist: Likewise. + * sysdeps/unix/sysv/linux/nios2/libpthread.abilist: Likewise. + * sysdeps/unix/sysv/linux/nios2/libresolv.abilist: Likewise. + * sysdeps/unix/sysv/linux/nios2/librt.abilist: Likewise. + * sysdeps/unix/sysv/linux/nios2/libthread_db.abilist: Likewise. + * sysdeps/unix/sysv/linux/nios2/libutil.abilist: Likewise. + * sysdeps/unix/sysv/linux/powerpc/powerpc32/fpu/libc.abilist: Likewise. + * sysdeps/unix/sysv/linux/powerpc/powerpc32/fpu/libm.abilist: Likewise. + * sysdeps/unix/sysv/linux/powerpc/powerpc32/ld.abilist: Likewise. + * sysdeps/unix/sysv/linux/powerpc/powerpc32/libBrokenLocale.abilist: + Likewise. + * sysdeps/unix/sysv/linux/powerpc/powerpc32/libanl.abilist: Likewise. + * sysdeps/unix/sysv/linux/powerpc/powerpc32/libcrypt.abilist: Likewise. + * sysdeps/unix/sysv/linux/powerpc/powerpc32/libdl.abilist: Likewise. + * sysdeps/unix/sysv/linux/powerpc/powerpc32/libnsl.abilist: Likewise. + * sysdeps/unix/sysv/linux/powerpc/powerpc32/libpthread.abilist: + Likewise. + * sysdeps/unix/sysv/linux/powerpc/powerpc32/libresolv.abilist: + Likewise. + * sysdeps/unix/sysv/linux/powerpc/powerpc32/librt.abilist: Likewise. + * sysdeps/unix/sysv/linux/powerpc/powerpc32/libthread_db.abilist: + Likewise. + * sysdeps/unix/sysv/linux/powerpc/powerpc32/libutil.abilist: Likewise. + * sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/libc.abilist: + Likewise. + * sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/libm.abilist: + Likewise. + * sysdeps/unix/sysv/linux/powerpc/powerpc64/ld-le.abilist: Likewise. + * sysdeps/unix/sysv/linux/powerpc/powerpc64/ld.abilist: Likewise. + * sysdeps/unix/sysv/linux/powerpc/powerpc64/libBrokenLocale-le.abilist: + Likewise. + * sysdeps/unix/sysv/linux/powerpc/powerpc64/libBrokenLocale.abilist: + Likewise. + * sysdeps/unix/sysv/linux/powerpc/powerpc64/libanl-le.abilist: + Likewise. + * sysdeps/unix/sysv/linux/powerpc/powerpc64/libanl.abilist: Likewise. + * sysdeps/unix/sysv/linux/powerpc/powerpc64/libc-le.abilist: Likewise. + * sysdeps/unix/sysv/linux/powerpc/powerpc64/libc.abilist: Likewise. + * sysdeps/unix/sysv/linux/powerpc/powerpc64/libcrypt-le.abilist: + Likewise. + * sysdeps/unix/sysv/linux/powerpc/powerpc64/libcrypt.abilist: Likewise. + * sysdeps/unix/sysv/linux/powerpc/powerpc64/libdl-le.abilist: Likewise. + * sysdeps/unix/sysv/linux/powerpc/powerpc64/libdl.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/powerpc/powerpc64/libnsl-le.abilist: + Likewise. + * sysdeps/unix/sysv/linux/powerpc/powerpc64/libnsl.abilist: Likewise. + * sysdeps/unix/sysv/linux/powerpc/powerpc64/libpthread-le.abilist: + Likewise. + * sysdeps/unix/sysv/linux/powerpc/powerpc64/libpthread.abilist: + Likewise. + * sysdeps/unix/sysv/linux/powerpc/powerpc64/libresolv-le.abilist: + Likewise. + * sysdeps/unix/sysv/linux/powerpc/powerpc64/libresolv.abilist: + Likewise. + * sysdeps/unix/sysv/linux/powerpc/powerpc64/librt-le.abilist: Likewise. + * sysdeps/unix/sysv/linux/powerpc/powerpc64/librt.abilist: Likewise. + * sysdeps/unix/sysv/linux/powerpc/powerpc64/libthread_db-le.abilist: + Likewise. + * sysdeps/unix/sysv/linux/powerpc/powerpc64/libthread_db.abilist: + Likewise. + * sysdeps/unix/sysv/linux/powerpc/powerpc64/libutil-le.abilist: + Likewise. + * sysdeps/unix/sysv/linux/powerpc/powerpc64/libutil.abilist: Likewise. + * sysdeps/unix/sysv/linux/riscv/rv64/ld.abilist: Likewise. + * sysdeps/unix/sysv/linux/riscv/rv64/libBrokenLocale.abilist: + Likewise. + * sysdeps/unix/sysv/linux/riscv/rv64/libanl.abilist: Likewise. + * sysdeps/unix/sysv/linux/riscv/rv64/libc.abilist: Likewise. + * sysdeps/unix/sysv/linux/riscv/rv64/libcrypt.abilist: Likewise. + * sysdeps/unix/sysv/linux/riscv/rv64/libdl.abilist: Likewise. + * sysdeps/unix/sysv/linux/riscv/rv64/libm.abilist: Likewise. + * sysdeps/unix/sysv/linux/riscv/rv64/libnsl.abilist: Likewise. + * sysdeps/unix/sysv/linux/riscv/rv64/libpthread.abilist: Likewise. + * sysdeps/unix/sysv/linux/riscv/rv64/libresolv.abilist: Likewise. + * sysdeps/unix/sysv/linux/riscv/rv64/librt.abilist: Likewise. + * sysdeps/unix/sysv/linux/riscv/rv64/libthread_db.abilist: Likewise. + * sysdeps/unix/sysv/linux/riscv/rv64/libutil.abilist: Likewise. + * sysdeps/unix/sysv/linux/s390/libanl.abilist: Likewise. + * sysdeps/unix/sysv/linux/s390/s390-32/ld.abilist: Likewise. + * sysdeps/unix/sysv/linux/s390/s390-32/libBrokenLocale.abilist: + Likewise. + * sysdeps/unix/sysv/linux/s390/s390-32/libc.abilist: Likewise. + * sysdeps/unix/sysv/linux/s390/s390-32/libcrypt.abilist: Likewise. + * sysdeps/unix/sysv/linux/s390/s390-32/libdl.abilist: Likewise. + * sysdeps/unix/sysv/linux/s390/s390-32/libm.abilist: Likewise. + * sysdeps/unix/sysv/linux/s390/s390-32/libnsl.abilist: Likewise. + * sysdeps/unix/sysv/linux/s390/s390-32/libpthread.abilist: Likewise. + * sysdeps/unix/sysv/linux/s390/s390-32/libresolv.abilist: Likewise. + * sysdeps/unix/sysv/linux/s390/s390-32/librt.abilist: Likewise. + * sysdeps/unix/sysv/linux/s390/s390-32/libthread_db.abilist: Likewise. + * sysdeps/unix/sysv/linux/s390/s390-32/libutil.abilist: Likewise. + * sysdeps/unix/sysv/linux/s390/s390-64/ld.abilist: Likewise. + * sysdeps/unix/sysv/linux/s390/s390-64/libBrokenLocale.abilist: + Likewise. + * sysdeps/unix/sysv/linux/s390/s390-64/libc.abilist: Likewise. + * sysdeps/unix/sysv/linux/s390/s390-64/libcrypt.abilist: Likewise. + * sysdeps/unix/sysv/linux/s390/s390-64/libdl.abilist: Likewise. + * sysdeps/unix/sysv/linux/s390/s390-64/libm.abilist: Likewise. + * sysdeps/unix/sysv/linux/s390/s390-64/libnsl.abilist: Likewise. + * sysdeps/unix/sysv/linux/s390/s390-64/libpthread.abilist: Likewise. + * sysdeps/unix/sysv/linux/s390/s390-64/libresolv.abilist: Likewise. + * sysdeps/unix/sysv/linux/s390/s390-64/librt.abilist: Likewise. + * sysdeps/unix/sysv/linux/s390/s390-64/libthread_db.abilist: Likewise. + * sysdeps/unix/sysv/linux/s390/s390-64/libutil.abilist: Likewise. + * sysdeps/unix/sysv/linux/sh/ld.abilist: Likewise. + * sysdeps/unix/sysv/linux/sh/libBrokenLocale.abilist: Likewise. + * sysdeps/unix/sysv/linux/sh/libanl.abilist: Likewise. + * sysdeps/unix/sysv/linux/sh/libc.abilist: Likewise. + * sysdeps/unix/sysv/linux/sh/libcrypt.abilist: Likewise. + * sysdeps/unix/sysv/linux/sh/libdl.abilist: Likewise. + * sysdeps/unix/sysv/linux/sh/libm.abilist: Likewise. + * sysdeps/unix/sysv/linux/sh/libnsl.abilist: Likewise. + * sysdeps/unix/sysv/linux/sh/libpthread.abilist: Likewise. + * sysdeps/unix/sysv/linux/sh/libresolv.abilist: Likewise. + * sysdeps/unix/sysv/linux/sh/librt.abilist: Likewise. + * sysdeps/unix/sysv/linux/sh/libthread_db.abilist: Likewise. + * sysdeps/unix/sysv/linux/sh/libutil.abilist: Likewise. + * sysdeps/unix/sysv/linux/sparc/sparc32/ld.abilist: Likewise. + * sysdeps/unix/sysv/linux/sparc/sparc32/libBrokenLocale.abilist: + Likewise. + * sysdeps/unix/sysv/linux/sparc/sparc32/libanl.abilist: Likewise. + * sysdeps/unix/sysv/linux/sparc/sparc32/libc.abilist: Likewise. + * sysdeps/unix/sysv/linux/sparc/sparc32/libcrypt.abilist: Likewise. + * sysdeps/unix/sysv/linux/sparc/sparc32/libdl.abilist: Likewise. + * sysdeps/unix/sysv/linux/sparc/sparc32/libm.abilist: Likewise. + * sysdeps/unix/sysv/linux/sparc/sparc32/libnsl.abilist: Likewise. + * sysdeps/unix/sysv/linux/sparc/sparc32/libpthread.abilist: Likewise. + * sysdeps/unix/sysv/linux/sparc/sparc32/libresolv.abilist: Likewise. + * sysdeps/unix/sysv/linux/sparc/sparc32/librt.abilist: Likewise. + * sysdeps/unix/sysv/linux/sparc/sparc32/libthread_db.abilist: Likewise. + * sysdeps/unix/sysv/linux/sparc/sparc32/libutil.abilist: Likewise. + * sysdeps/unix/sysv/linux/sparc/sparc64/ld.abilist: Likewise. + * sysdeps/unix/sysv/linux/sparc/sparc64/libBrokenLocale.abilist: + Likewise. + * sysdeps/unix/sysv/linux/sparc/sparc64/libanl.abilist: Likewise. + * sysdeps/unix/sysv/linux/sparc/sparc64/libc.abilist: Likewise. + * sysdeps/unix/sysv/linux/sparc/sparc64/libcrypt.abilist: Likewise. + * sysdeps/unix/sysv/linux/sparc/sparc64/libdl.abilist: Likewise. + * sysdeps/unix/sysv/linux/sparc/sparc64/libm.abilist: Likewise. + * sysdeps/unix/sysv/linux/sparc/sparc64/libnsl.abilist: Likewise. + * sysdeps/unix/sysv/linux/sparc/sparc64/libpthread.abilist: Likewise. + * sysdeps/unix/sysv/linux/sparc/sparc64/libresolv.abilist: Likewise. + * sysdeps/unix/sysv/linux/sparc/sparc64/librt.abilist: Likewise. + * sysdeps/unix/sysv/linux/sparc/sparc64/libthread_db.abilist: Likewise. + * sysdeps/unix/sysv/linux/sparc/sparc64/libutil.abilist: Likewise. + * sysdeps/unix/sysv/linux/x86_64/64/ld.abilist: Likewise. + * sysdeps/unix/sysv/linux/x86_64/64/libBrokenLocale.abilist: Likewise. + * sysdeps/unix/sysv/linux/x86_64/64/libanl.abilist: Likewise. + * sysdeps/unix/sysv/linux/x86_64/64/libc.abilist: Likewise. + * sysdeps/unix/sysv/linux/x86_64/64/libcrypt.abilist: Likewise. + * sysdeps/unix/sysv/linux/x86_64/64/libdl.abilist: Likewise. + * sysdeps/unix/sysv/linux/x86_64/64/libm.abilist: Likewise. + * sysdeps/unix/sysv/linux/x86_64/64/libnsl.abilist: Likewise. + * sysdeps/unix/sysv/linux/x86_64/64/libpthread.abilist: Likewise. + * sysdeps/unix/sysv/linux/x86_64/64/libresolv.abilist: Likewise. + * sysdeps/unix/sysv/linux/x86_64/64/librt.abilist: Likewise. + * sysdeps/unix/sysv/linux/x86_64/64/libthread_db.abilist: Likewise. + * sysdeps/unix/sysv/linux/x86_64/64/libutil.abilist: Likewise. + * sysdeps/unix/sysv/linux/x86_64/libmvec.abilist: Likewise. + * sysdeps/unix/sysv/linux/x86_64/x32/ld.abilist: Likewise. + * sysdeps/unix/sysv/linux/x86_64/x32/libBrokenLocale.abilist: Likewise. + * sysdeps/unix/sysv/linux/x86_64/x32/libanl.abilist: Likewise. + * sysdeps/unix/sysv/linux/x86_64/x32/libc.abilist: Likewise. + * sysdeps/unix/sysv/linux/x86_64/x32/libcrypt.abilist: Likewise. + * sysdeps/unix/sysv/linux/x86_64/x32/libdl.abilist: Likewise. + * sysdeps/unix/sysv/linux/x86_64/x32/libm.abilist: Likewise. + * sysdeps/unix/sysv/linux/x86_64/x32/libnsl.abilist: Likewise. + * sysdeps/unix/sysv/linux/x86_64/x32/libpthread.abilist: Likewise. + * sysdeps/unix/sysv/linux/x86_64/x32/libresolv.abilist: Likewise. + * sysdeps/unix/sysv/linux/x86_64/x32/librt.abilist: Likewise. + * sysdeps/unix/sysv/linux/x86_64/x32/libthread_db.abilist: Likewise. + * sysdeps/unix/sysv/linux/x86_64/x32/libutil.abilist: Likewise. + +2018-05-04 Stefan Liebler + + [BZ #23137] + * sysdeps/nptl/lowlevellock.h (lll_wait_tid): + Use atomic_load_acquire to load __tid. + +2018-05-02 H.J. Lu + + * sysdeps/unix/sysv/linux/x86_64/swapcontext.S (__swapcontext): + Restore the pointer into %rdx, after syscall and use %rdx, + instead of %rsi, to restore context. + +2018-05-02 H.J. Lu + + * sysdeps/unix/sysv/linux/x86_64/setcontext.S (__setcontext): + Pop the pointer into %rdx after syscall and use %rdx, instead + of %rsi, to restore context. + +2018-05-02 H.J. Lu + + * nptl/pthread_create.c (START_THREAD_DEFN): Clear previous + handlers after setjmp. + * setjmp/longjmp.c (__libc_longjmp): Don't define alias if + defined. + * sysdeps/unix/sysv/linux/x86/setjmpP.h: Include + . + (_JUMP_BUF_SIGSET_BITS_PER_WORD): New. + (_JUMP_BUF_SIGSET_NSIG): Changed to 96. + (_JUMP_BUF_SIGSET_NWORDS): Changed to use ALIGN_UP and + _JUMP_BUF_SIGSET_BITS_PER_WORD. + * sysdeps/x86/Makefile (sysdep_routines): Add __longjmp_cancel. + * sysdeps/x86/__longjmp_cancel.S: New file. + * sysdeps/x86/longjmp.c: Likewise. + * sysdeps/x86/nptl/pt-longjmp.c: Likewise. + +2018-05-02 Adhemerval Zanella + + * NEWS: Add ustat.h deprecation entry. + * bits/ustat.h: Remove file. + * misc/sys/ustat.h: Likewise. + * misc/ustat.h: Likewise. + * sysdeps/unix/sysv/linux/generic/ustat.c: Likewise. + * misc/Makefile (headers): Remove ustat.h and sys/ustat.h. + * misc/ustat.c (__ustat): Rename to __old_ustat and export only in + compatibility mode. + * sysdeps/unix/sysv/linux/ustat.c (__ustat): Likewise. + * sysdeps/unix/sysv/linux/mips/ustat.c: Define DEV_TO_KDEV and use + generic Linux implementation. + +2018-04-30 Tulio Magno Quites Machado Filho + + * math/w_exp_compat.c: Replace hidden_def with libm_hidden_def.. + * math/w_expl_compat.c: Likewise. + * math/w_exp_template.c: Likewise. Remove hidden_def_x. + +2018-04-30 Raymond Nicholson + + * manual/startup.texi (Aborting a Program): Remove inappropriate joke. + +2018-04-27 Adhemerval Zanella + + * sysdeps/unix/sysv/linux/arm/readahead.c: Remove file. + * sysdeps/unix/sysv/linux/mips/mips32/readahead.c: Likewise. + * sysdeps/unix/sysv/linux/mips/mips64/n32/syscalls.list (readahead): + Remove. + * sysdeps/unix/sysv/linux/mips/mips64/n64/syscalls.list: Likewise. + * sysdeps/unix/sysv/linux/powerpc/powerpc32/syscalls.list: Likewise. + * sysdeps/unix/sysv/linux/wordsize-64/syscalls.list: Likewise. + * sysdeps/unix/sysv/linux/readahead.c (__readahead): Assume + __NR_readahead existence, and use INLINE_SYSCALL_CALL, __ALIGNMENT_ARG, + and SYSCALL_LL64. + +2018-04-27 Tulio Magno Quites Machado Filho + + * math/e_exp2_template.c: Replace M_SUF (M_LN2) with M_MLIT (M_LN2). + + * math/w_acos_template.c: Replace M_SUF (fabs) with M_FABS. + * math/w_asin_template.c: Likewise. + * math/w_atanh_template.c: Likewise. + +2018-04-27 Gabriel F. T. Gomes + + * sysdeps/powerpc/preconfigure [machine == powerpc64] (machine): Define + to powerpc/powerpc64/be for big-endian. + [machine == powerpc64le]: Define to powerpc/powerpc64/le for + little-endian. + + * sysdeps/powerpc/powerpc64/power4/Implies: Move to powerpc64/be. + * sysdeps/powerpc/powerpc64/power4/fpu/Implies: Likewise. + * sysdeps/powerpc/powerpc64/power4/fpu/multiarch/Implies: Likewise. + * sysdeps/powerpc/powerpc64/power4/multiarch/Implies: Likewise. + * sysdeps/powerpc/powerpc64/power5+/Implies: Likewise. + * sysdeps/powerpc/powerpc64/power5+/fpu/Implies: Likewise. + * sysdeps/powerpc/powerpc64/power5+/fpu/multiarch/Implies: Likewise. + * sysdeps/powerpc/powerpc64/power5+/multiarch/Implies: Likewise. + * sysdeps/powerpc/powerpc64/power5/Implies: Likewise. + * sysdeps/powerpc/powerpc64/power5/fpu/Implies: Likewise. + * sysdeps/powerpc/powerpc64/power5/fpu/multiarch/Implies: Likewise. + * sysdeps/powerpc/powerpc64/power5/multiarch/Implies: Likewise. + * sysdeps/powerpc/powerpc64/power6/Implies: Likewise. + * sysdeps/powerpc/powerpc64/power6/fpu/Implies: Likewise. + * sysdeps/powerpc/powerpc64/power6/fpu/multiarch/Implies: Likewise. + * sysdeps/powerpc/powerpc64/power6/multiarch/Implies: Likewise. + * sysdeps/powerpc/powerpc64/power6x/Implies: Likewise. + * sysdeps/powerpc/powerpc64/power6x/fpu/Implies: Likewise. + * sysdeps/powerpc/powerpc64/power6x/fpu/multiarch/Implies: Likewise. + * sysdeps/powerpc/powerpc64/power6x/multiarch/Implies: Likewise. + * sysdeps/powerpc/powerpc64/power7/Implies: Likewise. + * sysdeps/powerpc/powerpc64/power7/fpu/Implies: Likewise. + * sysdeps/powerpc/powerpc64/power7/fpu/multiarch/Implies: Likewise. + * sysdeps/powerpc/powerpc64/power7/multiarch/Implies: Likewise. + * sysdeps/powerpc/powerpc64/power8/Implies: Likewise. + * sysdeps/powerpc/powerpc64/power8/fpu/Implies: Likewise. + * sysdeps/powerpc/powerpc64/power8/fpu/multiarch/Implies: Likewise. + * sysdeps/powerpc/powerpc64/power8/multiarch/Implies: Likewise. + * sysdeps/powerpc/powerpc64/power9/Implies: Likewise. + * sysdeps/powerpc/powerpc64/power9/fpu/Implies: Likewise. + * sysdeps/powerpc/powerpc64/power9/fpu/multiarch/Implies: Likewise. + * sysdeps/powerpc/powerpc64/power9/multiarch/Implies: Likewise. + + * sysdeps/powerpc/powerpc64/be/power4/Implies: Move from powerpc64 and + adjusted to imply powerpc64 and older processors on powerpc64/be. + * sysdeps/powerpc/powerpc64/be/power4/fpu/Implies: Likewise. + * sysdeps/powerpc/powerpc64/be/power4/fpu/multiarch/Implies: Likewise. + * sysdeps/powerpc/powerpc64/be/power4/multiarch/Implies: Likewise. + * sysdeps/powerpc/powerpc64/be/power5+/Implies: Likewise. + * sysdeps/powerpc/powerpc64/be/power5+/fpu/Implies: Likewise. + * sysdeps/powerpc/powerpc64/be/power5+/fpu/multiarch/Implies: Likewise. + * sysdeps/powerpc/powerpc64/be/power5+/multiarch/Implies: Likewise. + * sysdeps/powerpc/powerpc64/be/power5/Implies: Likewise. + * sysdeps/powerpc/powerpc64/be/power5/fpu/Implies: Likewise. + * sysdeps/powerpc/powerpc64/be/power5/fpu/multiarch/Implies: Likewise. + * sysdeps/powerpc/powerpc64/be/power5/multiarch/Implies: Likewise. + * sysdeps/powerpc/powerpc64/be/power6/Implies: Likewise. + * sysdeps/powerpc/powerpc64/be/power6/fpu/Implies: Likewise. + * sysdeps/powerpc/powerpc64/be/power6/fpu/multiarch/Implies: Likewise. + * sysdeps/powerpc/powerpc64/be/power6/multiarch/Implies: Likewise. + * sysdeps/powerpc/powerpc64/be/power6x/Implies: Likewise. + * sysdeps/powerpc/powerpc64/be/power6x/fpu/Implies: Likewise. + * sysdeps/powerpc/powerpc64/be/power6x/fpu/multiarch/Implies: Likewise. + * sysdeps/powerpc/powerpc64/be/power6x/multiarch/Implies: Likewise. + * sysdeps/powerpc/powerpc64/be/power7/Implies: Likewise. + * sysdeps/powerpc/powerpc64/be/power7/fpu/Implies: Likewise. + * sysdeps/powerpc/powerpc64/be/power7/fpu/multiarch/Implies: Likewise. + * sysdeps/powerpc/powerpc64/be/power7/multiarch/Implies: Likewise. + * sysdeps/powerpc/powerpc64/be/power8/Implies: Likewise. + * sysdeps/powerpc/powerpc64/be/power8/fpu/Implies: Likewise. + * sysdeps/powerpc/powerpc64/be/power8/fpu/multiarch/Implies: Likewise. + * sysdeps/powerpc/powerpc64/be/power8/multiarch/Implies: Likewise. + * sysdeps/powerpc/powerpc64/be/power9/Implies: Likewise. + * sysdeps/powerpc/powerpc64/be/power9/fpu/Implies: Likewise. + * sysdeps/powerpc/powerpc64/be/power9/fpu/multiarch/Implies: Likewise. + * sysdeps/powerpc/powerpc64/be/power9/multiarch/Implies: Likewise. + + * sysdeps/powerpc/powerpc64/970/Implies: Move to powerpc64/be. + * sysdeps/powerpc/powerpc64/be/970/Implies: Move from powerpc64/be. + * sysdeps/powerpc/powerpc64/be/a2/Implies: New file. + * sysdeps/powerpc/powerpc64/be/cell/Implies: Likewise. + + * sysdeps/powerpc/powerpc64/be/Implies: New file. + * sysdeps/powerpc/powerpc64/be/fpu/Implies: Likewise. + * sysdeps/powerpc/powerpc64/be/fpu/multiarch/Implies: Likewise. + * sysdeps/powerpc/powerpc64/be/multiarch/Implies: Likewise. + + * sysdeps/powerpc/powerpc64le/Implies: Move to powerpc64/le. + * sysdeps/powerpc/powerpc64le/Implies-before: Likewise. + * sysdeps/powerpc/powerpc64le/Makefile: Likewise. + * sysdeps/powerpc/powerpc64le/configure: Likewise. + * sysdeps/powerpc/powerpc64le/configure.ac: Likewise. + * sysdeps/powerpc/powerpc64le/fpu/Implies: Likewise. + * sysdeps/powerpc/powerpc64le/fpu/e_sqrtf128.c: Likewise. + * sysdeps/powerpc/powerpc64le/fpu/multiarch/Implies: Likewise. + * sysdeps/powerpc/powerpc64le/fpu/sfp-machine.h: Likewise. + * sysdeps/powerpc/powerpc64le/multiarch/Implies: Likewise. + * sysdeps/powerpc/powerpc64le/power9/fpu/e_sqrtf128.c: Likewise. + + * sysdeps/powerpc/powerpc64/le/Implies: Move from powerpc64le. + * sysdeps/powerpc/powerpc64/le/Implies-before: Likewise. + * sysdeps/powerpc/powerpc64/le/Makefile: Likewise. + * sysdeps/powerpc/powerpc64/le/configure: Likewise. + * sysdeps/powerpc/powerpc64/le/configure.ac: Likewise. + * sysdeps/powerpc/powerpc64/le/fpu/Implies: Likewise. + * sysdeps/powerpc/powerpc64/le/fpu/e_sqrtf128.c: Likewise. + * sysdeps/powerpc/powerpc64/le/fpu/multiarch/Implies: Likewise. + * sysdeps/powerpc/powerpc64/le/fpu/sfp-machine.h: Likewise. + * sysdeps/powerpc/powerpc64/le/multiarch/Implies: Likewise. + * sysdeps/powerpc/powerpc64/le/power9/fpu/e_sqrtf128.c: Likewise. + + * sysdeps/powerpc/powerpc64le/power7/Implies: Move to powerpc64/le. + * sysdeps/powerpc/powerpc64le/power7/fpu/Implies: Likewise. + * sysdeps/powerpc/powerpc64le/power7/fpu/multiarch/Implies: Likewise. + * sysdeps/powerpc/powerpc64le/power7/multiarch/Implies: Likewise. + * sysdeps/powerpc/powerpc64le/power8/Implies: Likewise. + * sysdeps/powerpc/powerpc64le/power8/fpu/Implies: Likewise. + * sysdeps/powerpc/powerpc64le/power8/fpu/multiarch/Implies: Likewise. + * sysdeps/powerpc/powerpc64le/power8/multiarch/Implies: Likewise. + * sysdeps/powerpc/powerpc64le/power9/Implies: Likewise. + * sysdeps/powerpc/powerpc64le/power9/fpu/Implies: Likewise. + * sysdeps/powerpc/powerpc64le/power9/fpu/multiarch/Implies: Likewise. + * sysdeps/powerpc/powerpc64le/power9/multiarch/Implies: Likewise. + + * sysdeps/powerpc/powerpc64/le/power7/Implies: Move from powerpc64le + and adjusted to imply olders processors. + * sysdeps/powerpc/powerpc64/le/power7/fpu/Implies: Likewise. + * sysdeps/powerpc/powerpc64/le/power7/fpu/multiarch/Implies: Likewise. + * sysdeps/powerpc/powerpc64/le/power7/multiarch/Implies: Likewise. + * sysdeps/powerpc/powerpc64/le/power8/Implies: Likewise. + * sysdeps/powerpc/powerpc64/le/power8/fpu/Implies: Likewise. + * sysdeps/powerpc/powerpc64/le/power8/fpu/multiarch/Implies: Likewise. + * sysdeps/powerpc/powerpc64/le/power8/multiarch/Implies: Likewise. + * sysdeps/powerpc/powerpc64/le/power9/Implies: Likewise. + * sysdeps/powerpc/powerpc64/le/power9/fpu/Implies: Likewise. + * sysdeps/powerpc/powerpc64/le/power9/fpu/multiarch/Implies: Likewise. + * sysdeps/powerpc/powerpc64/le/power9/multiarch/Implies: Likewise. + + * sysdeps/unix/sysv/linux/powerpc/powerpc64le/Implies: Move to + powerpc64/le. + * sysdeps/unix/sysv/linux/powerpc/powerpc64le/float128-abi.h: Likewise. + * sysdeps/unix/sysv/linux/powerpc/powerpc64le/fpu/Implies: Likewise. + + * sysdeps/unix/sysv/linux/powerpc/powerpc64/le/Implies: Move from + powerpc64le. + * sysdeps/unix/sysv/linux/powerpc/powerpc64/le/float128-abi.h: Likewise. + * sysdeps/unix/sysv/linux/powerpc/powerpc64/le/fpu/Implies: Likewise. + + * sysdeps/unix/sysv/linux/powerpc/powerpc64/970/Implies: Move to + powerpc64/be. + * sysdeps/unix/sysv/linux/powerpc/powerpc64/a2/Implies: Likewise. + * sysdeps/unix/sysv/linux/powerpc/powerpc64/cell/Implies: Likewise. + * sysdeps/unix/sysv/linux/powerpc/powerpc64/cell/fpu/Implies: Likewise. + + * sysdeps/unix/sysv/linux/powerpc/powerpc64/be/970/Implies: Move from + powerpc64 and adjusted. + * sysdeps/unix/sysv/linux/powerpc/powerpc64/be/a2/Implies: Likewise. + * sysdeps/unix/sysv/linux/powerpc/powerpc64/be/cell/Implies: Likewise. + * sysdeps/unix/sysv/linux/powerpc/powerpc64/be/cell/fpu/Implies: + Likewise. + +2018-04-27 Joseph Myers + + * sysdeps/tile: Remove. + * sysdeps/unix/sysv/linux/tile: Likewise. + * README (tilegx-*-linux-gnu): Remove from list of supported + configurations. + * manual/contrib.texi (Contributors): Mention Chris Metcalf's + contribution of support for generic Linux kernel syscall + interface. + * scripts/build-many-glibcs.py (Context.add_all_configs): Remove + tilegx configurations. + (Config.install_linux_headers): Do not handle tile. + * sysdeps/unix/sysv/linux/aarch64/ldsodefs.h: Do not mention Tile + in comment. + * sysdeps/unix/sysv/linux/nios2/Makefile: Likewise. + * sysdeps/unix/sysv/linux/posix_fadvise.c: Likewise. + [__ASSUME_FADVISE64_64_NO_ALIGN] (__ALIGNMENT_ARG): Remove + conditional undefine and redefine. + * sysdeps/unix/sysv/linux/posix_fadvise64.c: Do not mention Tile + in comment. + [__ASSUME_FADVISE64_64_NO_ALIGN] (__ALIGNMENT_ARG): Remove + conditional undefine and redefine. + +2018-04-26 Aurelien Jarno + + * signal/tst-sigaction.c: New file to test BZ #23069. + * signal/Makefile (tests): Fix indentation. Add tst-sigaction. + +2018-04-26 Tulio Magno Quites Machado Filho + + [BZ #22766] + * include/dlfcn.h [__libc_dl_open]: Replace RTLD_LAZY with RTLD_NOW. + * sysdeps/gnu/unwind-resume.c (__lib_gcc_s_init): Replace + __libc_dlopen_mode() using RTLD_NOW with __libc_dlopen. + * sysdeps/nptl/unwind-forcedunwind.c: Likewise. + +2018-04-25 Adhemerval Zanella + + * sysdeps/unix/sysv/linux/getdirentries.c (getdirentries): Build iff + _DIRENT_MATCHES_DIRENT64 is not defined. + * sysdeps/unix/sysv/linux/getdirentries64.c (getdirentries64): Open + implementation and alias to getdirentries if _DIRENT_MATCHES_DIRENT64 + is defined. + * sysdeps/unix/sysv/linux/wordsize-64/getdirentries.c: Remove file. + * sysdeps/unix/sysv/linux/wordsize-64/getdirentries64.c: Remove file. + +2018-04-25 Joseph Myers + + * scripts/build-many-glibcs.py (Context.checkout): Default GCC + version to GCC 8 branch. + +2018-04-24 Joseph Myers + + * sysdeps/mach/hurd/dl-sysdep.c: Include . + (check_no_hidden): Use type of original function when declaring + alias. + + * sysdeps/unix/sysv/linux/sys/ptrace.h + (PTRACE_SECCOMP_GET_METADATA): New enum value and macro. + * sysdeps/unix/sysv/linux/bits/ptrace-shared.h + (struct __ptrace_seccomp_metadata): New type. + * sysdeps/unix/sysv/linux/aarch64/sys/ptrace.h + (PTRACE_SECCOMP_GET_METADATA): Likewise. + * sysdeps/unix/sysv/linux/arm/sys/ptrace.h + (PTRACE_SECCOMP_GET_METADATA): Likewise. + * sysdeps/unix/sysv/linux/ia64/sys/ptrace.h + (PTRACE_SECCOMP_GET_METADATA): Likewise. + * sysdeps/unix/sysv/linux/powerpc/sys/ptrace.h + (PTRACE_SECCOMP_GET_METADATA): Likewise. + * sysdeps/unix/sysv/linux/s390/sys/ptrace.h + (PTRACE_SECCOMP_GET_METADATA): Likewise. + * sysdeps/unix/sysv/linux/sparc/sys/ptrace.h + (PTRACE_SECCOMP_GET_METADATA): Likewise. + * sysdeps/unix/sysv/linux/tile/sys/ptrace.h + (PTRACE_SECCOMP_GET_METADATA): Likewise. + * sysdeps/unix/sysv/linux/x86/sys/ptrace.h + (PTRACE_SECCOMP_GET_METADATA): Likewise. + +2018-04-23 Adhemerval Zanella + + * dirent/alphasort.c (alphasort): Build iff _DIRENT_MATCHES_DIRENT64 is + defined. + * dirent/versionsort.c (versionsort): Likewise. + * dirent/alphasort64.c (alphasort64): Build regardless and alias to + alphasort if _DIRENT_MATCHES_DIRENT64 is defined. + * dirent/versionsort64.c (versionsort64): Likewise. + * sysdeps/unix/sysv/linux/i386/alphasort64.c: Remove file. + * sysdeps/unix/sysv/linux/arm/alphasort64.c: Likewise. + * sysdeps/unix/sysv/linux/arm/versionsort64.c: Likewise. + * sysdeps/unix/sysv/linux/m68k/alphasort64.c: Likewise. + * sysdeps/unix/sysv/linux/m68k/versionsort64.c: Likewise. + * sysdeps/unix/sysv/linux/s390/s390-32/alphasort64.c: Likewise. + * sysdeps/unix/sysv/linux/s390/s390-32/versionsort64.c: Likewise. + * sysdeps/unix/sysv/linux/i386/versionsort64.c: Likewise. + * sysdeps/unix/sysv/linux/alphasort64.c: New file. + * sysdeps/unix/sysv/linux/versionsort64.c: Likewise. + * sysdeps/unix/sysv/linux/powerpc/powerpc32/alphasort64.c: Likewise. + * sysdeps/unix/sysv/linux/powerpc/powerpc32/versionsort64.c: Likewise. + * sysdeps/unix/sysv/linux/sparc/sparc32/alphasort64.c: Likewise. + * sysdeps/unix/sysv/linux/sparc/sparc32/versionsort64.c: Likewise. + +2018-04-23 Joseph Myers + + * elf/elf.h (NT_PPC_PKEY): New macro. + +2018-04-23 Dragan Stanojevic - Nevidljivi + + [BZ #23094] + * localedata/locales/hr_HR: fix thousands_sep and + mon_thousands_sep + +2018-04-20 Joseph Myers + + * sysdeps/unix/sysv/linux/alpha/bits/termios.h [__USE_MISC] + (XTABS): Define to TAB3. + +2018-04-20 Adhemerval Zanella + + * sysdeps/hppa/fpu/libm-test-ulps: Update. + + * dirent/scandir-tail-common.c: New file. + * dirent/scandir-tail.c: Use scandir-tail-common.c. + (__scandir_tail): Build iff _DIRENT_MATCHES_DIRENT64 is not defined. + * dirent/scandir.c: Use scandir-tail-common.c. + * dirent/scandirat.c: Likewise. + * dirent/scandir64-tail.c: Use scandir-tail-common.c. + * dirent/scandir64.c (scandir64): Always build and alias to scandir + if _DIRENT_MATCHES_DIRENT64 is defined. + * dirent/scandirat64.c (scandirat64): Likewise. + * include/dirent.h (__scandir_tail): Only define iff + _DIRENT_MATCHES_DIRENT64 is not defined. + (__scandir64_tail): Define regardless. + (__scandirat, scandirat64): Remove libc_hidden_proto. + * sysdeps/unix/sysv/linux/arm/scandir64.c: Remove file. + * sysdeps/unix/sysv/linux/m68k/scandir64.c: Likewise. + * sysdeps/unix/sysv/linux/powerpc/powerpc32/scandir64.c: Likewise. + * sysdeps/unix/sysv/linux/s390/s390-32/scandir64.c: Likewise. + * sysdeps/unix/sysv/linux/i386/scandir64.c: Likewise. + * sysdeps/unix/sysv/linux/sparc/sparc32/scandir64.c: Likewise. + * sysdeps/unix/sysv/linux/scandir64.c: New file. + +2018-04-20 Joseph Myers + + * sysdeps/unix/sysv/linux/aarch64/bits/hwcap.h (HWCAP_ASIMDFHM): + New macro. + * sysdeps/unix/sysv/linux/aarch64/dl-procinfo.c (_DL_HWCAP_COUNT): + Increase to 24. + (_dl_aarch64_cap_flags): Add asimdfhm. + +2018-04-19 Chung-Lin Tang + + * sysdeps/nios2/libm-test-ulps: Update. + +2018-04-19 Adhemerval Zanella + + * sysdeps/unix/sysv/linux/mips/mips64/getdents64.c (__getdents64): + Only alias to __getdents for _DIRENT_MATCHES_DIRENT64. + + * sysdeps/unix/sysv/linux/alpha/getdents.c: Add comments with alpha + requirements. + (_DIRENT_MATCHES_DIRENT64): Undef + * sysdeps/unix/sysv/linux/alpha/getdents64.c: Likewise. + * sysdeps/unix/sysv/linux/arm/getdents64.c: Remove file. + * sysdeps/unix/sysv/linux/generic/getdents.c: Likewise. + * sysdeps/unix/sysv/linux/generic/getdents64.c: Likewise. + * sysdeps/unix/sysv/linux/generic/wordsize-32/getdents.c: Likewise. + * sysdeps/unix/sysv/linux/getdents.c: Simplify implementation by + use getdents64 syscalls as base. + * sysdeps/unix/sysv/linux/getdents64.c: Likewise and add compatibility + symbol if required. + * sysdeps/unix/sysv/linux/hppa/getdents64.c: Likewise. + * sysdeps/unix/sysv/linux/i386/getdents64.c: Likewise. + * sysdeps/unix/sysv/linux/m68k/getdents64.c: Likewise. + * sysdeps/unix/sysv/linux/powerpc/getdents64.c: Likewise. + * sysdeps/unix/sysv/linux/s390/s390-32/getdents64.c: Likewise. + * sysdeps/unix/sysv/linux/sparc/sparc32/getdents64.c: Likewise. + * sysdeps/unix/sysv/linux/wordsize-64/getdents.c: Likewise. + * sysdeps/unix/sysv/linux/wordsize-64/getdents64.c: Likewise. + * sysdeps/unix/sysv/linux/sparc/sparc64/get_clockfreq.c + (__get_clockfreq_via_proc_openprom): Use __getdents64. + * sysdeps/unix/sysv/linux/mips/mips64/getdents64.c: New file. + +2018-04-19 Stefan Liebler + + * scripts/test_printers_common.py (init_test): Disable lock elision. + +2018-04-19 Stefan Liebler + + * math/test-tgmath.c (count_double, count_float, + count_ldouble, count_cdouble, count_cfloat, + count_cldouble): Use volatile int. + +2018-04-19 Samuel Thibault + + * sysdeps/mach/hurd/i386/Makefile [$(subdir) = conform] + (conformtest-xfail-conds): Add i386-gnu. + * conform/data/fcntl.h-data (flock.l_type, flock.l_whence): XFAIL on + i386-gnu. + * conform/data/sys/ipc.h-data (ipc_perm.uid, ipc_perm.gid, + ipc_perm.cuid, ipc_perm.cgid): Likewise. + * conform/data/sys/msg.h-data (msqid_ds.msg_lspid, + msqid_ds.msg_lrpid): Likewise. + * conform/data/sys/shm.h-data (shmid_ds.shm_lpid, shmid_ds.shm_cpid): + Likewise. + * conform/data/sys/stat.h-data (stat.st_dev): Likewise. + * conform/data/sys/statvfs.h-data (statvfs.f_fsid): Likewise. + * sysdeps/mach/hurd/bits/statvfs.h (struct statvfs): Make f_bsize, + f_namemax, f_frsize, and f_flag fields unsigned long int instead of + unsigned int. + (struct statvfs64): Likewise. + * sysdeps/mach/hurd/bits/statfs.h (struct statfs, struct statfs64): + Likewise. + * bits/in.h [!__USE_MISC]: Do not define struct ip_opts. + * conform/data/netinet/in.h-data: Allow sin_ and sin6_ prefix. + * sysdeps/gnu/bits/msq.h (struct msqid_ds): Use __wait_queue struct + instead of wait_queue. + * sysdeps/gnu/bits/shm.h (struct shmid_ds): Use __vm_area_struct + instead of vm_area_struct. + * bits/sched.h: Include and move + struct sched_param definition to it. + * sysdeps/unix/sysv/linux/bits/sched.h: Likewise. + * bits/types/struct_sched_param.h: New file. + * sysdeps/htl/bits/types/struct___pthread_attr.h: Include + instead of . + * posix/Makefile (headers): Add bits/types/struct_sched_param.h. + * sysdeps/pthread/bits/types/sigevent_t.h: New file, based on the + generic version but include to make struct + sigevent's sigev_notify_attributes field a pthread_attr_t*. + * bits/types/siginfo_t.h: Remove siginfo struct name, unused and + non-compliant. + * bits/termios.h [__USE_XOPEN || __USE_XOPEN2K8] (IXANY): Define. + [__USE_XOPEN && !__USE_XOPEN2K] (IUCLC, OLCUC): Define. + [__USE_XOPEN] (OFDEL): New macro. + [__USE_XOPEN && !__USE_XOPEN2K] (XCASE): New macro. + * bits/resource.h (RLIM_SAVED_MAX, RLIM_SAVED_CUR): New macros. + * sysdeps/hurd/include/hurd.h [!_ISOMAC]: Do not declare libc hidden + prototypes. + * sysdeps/hurd/include/hurd/fd.h [!_ISOMAC]: Likewise. + * sysdeps/hurd/include/hurd/signal.h [!_ISOMAC]: Likewise. + * sysdeps/arm/sys/ucontext.h: Remove fpregset struct name, unused and + non-compliant. + * sysdeps/i386/sys/ucontext.h: Likewise. + * sysdeps/m68k/sys/ucontext.h: Likewise. + * sysdeps/mips/sys/ucontext.h: Likewise. + * sysdeps/unix/sysv/linux/hppa/sys/ucontext.h: Likewise. + * sysdeps/mach/hurd/i386/Makefile + (test-xfail-POSIX/fcntl.h/conform): Add. + (test-xfail-POSIX/signal.h/conform): Add. + (test-xfail-POSIX/semaphore.h/conform): Add. + (test-xfail-POSIX/regex.h/conform): Add. + (test-xfail-POSIX/aio.h/conform): Add. + (test-xfail-POSIX/mqueue.h/conform): Add. + (test-xfail-POSIX/sys/types.h/conform): Add. + (test-xfail-UNIX98/fcntl.h/conform): Add. + (test-xfail-UNIX98/netdb.h/conform): Add. + (test-xfail-UNIX98/signal.h/conform): Add. + (test-xfail-UNIX98/semaphore.h/conform): Add. + (test-xfail-UNIX98/regex.h/conform): Add. + (test-xfail-UNIX98/aio.h/conform): Add. + (test-xfail-UNIX98/ftw.h/conform): Add. + (test-xfail-UNIX98/mqueue.h/conform): Add. + (test-xfail-UNIX98/netinet/in.h/conform): Add. + (test-xfail-UNIX98/sys/wait.h/conform): Add. + (test-xfail-UNIX98/sys/sem.h/conform): Add. + (test-xfail-UNIX98/sys/uio.h/conform): Add. + (test-xfail-UNIX98/sys/socket.h/conform): Add. + (test-xfail-UNIX98/sys/types.h/conform): Add. + (test-xfail-UNIX98/stdlib.h/conform): Add. + (test-xfail-UNIX98/arpa/inet.h/conform): Add. + (test-xfail-POSIX2008/fcntl.h/conform): Add. + (test-xfail-POSIX2008/netdb.h/conform): Add. + (test-xfail-POSIX2008/signal.h/conform): Add. + (test-xfail-POSIX2008/semaphore.h/conform): Add. + (test-xfail-POSIX2008/regex.h/conform): Add. + (test-xfail-POSIX2008/aio.h/conform): Add. + (test-xfail-POSIX2008/mqueue.h/conform): Add. + (test-xfail-POSIX2008/netinet/in.h/conform): Add. + (test-xfail-POSIX2008/sys/wait.h/conform): Add. + (test-xfail-POSIX2008/sys/socket.h/conform): Add. + (test-xfail-POSIX2008/sys/types.h/conform): Add. + (test-xfail-POSIX2008/arpa/inet.h/conform): Add. + (test-xfail-XOPEN2K/fcntl.h/conform): Add. + (test-xfail-XOPEN2K/netdb.h/conform): Add. + (test-xfail-XOPEN2K/signal.h/conform): Add. + (test-xfail-XOPEN2K/semaphore.h/conform): Add. + (test-xfail-XOPEN2K/regex.h/conform): Add. + (test-xfail-XOPEN2K/aio.h/conform): Add. + (test-xfail-XOPEN2K/ftw.h/conform): Add. + (test-xfail-XOPEN2K/mqueue.h/conform): Add. + (test-xfail-XOPEN2K/netinet/in.h/conform): Add. + (test-xfail-XOPEN2K/sys/wait.h/conform): Add. + (test-xfail-XOPEN2K/sys/sem.h/conform): Add. + (test-xfail-XOPEN2K/sys/uio.h/conform): Add. + (test-xfail-XOPEN2K/sys/socket.h/conform): Add. + (test-xfail-XOPEN2K/sys/types.h/conform): Add. + (test-xfail-XOPEN2K/stdlib.h/conform): Add. + (test-xfail-XOPEN2K/arpa/inet.h/conform): Add. + (test-xfail-XOPEN2K8/fcntl.h/conform): Add. + (test-xfail-XOPEN2K8/netdb.h/conform): Add. + (test-xfail-XOPEN2K8/signal.h/conform): Add. + (test-xfail-XOPEN2K8/semaphore.h/conform): Add. + (test-xfail-XOPEN2K8/regex.h/conform): Add. + (test-xfail-XOPEN2K8/aio.h/conform): Add. + (test-xfail-XOPEN2K8/ftw.h/conform): Add. + (test-xfail-XOPEN2K8/mqueue.h/conform): Add. + (test-xfail-XOPEN2K8/netinet/in.h/conform): Add. + (test-xfail-XOPEN2K8/sys/wait.h/conform): Add. + (test-xfail-XOPEN2K8/sys/sem.h/conform): Add. + (test-xfail-XOPEN2K8/sys/uio.h/conform): Add. + (test-xfail-XOPEN2K8/sys/socket.h/conform): Add. + (test-xfail-XOPEN2K8/sys/types.h/conform): Add. + (test-xfail-XOPEN2K8/stdlib.h/conform): Add. + (test-xfail-XOPEN2K8/arpa/inet.h/conform): Add. + * conform/data/signal.h-data (SA_SIGINFO, SA_NOCLDWAIT): XFAIL on + i386-gnu. + * conform/data/sys/wait.h-data (WIFCONTINUED, WEXITED, WSTOPPED, + WCONTINUED, WNOWAIT): XFAIL on i386-gnu. + +2018-04-18 Joseph Myers + + * scripts/build-many-glibcs.py (Context.add_all_configs): Use + --enable-obsolete for powerpc-linux-gnuspe. + +2018-04-18 Samuel Thibault + + * conform/data/sys/un.h-data: Allow sun_ prefix. + * sysdeps/mach/include/lock-intern.h: Do not declare libc hidden + prototypes. + * sysdeps/mach/include/mach.h: Likewise. + * sysdeps/mach/include/mach/mig_support.h: Likewise. + * sysdeps/mach/include/mach_error.h: Likewise. + +2018-04-16 Adhemerval Zanella + + * sysdeps/arm/armv6t2/memchr.S (memchr): Remove ARM code path. + * sysdeps/arm/armv6t2/strlen.S (memchr): Likewise. + * sysdeps/arm/armv7/multiarch/memchr_neon.S (memchr): Likewise. + * sysdeps/arm/armv7/strcmp.S (strcmp): Likewise. + +2018-04-16 Andreas Schwab + + [BZ #19527] + * iconvdata/gconv-modules (ARMSCII8//, ShiftJISX0213//): New aliases. + +2018-04-15 Patrick McGehearty + + * sysdeps/ieee754/dbl-64/e_exp.c: faster __ieee754_exp() + * sysdeps/ieee754/dbl-64/eexp.tbl: New file for e_exp.c + +2018-04-12 DJ Delorie + + * sysdeps/unix/sysv/linux/syscall-names.list: Update kernel + version to 4.16. + +2018-04-12 Stefan Liebler + + * sysdeps/unix/sysv/linux/s390/kernel_sigaction.h + (struct kernel_sigaction): Use the same definition on 31bit as is used + on 64bit. + +2018-04-09 Florian Weimer + + [BZ #23037] + * resolv/res_send.c (send_dg): Use designated initializers instead + of assignment to zero-initialize other fields of struct mmsghdr. + +2018-04-06 Adhemerval Zanella + + * sysdeps/posix/readdir.c (__READDIR, __GETDENTS, DIRENTY_TYPE, + __READDIR_ALIAS): Undefine after usage. + * sysdeps/posix/readdir_r.c (__READDIR_R, __GETDENTS, DIRENT_TYPE, + __READDIR_R_ALIAS): Likewise. + * sysdeps/unix/sysv/linux/arm/readdir64.c: Remove file. + * sysdeps/unix/sysv/linux/arm/readdir64_r.c: Likewise. + * sysdeps/unix/sysv/linux/m68k/readdir64.c: Likewise. + * sysdeps/unix/sysv/linux/m68k/readdir64_r.c: Likewise. + * sysdeps/unix/sysv/linux/powerpc/readdir64.c: Likewise. + * sysdeps/unix/sysv/linux/powerpc/readdir64_r.c: Likewise. + * sysdeps/unix/sysv/linux/i386/readdir64.c: Likewise. + * sysdeps/unix/sysv/linux/i386/readdir64_r.c: Likewise. + * sysdeps/unix/sysv/linux/s390/s390-32/readdir64.c: Likewise. + * sysdeps/unix/sysv/linux/s390/s390-32/readdir64_r.c: Likewise. + * sysdeps/unix/sysv/linux/sparc/sparc32/readdir64.c: Likewise. + * sysdeps/unix/sysv/linux/sparc/sparc32/readdir64_r.c: Likewise. + * sysdeps/unix/sysv/linux/wordsize-64/readdir.c: Likewise. + * sysdeps/unix/sysv/linux/wordsize-64/readdir64.c: Likewise. + * sysdeps/unix/sysv/linux/wordsize-64/readdir64_r.c: Likewise. + * sysdeps/unix/sysv/linux/wordsize-64/readdir_r.c: Likewise. + * sysdeps/unix/sysv/linux/readdir.c: New file. + * sysdeps/unix/sysv/linux/readdir_r.c: Likewise. + * sysdeps/unix/sysv/linux/readdir64.c: Add compat symbol if required. + * sysdeps/unix/sysv/linux/readdir64_r.c: Likewise. + + * sysdeps/i386/i686/fpu/multiarch/libm-test-ulps: Update. + +2018-04-06 Andreas Schwab + + * manual/charset.texi (Converting a Character): Fix typo. + +2018-04-05 Adhemerval Zanella + + * sysdeps/sparc/fpu/libm-test-ulps: Update. + + * sysdeps/arm/libm-test-ulps: Update. + + * sysdeps/unix/sysv/linux/aarch64/sigaction.c: Use default Linux version + as base implementation. + * sysdeps/unix/sysv/linux/arm/sigaction.c: Likewise. + * sysdeps/unix/sysv/linux/i386/sigaction.c: Likewise. + * sysdeps/unix/sysv/linux/sparc/sparc32/sigaction.c: Likewise. + * sysdeps/unix/sysv/linux/sparc/sparc64/sigaction.c: Likewise. + * sysdeps/unix/sysv/linux/x86_64/sigaction.c: Likewise. + * sysdeps/unix/sysv/linux/alpha/kernel_sigaction.h: Add include guards, + remove unrequired definitions and update comments. + * sysdeps/unix/sysv/linux/kernel_sigaction.h: Likewise. + * sysdeps/unix/sysv/linux/mips/kernel_sigaction.h: Likewise. + * sysdeps/unix/sysv/linux/ia64/kernel_sigaction.h: New file. + * sysdeps/unix/sysv/linux/m68k/kernel_sigaction.h: Likewise. + * sysdeps/unix/sysv/linux/nios2/kernel_sigaction.h: Likewise. + * sysdeps/unix/sysv/linux/powerpc/kernel_sigaction: Likewise. + * sysdeps/unix/sysv/linux/s390/kernel_sigaction.h: Likewise. + * sysdeps/unix/sysv/linux/sh/kernel_sigaction.h: Likewise. + * sysdeps/unix/sysv/linux/sparc/kernel_sigaction.h: Likewise. + * sysdeps/unix/sysv/linux/tile/kernel_sigaction.h: Likewise. + * sysdeps/unix/sysv/linux/ia64/sigaction.c: Remove file. + * sysdeps/unix/sysv/linux/mips/sigaction.c: Likewise. + * sysdeps/unix/sysv/linux/s390/s390-64/sigaction.c: Likewise. + * sysdeps/unix/sysv/linux/sigaction.c: Add STUB, SET_SA_RESTORER, + and RESET_SA_RESTORER hooks. + +2018-04-05 Stefan Liebler + + * sysdeps/s390/fpu/libm-test-ulps: Regenerated. + +2018-04-05 Florian Weimer + + * manual/examples/mbstouwcs.c (mbstouwcs): Fix loop termination, + integer overflow, memory leak on error, and indeterminate errno + value. Add a null wide character to terminate the result string. + * manual/charset.texi (Converting a Character): Mention embedded + null bytes in the mbrtowc input string. Explain what happens in + the -2 result case. Do not claim that mbrtowc is simple or + obvious to use. Adjust the description of the code example. Use + @code, not @var, for concrete variables. + +2018-04-05 Florian Weimer + + * manual/examples/mbstouwcs.c: New file. + * manual/charset.texi (Converting a Character): Include it. + +2018-04-05 Samuel Thibault + + * include/dirent.h (dirfd): Add hidden proto. + * dirent/dirfd.c (dirfd): Add hidden def. + * sysdeps/mach/hurd/dirfd.c (dirfd): Add hidden def. + * sysdeps/posix/dirfd.c (dirfd): Add hidden def. + +2018-04-04 Tulio Magno Quites Machado Filho + + * sysdeps/powerpc/fpu/libm-test-ulps: Increase double-precision + sin, cos and sincos to 1 ULP. + +2018-04-04 Maciej W. Rozycki + + [BZ #19818] + * sysdeps/generic/ldsodefs.h (SYMBOL_ADDRESS): Handle SHN_ABS + symbols. + * elf/dl-addr.c (determine_info): Ignore SHN_ABS symbols. + * elf/tst-absolute-sym.c: New file. + * elf/tst-absolute-sym-lib.c: New file. + * elf/tst-absolute-sym-lib.lds: New file. + * elf/Makefile (tests): Add `tst-absolute-sym'. + (modules-names): Add `tst-absolute-sym-lib'. + (LDLIBS-tst-absolute-sym-lib.so): New variable. + ($(objpfx)tst-absolute-sym-lib.so): New dependency. + ($(objpfx)tst-absolute-sym): New dependency. + + [BZ #19818] + * sysdeps/generic/ldsodefs.h (LOOKUP_VALUE_ADDRESS): Add `set' + parameter. + (SYMBOL_ADDRESS): New macro. + [!ELF_FUNCTION_PTR_IS_SPECIAL] (DL_SYMBOL_ADDRESS): Use + SYMBOL_ADDRESS for symbol address calculation. + * elf/dl-runtime.c (_dl_fixup): Likewise. + (_dl_profile_fixup): Likewise. + * elf/dl-symaddr.c (_dl_symbol_address): Likewise. + * elf/rtld.c (dl_main): Likewise. + * sysdeps/aarch64/dl-machine.h (elf_machine_rela): Likewise. + * sysdeps/alpha/dl-machine.h (elf_machine_rela): Likewise. + * sysdeps/arm/dl-machine.h (elf_machine_rel): Likewise. + (elf_machine_rela): Likewise. + * sysdeps/hppa/dl-machine.h (elf_machine_rela): Likewise. + * sysdeps/hppa/dl-symaddr.c (_dl_symbol_address): Likewise. + * sysdeps/i386/dl-machine.h (elf_machine_rel): Likewise. + (elf_machine_rela): Likewise. + * sysdeps/ia64/dl-machine.h (elf_machine_rela): Likewise. + * sysdeps/m68k/dl-machine.h (elf_machine_rela): Likewise. + * sysdeps/microblaze/dl-machine.h (elf_machine_rela): Likewise. + * sysdeps/mips/dl-machine.h (ELF_MACHINE_BEFORE_RTLD_RELOC): + Likewise. + (elf_machine_reloc): Likewise. + (elf_machine_got_rel): Likewise. + * sysdeps/mips/dl-trampoline.c (__dl_runtime_resolve): Likewise. + * sysdeps/nios2/dl-machine.h (elf_machine_rela): Likewise. + * sysdeps/powerpc/powerpc32/dl-machine.h (elf_machine_rela): + Likewise. + * sysdeps/powerpc/powerpc64/dl-machine.h (elf_machine_rela): + Likewise. + * sysdeps/riscv/dl-machine.h (elf_machine_rela): Likewise. + * sysdeps/s390/s390-32/dl-machine.h (elf_machine_rela): + Likewise. + * sysdeps/s390/s390-64/dl-machine.h (elf_machine_rela): + Likewise. + * sysdeps/sh/dl-machine.h (elf_machine_rela): Likewise. + * sysdeps/sparc/sparc32/dl-machine.h (elf_machine_rela): + Likewise. + * sysdeps/sparc/sparc64/dl-machine.h (elf_machine_rela): + Likewise. + * sysdeps/tile/dl-machine.h (elf_machine_rela): Likewise. + * sysdeps/x86_64/dl-machine.h (elf_machine_rela): Likewise. + +2018-04-04 Zack Weinberg + + * sysdeps/generic/internal-signals.h: Include signal.h, + sigsetops.h, and stdbool.h. + (__libc_signal_block_all): Actually block all signals. + (__libc_signal_block_app): Likewise. + (__libc_signal_restore_set): Actually restore the signal mask. + +2018-04-04 Florian Weimer + + inet: Actually build and run tst-deadline. + * inet/Makefile (tests-internal): Add tst-deadline and do not + overwrite the variable. + (tests-static-internal): Remove variable. + +2018-04-03 H.J. Lu + + [BZ #22947] + * bits/uio-ext.h (RWF_APPEND): New. + * sysdeps/unix/sysv/linux/bits/uio-ext.h (RWF_APPEND): Likewise. + * manual/llio.texi: Document RWF_APPEND. + * misc/tst-preadvwritev2-common.c (RWF_APPEND): New. + (RWF_SUPPORTED): Add RWF_APPEND. + +2018-04-03 Adhemerval Zanella + + [BZ #22391] + * nptl/sigaction.c (__sigaction): Use __is_internal_signal to + check for internal nptl signals. + * nptl/sigaction.c (__sigaction): Likewise. + * signal/sigaddset.c (sigaddset): Likewise. + * signal/sigdelset.c (sigdelset): Likewise. + * sysdeps/posix/signal.c (__bsd_signal): Likewise. + * sysdeps/posix/sigset.c (sigset): Call and check sigaddset return + value. + * signal/sigfillset.c (sigfillset): User __clear_internal_signals + to filter out internal nptl signals. + * signal/tst-sigset.c (do_test): Check ech signal indidually and + also check realtime signals using standard macros. + * sysdeps/generic/internal-signals.h (__clear_internal_signals, + __is_internal_signal, __libc_signal_block_all, + __libc_signal_block_app, __libc_signal_restore_set): New functions. + * sysdeps/nptl/sigfillset.c: Remove file. + * sysdeps/unix/sysv/linux/internal-signals.h (__is_internal_signal): + Change return to bool. + (__clear_internal_signals): Remove SIGTIMER clean since it is + equal to SIGCANEL on Linux. + * sysdeps/unix/sysv/linux/sigtimedwait.c (__sigtimedwait): Assume + signal set was constructed using standard functions. + +2018-04-03 Samuel Thibault + + * sysdeps/mach/hurd/if_index.c (__if_nametoindex): Return ENODEV if + ifname is too long. + * hurd/hurdsig.c (interrupted_reply_port_location): Use + DIAG_IGNORE_NEEDS_COMMENT to silence warning with GCC 6 and before. + * sysdeps/mach/hurd/i386/exc2signal.c (_hurd_exception2signal): Add + hidden def. + * mach/spin-lock.c (__mutex_unlock): Add hidden def. + * signal/sigaddset.c: Include . + * signal/sigdelset.c: Likewise. + +2018-04-03 Wilco Dijkstra + + * sysdeps/ieee754/dbl-64/s_sin.c (__sin): Cleanup ifdefs. + (__cos): Likewise. + * sysdeps/ieee754/dbl-64/s_sin.c (__sincos): Refactor using the same + logic as sin and cos. + +2018-04-03 Wilco Dijkstra + + * sysdeps/ieee754/dbl-64/s_sin.c (do_sin): Use TAYLOR_SIN for small + inputs. Return correct sign. + (do_sincos): Remove small input check before do_sin, let do_sin set + the sign. + (__sin): Likewise. + (__cos): Likewise. + +2018-04-03 Wilco Dijkstra + + * sysdeps/ieee754/dbl-64/s_sin.c (TAYLOR_SLOW): Remove. + (do_cos_slow): Likewise. + (do_sin_slow): Likewise. + (reduce_and_compute): Likewise. + (slow): Likewise. + (slow1): Likewise. + (slow2): Likewise. + (sloww): Likewise. + (sloww1): Likewise. + (sloww2): Likewise. + (bslow): Likewise. + (bslow1): Likewise. + (bslow2): Likewise. + (cslow2): Likewise. + +2018-04-03 Wilco Dijkstra + + * sysdeps/ieee754/dbl-64/s_sin.c (TAYLOR_SIN): Remove cor parameter. + (do_cos): Remove corp parameter and calculations. + (do_sin): Likewise. + (do_sincos): Remove cor variable. + (__sin): Use do_sincos for huge inputs. + (__cos): Likewise. + * sysdeps/ieee754/dbl-64/s_sincos.c (__sincos): Likewise. + (reduce_and_compute_sincos): Remove unused function. + +2018-04-03 Wilco Dijkstra + + * sysdeps/ieee754/dbl-64/s_sin.c (reduce_sincos_1): Rename to + reduce_sincos, improve accuracy to 136 bits. + (do_sincos_1): Rename to do_sincos, remove fallbacks to slow functions. + (__sin): Use improved reduction and simplified do_sincos calculation. + (__cos): Likewise. + * sysdeps/ieee754/dbl-64/s_sincos.c (__sincos): Likewise. + +2018-04-03 Wilco Dijkstra + + * sysdeps/ieee754/dbl-64/s_sin.c (reduce_sincos_2): Remove function. + (do_sincos_2): Likewise. + (__sin): Remove middle range reduction case. + (__cos): Likewise. + * sysdeps/ieee754/dbl-64/s_sincos.c (__sincos): Remove middle range + reduction case. + +2018-04-03 Wilco Dijkstra + + * sysdeps/aarch64/libm-test-ulps: Update ULP for sin, cos, sincos. + * sysdeps/ieee754/dbl-64/s_sin.c (__sin): Remove slow paths for small + inputs. + (__cos): Likewise. + * sysdeps/x86_64/fpu/libm-test-ulps: Update ULP for sin, cos, sincos. + +2018-04-03 Joseph Myers + + * scripts/build-many-glibcs.py (Context.checkout): Default Linux + version to 4.16 + +2018-04-03 Adhemerval Zanella + + * sysdeps/posix/opendir.c (o_directory_works, tryopen_o_directory): + Remove definitions. + (opendir_oflags): Use O_DIRECTORY regardless. + (__opendir, __opendirat): Remove need_isdir_precheck usage. + * sysdeps/unix/sysv/linux/opendir.c: Remove file. + +2018-04-02 Samuel Thibault + + * sysdeps/mach/hurd/bits/local_lim.h (_POSIX_THREAD_KEYS_MAX, + _POSIX_THREAD_DESTRUCTOR_ITERATIONS, _POSIX_THREAD_THREADS_MAX): Define + macros. + * sysdeps/mach/hurd/bits/posix_opt.h (_POSIX_THREADS, + _POSIX_THREAD_ATTR_STACKSIZE, _POSIX_THREAD_ATTR_STACKADDR, + _POSIX_SEMAPHORES, _POSIX_READER_WRITER_LOCKS, _POSIX_TIMEOUTS, + _POSIX_SPIN_LOCKS, _POSIX_BARRIERS): Define macros to 200809L. + * sysdeps/mach/hurd/net/if_ppp.h: Remove file. + * sysdeps/mach/hurd/Makefile (sysdep_headers): Remove net/if_ppp.h. + + * htl/Makefile: Bump licence to LGPL 2.1+. + * htl/alloca_cutoff.c: Likewise. + * htl/cthreads-compat.c: Likewise. + * htl/lockfile.c: Likewise. + * htl/pt-alloc.c: Likewise. + * htl/pt-cancel.c: Likewise. + * htl/pt-cleanup.c: Likewise. + * htl/pt-create.c: Likewise. + * htl/pt-dealloc.c: Likewise. + * htl/pt-detach.c: Likewise. + * htl/pt-exit.c: Likewise. + * htl/pt-getattr.c: Likewise. + * htl/pt-initialize.c: Likewise. + * htl/pt-internal.h: Likewise. + * htl/pt-join.c: Likewise. + * htl/pt-self.c: Likewise. + * htl/pt-setcancelstate.c: Likewise. + * htl/pt-setcanceltype.c: Likewise. + * htl/pt-sigmask.c: Likewise. + * htl/pt-spin-inlines.c: Likewise. + * htl/pt-testcancel.c: Likewise. + * htl/pt-yield.c: Likewise. + * htl/tests/test-1.c: Likewise. + * htl/tests/test-10.c: Likewise. + * htl/tests/test-11.c: Likewise. + * htl/tests/test-12.c: Likewise. + * htl/tests/test-13.c: Likewise. + * htl/tests/test-14.c: Likewise. + * htl/tests/test-15.c: Likewise. + * htl/tests/test-16.c: Likewise. + * htl/tests/test-17.c: Likewise. + * htl/tests/test-2.c: Likewise. + * htl/tests/test-3.c: Likewise. + * htl/tests/test-4.c: Likewise. + * htl/tests/test-5.c: Likewise. + * htl/tests/test-6.c: Likewise. + * htl/tests/test-7.c: Likewise. + * htl/tests/test-8.c: Likewise. + * htl/tests/test-9.c: Likewise. + * htl/tests/test-__pthread_destroy_specific-skip.c: Likewise. + * sysdeps/htl/bits/cancelation.h: Likewise. + * sysdeps/htl/bits/pthread-np.h: Likewise. + * sysdeps/htl/bits/pthread.h: Likewise. + * sysdeps/htl/bits/pthreadtypes.h: Likewise. + * sysdeps/htl/bits/semaphore.h: Likewise. + * sysdeps/htl/bits/types/__pthread_key.h: Likewise. + * sysdeps/htl/bits/types/struct___pthread_attr.h: Likewise. + * sysdeps/htl/bits/types/struct___pthread_barrier.h: Likewise. + * sysdeps/htl/bits/types/struct___pthread_barrierattr.h: Likewise. + * sysdeps/htl/bits/types/struct___pthread_cond.h: Likewise. + * sysdeps/htl/bits/types/struct___pthread_condattr.h: Likewise. + * sysdeps/htl/bits/types/struct___pthread_mutex.h: Likewise. + * sysdeps/htl/bits/types/struct___pthread_mutexattr.h: Likewise. + * sysdeps/htl/bits/types/struct___pthread_once.h: Likewise. + * sysdeps/htl/bits/types/struct___pthread_rwlock.h: Likewise. + * sysdeps/htl/bits/types/struct___pthread_rwlockattr.h: Likewise. + * sysdeps/htl/old_pt-atfork.c: Likewise. + * sysdeps/htl/pt-atfork.c: Likewise. + * sysdeps/htl/pt-attr-destroy.c: Likewise. + * sysdeps/htl/pt-attr-getdetachstate.c: Likewise. + * sysdeps/htl/pt-attr-getguardsize.c: Likewise. + * sysdeps/htl/pt-attr-getinheritsched.c: Likewise. + * sysdeps/htl/pt-attr-getschedparam.c: Likewise. + * sysdeps/htl/pt-attr-getschedpolicy.c: Likewise. + * sysdeps/htl/pt-attr-getscope.c: Likewise. + * sysdeps/htl/pt-attr-getstack.c: Likewise. + * sysdeps/htl/pt-attr-getstackaddr.c: Likewise. + * sysdeps/htl/pt-attr-getstacksize.c: Likewise. + * sysdeps/htl/pt-attr-init.c: Likewise. + * sysdeps/htl/pt-attr-setdetachstate.c: Likewise. + * sysdeps/htl/pt-attr-setguardsize.c: Likewise. + * sysdeps/htl/pt-attr-setinheritsched.c: Likewise. + * sysdeps/htl/pt-attr-setschedparam.c: Likewise. + * sysdeps/htl/pt-attr-setschedpolicy.c: Likewise. + * sysdeps/htl/pt-attr-setscope.c: Likewise. + * sysdeps/htl/pt-attr-setstack.c: Likewise. + * sysdeps/htl/pt-attr-setstackaddr.c: Likewise. + * sysdeps/htl/pt-attr-setstacksize.c: Likewise. + * sysdeps/htl/pt-attr.c: Likewise. + * sysdeps/htl/pt-barrier-destroy.c: Likewise. + * sysdeps/htl/pt-barrier-init.c: Likewise. + * sysdeps/htl/pt-barrier-wait.c: Likewise. + * sysdeps/htl/pt-barrier.c: Likewise. + * sysdeps/htl/pt-barrierattr-destroy.c: Likewise. + * sysdeps/htl/pt-barrierattr-getpshared.c: Likewise. + * sysdeps/htl/pt-barrierattr-init.c: Likewise. + * sysdeps/htl/pt-barrierattr-setpshared.c: Likewise. + * sysdeps/htl/pt-cond-brdcast.c: Likewise. + * sysdeps/htl/pt-cond-destroy.c: Likewise. + * sysdeps/htl/pt-cond-init.c: Likewise. + * sysdeps/htl/pt-cond-signal.c: Likewise. + * sysdeps/htl/pt-cond-timedwait.c: Likewise. + * sysdeps/htl/pt-cond-wait.c: Likewise. + * sysdeps/htl/pt-cond.c: Likewise. + * sysdeps/htl/pt-condattr-destroy.c: Likewise. + * sysdeps/htl/pt-condattr-getclock.c: Likewise. + * sysdeps/htl/pt-condattr-getpshared.c: Likewise. + * sysdeps/htl/pt-condattr-init.c: Likewise. + * sysdeps/htl/pt-condattr-setclock.c: Likewise. + * sysdeps/htl/pt-condattr-setpshared.c: Likewise. + * sysdeps/htl/pt-destroy-specific.c: Likewise. + * sysdeps/htl/pt-equal.c: Likewise. + * sysdeps/htl/pt-getconcurrency.c: Likewise. + * sysdeps/htl/pt-getcpuclockid.c: Likewise. + * sysdeps/htl/pt-getschedparam.c: Likewise. + * sysdeps/htl/pt-getspecific.c: Likewise. + * sysdeps/htl/pt-init-specific.c: Likewise. + * sysdeps/htl/pt-key-create.c: Likewise. + * sysdeps/htl/pt-key-delete.c: Likewise. + * sysdeps/htl/pt-key.h: Likewise. + * sysdeps/htl/pt-mutex-destroy.c: Likewise. + * sysdeps/htl/pt-mutex-getprioceiling.c: Likewise. + * sysdeps/htl/pt-mutex-init.c: Likewise. + * sysdeps/htl/pt-mutex-lock.c: Likewise. + * sysdeps/htl/pt-mutex-setprioceiling.c: Likewise. + * sysdeps/htl/pt-mutex-timedlock.c: Likewise. + * sysdeps/htl/pt-mutex-trylock.c: Likewise. + * sysdeps/htl/pt-mutex-unlock.c: Likewise. + * sysdeps/htl/pt-mutexattr-destroy.c: Likewise. + * sysdeps/htl/pt-mutexattr-getprioceiling.c: Likewise. + * sysdeps/htl/pt-mutexattr-getprotocol.c: Likewise. + * sysdeps/htl/pt-mutexattr-getpshared.c: Likewise. + * sysdeps/htl/pt-mutexattr-gettype.c: Likewise. + * sysdeps/htl/pt-mutexattr-init.c: Likewise. + * sysdeps/htl/pt-mutexattr-setprioceiling.c: Likewise. + * sysdeps/htl/pt-mutexattr-setprotocol.c: Likewise. + * sysdeps/htl/pt-mutexattr-setpshared.c: Likewise. + * sysdeps/htl/pt-mutexattr-settype.c: Likewise. + * sysdeps/htl/pt-mutexattr.c: Likewise. + * sysdeps/htl/pt-once.c: Likewise. + * sysdeps/htl/pt-rwlock-attr.c: Likewise. + * sysdeps/htl/pt-rwlock-destroy.c: Likewise. + * sysdeps/htl/pt-rwlock-init.c: Likewise. + * sysdeps/htl/pt-rwlock-rdlock.c: Likewise. + * sysdeps/htl/pt-rwlock-timedrdlock.c: Likewise. + * sysdeps/htl/pt-rwlock-timedwrlock.c: Likewise. + * sysdeps/htl/pt-rwlock-tryrdlock.c: Likewise. + * sysdeps/htl/pt-rwlock-trywrlock.c: Likewise. + * sysdeps/htl/pt-rwlock-unlock.c: Likewise. + * sysdeps/htl/pt-rwlock-wrlock.c: Likewise. + * sysdeps/htl/pt-rwlockattr-destroy.c: Likewise. + * sysdeps/htl/pt-rwlockattr-getpshared.c: Likewise. + * sysdeps/htl/pt-rwlockattr-init.c: Likewise. + * sysdeps/htl/pt-rwlockattr-setpshared.c: Likewise. + * sysdeps/htl/pt-setconcurrency.c: Likewise. + * sysdeps/htl/pt-setschedparam.c: Likewise. + * sysdeps/htl/pt-setschedprio.c: Likewise. + * sysdeps/htl/pt-setspecific.c: Likewise. + * sysdeps/htl/pt-spin.c: Likewise. + * sysdeps/htl/pt-startup.c: Likewise. + * sysdeps/htl/pthread.h: Likewise. + * sysdeps/htl/sem-close.c: Likewise. + * sysdeps/htl/sem-destroy.c: Likewise. + * sysdeps/htl/sem-getvalue.c: Likewise. + * sysdeps/htl/sem-init.c: Likewise. + * sysdeps/htl/sem-open.c: Likewise. + * sysdeps/htl/sem-post.c: Likewise. + * sysdeps/htl/sem-timedwait.c: Likewise. + * sysdeps/htl/sem-trywait.c: Likewise. + * sysdeps/htl/sem-unlink.c: Likewise. + * sysdeps/htl/sem-wait.c: Likewise. + * sysdeps/hurd/htl/pt-kill.c: Likewise. + * sysdeps/i386/htl/pt-machdep.h: Likewise. + * sysdeps/mach/htl/pt-block.c: Likewise. + * sysdeps/mach/htl/pt-spin.c: Likewise. + * sysdeps/mach/htl/pt-stack-alloc.c: Likewise. + * sysdeps/mach/htl/pt-thread-alloc.c: Likewise. + * sysdeps/mach/htl/pt-thread-start.c: Likewise. + * sysdeps/mach/htl/pt-thread-terminate.c: Likewise. + * sysdeps/mach/htl/pt-timedblock.c: Likewise. + * sysdeps/mach/htl/pt-wakeup.c: Likewise. + * sysdeps/mach/hurd/htl/bits/pthread-np.h: Likewise. + * sysdeps/mach/hurd/htl/bits/types/struct___pthread_mutex.h: Likewise. + * sysdeps/mach/hurd/htl/pt-attr-setstackaddr.c: Likewise. + * sysdeps/mach/hurd/htl/pt-attr-setstacksize.c: Likewise. + * sysdeps/mach/hurd/htl/pt-docancel.c: Likewise. + * sysdeps/mach/hurd/htl/pt-hurd-cond-timedwait.c: Likewise. + * sysdeps/mach/hurd/htl/pt-hurd-cond-wait.c: Likewise. + * sysdeps/mach/hurd/htl/pt-mutex-consistent.c: Likewise. + * sysdeps/mach/hurd/htl/pt-mutex-destroy.c: Likewise. + * sysdeps/mach/hurd/htl/pt-mutex-getprioceiling.c: Likewise. + * sysdeps/mach/hurd/htl/pt-mutex-init.c: Likewise. + * sysdeps/mach/hurd/htl/pt-mutex-lock.c: Likewise. + * sysdeps/mach/hurd/htl/pt-mutex-setprioceiling.c: Likewise. + * sysdeps/mach/hurd/htl/pt-mutex-timedlock.c: Likewise. + * sysdeps/mach/hurd/htl/pt-mutex-transfer-np.c: Likewise. + * sysdeps/mach/hurd/htl/pt-mutex-trylock.c: Likewise. + * sysdeps/mach/hurd/htl/pt-mutex-unlock.c: Likewise. + * sysdeps/mach/hurd/htl/pt-mutex.h: Likewise. + * sysdeps/mach/hurd/htl/pt-mutexattr-destroy.c: Likewise. + * sysdeps/mach/hurd/htl/pt-mutexattr-getprioceiling.c: Likewise. + * sysdeps/mach/hurd/htl/pt-mutexattr-getprotocol.c: Likewise. + * sysdeps/mach/hurd/htl/pt-mutexattr-getpshared.c: Likewise. + * sysdeps/mach/hurd/htl/pt-mutexattr-getrobust.c: Likewise. + * sysdeps/mach/hurd/htl/pt-mutexattr-gettype.c: Likewise. + * sysdeps/mach/hurd/htl/pt-mutexattr-init.c: Likewise. + * sysdeps/mach/hurd/htl/pt-mutexattr-setprioceiling.c: Likewise. + * sysdeps/mach/hurd/htl/pt-mutexattr-setprotocol.c: Likewise. + * sysdeps/mach/hurd/htl/pt-mutexattr-setpshared.c: Likewise. + * sysdeps/mach/hurd/htl/pt-mutexattr-setrobust.c: Likewise. + * sysdeps/mach/hurd/htl/pt-mutexattr-settype.c: Likewise. + * sysdeps/mach/hurd/htl/pt-sigstate-destroy.c: Likewise. + * sysdeps/mach/hurd/htl/pt-sigstate-init.c: Likewise. + * sysdeps/mach/hurd/htl/pt-sigstate.c: Likewise. + * sysdeps/mach/hurd/htl/pt-sysdep.c: Likewise. + * sysdeps/mach/hurd/htl/pt-sysdep.h: Likewise. + * sysdeps/mach/hurd/i386/htl/pt-machdep.c: Likewise. + * sysdeps/mach/hurd/i386/htl/pt-setup.c: Likewise. + + * NEWS: Announce that glibc now builds unpatched on GNU/Hurd. + * README: Remove the mention of out-of-tree patches needed for + GNU/Hurd. + + * sysdeps/mach/hurd/bits/stat.h [!__USE_MISC && __USE_ATFILE] + (UTIME_NOW, UTIME_OMIT): Define macros. + + * htl/cthreads-compat.c (__cthread_detach): Call __pthread_detach + instead of pthread_detach. + (__cthread_fork): Call __pthread_create instead of pthread_create. + (__cthread_keycreate): Call __pthread_key_create instead of + pthread_key_create. + (__cthread_getspecific): Call __pthread_getspecific instead of + pthread_getspecific. + (__cthread_setspecific): Call __pthread_setspecific instead of + pthread_setspecific. + * htl/pt-alloc.c (__pthread_alloc): Call __pthread_mutex_lock and + __pthread_mutex_unlock instead of pthread_mutex_lock and + pthread_mutex_unlock. + * htl/pt-cleanup.c (__pthread_get_cleanup_stack): Rename to + ___pthread_get_cleanup_stack. + (__pthread_get_cleanup_stack): New strong alias. + * htl/pt-create.c: Include . + (entry_point): Call __pthread_exit instead of pthread_exit. + (pthread_create): Rename to __pthread_create. + (pthread_create): New strong alias. + * htl/pt-detach.c (pthread_detach): Rename to __pthread_detach. + (pthread_detach): New strong alias. + (__pthread_detach): Call __pthread_cond_broadcast instead of + pthread_cond_broadcast. + * htl/pt-exit.c: Include . + (__pthread_exit): Call __pthread_setcancelstate and + ___pthread_get_cleanup_stack instead of pthread_setcancelstate and + __pthread_get_cleanup_stack. + * htl/pt-testcancel.c: Include . + (pthread_testcancel): Call __pthread_exit instead of pthread_exit. + * sysdeps/htl/pt-attr-getstack.c: Include + (__pthread_attr_getstack): Call __pthread_attr_getstackaddr and + __pthread_attr_getstacksize instead of pthread_attr_getstackaddr and + pthread_attr_getstacksize. + * sysdeps/htl/pt-attr-getstackaddr.c (pthread_attr_getstackaddr): + Rename to __pthread_attr_getstackaddr. + (pthread_attr_getstackaddr): New strong alias. + * sysdeps/htl/pt-attr-getstacksize.c (pthread_attr_getstacksize): + Rename to __pthread_attr_getstacksize. + (pthread_attr_getstacksize): New strong alias. + * sysdeps/htl/pt-attr-setstack.c: Include . + (pthread_attr_setstack): Rename to __pthread_attr_setstack. + (pthread_attr_setstack): New strong alias. + (__pthread_attr_setstack): Call __pthread_attr_getstacksize, + __pthread_attr_setstacksize and __pthread_attr_setstackaddr instead of + pthread_attr_getstacksize, pthread_attr_setstacksize and + pthread_attr_setstackaddr. + * sysdeps/htl/pt-attr-setstackaddr.c (pthread_attr_setstackaddr): + Rename to __pthread_attr_setstackaddr. + (pthread_attr_setstackaddr): New strong alias. + * sysdeps/htl/pt-attr-setstacksize.c (pthread_attr_setstacksize): + Rename to __pthread_attr_setstacksize. + (pthread_attr_setstacksize): New strong alias. + * sysdeps/htl/pt-cond-timedwait.c: Include . + (__pthread_cond_timedwait_internal): Use __pthread_exit instead of + pthread_exit. + * sysdeps/htl/pt-key-create.c: Include . + (__pthread_key_create): New hidden def. + * sysdeps/htl/pt-key.h: Include . + * sysdeps/htl/pthreadP.h (_pthread_mutex_init, + __pthread_cond_broadcast, __pthread_create, __pthread_detach, + __pthread_exit, __pthread_key_create, __pthread_getspecific, + __pthread_setspecific, __pthread_setcancelstate, + __pthread_attr_getstackaddr, __pthread_attr_setstackaddr, + __pthread_attr_getstacksize, __pthread_attr_setstacksize, + __pthread_attr_setstack, ___pthread_get_cleanup_stack): New + declarations. + (__pthread_key_create, _pthread_mutex_init): New hidden declarations. + * sysdeps/mach/hurd/htl/pt-attr-setstackaddr.c + (pthread_attr_setstackaddr): Rename to __pthread_attr_setstackaddr. + (pthread_attr_setstackaddr): New strong alias. + * sysdeps/mach/hurd/htl/pt-attr-setstacksize.c + (pthread_attr_setstacksize): Rename to __pthread_attr_setstacksize. + (pthread_attr_setstacksize): New strong alias. + * sysdeps/mach/hurd/htl/pt-docancel.c: Include . + (call_exit): Call __pthread_exit instead of pthread_exit. + * sysdeps/mach/hurd/htl/pt-mutex-init.c: Include . + (_pthread_mutex_init): New hidden definition. + * sysdeps/mach/hurd/htl/pt-sysdep.c: Include . + (_init_routine): Call __pthread_attr_init and __pthread_attr_setstack + instead of pthread_attr_init and pthread_attr_setstack. + + * hurd/hurdauth.c (_S_msg_add_auth): Call __vm_allocate and + __vm_deallocate instead of vm_allocate and vm_deallocate. + * hurd/hurdmsg.c (_S_msg_set_env_variable): Call __setenv instead of + setenv. + * hurd/hurdprio.c (_hurd_priority_which_map): Call __geteuid instead + of geteuid. + * hurd/path-lookup.c (file_name_path_scan): Call __strdup instead of + strdup. + * hurd/siginfo.c: Include . + (_hurd_siginfo_handler): Call _IO_puts instead of puts. + * hurd/xattr.c (_hurd_xattr_get, _hurd_xattr_set): Call __munmap instead of + munmap. + * mach/devstream.c: Include . + (dealloc_ref): Call __mach_port_deallocate instead of + mach_port_deallocate. + (mach_open_devstream): Call _IO_fopencookie instead of fopencookie. + Call __mach_port_deallocate instead of mach_port_deallocate. + * stdlib/canonicalize.c (__realpath): Call __pathconf instead of + pathconf. + * sysdeps/mach/hurd/ifreq.c (__ifreq): Call __munmap instead of + munmap. + * sysdeps/mach/hurd/ifreq.h (__if_freereq): Likewise. + * sysdeps/mach/hurd/ptrace.c (ptrace): Call __kill instead of kill. + * sysdeps/mach/hurd/sendfile64.c (sendfile64): Call __munmap instead + of munmap. + * sysdeps/mach/hurd/socketpair.c (__socketpair): Call __close instead + of close. + * sysdeps/posix/clock_getres.c (realtime_getres): Call __sysconf + instead of sysconf. + * sysdeps/pthread/timer_gettime.c (timer_gettime): Call + __clock_gettime instead of clock_gettime. + * sysdeps/pthread/timer_routines.c (thread_func): Likewise. + * sysdeps/pthread/timer_settime.c (timer_settime): Likewise. + * sysdeps/unix/bsd/gtty.c (gtty): Call __ioctl instead of ioctl. + * sysdeps/unix/bsd/stty.c (stty): Likewise. + * sysdeps/unix/bsd/tcflow.c (tcflow): Call __tcgetattr instead of + tcgetattr. + * sysdeps/unix/clock_nanosleep.c (__clock_nanosleep): Call + __clock_gettime and __nanosleep instead of clock_gettime and + nanosleep. + * hurd/catch-signal.c (hurd_catch_signal): Rename to + __hurd_catch_signal. + (hurd_catch_signal): New strong alias. + (hurd_safe_memset, hurd_safe_copyout, hurd_safe_copyin): Call + __hurd_catch_signal instead of hurd_catch_signal. + * hurd/exc2signal.c (_hurd_exception2signal): Add hidden def. + * hurd/hurdexec.c (_hurd_init): Add hidden def. + * hurd/hurdinit.c (_hurd_init): Add hidden def. + * hurd/hurdsig.c: Include . + (_hurd_thread_sigstate): Add hidden def. + (_hurd_internal_post_signal): Use __mutex_unlock instead of + mutex_unlock. + * hurd/intern-fd.c (_hurd_intern_fd): Add hidden def. + * hurd/intr-msg.c (_hurd_intr_rpc_mach_msg): Add hidden def. + * hurd/path-lookup.c (hurd_file_name_path_lookup): Rename to + __hurd_file_name_path_lookup. + (hurd_file_name_path_lookup): New strong alias. + (file_name_path_lookup): Call __hurd_file_name_path_lookup instead of + hurd_file_name_path_lookup. + * mach/errstring.c (mach_error_type): Add hidden def. + * mach/msg-destroy.c (__mach_msg_destroy): Add hidden def. + * mach/mutex-init.c (__mutex_init): Add hidden def. + * mach/spin-lock.c (__spin_lock_locked, __spin_lock, __spin_unlock, + __spin_try_lock, __mutex_lock, __mutex_trylock): Add hidden defs. + * mach/spin-solid.c (__spin_lock_solid): Add hidden def. + * sysdeps/mach/hurd/getcwd.c + (_hurd_canonicalize_directory_name_internal): Rename to + __hurd_canonicalize_directory_name_internal. + (_hurd_canonicalize_directory_name_internal): New strong alias. + (__canonicalize_directory_name_internal, __getcwd): Call + __hurd_canonicalize_directory_name_internal instead of + _hurd_canonicalize_directory_name_internal. + * sysdeps/mach/hurd/mig-reply.c: Include . + (__mig_get_reply_port, __mig_dealloc_reply_port, __mig_init): Add + hidden defs. + * sysdeps/hurd/include/hurd.h: New file. + * sysdeps/hurd/include/hurd/fd.h: New file. + * sysdeps/hurd/include/hurd/signal.h: New file. + * sysdeps/mach/include/lock-intern.h: New file. + * sysdeps/mach/include/mach.h: New file. + * sysdeps/mach/include/mach/mig_support.h: New file. + * sysdeps/mach/include/mach_error.h: New file. + * sysdeps/hurd/include/hurd/signal.h (_hurd_raise_signal): Add hidden + prototype. + * hurd/hurd-raise.c (_hurd_raise_signal): Add hidden def. + * hurd/Makefile ($(inlines:%=$(objpfx)%.c): Define + _HEADER_H_HIDDEN_DEF macro. + * sysdeps/hurd/include/hurd/fd.h (_hurd_fd_error, + _hurd_fd_error_signal): Add hidden prototype. + [_HURD_FD_H_HIDDEN_DEF] (_hurd_fd_error, _hurd_fd_error_signal): Add + hidden def. + * libio/iolibio.h (_IO_puts): New hidden prototype. + * libio/ioputs.c (_IO_puts): New hidden def. + * sysdeps/mach/hurd/localplt.data: New file. + +2018-04-02 Agustina Arzille + Amos Jeffries + David Michael + Marco Gerards + Marcus Brinkmann + Neal H. Walfield + Pino Toscano + Richard Braun + Roland McGrath + Samuel Thibault + Thomas DiModica + Thomas Schwinge + + * htl: New directory. + * sysdeps/htl: New directory. + * sysdeps/hurd/htl: New directory. + * sysdeps/i386/htl: New directory. + * sysdeps/mach/htl: New directory. + * sysdeps/mach/hurd/htl: New directory. + * sysdeps/mach/hurd/i386/htl: New directory. + * nscd/Depend, resolv/Depend, rt/Depend: Add htl dependency. + * sysdeps/mach/hurd/i386/Implies: Add mach/hurd/i386/htl imply. + * sysdeps/mach/hurd/i386/libpthread.abilist: New file. + +2018-04-02 Samuel Thibault + + * sysdeps/pthread/timer_routines.c (__timer_thread_start): Block all + signals in thread created for runing timers. + +2018-04-01 Florian Weimer + + * support/support_format_addrinfo.c (support_format_addrinfo): + Include unknown error number in formatted result. + +2018-03-29 Florian Weimer + + * sysdeps/unix/sysv/linux/i386/tst-bz21269.c (do_test): Also + capture SIGBUS. + +2018-03-27 Adhemerval Zanella + + * sysdeps/unix/sysv/linux/arch-fork.h [__ASSUME_CLONE_BACKWARDS] + (arch_fork): Issue INLINE_CLONE_SYSCALL if defined. + * sysdeps/unix/sysv/linux/sparc/kernel-features.h + (__ASSUME_CLONE_BACKWARDS): Define. + +2018-03-27 Jesse Hathaway + + [BZ #23024] + * sysdeps/unix/sysv/linux/getlogin_r.c (__getlogin_r_loginuid): Return + early when linux sentinel value is set. + +2018-03-27 Samuel Thibault + + * sysdeps/mach/hurd/bits/posix_opt.h (_POSIX_MEMLOCK): Define. + +2018-03-27 Andreas Schwab + + [BZ #23005] + * resolv/res_send.c (__res_context_send): Return ENOMEM if + allocation of private copy of nsaddr_list fails. + +2018-03-26 Joseph Myers + + [BZ #16552] + * sysdeps/unix/sysv/linux/generic/umount.c: Move to .... + * sysdeps/unix/sysv/linux/umount.c: ... here. + * sysdeps/unix/sysv/linux/arm/umount.c: Remove file. + * sysdeps/unix/sysv/linux/hppa/umount.c: Likewise. + * sysdeps/unix/sysv/linux/ia64/umount.c: Likewise. + * sysdeps/unix/sysv/linux/mips/mips64/umount.c: Likewise. + * sysdeps/unix/sysv/linux/powerpc/powerpc64/umount.c: Likewise. + * sysdeps/unix/sysv/linux/umount.S: Likewise. + * sysdeps/unix/sysv/linux/x86_64/umount.c: Likewise. + +2018-03-26 Andreas Schwab + + * elf/elf.h (R_RISCV_BRANCH, R_RISCV_JAL, R_RISCV_CALL) + (R_RISCV_CALL_PLT, R_RISCV_GOT_HI20, R_RISCV_TLS_GOT_HI20) + (R_RISCV_TLS_GD_HI20, R_RISCV_PCREL_HI20, R_RISCV_PCREL_LO12_I) + (R_RISCV_PCREL_LO12_S, R_RISCV_HI20, R_RISCV_LO12_I) + (R_RISCV_LO12_S, R_RISCV_TPREL_HI20, R_RISCV_TPREL_LO12_I) + (R_RISCV_TPREL_LO12_S, R_RISCV_TPREL_ADD, R_RISCV_ADD8) + (R_RISCV_ADD16, R_RISCV_ADD32, R_RISCV_ADD64, R_RISCV_SUB8) + (R_RISCV_SUB16, R_RISCV_SUB32, R_RISCV_SUB64) + (R_RISCV_GNU_VTINHERIT, R_RISCV_GNU_VTENTRY, R_RISCV_ALIGN) + (R_RISCV_RVC_BRANCH, R_RISCV_RVC_JUMP, R_RISCV_RVC_LUI) + (R_RISCV_GPREL_I, R_RISCV_GPREL_S, R_RISCV_TPREL_I) + (R_RISCV_TPREL_S, R_RISCV_RELAX, R_RISCV_SUB6, R_RISCV_SET6) + (R_RISCV_SET8, R_RISCV_SET16, R_RISCV_SET32, R_RISCV_32_PCREL) + (R_RISCV_NUM): Define. + +2018-03-25 Samuel Thibault + + * include/errno.h [IS_IN(rtld) && !RTLD_PRIVATE_ERRNO]: Do not use the + TLS declaration of errno. + * sysdeps/generic/libc-start.h [!SHARED] (ARCH_SETUP_TLS): Define to + __libc_setup_tls. + * sysdeps/unix/sysv/linux/powerpc/libc-start.h [!SHARED] + (ARCH_SETUP_TLS): Likewise. + * sysdeps/mach/hurd/libc-start.h: New file copied from + sysdeps/generic/libc-start.h, but define ARCH_SETUP_TLS to empty. + * csu/libc-start.c [!SHARED] (LIBC_START_MAIN): Call ARCH_SETUP_TLS + instead of __libc_setup_tls. + * sysdeps/mach/hurd/i386/init-first.c [!SHARED] (init1): Call + __libc_setup_tls before initializing libpthread and running _hurd_init + which starts the signal thread. + * sysdeps/generic/ldsodefs.h [SHARED] (__pthread_initialize_minimal): + Declare function. + * sysdeps/mach/hurd/bits/errno.h: Regenerate. + +2018-03-24 H.J. Lu + + [BZ #22998] + * elf/Makefile (tests): Add $(tests-execstack-$(have-z-execstack)) + after it is defined. + +2018-03-23 Andrew Senkevich + Max Horn + + [BZ #22644] + CVE-2017-18269 + * sysdeps/i386/i686/multiarch/memcpy-sse2-unaligned.S: Fixed + branch conditions. + * string/test-memmove.c (do_test2): New testcase. + +2018-03-22 Joseph Myers + + * sysdeps/generic/frame.h: Remove file. + * sysdeps/arm/frame.h: Likewise. + * sysdeps/hppa/frame.h: Likewise. + * sysdeps/generic/sigcontextinfo.h (SIGCONTEXT_EXTRA_ARGS): Remove + macro. + (GET_FRAME): Likewise. + (GET_STACK): Likewise. + (CALL_SIGHANDLER): Likewise. + * sysdeps/mach/hurd/i386/sigcontextinfo.h (SIGCONTEXT_EXTRA_ARGS): + Likewise. + (GET_FRAME): Likewise. + (GET_STACK): Likewise. + (CALL_SIGHANDLER): Likewise. + * sysdeps/unix/sysv/linux/alpha/sigcontextinfo.h + (SIGCONTEXT_EXTRA_ARGS): Likewise. + (GET_FRAME): Likewise. + (GET_STACK): Likewise. + (CALL_SIGHANDLER): Likewise. + * sysdeps/unix/sysv/linux/arm/sigcontextinfo.h + (SIGCONTEXT_EXTRA_ARGS): Likewise. + (GET_FRAME): Likewise. + (GET_STACK): Likewise. + (ADVANCE_STACK_FRAME): Likewise. + (CALL_SIGHANDLER): Likewise. + * sysdeps/unix/sysv/linux/i386/sigcontextinfo.h + (SIGCONTEXT_EXTRA_ARGS): Likewise. + (GET_FRAME): Likewise. + (GET_STACK): Likewise. + (CALL_SIGHANDLER): Likewise. + * sysdeps/unix/sysv/linux/ia64/sigcontextinfo.h + (SIGCONTEXT_EXTRA_ARGS): Likewise. + (GET_FRAME): Likewise. + (GET_STACK): Likewise. + (CALL_SIGHANDLER): Likewise. + * sysdeps/unix/sysv/linux/m68k/sigcontextinfo.h + (SIGCONTEXT_EXTRA_ARGS): Likewise. + (GET_FRAME): Likewise. + (GET_STACK): Likewise. + (CALL_SIGHANDLER): Likewise. + * sysdeps/unix/sysv/linux/microblaze/sigcontextinfo.h + (SIGCONTEXT_EXTRA_ARGS): Likewise. + (GET_FRAME): Likewise. + (GET_STACK): Likewise. + (CALL_SIGHANDLER): Likewise. + * sysdeps/unix/sysv/linux/mips/sigcontextinfo.h + (SIGCONTEXT_EXTRA_ARGS): Likewise. + (GET_FRAME): Likewise. + (GET_STACK): Likewise. + (CALL_SIGHANDLER): Likewise. + * sysdeps/unix/sysv/linux/powerpc/sigcontextinfo.h + (SIGCONTEXT_EXTRA_ARGS): Likewise. + (GET_FRAME): Likewise. + (GET_STACK): Likewise. + (CALL_SIGHANDLER): Likewise. + * sysdeps/unix/sysv/linux/riscv/sigcontextinfo.h + (SIGCONTEXT_EXTRA_ARGS): Likewise. + (GET_FRAME): Likewise. + (GET_STACK): Likewise. + (CALL_SIGHANDLER): Likewise. + * sysdeps/unix/sysv/linux/s390/sigcontextinfo.h + (SIGCONTEXT_EXTRA_ARGS): Likewise. + (GET_FRAME): Likewise. + (GET_STACK): Likewise. + (CALL_SIGHANDLER): Likewise. + * sysdeps/unix/sysv/linux/sh/sigcontextinfo.h + (SIGCONTEXT_EXTRA_ARGS): Likewise. + (GET_FRAME): Likewise. + (GET_STACK): Likewise. + (CALL_SIGHANDLER): Likewise. + * sysdeps/unix/sysv/linux/sparc/sparc32/sigcontextinfo.h + (SIGCONTEXT_EXTRA_ARGS): Likewise. + (FIRST_FRAME_POINTER): Likewise. + (ADVANCE_STACK_FRAME): Likewise. + (GET_STACK): Likewise. + (GET_FRAME): Likewise. + (CALL_SIGHANDLER): Likewise. + * sysdeps/unix/sysv/linux/sparc/sparc64/sigcontextinfo.h + (SIGCONTEXT_EXTRA_ARGS): Likewise. + (ADVANCE_STACK_FRAME): Likewise. + (GET_STACK): Likewise. + (GET_FRAME): Likewise. + (CALL_SIGHANDLER): Likewise. + * sysdeps/unix/sysv/linux/tile/sigcontextinfo.h + (SIGCONTEXT_EXTRA_ARGS): Likewise. + (GET_FRAME): Likewise. + (GET_STACK): Likewise. + (CALL_SIGHANDLER): Likewise. + * sysdeps/unix/sysv/linux/x86_64/sigcontextinfo.h + (SIGCONTEXT_EXTRA_ARGS): Likewise. + (GET_FRAME): Likewise. + (GET_STACK): Likewise. + (CALL_SIGHANDLER): Likewise. + +2018-03-21 Joseph Myers + + * sysdeps/x86_64/backtrace.c: Move to .... + * debug/backtrace.c: ... here. + * sysdeps/aarch64/backtrace.c: Remove file. + * sysdeps/alpha/backtrace.c: Likewise. + * sysdeps/hppa/backtrace.c: Likewise. + * sysdeps/ia64/backtrace.c: Likewise. + * sysdeps/mips/backtrace.c: Likewise. + * sysdeps/nios2/backtrace.c: Likewise. + * sysdeps/riscv/backtrace.c: Likewise. + * sysdeps/sh/backtrace.c: Likewise. + * sysdeps/tile/backtrace.c: Likewise. + +2018-03-20 Joseph Myers + + [BZ #22987] + * sysdeps/powerpc/bits/mathinline.h (fdim): Remove inline + function. + (fdimf): Likewise. + * sysdeps/sparc/fpu/bits/mathinline.h: Remove file. + + [BZ #17343] + * stdlib/random_r.c (__random_r): Use unsigned arithmetic for + possibly overflowing computations. + +2018-03-20 Samuel Thibault + + * manual/errno.texi (EOWNERDEAD, ENOTRECOVERABLE): Remove errno + values from Linux-specific section now that it is in the GNU section. + * sysdeps/gnu/errlist.c: Regenerate. + +2018-03-20 Joseph Myers + + * math/Makefile (libm-narrow-fns): Add sub. + (libm-test-funcs-narrow): Likewise. + * math/Versions (GLIBC_2.28): Add narrowing subtract functions. + * math/bits/mathcalls-narrow.h (sub): Use __MATHCALL_NARROW. + * math/gen-auto-libm-tests.c (test_functions): Add sub. + * math/math-narrow.h (CHECK_NARROW_SUB): New macro. + (NARROW_SUB_ROUND_TO_ODD): Likewise. + (NARROW_SUB_TRIVIAL): Likewise. + * sysdeps/ieee754/float128/float128_private.h (__fsubl): New + macro. + (__dsubl): Likewise. + * sysdeps/ieee754/ldbl-opt/Makefile (libnldbl-calls): Add fsub and + dsub. + (CFLAGS-nldbl-dsub.c): New variable. + (CFLAGS-nldbl-fsub.c): Likewise. + * sysdeps/ieee754/ldbl-opt/Versions (GLIBC_2.28): Add + __nldbl_dsubl. + * sysdeps/ieee754/ldbl-opt/nldbl-compat.h (__nldbl_dsubl): New + prototype. + * manual/arith.texi (Misc FP Arithmetic): Document fsub, fsubl, + dsubl, fMsubfN, fMsubfNx, fMxsubfN and fMxsubfNx. + * math/auto-libm-test-in: Add tests of sub. + * math/auto-libm-test-out-narrow-sub: New generated file. + * math/libm-test-narrow-sub.inc: New file. + * sysdeps/i386/fpu/s_f32xsubf64.c: Likewise. + * sysdeps/ieee754/dbl-64/s_f32xsubf64.c: Likewise. + * sysdeps/ieee754/dbl-64/s_fsub.c: Likewise. + * sysdeps/ieee754/float128/s_f32subf128.c: Likewise. + * sysdeps/ieee754/float128/s_f64subf128.c: Likewise. + * sysdeps/ieee754/float128/s_f64xsubf128.c: Likewise. + * sysdeps/ieee754/ldbl-128/s_dsubl.c: Likewise. + * sysdeps/ieee754/ldbl-128/s_f64xsubf128.c: Likewise. + * sysdeps/ieee754/ldbl-128/s_fsubl.c: Likewise. + * sysdeps/ieee754/ldbl-128ibm/s_dsubl.c: Likewise. + * sysdeps/ieee754/ldbl-128ibm/s_fsubl.c: Likewise. + * sysdeps/ieee754/ldbl-96/s_dsubl.c: Likewise. + * sysdeps/ieee754/ldbl-96/s_fsubl.c: Likewise. + * sysdeps/ieee754/ldbl-opt/nldbl-dsub.c: Likewise. + * sysdeps/ieee754/ldbl-opt/nldbl-fsub.c: Likewise. + * sysdeps/ieee754/soft-fp/s_dsubl.c: Likewise. + * sysdeps/ieee754/soft-fp/s_fsub.c: Likewise. + * sysdeps/ieee754/soft-fp/s_fsubl.c: Likewise. + * sysdeps/powerpc/fpu/libm-test-ulps: Update. + * sysdeps/mach/hurd/i386/libm.abilist: Likewise. + * sysdeps/unix/sysv/linux/aarch64/libm.abilist: Likewise. + * 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/riscv/rv64/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/tilegx32/libm.abilist: Likewise. + * sysdeps/unix/sysv/linux/tile/tilegx64/libm.abilist: Likewise. + * sysdeps/unix/sysv/linux/x86_64/64/libm.abilist: Likewise. + * sysdeps/unix/sysv/linux/x86_64/x32/libm.abilist: Likewise. + +2018-03-19 Joseph Myers + + [BZ #20079] + * elf/elf.h (SHT_X86_64_UNWIND): New macro. + +2018-03-19 Wilco Dijkstra + + * benchtests/bench-timing.h (attribute_hidden): Undefine. + +2018-03-18 Richard Braun + + * sysdeps/mach/hurd/i386/tls.h (_hurd_tls_init): Use a temporary + thread reference. + +2018-03-18 Agustina Arzille + + * sysdeps/mach/libc-lock.h (__libc_cleanup_frame): Define structure. + (__libc_cleanup_fct): Define function. + (__libc_cleanup_region_start, __libc_cleanup_region_end, + __libc_cleanup_end): Rewrite implementation using + __attribute__ ((__cleanup__)). + (__libc_cleanup_push, __libc_cleanup_pop): New macros. + * hurd/Makefile (routines): Add hurdlock. + * hurd/Versions (GLIBC_PRIVATE): Added new entry to export the above + interface. + (HURD_CTHREADS_0.3): Remove __libc_getspecific. + * hurd/hurdpid.c: Include + (_S_msg_proc_newids): Use lll_wait to synchronize. + * hurd/hurdsig.c: (reauth_proc): Use __mutex_lock and __mutex_unlock. + * hurd/setauth.c: Include , use integer for synchronization. + * mach/Makefile (lock-headers): Remove machine-lock.h. + * mach/lock-intern.h: Include instead of + . + (__spin_lock_t): New type. + (__SPIN_LOCK_INITIALIZER): New macro. + (__spin_lock, __spin_unlock, __spin_try_lock, __spin_lock_locked, + __mutex_init, __mutex_lock_solid, __mutex_unlock_solid, __mutex_lock, + __mutex_unlock, __mutex_trylock): Use lll to implement locks. + * mach/mutex-init.c: Include instead of . + (__mutex_init): Initialize with lll. + * manual/errno.texi (EOWNERDEAD, ENOTRECOVERABLE): New errno values. + * sysdeps/mach/Makefile: Add libmachuser as dependencies for libs + needing lll. + * sysdeps/mach/hurd/bits/errno.h: Regenerate. + * sysdeps/mach/hurd/cthreads.c (__libc_getspecific): Remove function. + * sysdeps/mach/hurd/bits/libc-lock.h: Remove file. + * sysdeps/mach/hurd/setpgid.c: Include . + (__setpgid): Use lll for synchronization. + * sysdeps/mach/hurd/setsid.c: Likewise with __setsid. + * sysdeps/mach/bits/libc-lock.h: Include and + instead of . + (_IO_lock_inexpensive): New macro + (__libc_lock_recursive_t, __rtld_lock_recursive_t): New structures. + (__libc_lock_self0): New declaration. + (__libc_lock_owner_self): New macro. + (__libc_key_t): Remove type. + (_LIBC_LOCK_INITIALIZER): New macro. + (__libc_lock_define_initialized, __libc_lock_init, __libc_lock_fini, + __libc_lock_fini_recursive, __rtld_lock_fini_recursive, + __libc_lock_lock, __libc_lock_trylock, __libc_lock_unlock, + __libc_lock_define_initialized_recursive, + __rtld_lock_define_initialized_recursive, + __libc_lock_init_recursive, __libc_lock_trylock_recursive, + __libc_lock_lock_recursive, __libc_lock_unlock_recursive, + __rtld_lock_initialize, __rtld_lock_trylock_recursive, + __rtld_lock_lock_recursive, __rtld_lock_unlock_recursive + __libc_once_define, __libc_mutex_unlock): Reimplement with lll. + (__libc_lock_define_recursive, __rtld_lock_define_recursive, + _LIBC_LOCK_RECURSIVE_INITIALIZER, _RTLD_LOCK_RECURSIVE_INITIALIZER): + New macros. + Include to reimplement libc_key* with pthread_key*. + * hurd/hurdlock.c: New file. + * hurd/hurdlock.h: New file. + * mach/lowlevellock.h: New file + +2018-03-18 Samuel Thibault + + * sysdeps/mach/hurd/cthreads.c: Include . + * hurd/lookup-retry.c (__hurd_file_name_lookup_retry): Return ELOOP + when opening a symlink with O_NOFOLLOW. + * hurd/hurdlookup.c (__hurd_file_name_lookup): Do not append '/' to + path when flags contains O_NOFOLLOW. + * hurd/lookup-retry.c (__hurd_file_name_lookup_retry): Return ENOTDIR + if flags contains O_DIRECTORY and the result is a directory. + * sysdeps/mach/hurd/i386/init-first.c (init): Also find ELF headers by + oneself when the pointer given in D is nul (as set by ext2fs). + * sysdeps/mach/hurd/mlockall.c: New file. + * sysdeps/mach/hurd/munlockall.c: New file. + +2018-03-17 Samuel Thibault + + * hurd/hurdsig.c: Include . + (_hurdsig_init): Call pthread_getattr_np and pthread_attr_getstack to + get the signal thread stack layout. + * hurd/Makefile (headers): Remove threadvar.h. + (inline-headers): Remove threadvar.h. + * hurd/Versions (GLIBC_2.0: Remove __hurd_sigthread_stack_base, + __hurd_sigthread_stack_end, __hurd_sigthread_variables, + __hurd_threadvar_max, __hurd_errno_location. + (HURD_CTHREADS_0.3): Add pthread_getattr_np, pthread_attr_getstack. + * hurd/hurd/signal.h: Do not include . + (_hurd_self_sigstate): Use THREAD_SELF to get _hurd_sigstate. + (_HURD_SIGNAL_H_EXTERN_INLINE): Use THREAD_SELF to get _hurd_sigstate, + unless TLS is not initialized yet, in which case we do not need a + critical section yet anyway. + * hurd/hurd/threadvar.h: Include , do not include + . + (__hurd_sigthread_variables, __hurd_threadvar_max): Remove variables + declarations. + (__hurd_threadvar_index): Remove enum. + (_HURD_THREADVAR_H_EXTERN_INLINE): Remove macro. + (__hurd_threadvar_location_from_sp,__hurd_threadvar_location): Remove + inlines. + (__hurd_reply_port0): New variable declaration. + (__hurd_local_reply_port): New macro. + * hurd/hurdsig.c (__hurd_sigthread_variables): Remove variable. + (interrupted_reply_port_location): Add thread_t parameter. Use it + with THREAD_TCB to access thread-local variables. + (_hurdsig_abort_rpcs): Pass ss->thread to + interrupted_reply_port_location. + (_hurd_internal_post_signal): Likewise. + (_hurdsig_init): Use presence of cthread_fork instead of + __hurd_threadvar_stack_mask to start signal thread by hand. + Remove signal thread threadvar initialization. + * hurd/hurdstartup.c: Do not include + * hurd/sigunwind.c: Include + (_hurdsig_longjmp_from_handler): Use __hurd_local_reply_port instead + of threadvar. + * sysdeps/mach/hurd/Versions (libc.GLIBC_PRIVATE): Add + __libc_lock_self0. + (ld.GLIBC_2.0): Remove __hurd_sigthread_stack_base, + __hurd_sigthread_stack_end, __hurd_sigthread_variables. + (ld.GLIBC_PRIVATE): Add __libc_lock_self0. + * sysdeps/mach/hurd/cthreads.c: Add __libc_lock_self0. + * sysdeps/mach/hurd/dl-sysdep.c (errno, __hurd_sigthread_stack_base, + __hurd_sigthread_stack_end, __hurd_sigthread_variables, threadvars, + __hurd_threadvar_stack_offset, __hurd_threadvar_stack_mask): Do not + define variables. + * sysdeps/mach/hurd/errno-loc.c: Do not include and + . + [IS_IN(rtld)] (rtld_errno): New variable. + [IS_IN(rtld)] (__errno_location): New weak function. + [!IS_IN(rtld)]: Include "../../../csu/errno-loc.c". + * sysdeps/mach/hurd/errno.c: Remove file. + * sysdeps/mach/hurd/fork.c: Include + (__fork): Remove THREADVAR_SPACE macro and its use. + * sysdeps/mach/hurd/i386/init-first.c (__hurd_threadvar_max): Remove + variable. + (init): Do not initialize threadvar. + * sysdeps/mach/hurd/i386/libc.abilist (__hurd_threadvar_max): Remove + symbol. + * sysdeps/mach/hurd/i386/sigreturn.c (__sigreturn): Use + __hurd_local_reply_port instead of threadvar. + * sysdeps/mach/hurd/i386/tls.h (tcbhead_t): Add reply_port and + _hurd_sigstate fields. + (HURD_DESC_TLS, __LIBC_NO_TLS, THREAD_TCB): New macro. + * sysdeps/mach/hurd/i386/trampoline.c: Remove outdated comment. + * sysdeps/mach/hurd/libc-lock.h: Do not include . + (__libc_lock_owner_self): Use &__libc_lock_self0 and THREAD_SELF + instead of threadvar. + * sysdeps/mach/hurd/libc-tsd.h: Remove file. + * sysdeps/mach/hurd/mig-reply.c (GETPORT, reply_port): Remove macros. + (use_threadvar, global_reply_port): Remove variables. + (__hurd_reply_port0): New variable. + (__mig_get_reply_port): Use __hurd_local_reply_port and + __hurd_reply_port0 instead of threadvar. + (__mig_dealloc_reply_port): Likewise. + (__mig_init): Do not initialize threadvar. + * sysdeps/mach/hurd/profil.c: Fix comment. + * hurd/Versions (HURD_CTHREADS_0.3): Rename weak refs cthread_fork, + cthread_detach, pthread_getattr_np, pthread_attr_getstack, + cthread_keycreate, cthread_getspecific, cthread_setspecific to + __cthread_fork, __cthread_detach, __pthread_getattr_np, + __pthread_attr_getstack, __cthread_keycreate, __cthread_getspecific, + __cthread_setspecific. + * hurd/hurdsig.c (_hurdsig_init): Use __cthread_fork, + __cthread_detach, __pthread_getattr_np, __pthread_attr_getstack, + __cthread_t instead of cthread_fork, cthread_detach, + pthread_getattr_np, pthread_attr_getstack. + * sysdeps/mach/hurd/cthreads.c (cthread_keycreate): Rename to + __cthread_keycreate. + (cthread_getspecific): Rename to __cthread_getspecific. + (cthread_setspecific): Rename to __cthread_setspecific. + (__libc_getspecific): Use __cthread_getspecific instead of + cthread_getspecific. + * sysdeps/mach/hurd/libc-lock.h (__libc_key_create): Use + __cthread_keycreate instead of cthread_keycreate. + (__libc_setspecific): Use __cthread_setspecific instead of + cthread_setspecific. + * sysdeps/mach/libc-lock.h (__libc_key_create, __libc_setspecific): + Likewise. + * sysdeps/unix/sysv/linux/x86_64/sysdep.h: Always include + . Test for value of RTLD_PRIVATE_ERRNO instead of + testing whether it is defined. + +2018-03-16 Samuel Thibault + + * sysdeps/generic/thread_state.h (MACHINE_NEW_THREAD_STATE_FLAVOR): + Define macro. + * sysdeps/mach/thread_state.h (MACHINE_THREAD_STATE_FIX_NEW): New macro. + * sysdeps/mach/i386/thread_state.h + (MACHINE_NEW_THREAD_STATE_FLAVOR): New macro, defined to + i386_THREAD_STATE. + (MACHINE_THREAD_STATE_FLAVOR): Define to i386_REGS_SEGS_STATE instead of + i386_THREAD_STATE. + (MACHINE_THREAD_STATE_FIX_NEW): New macro, reads segments. + + * sysdeps/mach/hurd/i386/trampoline.c (_hurd_setup_sighandler): Use + i386_REGS_SEGS_STATE instead of i386_THREAD_STATE. + + * sysdeps/mach/hurd/i386/tls.h (TCB_ALIGNMENT, HURD_SEL_LDT): New + macros. + (_hurd_tls_fork): Add original thread parameter, Duplicate existing LDT + descriptor instead of creating a new one. + (_hurd_tls_new): New function, creates a new descriptor and updates tcb. + + * mach/setup-thread.c: Include . + (__mach_setup_thread): Call _dl_allocate_tls, pass + MACHINE_NEW_THREAD_STATE_FLAVOR to __thread_set_state instead of + MACHINE_THREAD_STATE_FLAVOR, before getting + MACHINE_THREAD_STATE_FLAVOR, calling _hurd_tls_new, and setting + MACHINE_THREAD_STATE_FLAVOR with the result. + * hurd/hurdfault.c (_hurdsig_fault_init): Call + MACHINE_THREAD_STATE_FIX_NEW. + * sysdeps/mach/hurd/fork.c (__fork): Call _hurd_tls_fork for sigthread + too. Add original thread parameter. + +2018-03-16 Joseph Myers + + * sysdeps/x86/fpu/bits/mathinline.h [__USE_MISC] (__finite): + Remove inline function. + + * sysdeps/i386/fpu/libm-test-ulps: Update. + * sysdeps/i386/i686/fpu/multiarch/libm-test-ulps: Likewise. + +2018-03-16 Wilco Dijkstra + + * sysdeps/m68k/m680x0/fpu/mathimpl.h (__ieee754_sqrt): Revert previous + commit. + +2018-03-15 Joseph Myers + + * sysdeps/x86/fpu/bits/mathinline.h [__FAST_MATH__] + (__sincos_code): Remove define and undefine. + [__FAST_MATH__] (__sincos): Remove inline function. + [__FAST_MATH__] (__sincosf): Remove inline function. + [__FAST_MATH__] (__sincosl): Remove inline function. + (__atan2l): Remove inline functions. + [!__GNUC_PREREQ (3, 4)] (__atan2_code): Remove macro. + [!__GNUC_PREREQ (3, 4) && __FAST_MATH__] (atan2): Remove inline + function. + (floor): Remove inline function. + (ceil): Likewise. + [__FAST_MATH__] (__ldexp_code): Remove macro. + [__FAST_MATH__] (ldexp): Remove inline function. + [__FAST_MATH__ && __USE_ISOC99] (ldexpf): Likewise. + [__FAST_MATH__ && __USE_ISOC99] (ldexpl): Likewise. + [__FAST_MATH__ && __USE_ISOC99] (rint): Likewise. + [__USE_ISOC99] (__lrint_code): Remove macro. + [__USE_ISOC99] (__llrint_code): Likewise. + [__USE_ISOC99] (lrintf): Remove inline function. + [__USE_ISOC99] (lrint): Likewise. + [__USE_ISOC99] (lrintl): Likewise. + [__USE_ISOC99] (llrint): Likewise. + [__USE_ISOC99] (llrintf): Likewise. + [__USE_ISOC99] (llrintl): Likewise. + +2018-03-15 Wilco Dijkstra + + * sysdeps/aarch64/fpu/math_private.h (__ieee754_sqrt): Remove. + (__ieee754_sqrtf): Remove. + * sysdeps/alpha/fpu/math_private.h (__ieee754_sqrt): Remove. + (__ieee754_sqrtf): Remove. + * sysdeps/generic/math-type-macros.h (M_SQRT): Use sqrt. + * sysdeps/m68k/m680x0/fpu/mathimpl.h (__ieee754_sqrt): Remove. + * sysdeps/powerpc/fpu/math_private.h (__ieee754_sqrt): Remove. + (__ieee754_sqrtf): Remove. + * sysdeps/s390/fpu/bits/mathinline.h: Remove file. + * sysdeps/sparc/fpu/bits/mathinline.h (sqrt) Remove. + (sqrtf): Remove. + (sqrtl): Remove. + (__ieee754_sqrt): Remove. + (__ieee754_sqrtf): Remove. + (__ieee754_sqrtl): Remove. + * sysdeps/m68k/m680x0/fpu/mathimpl.h (__ieee754_sqrt): Remove. + * sysdeps/x86/fpu/math_private.h (__ieee754_sqrt): Remove. + * sysdeps/x86_64/fpu/math_private.h (__ieee754_sqrt): Remove. + (__ieee754_sqrtf): Remove. + (__ieee754_sqrtl): Remove. + +2018-03-15 Wilco Dijkstra + + * sysdeps/ieee754/dbl-64/e_acosh.c (__ieee754_acosh): Use sqrt. + * sysdeps/ieee754/dbl-64/e_gamma_r.c (gamma_positive): Likewise. + * sysdeps/ieee754/dbl-64/e_hypot.c (__ieee754_hypot): Likewise. + * sysdeps/ieee754/dbl-64/e_j0.c (__ieee754_j0): Likewise. + * sysdeps/ieee754/dbl-64/e_j1.c (__ieee754_j1): Likewise. + * sysdeps/ieee754/dbl-64/e_jn.c (__ieee754_jn): Likewise. + * sysdeps/ieee754/dbl-64/s_asinh.c (__asinh): Likewise. + * sysdeps/ieee754/dbl-64/wordsize-64/e_acosh.c (__ieee754_acosh): + Likewise. + * sysdeps/ieee754/flt-32/e_acosf.c (__ieee754_acosf): Likewise. + * sysdeps/ieee754/flt-32/e_acoshf.c (__ieee754_acoshf): Likewise. + * sysdeps/ieee754/flt-32/e_asinf.c (__ieee754_asinf): Likewise. + * sysdeps/ieee754/flt-32/e_gammaf_r.c (gammaf_positive): Likewise. + * sysdeps/ieee754/flt-32/e_hypotf.c (__ieee754_hypotf): Likewise. + * sysdeps/ieee754/flt-32/e_j0f.c (__ieee754_j0f): Likewise. + * sysdeps/ieee754/flt-32/e_j1f.c (__ieee754_j1f): Likewise. + * sysdeps/ieee754/flt-32/e_powf.c (__ieee754_powf): Likewise. + * sysdeps/ieee754/flt-32/s_asinhf.c (__asinhf): Likewise. + * sysdeps/ieee754/ldbl-128/e_acoshl.c (__ieee754_acoshl): Use sqrtl. + * sysdeps/ieee754/ldbl-128/e_acosl.c (__ieee754_acosl): Likewise. + * sysdeps/ieee754/ldbl-128/e_asinl.c (__ieee754_asinl): Likewise. + * sysdeps/ieee754/ldbl-128/e_gammal_r.c (gammal_positive): Likewise. + * sysdeps/ieee754/ldbl-128/e_hypotl.c (__ieee754_hypotl): Likewise. + * sysdeps/ieee754/ldbl-128/e_j0l.c (__ieee754_j0l): Likewise. + * sysdeps/ieee754/ldbl-128/e_j1l.c (__ieee754_j1l): Likewise. + * sysdeps/ieee754/ldbl-128/e_jnl.c (__ieee754_jnl): Likewise. + * sysdeps/ieee754/ldbl-128/e_powl.c (__ieee754_powl): Likewise. + * sysdeps/ieee754/ldbl-128/s_asinhl.c (__ieee754_asinhl): Likewise. + * sysdeps/ieee754/ldbl-128ibm/e_acoshl.c (__ieee754_acoshl): Likewise. + * sysdeps/ieee754/ldbl-128ibm/e_acosl.c (__ieee754_acosl): Likewise. + * sysdeps/ieee754/ldbl-128ibm/e_asinl.c (__ieee754_asinl): Likewise. + * sysdeps/ieee754/ldbl-128ibm/e_gammal_r.c (gammal_positive): Likewise. + * sysdeps/ieee754/ldbl-128ibm/e_hypotl.c (__ieee754_hypotl): Likewise. + * sysdeps/ieee754/ldbl-128ibm/e_j0l.c (__ieee754_j0l): Likewise. + * sysdeps/ieee754/ldbl-128ibm/e_j1l.c (__ieee754_j1l): Likewise + * sysdeps/ieee754/ldbl-128ibm/e_jnl.c (__ieee754_jnl): Likewise. + * sysdeps/ieee754/ldbl-128ibm/e_powl.c (__ieee754_powl): Likewise. + * sysdeps/ieee754/ldbl-128ibm/s_asinhl.c (__ieee754_asinhl): Likewise. + * sysdeps/ieee754/ldbl-96/e_acoshl.c (__ieee754_acoshl): Use sqrtl. + * sysdeps/ieee754/ldbl-96/e_asinl.c (__ieee754_asinl): Likewise. + * sysdeps/ieee754/ldbl-96/e_gammal_r.c (gammal_positive): Likewise. + * sysdeps/ieee754/ldbl-96/e_hypotl.c (__ieee754_hypotl): Likewise. + * sysdeps/ieee754/ldbl-96/e_j0l.c (__ieee754_j0l): Likewise. + * sysdeps/ieee754/ldbl-96/e_j1l.c (__ieee754_j1l): Likewise. + * sysdeps/ieee754/ldbl-96/e_jnl.c (__ieee754_jnl): Likewise. + * sysdeps/ieee754/ldbl-96/s_asinhl.c (__ieee754_asinhl): Likewise. + * sysdeps/m68k/m680x0/fpu/e_pow.c (__ieee754_pow): Likewise. + * sysdeps/powerpc/fpu/e_hypot.c (__ieee754_hypot): Likewise. + * sysdeps/powerpc/fpu/e_hypotf.c (__ieee754_hypotf): Likewise. + +2018-03-15 Wilco Dijkstra + + * include/math.h (sqrt): Declare with asm redirect. + (sqrtf): Likewise. + (sqrtl): Likewise. + (sqrtf128): Likewise. + * Makeconfig: Add -fno-math-errno for libc/libm, but build testsuite, + nonlib and libnldbl with -fmath-errno. + * math/w_sqrt_compat.c: Define NO_MATH_REDIRECT. + * math/w_sqrt_template.c: Likewise. + * math/w_sqrtf_compat.c: Likewise. + * math/w_sqrtl_compat.c: Likewise. + * sysdeps/i386/fpu/w_sqrt.c: Likewise. + * sysdeps/i386/fpu/w_sqrt_compat.c: Likewise. + * sysdeps/generic/math-type-macros-float128.h: Remove math.h and + complex.h. + +2018-03-15 Wilco Dijkstra + + * benchtests/Makefile: Define _ISOMAC. + * benchtests/bench-strcoll.c: Add missing sys/stat.h include. + * benchtests/bench-string.h: Define inhibit_loop_to_libcall macro. + * benchtests/bench-strstr.c: Define empty libc_hidden_builtin_def. + * benchtests/bench-strtok.c (oldstrtok): Use rawmemchr. + * benchtests/bench-timing.h: Define attribute_hidden. + +2018-03-15 Siddhesh Poyarekar + + * sysdeps/aarch64/strncmp.S (strncmp): Use lsr instead of + mov + lsr. + +2018-03-15 Rafał Lużyński + + [BZ #22963] + * localedata/locales/cs_CZ (mon): Rename to... + (alt_mon): This. + (mon): Import from CLDR (genitive case). + +2018-03-15 Rafał Lużyński + + [BZ #22937] + * localedata/locales/el_CY (abmon): Rename to... + (ab_alt_mon): This. + (abmon): Import from CLDR (abbreviated genitive case). + * localedata/locales/el_GR (abmon): Rename to... + (ab_alt_mon): This. + (abmon): Import from CLDR (abbreviated genitive case). + +2018-03-15 Rafał Lużyński + + [BZ #22932] + * localedata/locales/lt_LT (abmon): Synchronize with CLDR. + +2018-03-15 Robert Buj + + [BZ #22848] + * localedata/locales/ca_ES (abmon): Rename to... + (ab_alt_mon): This, then synchronize with CLDR (nominative case). + (mon): Rename to... + (alt_mon): This. + (abmon): Import from CLDR (genitive case, month names preceded by + "de" or "d’"). + (mon): Likewise. + (abday): Synchronize with CLDR. + (d_t_fmt): Likewise. + (d_fmt): Likewise. + (am_pm): Likewise. + + (LC_TIME): Improve indentation. + (LC_TELEPHONE): Likewise. + (LC_NAME): Likewise. + (LC_ADDRESS): Likewise. + +2018-03-14 Joseph Myers + + * sysdeps/x86/fpu/bits/mathinline.h [!__GNUC_PREREQ (3, 4)] + (lrintf): Remove definitions used only with old GCC. + [!__GNUC_PREREQ (3, 4)] (lrint): Likewise. + [!__GNUC_PREREQ (3, 4)] (llrintf): Likewise. + [!__GNUC_PREREQ (3, 4)] (llrint): Likewise. + [!__GNUC_PREREQ (3, 4)] (fmaxf): Likewise. + [!__GNUC_PREREQ (3, 4)] (fmax): Likewise. + [!__GNUC_PREREQ (3, 4)] (fminf): Likewise. + [!__GNUC_PREREQ (3, 4)] (fmin): Likewise. + [!__GNUC_PREREQ (3, 4)] (rint): Likewise. + [!__GNUC_PREREQ (3, 4)] (rintf): Likewise. + [!__GNUC_PREREQ (3, 4)] (nearbyint): Likewise. + [!__GNUC_PREREQ (3, 4)] (nearbyintf): Likewise. + [!__GNUC_PREREQ (3, 4)] (ceil): Likewise. + [!__GNUC_PREREQ (3, 4)] (ceilf): Likewise. + [!__GNUC_PREREQ (3, 4)] (floor): Likewise. + [!__GNUC_PREREQ (3, 4)] (floorf): Likewise. + [__FAST_MATH__ && !__GNUC_PREREQ (3, 5)] (tan): Likewise. + [__FAST_MATH__ && !__GNUC_PREREQ (3, 5)] (fmod): Likewise. + [__FAST_MATH__ && !__GNUC_PREREQ (3, 4)] (sin): Likewise. + [__FAST_MATH__ && !__GNUC_PREREQ (3, 4)] (cos): Likewise. + [__FAST_MATH__ && !__GNUC_PREREQ (3, 5)] (log10): Likewise. + [__FAST_MATH__ && !__GNUC_PREREQ (3, 5)] (asin): Likewise. + [__FAST_MATH__ && !__GNUC_PREREQ (3, 5)] (acos): Likewise. + [__FAST_MATH__ && !__GNUC_PREREQ (3, 4)] (atan): Likewise. + [__FAST_MATH__ && !__GNUC_PREREQ (3, 5)] (log1p): Likewise. + [__FAST_MATH__ && !__GNUC_PREREQ (3, 5)] (logb): Likewise. + [__FAST_MATH__ && !__GNUC_PREREQ (3, 5)] (log2): Likewise. + [__FAST_MATH__ && !__GNUC_PREREQ (3, 5)] (drem): Likewise. + [__FAST_MATH__] (__M_SQRT2): Remove macro. + +2018-03-14 Siddhesh Poyarekar + + * sysdeps/aarch64/strncmp.S (strncmp): Use a separate shift + instruction to unbreak builds with binutils 2.26 and older. + +2018-03-13 Siddhesh Poyarekar + + * sysdeps/aarch64/strncmp.S (count): New macro. + (strncmp): Store misaligned length in SRC1 in COUNT. + (mutual_align): Adjust. + (misaligned8): Load dword at a time when it is safe. + +2018-03-12 Zack Weinberg + + [BZ #1190] + [BZ #19476] + * libio/fileops.c (_IO_new_file_underflow): Return EOF immediately + if the _IO_EOF_SEEN bit is already set; update commentary. + * libio/oldfileops.c (_IO_old_file_underflow): Likewise. + * libio/wfileops.c (_IO_wfile_underflow): Likewise. + + * support/support_openpty.c, support/tty.h: New files. + * support/Makefile (libsupport-routines): Add support_openpty. + + * libio/tst-fgetc-after-eof.c, wcsmbs/test-fgetwc-after-eof.c: + New test cases. + * libio/Makefile (tests): Add tst-fgetc-after-eof. + * wcsmbs/Makefile (tests): Add tst-fgetwc-after-eof. + +2018-03-12 Dmitry V. Levin + + * po/pt_BR.po: Update translations. + +2018-03-12 David Michael + + * sysdeps/mach/hurd/reboot.c: Include + (reboot): Lookup _SERVERS_STARTUP instead of calling proc_getmsgport to + get a port to the startup server. + +2018-03-11 Zack Weinberg + + * sysdeps/ieee754/ldbl-opt/nldbl-compat.c: Include math.h + before nldbl-compat.h. + +2018-03-10 Zack Weinberg + + * sysdeps/ieee754/ldbl-opt/math_ldbl_opt.h: Don't include + math.h or math_private.h. + + * sysdeps/alpha/fpu/s_isnan.c + * sysdeps/ieee754/ldbl-128ibm/s_ceill.c + * sysdeps/ieee754/ldbl-128ibm/s_floorl.c + * sysdeps/ieee754/ldbl-128ibm/s_llrintl.c + * sysdeps/ieee754/ldbl-128ibm/s_llroundl.c + * sysdeps/ieee754/ldbl-128ibm/s_lrintl.c + * sysdeps/ieee754/ldbl-128ibm/s_lroundl.c + * sysdeps/ieee754/ldbl-128ibm/s_rintl.c + * sysdeps/ieee754/ldbl-128ibm/s_roundl.c + * sysdeps/ieee754/ldbl-128ibm/s_truncl.c + * sysdeps/powerpc/powerpc32/power4/fpu/multiarch/e_hypot.c + * sysdeps/powerpc/powerpc32/power4/fpu/multiarch/e_hypotf.c: + * sysdeps/powerpc/powerpc64/fpu/multiarch/e_expf.c + * sysdeps/powerpc/powerpc64/fpu/multiarch/e_hypot.c + * sysdeps/powerpc/powerpc64/fpu/multiarch/e_hypotf.c: + Include math_private.h. + + * sysdeps/ieee754/ldbl-64-128/s_finitel.c + * sysdeps/ieee754/ldbl-64-128/s_fpclassifyl.c + * sysdeps/ieee754/ldbl-64-128/s_isinfl.c + * sysdeps/ieee754/ldbl-64-128/s_isnanl.c + * sysdeps/ieee754/ldbl-64-128/s_signbitl.c + * sysdeps/powerpc/power7/fpu/s_logb.c: + Include math.h and math_private.h. + + * sysdeps/unix/sysv/linux/alpha/clone.S (__clone): Wrap manual + uses of $at in .set noat / .set at. + +2018-03-10 H.J. Lu + + * include/setjmp.h (__libc_longjmp): Remove libc_hidden_proto. + * setjmp/longjmp.c (__libc_longjmp): Remove libc_hidden_def. + * sysdeps/s390/longjmp.c (__libc_longjmp): Likewise. + * sysdeps/unix/sysv/linux/sparc/sparc64/longjmp.S (__libc_longjmp): + Likewise. + +2018-03-09 Florian Weimer + + * malloc/malloc.c (prev_size, set_prev_size, prev_chunk): Fix typo + in comment. + +2018-03-09 Aurelien Jarno + + [BZ #22919] + * sysdeps/unix/sysv/linux/sparc/sparc32/setcontext.S (__startcontext): + Add nop before __startcontext, add explaining comments. + +2018-03-07 Adhemerval Zanella + + [BZ #22926] + * sysdeps/powerpc/powerpc32/sysdep.h (ABORT_TRANSACTION_IMPL): Define + empty for __SPE__. + * sysdeps/powerpc/sysdep.h (ABORT_TRANSACTION): Likewise. + * sysdeps/unix/sysv/linux/powerpc/elision-lock.c (__lll_lock_elision): + Do not build hardware transactional code for __SPE__. + * sysdeps/unix/sysv/linux/powerpc/elision-trylock.c + (__lll_trylock_elision): Likewise. + * sysdeps/unix/sysv/linux/powerpc/elision-unlock.c + (__lll_unlock_elision): Likewise. + + * sysdeps/nptl/fork.c (ARCH_FORK): Replace by arch_fork. + * sysdeps/unix/sysv/linux/alpha/arch-fork.h: Remove file. + * sysdeps/unix/sysv/linux/riscv/arch-fork.h: Likewise. + * sysdeps/unix/sysv/linux/aarch64/arch-fork.h: Likewise. + * sysdeps/unix/sysv/linux/arm/arch-fork.h: Likewise. + * sysdeps/unix/sysv/linux/hppa/arch-fork.h: Likewise. + * sysdeps/unix/sysv/linux/i386/arch-fork.h: Likewise. + * sysdeps/unix/sysv/linux/ia64/arch-fork.h: Likewise. + * sysdeps/unix/sysv/linux/m68k/arch-fork.h: Likewise. + * sysdeps/unix/sysv/linux/microblaze/arch-fork.h: Likewise. + * sysdeps/unix/sysv/linux/mips/arch-fork.h: Likewise. + * sysdeps/unix/sysv/linux/nios2/arch-fork.h: Likewise. + * sysdeps/unix/sysv/linux/powerpc/arch-fork.h: Likewise. + * sysdeps/unix/sysv/linux/s390/arch-fork.h: Likewise. + * sysdeps/unix/sysv/linux/sh/arch-fork.h: Likewise. + * sysdeps/unix/sysv/linux/sparc/arch-fork.h: Likewise. + * sysdeps/unix/sysv/linux/tile/arch-fork.h: Likewise. + * sysdeps/unix/sysv/linux/x86_64/arch-fork.h: Likewise. + * sysdeps/unix/sysv/linux/arch-fork.h (arch_fork): New function. + * sysdeps/unix/sysv/linux/aarch64/kernel-features.h: New file. + * sysdeps/unix/sysv/linux/riscv/kernel-features.h: Likewise. + * sysdeps/unix/sysv/linux/arm/kernel-features.h + (__ASSUME_CLONE_BACKWARDS): Define. + * sysdeps/unix/sysv/linux/createthread.c (ARCH_CLONE): Define to + __clone2 if __NR_clone2 is defined. + * sysdeps/unix/sysv/linux/hppa/kernel-features.h + (__ASSUME_CLONE_BACKWARDS): Likewise. + * sysdeps/unix/sysv/linux/i386/kernel-features.h + (__ASSUME_CLONE_BACKWARDS): Likewise. + * sysdeps/unix/sysv/linux/ia64/kernel-features.h + (__ASSUME_CLONE2): Likewise. + * sysdeps/unix/sysv/linux/microblaze/kernel-features.h + (__ASSUME_CLONE_BACKWARDS3): Likewise. + * sysdeps/unix/sysv/linux/kernel-features.h: Document possible clone + variants and the define architecture can use. + (__ASSUME_CLONE_DEFAULT): Define as default. + * sysdeps/unix/sysv/linux/mips/kernel-features.h + (__ASSUME_CLONE_BACKWARDS): Likewise. + * sysdeps/unix/sysv/linux/powerpc/kernel-features.h + (__ASSUME_CLONE_BACKWARDS): Likewise. + * sysdeps/unix/sysv/linux/s390/kernel-features.h + (__ASSUME_CLONE_BACKWARDS2): Likewise. + +2018-03-06 Siddhesh Poyarekar + + * sysdeps/aarch64/memcmp.S (more16): Fix loop16 branch target. + + * sysdeps/aarch64/memcmp.S: Widen comparison to 16 bytes at a + time. + + * benchtests/bench-strncmp.c (test_main): Remove 0 length tests. + (do_test_limit): Likewise. + + * benchtests/bench-strncmp.c (do_test_limit): Reallocate buffers + for every implementation. + (do_test): Likewise. + + * benchtests/bench-strncmp.c: Convert output to json. + +2018-03-06 Samuel Thibault + + * io/futimens.c: Add missing start-of-file descriptive comment. + * io/utime.c: Likewise. + * misc/futimesat.c: Likewise. + * misc/utimes.c: Likewise. + * sysdeps/mach/hurd/futimesat.c: Likewise. + * sysdeps/mach/hurd/utimes.c: Likewise. + * sysdeps/posix/utime.c: Likewise. + * sysdeps/posix/utimes.c: Likewise. + * sysdeps/unix/sysv/linux/futimesat.c: Likewise. + * sysdeps/unix/sysv/linux/generic/futimesat.c: Likewise. + * sysdeps/unix/sysv/linux/generic/utimes.c: Likewise. + * sysdeps/unix/sysv/linux/utimes.c: Likewise. + +2018-03-05 Samuel Thibault + + * sysdeps/mach/hurd/utime-helper.c (hurd_futimens): Rename function to + hurd_futimes. + * sysdeps/mach/hurd/utimes.c (__utimes): Update call accordingly. + * sysdeps/mach/hurd/lutimes.c (__lutimes): Likewise. + * sysdeps/mach/hurd/futimens.c: Include "utime-helper.c". + (__futimens): Move implementation to... + * sysdeps/mach/hurd/utime-helper.c (utime_ts_from_tspec, + utime_tvalue_from_tspec): ... new helper functions. + (hurd_futimens): New function. + * sysdeps/mach/hurd/futimesat.c: New file. + * sysdeps/mach/hurd/utimensat.c: New file. + +2018-03-05 Flávio Cruz + + * sysdeps/mach/hurd/bits/stat.h [__USE_ATFILE] (UTIME_NOW, + UTIME_OMIT): New macros. + * sysdeps/mach/hurd/futimens.c (__futimens): Try to use __file_utimens + before reverting to converting time spec to time value and calling + __file_utimes. + * sysdeps/mach/hurd/utime-helper.c: New file. + * sysdeps/mach/hurd/futimes.c: Include "utime-helper.c". + (__futimes): Try to use utime_ts_from_tval and __file_utimens before + reverting to utime_tvalue_from_tval and __file_utimes. + * sysdeps/mach/hurd/lutimes.c: Include "utime-helper.c". + (__lutimes): Just call hurd_futimens after lookup. + * sysdeps/mach/hurd/utimes.c: Likewise. + +2018-03-05 Samuel Thibault + + * bits/sigaction.h: Add include guard. + * sysdeps/unix/sysv/linux/alpha/bits/sigaction.h: Likewise. + * sysdeps/unix/sysv/linux/bits/sigaction.h: Likewise. + * sysdeps/unix/sysv/linux/hppa/bits/sigaction.h: Likewise. + * sysdeps/unix/sysv/linux/ia64/bits/sigaction.h: Likewise. + * sysdeps/unix/sysv/linux/mips/bits/sigaction.h: Likewise. + * sysdeps/unix/sysv/linux/s390/bits/sigaction.h: Likewise. + * sysdeps/unix/sysv/linux/sparc/bits/sigaction.h: Likewise. + * sysdeps/unix/sysv/linux/tile/bits/sigaction.h: Likewise. + * hurd/hurd/signal.h: Include . + +2018-03-05 Joseph Myers + + * iconv/loop.c (UNICODE_TAG_HANDLER): Disable + -Wmaybe-uninitialized for -Os. + * sysdeps/s390/multiarch/8bit-generic.c (BODY): Add comment about + this disabling. + +2018-03-03 Adhemerval Zanella + + * bits/dirent.h (__INO_T_MATCHES_INO64_T): Define regardless whether + __INO_T_MATCHES_INO64_T is defined. + * sysdeps/unix/sysv/linux/bits/dirent.h: Likewise. + * dirent/alphasort.c: Check _DIRENT_MATCHES_DIRENT64 value instead + of definition. + * dirent/alphasort64.c: Likewise. + * dirent/scandir.c: Likewise. + * dirent/scandir64-tail.c: Likewise. + * dirent/scandir64.c: Likewise. + * dirent/scandirat.c: Likewise. + * dirent/scandirat64.c: Likewise. + * dirent/versionsort.c: Likewise. + * dirent/versionsort64.c: Likewise. + * include/dirent.h: Likewise. + + * nptl/tst-cancel4-common.h (set_socket_buffer): New function. + * nptl/tst-cancel4-common.c (do_test): Call set_socket_buffer + for socketpair endpoint. + * nptl/tst-cancel4.c (tf_send): Call set_socket_buffer and use + WRITE_BUFFER_SIZE as buffer size for sending socket. + (tf_sendto): Use SOCK_STREAM instead of SOCK_DGRAM and fix an + issue on system where send is implemented with sendto syscall. + * sysdeps/unix/sysv/linux/mips/mips64/Makefile [$(subdir) = socket] + (CFLAGS-recv.c, CFLAGS-send.c): Remove rules. + [$(subdir) = nptl] (CFLAGS-recv.c, CFLAGS-send.c): Likewise. + * sysdeps/unix/sysv/linux/riscv/rv64/Makefile: Remove file. + + [BZ #21269] + * sysdeps/unix/sysv/linux/i386/Makefile (tests): Add tst-bz21269. + * sysdeps/unix/sysv/linux/i386/sigaction.c (SET_SA_RESTORER): Clear + sa_restorer for vDSO case. + * sysdeps/unix/sysv/linux/i386/tst-bz21269.c: New file. + +2018-03-03 Samuel Thibault + + * scripts/check-installed-headers.sh: Ignore Hurd and Mach headers. + * hurd/hurd/id.h: Include + * hurd/hurd/ioctl.h: Include + * hurd/hurd/lookup.h: Include + * mach/Makefile ($(objpfx)mach-shortcuts.h): Make it include + and . + (headers): Move mach/param.h to bits/mach/param.h. + * sysdeps/mach/i386/mach/param.h: Move file to ... + * sysdeps/mach/i386/bits/mach/param.h: ... here. Update path in #error. + * sysdeps/mach/hurd/bits/param.h: Include instead + of . + * hurd/hurd/port.h: Do not include . + * hurd/hurd/userlink.h [!defined __USE_EXTERN_INLINES || + !defined _LIBC || !IS_IN (libc)]: Do not include . + * hurd/hurd/fd.h (_hurd_fd_error): Fix struct initializer to be + trivial, for C++ conformity. + * sysdeps/mach/hurd/dl-sysdep.c: Include . + * mach/Machrules ($(patsubst %,$(objpfx)%.h,$(user-interfaces)): + Process mig output through $(migheadersed). + * hurd/Makefile (migheadersed): Define variable. + * mach/mach/mig_support.h [defined __USE_GNU]: Do not #error out. + * scripts/check-installed-headers.sh: Do not ignore Hurd and Mach + headers. + * hurd/hurd.h: Include + * hurd/hurd/fd.h: Include and + (_hurd_fd_read, _hurd_fd_write): Use __loff_t instead of loff_t. + * hurd/hurd/signal.h: Include and + . + [!defined __USE_GNU]: Do not #error out. + (struct hurd_sigstate): Use _NSIG instead of NSIG. + * hurd/hurd/sigpreempt.h (__need_size_t): Define. + Include and + (struct hurd_signal_preemptor, hurd_catch_signal): Use __sighandler_t + instead of sighandler_t. + * stdlib/errno.h (error_t): Move definition to... + * bits/types/error_t.h: ... new header. + * stdlib/Makefile (headers): Add bits/types/error_t.h. + * sysdeps/mach/hurd/bits/errno.h (error_t): Move definition to... + * sysdeps/mach/hurd/bits/types/error_t.h: ... new header. + * sysdeps/mach/hurd/errnos.awk (error_t): Likewise. + * hurd/hurd.h: Include + * hurd/hurd/fd.h: Include + * hurd/hurd/id.h: Include and + * hurd/hurd/lookup.h: Include and + * hurd/hurd/resource.h: Include + * hurd/hurd/signal.h: Include + * hurd/hurd/sigpreempt.h: Include + * sysdeps/mach/hurd/futimens.c: New file. + +2018-03-03 Andreas Schwab + + [BZ #22918] + * nss/nsswitch.h (DEFINE_DATABASE): Don't define __nss_*_database. + * nss/nsswitch.c (DEFINE_DATABASE): Define __nss_*_database here. + * nscd/gai.c (__nss_hosts_database): Readd definition. + * posix/tst-rfc3484.c (__nss_hosts_database): Likewise. + * posix/tst-rfc3484-3.c (__nss_hosts_database): Likewise. + * posix/tst-rfc3484-2.c (__nss_hosts_database): Likewise. + +2018-03-02 Joseph Myers + + * sysdeps/powerpc/ifunc-sel.h (ifunc_sel): Make always_inline. + (ifunc_one): Likewise. + +2018-03-01 DJ Delorie + + [BZ #22342] + * nscd/netgroupcache.c (addinnetgrX): Include trailing NUL in + key value. + +2018-03-01 Maciej W. Rozycki + + * nptl_db/td_ta_thr_iter.c (iterate_thread_list): Remove + `match_pid' parameter. + (td_ta_thr_iter): Update accordingly. + +2018-03-01 Florian Weimer + + * nptl/Makefile (install-lib-ldscripts): Remove. + (install): Remove rule. + ($(inst_libdir)/libpthread.so): Likewise. + +2018-03-01 Mike FABIAN + + [BZ #22896] + * localedata/locales/an_ES: update month and day names, + improve d_fmt, improve postal_fmt, add country_post, + add country_isbn + +2018-03-01 Mike FABIAN + + * localedata/locales/bg_BG (LC_COLLATE): The comment mentioned + Ukrainian instead of Bulgarian. + +2018-03-01 Florian Weimer + + * nptl/Makefile (libpthread.so): Drop libpthread_nonshared.a + reference. + +2018-03-01 Florian Weimer + + Move pthread_atfork to libc. Remove libpthread_nonshared.a. + * nptl/Makefile (routines): Add pthread_atfork. + (static-only-routines): Set to pthread_atfork. + (libpthread-routines): Remove pthread_atfork. + (libpthread-static-only-routines): Remove. + (install): Update comment. + (libpthread.so): Do not install libpthread_nonshared.a. + (tests): Do not link with libpthread_nonshared.a. + (generated): Remove libpthread_nonshared.a. + * nptl/pthread_atfork.c (pthread_atfork): Turn into weak alias. + * sysdeps/nptl/Makeconfig (shared-thread-library): Do not link + with libpthread_nonshared.a. + +2018-02-28 Joseph Myers + + [BZ #22902] + * sysdeps/i386/fpu/fenv_private.h [!__x86_64__] + (libc_feholdexcept_setroundf128): New macro. + [!__x86_64__] (libc_feupdateenv_testf128): Likewise. + + [BZ #15105] + * sysdeps/wordsize-32/strtoumax.c (strtoumax): Use + libc_hidden_def. + * sysdeps/wordsize-64/strtoumax.c (strtoumax): Likewise. + * include/inttypes.h: New file. + +2018-02-27 Joseph Myers + + * locale/weightwc.h (findidx): Ignore -Wmaybe-uninitialized for + -Os in two more places. + +2018-02-27 Mike FABIAN + + See this bug https://sourceware.org/bugzilla/show_bug.cgi?id=22898 + * localedata/cmn_TW.UTF-8.in: Remove the lines which cannot + be sorted correctly at the moment because of a bug. + +2018-02-27 Mike FABIAN + + [BZ #22550] - es_ES locale (and other es_* locales): collation should + treat ñ as a primary different character, sync the collation + for Spanish with CLDR. + [BZ #21547] - Tibetan script collation broken (Dzongkha and Tibetan). + * localedata/Makefile: Add new test files. + * localedata/lv_LV.UTF-8.in: Adapt test file to new collation order. + * localedata/sv_SE.ISO-8859-1.in: Adapt test file to new + collation order. + * localedata/uk_UA.UTF-8.in: Adapt test file to new collation order. + * localedata/am_ET.UTF-8.in: New test file. + * localedata/az_AZ.UTF-8.in: Likewise. + * localedata/be_BY.UTF-8.in: Likewise. + * localedata/ber_DZ.UTF-8.in: Likewise. + * localedata/ber_MA.UTF-8.in: Likewise. + * localedata/bg_BG.UTF-8.in: Likewise. + * localedata/br_FR.UTF-8.in: Likewise. + * localedata/cmn_TW.UTF-8.in: Likewise. + * localedata/crh_UA.UTF-8.in: Likewise. + * localedata/csb_PL.UTF-8.in: Likewise. + * localedata/cv_RU.UTF-8.in: Likewise. + * localedata/cy_GB.UTF-8.in: Likewise. + * localedata/dz_BT.UTF-8.in: Likewise. + * localedata/eo.UTF-8.in: Likewise. + * localedata/es_ES.UTF-8.in: Likewise. + * localedata/fa_IR.UTF-8.in: Likewise. + * localedata/fi_FI.UTF-8.in: Likewise. + * localedata/fil_PH.UTF-8.in: Likewise. + * localedata/fur_IT.UTF-8.in: Likewise. + * localedata/gez_ER.UTF-8@abegede.in: Likewise. + * localedata/ha_NG.UTF-8.in: Likewise. + * localedata/ig_NG.UTF-8.in: Likewise. + * localedata/ik_CA.UTF-8.in: Likewise. + * localedata/kk_KZ.UTF-8.in: Likewise. + * localedata/ku_TR.UTF-8.in: Likewise. + * localedata/ky_KG.UTF-8.in: Likewise. + * localedata/ln_CD.UTF-8.in: Likewise. + * localedata/mi_NZ.UTF-8.in: Likewise. + * localedata/ml_IN.UTF-8.in: Likewise. + * localedata/mn_MN.UTF-8.in: Likewise. + * localedata/mr_IN.UTF-8.in: Likewise. + * localedata/mt_MT.UTF-8.in: Likewise. + * localedata/nb_NO.UTF-8.in: Likewise. + * localedata/om_KE.UTF-8.in: Likewise. + * localedata/os_RU.UTF-8.in: Likewise. + * localedata/ps_AF.UTF-8.in: Likewise. + * localedata/ro_RO.UTF-8.in: Likewise. + * localedata/ru_RU.UTF-8.in: Likewise. + * localedata/sc_IT.UTF-8.in: Likewise. + * localedata/se_NO.UTF-8.in: Likewise. + * localedata/sq_AL.UTF-8.in: Likewise. + * localedata/sv_SE.UTF-8.in: Likewise. + * localedata/szl_PL.UTF-8.in: Likewise. + * localedata/tg_TJ.UTF-8.in: Likewise. + * localedata/tk_TM.UTF-8.in: Likewise. + * localedata/tt_RU.UTF-8.in: Likewise. + * localedata/tt_RU.UTF-8@iqtelif.in: Likewise. + * localedata/ug_CN.UTF-8.in: Likewise. + * localedata/uz_UZ.UTF-8.in: Likewise. + * localedata/vi_VN.UTF-8.in: Likewise. + * localedata/yi_US.UTF-8.in: Likewise. + * localedata/yo_NG.UTF-8.in: Likewise. + * localedata/zh_CN.UTF-8.in: Likewise. + * localedata/locales/am_ET: Adapt collation rules to new iso14651_t1_common + file and fix bugs in the collation. + * localedata/locales/az_AZ: Likewise. + * localedata/locales/be_BY: Likewise. + * localedata/locales/ber_DZ: Likewise. + * localedata/locales/ber_MA: Likewise. + * localedata/locales/bg_BG: Likewise. + * localedata/locales/br_FR: Likewise. + * localedata/locales/br_FR@euro: Likewise. + * localedata/locales/ca_ES: Likewise. + * localedata/locales/cns11643_stroke: Likewise. + * localedata/locales/crh_UA: Likewise. + * localedata/locales/cs_CZ: Likewise. + * localedata/locales/csb_PL: Likewise. + * localedata/locales/cv_RU: Likewise. + * localedata/locales/cy_GB: Likewise. + * localedata/locales/da_DK: Likewise. + * localedata/locales/dz_BT: Likewise. + * localedata/locales/en_CA: Likewise. + * localedata/locales/eo: Likewise. + * localedata/locales/es_CU: Likewise. + * localedata/locales/es_EC: Likewise. + * localedata/locales/es_ES: Likewise. + * localedata/locales/es_US: Likewise. + * localedata/locales/et_EE: Likewise. + * localedata/locales/fa_IR: Likewise. + * localedata/locales/fi_FI: Likewise. + * localedata/locales/fil_PH: Likewise. + * localedata/locales/fur_IT: Likewise. + * localedata/locales/gez_ER@abegede: Likewise. + * localedata/locales/ha_NG: Likewise. + * localedata/locales/hr_HR: Likewise. + * localedata/locales/hsb_DE: Likewise. + * localedata/locales/hu_HU: Likewise. + * localedata/locales/ig_NG: Likewise. + * localedata/locales/ik_CA: Likewise. + * localedata/locales/is_IS: Likewise. + * localedata/locales/iso14651_t1_pinyin: Likewise. + * localedata/locales/kk_KZ: Likewise. + * localedata/locales/ku_TR: Likewise. + * localedata/locales/ky_KG: Likewise. + * localedata/locales/ln_CD: Likewise. + * localedata/locales/lt_LT: Likewise. + * localedata/locales/lv_LV: Likewise. + * localedata/locales/mi_NZ: Likewise. + * localedata/locales/ml_IN: Likewise. + * localedata/locales/mn_MN: Likewise. + * localedata/locales/mr_IN: Likewise. + * localedata/locales/mt_MT: Likewise. + * localedata/locales/nb_NO: Likewise. + * localedata/locales/om_KE: Likewise. + * localedata/locales/os_RU: Likewise. + * localedata/locales/pl_PL: Likewise. + * localedata/locales/ps_AF: Likewise. + * localedata/locales/ro_RO: Likewise. + * localedata/locales/ru_RU: Likewise. + * localedata/locales/ru_UA: Likewise. + * localedata/locales/sc_IT: Likewise. + * localedata/locales/se_NO: Likewise. + * localedata/locales/si_LK: Likewise. + * localedata/locales/sq_AL: Likewise. + * localedata/locales/sv_FI: Likewise. + * localedata/locales/sv_FI@euro: Likewise. + * localedata/locales/sv_SE: Likewise. + * localedata/locales/szl_PL: Likewise. + * localedata/locales/tg_TJ: Likewise. + * localedata/locales/ti_ER: Likewise. + * localedata/locales/tk_TM: Likewise. + * localedata/locales/tl_PH: Likewise. + * localedata/locales/tr_TR: Likewise. + * localedata/locales/tt_RU: Likewise. + * localedata/locales/tt_RU@iqtelif: Likewise. + * localedata/locales/ug_CN: Likewise. + * localedata/locales/uk_UA: Likewise. + * localedata/locales/uz_UZ: Likewise. + * localedata/locales/uz_UZ@cyrillic: Likewise. + * localedata/locales/vi_VN: Likewise. + * localedata/locales/yi_US: Likewise. + * localedata/locales/yo_NG: Likewise. + +2018-02-27 Mike FABIAN + + * gen-locales.mk: Make test files which contain @ modifiers in their + name work. + * localedata/gen-locale.sh: Likewise. + +2018-02-27 Mike FABIAN + + * posix/tst-fnmatch.input: Fix results for range expressions + for non C locales. + * posix/tst-regexloc.c: Do not use a range expression for + de_DE.ISO-8859-1 locale. + +2018-02-27 Mike FABIAN + + * posix/bug-regex5.c: Fix test case because with the new + iso14651_t1_common file, the da_DK locale now has 6 collating elements + in the ISO-8859-1 range instead of 4 with the old iso14651_t1_common + file. + +2018-02-27 Mike FABIAN + + * localedata/da_DK.ISO-8859-1.in: In the new iso14651_t1_common file + downloaded from ISO, the collation order of @-. and space has changed. + Therefore, this test file needed to be adapted. + * localedata/fr_CA.UTF-8.in: Likewise. + * localedata/fr_FR.UTF-8.in: Likewise. + * localedata/uk_UA.UTF-8.in: Likewise. + +2018-02-27 Mike FABIAN + + * localedata/cs_CZ.UTF-8.in: adapt this test file to the collation + order of ȥ in the new iso14651_t1_common file. + * localedata/pl_PL.UTF-8.in: Likewise. + +2018-02-27 Mike FABIAN + + * localedata/locales/iso14651_t1_common: Add sections for various + scripts to the iso14651_t1_common file. + +2018-02-27 Mike FABIAN + + * localedata/locales/iso14651_t1_common: Use the code point of a + character in the fourth collation level instead of IGNORE for all + entries which have IGNORE on all 4 levels. + +2018-02-27 Mike FABIAN + + * localedata/locales/iso14651_t1_common: Add some convenient collation + symbols like , to make tailoring easier using + rules similar to those in CLDR. + +2018-02-27 Mike FABIAN + + * localedata/locales/iso14651_t1_common: The new version of this + file downloaded from ISO contained several syntax errors which + are fixed by this patch. + +2018-02-27 Mike FABIAN + + * localedata/locales/iso14651_t1_common: replace all + with because glibc understands only 4 digit or 8 digit + +2018-02-27 Mike FABIAN + + * localedata/locales/iso14651_t1_common: Necessary changes + to make the file downloaded from ISO usable by glibc. + +2018-02-27 Mike FABIAN + + [BZ #14095] + * localedata/locales/iso14651_t1_common: Update file to + latest version from ISO (ISO14651_2016_TABLE1_en.txt). + +2018-02-27 Samuel Thibault + + * sysdeps/pthread/timer_routines.c: Include instead + of + (thread_attr_compare): Move function to... + [!defined DELAYTIMER_MAX] (DELAYTIMER_MAX): Define to INT_MAX. + * sysdeps/nptl/timer_routines.h: ... new header. + * sysdeps/mach/hurd/gai_misc.h: New file. + +2018-02-26 Joseph Myers + + * string/strcoll_l.c: Include . + (STRCOLL): Ignore -Wmaybe-uninitialized for -Os around + declarations of seq1 and seq2. + + [BZ #15105] + * stdlib/atoi.c (atoi): Use libc_hidden_def. + * include/stdlib.h [!_ISOMAC] (atoi): Use libc_hidden_proto. + +2018-02-26 Dmitry V. Levin + + [BZ #22433] + [BZ #22807] + * sysdeps/unix/sysv/linux/powerpc/sys/ptrace.h (__ptrace_request): Add + PTRACE_GETREGS, PTRACE_SETREGS, PTRACE_GETFPREGS, PTRACE_SETFPREGS, + PTRACE_GETVRREGS, PTRACE_SETVRREGS, PTRACE_GETEVRREGS, + PTRACE_SETEVRREGS, PTRACE_GETREGS64, PTRACE_SETREGS64, + PTRACE_GET_DEBUGREG, PTRACE_SET_DEBUGREG, PTRACE_GETVSRREGS, + PTRACE_SETVSRREGS, and PTRACE_SINGLEBLOCK. + +2018-02-26 Tulio Magno Quites Machado Filho + + * sysdeps/unix/sysv/linux/powerpc/sys/ptrace.h: Undefine Linux + macros used in __ptrace_request. + +2018-02-23 H.J. Lu + + [BZ #22792] + * Makerules ($(common-objpfx)%.h): Pass -DGEN_AS_CONST_HEADERS + to $(CC). + * sysdeps/unix/sysv/linux/i386/lowlevellock.h: Include + only if GEN_AS_CONST_HEADERS isn't defined. + * sysdeps/unix/sysv/linux/x86_64/lowlevellock.h: Don't include + . + +2018-02-23 Joseph Myers + + [BZ #15105] + * ctype/ctype.c (tolower): Use libc_hidden_def. + (toupper): Likewise. + * include/ctype.h [!_ISOMAC] (tolower): Use libc_hidden_proto. + [!_ISOMAC] (toupper): Likewise. + +2018-02-23 Mike FABIAN + + * localedata/Makefile: Remove --quiet argument when + installing locales + +2018-02-23 Mike FABIAN + + [BZ #17438] + * localedata/locales/pt_BR (LC_TIME): use / instead of - + in d_fmt. + * localedata/locales/pt_PT (LC_TIME): likewise + +2018-02-23 Mike FABIAN + + [BZ #22646] + * localedata/locales/es_CL (LC_TIME): copy "es_BO". + * localedata/locales/es_CU (LC_TIME): copy "es_BO". + * localedata/locales/es_EC (LC_TIME): copy "es_BO". + +2018-02-22 Adhemerval Zanella + + * sysdeps/sparc/fpu/libm-test-ulps: Update. + + * nptl/Makefile (routines): Remove unregister-atfork. + * nptl/register-atfork.c (fork_handler_pool): Remove variable. + (fork_handler_alloc): Remove function. + (fork_handlers, fork_handler_init): New variables. + (__fork_lock): Rename to atfork_lock. + (__register_atfork, __unregister_atfork, libc_freeres_fn): Rewrite + to use a dynamic array to add/remove atfork handlers. + * sysdeps/nptl/fork.c (__libc_fork): Likewise. + * sysdeps/nptl/fork.h (__fork_lock, __fork_handlers, __linkin_atfork): + Remove declaration. + (fork_handler): Remove next, refcntr, and need_signal member. + (__run_fork_handler_type): New enum. + (__run_fork_handlers): New prototype. + * nptl/register-atfork.c: Remove file. + * sysdeps/nptl/libc-lockP.h (__libc_atfork): Remove declaration. + + * sysdeps/nptl/nptl-signals.h: Move to ... + * sysdeps/generic/internal-signals.h: ... here. Adjust internal + comments. + * sysdeps/unix/sysv/linux/internal-signals.h: Add include guards. + (__nptl_is_internal_signal): Rename to __is_internal_signal and remove + unnecessary check for SIGTIMER. + (__nptl_clear_internal_signals): Rename to __clear_internal_signals and + remove unnecessary removal of SIGTIMER. + * sysdeps/unix/sysv/linux/raise.c: Adjust nptl-signal.h to + include-signals.h rename. + * nptl/pthreadP.h: Likewise. + * sysdeps/unix/sysv/linux/spawni.c (__spawni_child): Call + __is_internal_signal instead of __nptl_is_internal_signal. + +2018-02-22 Andrew Waterman + + [BZ # 22884] + * sysdeps/riscv/rvd/s_fmax.c (__fmax): Handle sNaNs correctly. + * sysdeps/riscv/rvd/s_fmin.c (__fmin): Likewise. + * sysdeps/riscv/rvf/s_fmaxf.c (__fmaxf): Likewise. + * sysdeps/riscv/rvf/s_fminf.c (__fminf): Likewise. + +2018-02-22 DJ Delorie + + * sysdeps/riscv/tls-macros.h: Do not initialize $gp. + +2018-02-22 Siddhesh Poyarekar + + * sysdeps/aarch64/strcmp.S (do_misaligned): Jump back to + do_misaligned, not misaligned8. + +2018-02-22 Steve Ellcey + + * sysdeps/aarch64/multiarch/Makefile (sysdep_routines): + Add memcpy_thunderx2. + * sysdeps/aarch64/multiarch/ifunc-impl-list.c (MAX_IFUNC): + Increment to 4. + (__libc_ifunc_impl_list): Add __memcpy_thunderx2. + * sysdeps/aarch64/multiarch/memcpy.c (libc_ifunc): Add IS_THUNDERX2 + and IS_THUNDERX2PA checks. + * sysdeps/aarch64/multiarch/memcpy_thunderx.S (USE_THUNDERX2): + Use macro to set name appropriately. + (memcpy): Use USE_THUNDERX2 macro to modify prefetches. + * sysdeps/aarch64/multiarch/memcpy_thunderx2.S: New file. + * sysdeps/unix/sysv/linux/aarch64/cpu-features.h (IS_THUNDERX2PA): + New macro. + (IS_THUNDERX2): New macro. + +2018-02-22 Stefan Liebler + + * sysdeps/s390/fpu/libm-test-ulps: Regenerated. + +2018-02-21 Zack Weinberg + + * libio/libio.h (_IO_pos_BAD, _IO_pos_0, _IO_pos_adjust): + Define here, unconditionally. + * libio/iolibio.h (_IO_pos_BAD): Don't define here. + * libio/libioP.h: Remove #if 0 blocks. + (_IO_pos_BAD, _IO_pos_0, _IO_pos_adjust): Don't define here. + (_IO_va_start, COERCE_FILE, MAYBE_SET_EINVAL): Don't define. + (CHECK_FILE): Don't use MAYBE_SET_EINVAL or COERCE_FILE. Fix style. + + * libio/clearerr.c, libio/fputc.c, libio/getchar.c: + Assume weak_alias is always defined. + + * libio/fileops.c, libio/genops.c, libio/oldfileops.c + * libio/oldpclose.c, libio/pclose.c, libio/wfileops.c: + Remove #if 0 and #ifdef TODO blocks. + Assume text_set_element is always defined. + + * libio/iofdopen.c, libio/iogetdelim.c, libio/oldiofdopen.c + Use __set_errno (EINVAL) instead of MAYBE_SET_EINVAL. + * libio/tst-mmap-eofsync.c: Make #if 1 block unconditional. + + * libio/libio.h (_IOS_ATEND, _IOS_APPEND, _IOS_TRUNC) + (_IOS_NOCREATE, _IOS_NOREPLACE, _IOS_BIN, _OLD_STDIO_MAGIC) + (_IO_SKIPWS, _IO_LEFT, _IO_RIGHT, _IO_INTERNAL, _IO_DEC) + (_IO_OCT, _IO_HEX, _IO_SHOWBASE, _IO_SHOWPOINT, _IO_UPPERCASE) + (_IO_SHOWPOS, _IO_SCIENTIFIC, _IO_FIXED, _IO_UNITBUF, _IO_STDIO) + (_IO_DONT_CLOSE, _IO_BOOLALPHA, _IO_BAD_SEEN): Remove, unused. + Reformat bit flags for _flags field to make occupancy clearer. + Update commentary. + * libio/bits/types/struct_FILE.h (_IO_EOF_SEEN, _IO_ERR_SEEN): + Keep definitions consistent with those in libio/libio.h. + + * libio/libio.h (_IO_file_flags): Remove macro. + All uses changed to _flags. + + * libio/libio.h (_IO_UNIFIED_JUMPTABLES, _STDIO_USES_IOSTREAM) + (__HAVE_COLUMN, _IO_BE): Don't define. + (_IO_peekc_unlocked, _IO_getwc_unlocked, _IO_putwc_unlocked) + (_IO_fwide_maybe_incompatible): Use __glibc_unlikely. + * libio/libioP.h (EOF): Don't define. + * libio/iofdopen.c, libio/iofopen.c, libio/iopopen.c + * libio/iovdprintf.c, libio/oldiofdopen.c, libio/oldiofopen.c + * libio/oldiopopen.c, debug/vdprintf_chk.c: Remove #if block + testing _IO_UNIFIED_JUMPTABLES. + + * libio/libio.h (_IO_FILE): Delete; all uses changed to FILE. + (_IO_fpos_t): Delete; all uses changed to __fpos_t. + (_IO_fpos64_t): Delete; all uses changed to __fpos64_t. + (_IO_size_t): Delete; all uses changed to size_t. + (_IO_ssize_t): Delete; all uses changed to ssize_t or __ssize_t. + (_IO_off_t): Delete; all uses changed to off_t. + (_IO_off64_t): Delete; all uses changed to off64_t. + (_IO_pid_t): Delete; all uses changed to pid_t. + (_IO_uid_t): Delete; all uses changed to uid_t. + (_IO_wint_t): Delete; all uses changed to wint_t. + (_IO_va_list): Delete; all uses changed to va_list or __gnuc_va_list. + (_IO_BUFSIZ): Delete; all uses changed to BUFSIZ. + (_IO_cookie_io_functions_t): Delete; all uses changed to + cookie_io_functions_t. + (__io_read_fn): Delete; all uses changed to cookie_read_function_t. + (__io_write_fn): Delete; all uses changed to cookie_write_function_t. + (__io_seek_fn): Delete; all uses changed to cookie_seek_function_t. + (__io_close_fn): Delete: all uses changed to cookie_close_function_t. + + * libio/iofopncook.c: Remove unnecessary forward declarations. + * libio/iolibio.h: Correct outdated commentary. + * malloc/malloc.c (__malloc_stats): Remove unnecessary casts. + * stdio-common/fxprintf.c (__fxprintf_nocancel): + Remove unnecessary casts. + * stdio-common/getline.c: Use _IO_getdelim directly. + Don't redefine ssize_t. + * stdio-common/printf_fp.c, stdio_common/printf_fphex.c + * stdio-common/printf_size.c: Don't redefine size_t or FILE. + Remove outdated comments. + * stdio-common/vfscanf.c: Don't redefine va_list. + + * libio/iolibio.h, libio/libioP.h: Remove extern "C". + * libio/libio.h: Remove __BEGIN_DECLS and __END_DECLS. + Remove preprocessor conditionals on _LIBC and __USE_GNU, + which are always true, and __cplusplus, which is always false. + +2018-02-21 Joseph Myers + + [BZ #15105] + [BZ #19463] + * libio/fputc_u.c (fputc_unlocked): Use libc_hidden_def. + * libio/putc_u.c (putc_unlocked): Rename to __putc_unlocked and + define as weak alias of __putc_unlocked. Use libc_hidden_weak. + * include/stdio.h [!_ISOMAC] (fputc_unlocked): Use + libc_hidden_proto. + [!_ISOMAC] (putc_unlocked): Likewise. + [!_ISOMAC] (__putc_unlocked): Declare as hidden function, and + define inline if [__USE_EXTERN_INLINES]. + * misc/syslog.c (__vsyslog_chk): Call __putc_unlocked instead of + putc_unlocked. + + [BZ #15105] + [BZ #19463] + * libio/getc_u.c (getc_unlocked): Use libc_hidden_weak. + * include/stdio.h [!_ISOMAC] (__getc_unlocked): Use + attribute_hidden, and define inline if [__USE_EXTERN_INLINES]. + [!_ISOMAC] (getc_unlocked): Use libc_hidden_proto. + * misc/getttyent.c (__getttyent): Call __getc_unlocked instead of + getc_unlocked. + * time/tzfile.c (__tzfile_read): Likewise. + +2018-02-21 Mike FABIAN + + [BZ #22517] + * localedata/locales/et_EE (LC_COLLATE): add missing “reorder-end” + +2018-02-21 Rical Jasan + + * io/fcntl.h: Fix a typo in a comment. + +2018-02-21 Rical Jasan + + [BZ #22862] + * include/features.h: Add _ISOC11_SOURCE to test for whether to + define _DEFAULT_SOURCE. + * manual/creature.texi (_DEFAULT_SOURCE): Improve documentation. + +2018-02-21 Florian Weimer + + [BZ #20890] + * elf/cache.c (save_cache): Call fsync on temporary file before + renaming it. + (save_aux_cache): Call fdatasync on temporary file before renaming + it. + +2018-02-21 Florian Weimer + + [BZ #22787] + * include/caller.h: Remove file. + * elf/dl-caller.c: Likewise. + * elf/Makefile (dl-routines): Remove dl-caller. + (shared-only-routines): Do not add dl-caller. + * elf/dl-load.c (_dl_map_object_from_fd): Do not call + __check_caller. + * elf/dl-open.c (struct dl_open_args): Remove caller_dl_open + member. + (dl_open_worker): Do not call __check_caller. + (_dl_open): Do not set caller_dl_open member. + * elf/rtld.c (_rtld_global_ro): Do not initialize + _dl_check_caller member. + * sysdeps/generic/ldsodefs.h (rtld_global): Remove + _dl_check_caller member. + (_dl_check_caller): Remove declaration. + * sysdeps/unix/sysv/linux/dl-execstack.c + (_dl_make_stack_executable): Do not call __check_caller. + +2018-02-21 Samuel Thibault + + * sysdeps/mach/hurd/dl-sysdep.c (_dl_random): New variable. + * sysdeps/mach/hurd/sysdep-cancel.h: New file. + +2018-02-20 Rical Jasan + + * manual/creature.texi (_ISOC99_SOURCE): Update the dated + description. + +2018-02-20 Rical Jasan + + [BZ #16335] + * manual/creature.texi (_POSIX_C_SOURCE): Document special values + of 199606L, 200112L, and 200809L. + (_XOPEN_SOURCE): Document special values of 600 and 700. + (_ISOC11_SOURCE): Document macro. + (_ATFILE_SOURCE): Likewise. + (_FORTIFY_SOURCE): Likewise. + +2018-02-19 Joseph Myers + + [BZ #15105] + [BZ #19463] + * libio/ferror_u.c (ferror_unlocked): Rename to __ferror_unlocked + and define as weak alias of __ferror_unlocked. Use + libc_hidden_weak. + * include/stdio.h [!_ISOMAC] (ferror_unlocked): Use + libc_hidden_proto. + [!_ISOMAC] (__ferror_unlocked) New declaration, and inline + function if [__USE_EXTERN_INLINES]. + * time/getdate.c (__getdate_r): Call __ferror_unlocked instead of + ferror_unlocked. + +2018-02-19 Rical Jasan + + [BZ #6889] + * manual/filesys.texi (get_current_dir_name): Clarify behaviour. + +2018-02-18 Aurelien Jarno + + [BZ #22818] + * posix/tst-glob_lstat_compat.c [__alpha__] (glob): Access + the GLIBC_2.1 version. + +2018-02-18 Aurelien Jarno + + [BZ #21508] + * catgets/xopen-msg.awk: Ignore POT-Creation-Date line. + * intl/Makefile ($(objpfx)tst-gettext-de.po): Generate + intl/tst-gettext-de.po from po/de.po by removing the + POT-Creation-Date line. + ($(objpfx)msgs.h): Depend on $(objpfx)tst-gettext-de.po instead of + ../po/de.po. + * intl/tst-gettext.sh: Use ${objpfx}tst-gettext-de.po instead of + ../po/de.po. + +2018-02-17 Samuel Thibault + + * mach/Makefile (headers): Add mach/param.h. + * sysdeps/mach/hurd/bits/param.h: Include . + * sysdeps/mach/i386/mach/param.h: New file, defines EXEC_PAGESIZE + * sysdeps/mach/hurd/ptsname.c: Include . + (__ptsname_r): Move implementation to... + (__ptsname_internal): ... new function. Add filling the STP + structure. + +2018-02-17 John David Anglin + + * sysdeps/hppa/fpu/libm-test-ulps (pow): Increase double and + idouble to 1 ULP. + +2018-02-16 Rical Jasan + + * manual/platform.texi (__riscv_flush_icache): Fix @deftypefun + syntax. + +2018-02-16 Stefan Liebler + + * nptl/Makefile (tst-mutex8-ENV): Delete. + * nptl/tst-mutex8.c (check_type): + Add runtime check if mutex will be elided. + +2018-02-15 Joseph Myers + + [BZ #20980] + [BZ #21234] + * manual/install.texi (Configuring and compiling): Describe + passing CC and CFLAGS on configure command line, not as + environment variables. Use @code markup on those variables. + Specify what options go in CC and what go in CFLAGS. Note the + requirement to compile with optimization. + * INSTALL: Regenerated. + + [BZ #18124] + * sysdeps/hppa/bsd-setjmp.S: Include . + (setjmp): Use HIDDEN_JUMPTARGET with __sigsetjmp. + * sysdeps/unix/sysv/linux/hppa/getcontext.S (__getcontext): Call + __sigprocmask instead of sigprocmask. + * sysdeps/unix/sysv/linux/hppa/setcontext.S (__setcontext): + Likewise. + * sysdeps/unix/sysv/linux/hppa/localplt.data: Remove entries for + __sigsetjmp and sigprocmask. + + [BZ #15105] + * include/argz.h (argz_next): Use libc_hidden_proto. + (__argz_next): Likewise. + * string-argz-next.c (__argz_next): Use libc_hidden_def. + (argz_next): Use libc_hidden_weak. + + [BZ #15105] + * include/sys/socket.h [!_ISOMAC] (__cmsg_nxthdr): Use + libc_hidden_proto. + * sysdeps/unix/sysv/linux/cmsg_nxthdr.c (__cmsg_nxthdr): Use + libc_hidden_def. + + [BZ #15105] + * include/stdio.h [!_ISOMAC && IS_IN (libc)] (fputs): Use + libc_hidden_proto. + * libio/iofputs.c (fputs): Use libc_hidden_weak. + + [BZ #15105] + [BZ #19463] + * libio/feof_u.c (feof_unlocked): Rename to __feof_unlocked and + define as weak alias of __feof_unlocked. Use libc_hidden_weak. + * include/stdio.h (feof_unlocked): Use libc_hidden_proto. + (__feof_unlocked): New declaration, and inline function if + [__USE_EXTERN_INLINES]. + * iconv/gconv_conf.c (read_conf_file): Call __feof_unlocked + instead of feof_unlocked. + * intl/localealias.c [_LIBC] (FEOF): Likewise. + * nss/nsswitch.c (nss_parse_file): Likewise. + * sysdeps/unix/sysv/linux/readonly-area.c (__readonly_area): + Likewise. + * time/getdate.c (__getdate_r): Likewise. + * sysdeps/posix/getaddrinfo.c [IS_IN (libc)] (feof_unlocked): + Define as macro to call __feof_unlocked. + +2018-02-15 Wilco Dijkstra + + * sysdeps/aarch64/fpu/fpu_control.h: Use <> in include. + +2018-02-15 Wilco Dijkstra + + * math/Makefile: Remove mpexp.c and mplog.c + * sysdeps/i386/fpu/mpexp.c: Delete file. + * sysdeps/i386/fpu/mplog.c: Likewise. + * sysdeps/ia64/fpu/mpexp.c: Likewise. + * sysdeps/ia64/fpu/mplog.c: Likewise. + * sysdeps/ieee754/dbl-64/e_exp.c: Remove mention of mpexp and mplog. + * sysdeps/ieee754/dbl-64/mpa.h (__pow_mp): Remove unused function. + * sysdeps/ieee754/dbl-64/mpexp.c: Delete file. + * sysdeps/ieee754/dbl-64/mplog.c: Likewise. + * sysdeps/m68k/m680x0/fpu/mpexp.c: Likewise. + * sysdeps/m68k/m680x0/fpu/mplog.c: Likewise. + * sysdeps/x86_64/fpu/multiarch/Makefile: Remove mpexp* and mplog*. + * sysdeps/x86_64/fpu/multiarch/e_log-avx.c: Remove unused defines. + * sysdeps/x86_64/fpu/multiarch/e_log-fma.c: Likewise. + * sysdeps/x86_64/fpu/multiarch/e_log-fma4.c: Likewise. + * sysdeps/x86_64/fpu/multiarch/mpexp-avx.c: Delete file. + * sysdeps/x86_64/fpu/multiarch/mpexp-fma.c: Likewise. + * sysdeps/x86_64/fpu/multiarch/mpexp-fma4.c: Likewise. + * sysdeps/x86_64/fpu/multiarch/mplog-avx.c: Likewise. + * sysdeps/x86_64/fpu/multiarch/mplog-fma.c: Likewise. + * sysdeps/x86_64/fpu/multiarch/mplog-fma4.c: Likewise. + +2018-02-15 Stefan Liebler + + * sysdeps/s390/fpu/libm-test-ulps: Regenerated. + +2018-02-14 Adhemerval Zanella + + * sysdeps/sh/libm-test-ulps: Update. + +2018-02-12 Tulio Magno Quites Machado Filho + + * sysdeps/powerpc/fpu/libm-test-ulps (pow): Increase double and + idouble to 1 ULP. + +2018-02-12 Zack Weinberg + + [BZ #19239] + * posix/sys/types.h: Don't include sys/sysmacros.h. + * misc/sys/sysmacros.h: Remove the conditional deprecation + warnings for the macros defined by this header. + +2018-02-12 Szabolcs Nagy + + * manual/probes.texi: Remove slowexp probes. + * math/Makefile: Remove slowexp. + * sysdeps/generic/math_private.h (__slowexp): Remove. + * sysdeps/ieee754/dbl-64/e_exp.c (__ieee754_exp): Remove __slowexp and + document error bounds. + * sysdeps/i386/fpu/slowexp.c: Remove. + * sysdeps/ia64/fpu/slowexp.c: Remove. + * sysdeps/ieee754/dbl-64/slowexp.c: Remove. + * sysdeps/ieee754/dbl-64/uexp.h (err_0): Remove. + * sysdeps/m68k/m680x0/fpu/slowexp.c: Remove. + * sysdeps/powerpc/power4/fpu/Makefile (CPPFLAGS-slowexp.c): Remove. + * sysdeps/x86_64/fpu/multiarch/Makefile: Remove slowexp-fma. + * sysdeps/x86_64/fpu/multiarch/e_exp-avx.c (__slowexp): Remove. + * sysdeps/x86_64/fpu/multiarch/e_exp-fma.c (__slowexp): Remove. + * sysdeps/x86_64/fpu/multiarch/e_exp-fma4.c (__slowexp): Remove. + * sysdeps/x86_64/fpu/multiarch/slowexp-avx.c: Remove. + * sysdeps/x86_64/fpu/multiarch/slowexp-fma.c: Remove. + * sysdeps/x86_64/fpu/multiarch/slowexp-fma4.c: Remove. + +2018-02-12 Wilco Dijkstra + + [BZ #13932] + * sysdeps/ieee754/dbl-64/uexp.h (err_1): Remove. + * benchtests/pow-inputs: Update comment for slow path cases. + * manual/probes.texi (slowpow_p10): Delete removed probe. + (slowpow_p10): Likewise. + * math/Makefile: Remove halfulp.c and slowpow.c. + * sysdeps/aarch64/libm-test-ulps: Set ULP of pow to 1. + * sysdeps/generic/math_private.h (__exp1): Remove error argument. + (__halfulp): Remove. + (__slowpow): Remove. + * sysdeps/i386/fpu/halfulp.c: Delete file. + * sysdeps/i386/fpu/slowpow.c: Likewise. + * sysdeps/ia64/fpu/halfulp.c: Likewise. + * sysdeps/ia64/fpu/slowpow.c: Likewise. + * sysdeps/ieee754/dbl-64/e_exp.c (__exp1): Remove error argument, + improve comments and add error analysis. + * sysdeps/ieee754/dbl-64/e_pow.c (__ieee754_pow): Add error analysis. + (power1): Remove function: + (log1): Remove error argument, add error analysis. + (my_log2): Remove function. + * sysdeps/ieee754/dbl-64/halfulp.c: Delete file. + * sysdeps/ieee754/dbl-64/slowpow.c: Likewise. + * sysdeps/m68k/m680x0/fpu/halfulp.c: Likewise. + * sysdeps/m68k/m680x0/fpu/slowpow.c: Likewise. + * sysdeps/powerpc/power4/fpu/Makefile: Remove CPPFLAGS-slowpow.c. + * sysdeps/x86_64/fpu/libm-test-ulps: Set ULP of pow to 1. + * sysdeps/x86_64/fpu/multiarch/Makefile: Remove slowpow-fma.c, + slowpow-fma4.c, halfulp-fma.c, halfulp-fma4.c. + * sysdeps/x86_64/fpu/multiarch/e_pow-fma.c (__slowpow): Remove define. + * sysdeps/x86_64/fpu/multiarch/e_pow-fma4.c (__slowpow): Likewise. + * sysdeps/x86_64/fpu/multiarch/halfulp-fma.c: Delete file. + * sysdeps/x86_64/fpu/multiarch/halfulp-fma4.c: Likewise. + * sysdeps/x86_64/fpu/multiarch/slowpow-fma.c: Likewise. + * sysdeps/x86_64/fpu/multiarch/slowpow-fma4.c: Likewise. + +2018-02-11 Samuel Thibault + + * nscd/connections.c (RWLOCK_INITIALIZER): Define to + PTHREAD_RWLOCK_WRITER_NONRECURSIVE_INITIALIZER_NP or + +2018-02-10 Dmitry V. Levin + + [BZ #22433] + * sysdeps/unix/sysv/linux/aarch64/sys/ptrace.h (__ptrace_request): + Remove arm-specific PTRACE_GET_THREAD_AREA, PTRACE_GETHBPREGS, + and PTRACE_SETHBPREGS. + +2018-02-10 Zack Weinberg + + [BZ #22830] + * malloc/malloc.c (__malloc_stats): Restore stderr->_flags2 + correctly. + * malloc/tst-malloc-stats-cancellation.c: New test case. + * malloc/Makefile: Add new test case. + +2018-02-10 Wilco Dijkstra + + * sysdeps/aarch64/fpu/fpu_control.h: Add features.h to fix build error. + +2018-02-10 Joseph Myers + + * math/Makefile (libm-narrow-fns): Add add. + (libm-test-funcs-narrow): Likewise. + * math/Versions (GLIBC_2.28): Add narrowing add functions. + * math/bits/mathcalls-narrow.h (add): Use __MATHCALL_NARROW . + * math/gen-auto-libm-tests.c (test_functions): Add add. + * math/math-narrow.h (CHECK_NARROW_ADD): New macro. + (NARROW_ADD_ROUND_TO_ODD): Likewise. + (NARROW_ADD_TRIVIAL): Likewise. + * sysdeps/ieee754/float128/float128_private.h (__faddl): New + macro. + (__daddl): Likewise. + * sysdeps/ieee754/ldbl-opt/Makefile (libnldbl-calls): Add fadd and + dadd. + (CFLAGS-nldbl-dadd.c): New variable. + (CFLAGS-nldbl-fadd.c): Likewise. + * sysdeps/ieee754/ldbl-opt/Versions (GLIBC_2.28): Add + __nldbl_daddl. + * sysdeps/ieee754/ldbl-opt/nldbl-compat.h (__nldbl_daddl): New + prototype. + * manual/arith.texi (Misc FP Arithmetic): Document fadd, faddl, + daddl, fMaddfN, fMaddfNx, fMxaddfN and fMxaddfNx. + * math/auto-libm-test-in: Add tests of add. + * math/auto-libm-test-out-narrow-add: New generated file. + * math/libm-test-narrow-add.inc: New file. + * sysdeps/i386/fpu/s_f32xaddf64.c: Likewise. + * sysdeps/ieee754/dbl-64/s_f32xaddf64.c: Likewise. + * sysdeps/ieee754/dbl-64/s_fadd.c: Likewise. + * sysdeps/ieee754/float128/s_f32addf128.c: Likewise. + * sysdeps/ieee754/float128/s_f64addf128.c: Likewise. + * sysdeps/ieee754/float128/s_f64xaddf128.c: Likewise. + * sysdeps/ieee754/ldbl-128/s_daddl.c: Likewise. + * sysdeps/ieee754/ldbl-128/s_f64xaddf128.c: Likewise. + * sysdeps/ieee754/ldbl-128/s_faddl.c: Likewise. + * sysdeps/ieee754/ldbl-128ibm/s_daddl.c: Likewise. + * sysdeps/ieee754/ldbl-128ibm/s_faddl.c: Likewise. + * sysdeps/ieee754/ldbl-96/s_daddl.c: Likewise. + * sysdeps/ieee754/ldbl-96/s_faddl.c: Likewise. + * sysdeps/ieee754/ldbl-opt/nldbl-dadd.c: Likewise. + * sysdeps/ieee754/ldbl-opt/nldbl-fadd.c: Likewise. + * sysdeps/ieee754/soft-fp/s_daddl.c: Likewise. + * sysdeps/ieee754/soft-fp/s_fadd.c: Likewise. + * sysdeps/ieee754/soft-fp/s_faddl.c: Likewise. + * sysdeps/powerpc/fpu/libm-test-ulps: Update. + * sysdeps/mach/hurd/i386/libm.abilist: Likewise. + * sysdeps/unix/sysv/linux/aarch64/libm.abilist: Likewise. + * 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/riscv/rv64/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/tilegx32/libm.abilist: Likewise. + * sysdeps/unix/sysv/linux/tile/tilegx64/libm.abilist: Likewise. + * sysdeps/unix/sysv/linux/x86_64/64/libm.abilist: Likewise. + * sysdeps/unix/sysv/linux/x86_64/x32/libm.abilist: Likewise. + + * sysdeps/powerpc/powerpc64le/Makefile [$(subdir) = math] + (f128-pairs): New variable. + [$(subdir) = math] ($(foreach suf,$(all-object-suffixes),$(foreach + pair,$(f128-pairs),$(objpfx)test-$(pair)%$(suf)))): Add -mfloat128 + to CFLAGS. + [$(subdir) = math] ($(foreach pair,$(f128-pairs),test-$(pair)%)): + Also make tests add $(f128-loader-link) to gnulib-tests. + +2018-02-09 DJ Delorie + + [BZ #22827] + * sysdeps/unix/sysv/linux/riscv/readelflib.c (process_elf_file): Use + 64-bit ELF type for 64-bit ELF objects. + +2018-02-09 Joseph Myers + + * math/libm-test-driver.c (snan_tests_arg): New variable. + * math/libm-test-support.h (snan_tests_arg): New declaration. + * math/libm-test-support.c (enable_test): Check snan_tests_arg. + + * math/Makefile (test-type-pairs): New variable. + (test-type-pairs-f64xf128-yes): Likewise. + (tests): Add test-narrow-macros. + (libm-test-funcs-narrow): New variable. + (libm-test-c-narrow): Likewise. + (generated): Add $(libm-test-c-narrow). + (libm-tests-base-narrow): New variable. + (libm-tests-narrow): Likewise. + (libm-tests): Add $(libm-tests-narrow). + (libm-tests-for-type): Handle $(libm-tests-narrow). + (libm-test-c-narrow-obj): New variable. + ($(libm-test-c-narrow-obj)): New rule. + ($(foreach t,$(libm-tests-narrow),$(objpfx)$(t).c)): Likewise. + ($(foreach f,$(libm-test-funcs-narrow),$(objpfx)$(o)-$(f).o)): Use + $(o-iterator) to set dependencies and CFLAGS. + * math/gen-auto-libm-tests.c: Document use for narrowing + functions. + (output_for_one_input_case): Take argument NARROW. + (generate_output): Likewise. Update call to + output_for_one_input_case. + (main): Take --narrow option. Update call to generate_output. + * math/gen-libm-test.pl (_apply_lit): Take macro name as argument. + (apply_lit): Update call to _apply_lit. + (apply_arglit): New function. + (parse_args): Handle "a" arguments. + (parse_auto_input): Handle format names using ":". + * math/README.libm-test: Document "a" parameter type. + * math/libm-test-support.h (ARG_TYPE_MIN): New macro. + (ARG_TYPE_TRUE_MIN): Likewise. + (ARG_TYPE_MAX): Likwise. + (ARG_MIN_EXP): Likewise. + (ARG_MAX_EXP): Likewise. + (ARG_MANT_DIG): Likewise. + (TEST_COND_arg_ibm128): Likewise. + (TEST_COND_ibm128_libgcc): Define conditional on [ARG_FLOAT]. + (TEST_COND_arg_fmt): New macro. + (init_max_error): Update prototype. + * math/libm-test-support.c (test_ibm128): New variable. + (init_max_error): Take argument testing_ibm128 and set test_ibm128 + instead of using [TEST_COND_ibm128] conditional. + (test_exceptions): Use test_ibm128 instead of TEST_COND_ibm128. + * math/libm-test-driver.c (STR_ARG_FLOAT): New macro. + [TEST_NARROW] (TEST_MSG): New definition. + (arg_plus_zero): New macro. + (arg_minus_zero): Likewise. + (arg_plus_infty): Likewise. + (arg_minus_infty): Likewise. + (arg_qnan_value_pl): Likewise. + (arg_qnan_value): Likewise. + (arg_snan_value_pl): Likewise. + (arg_snan_value): Likewise. + (arg_max_value): Likewise. + (arg_min_value): Likewise. + (arg_min_subnorm_value): Likewise. + [ARG_FLOAT] (struct test_aa_f_data): New struct type. + (RUN_TEST_LOOP_aa_f): New macro. + (TEST_SUFF): New macro. + (TEST_SUFF_STR): Likewise. + [!TEST_MATHVEC] (VEC_SUFF): Don't define. + (TEST_COND_any_ibm128): New macro. + (START): Use TEST_SUFF and TEST_SUFF_STR in initializer for + this_func. Update call to init_max_error. + * math/test-double.h (FUNC_NARROW_PREFIX): New macro. + * math/test-float.h (FUNC_NARROW_PREFIX): Likewise. + * math/test-float128.h (FUNC_NARROW_PREFIX): Likewise. + * math/test-float32.h (FUNC_NARROW_PREFIX): Likewise. + * math/test-float32x.h (FUNC_NARROW_PREFIX): Likewise. + * math/test-float64.h (FUNC_NARROW_PREFIX): Likewise. + * math/test-float64x.h (FUNC_NARROW_PREFIX): Likewise. + * math/test-math-scalar.h (TEST_NARROW): Likewise. + * math/test-math-vector.h (TEST_NARROW): Likewise. + * math/test-arg-double.h: New file. + * math/test-arg-float128.h: Likewise. + * math/test-arg-float32x.h: Likewise. + * math/test-arg-float64.h: Likewise. + * math/test-arg-float64x.h: Likewise. + * math/test-arg-ldouble.h: Likewise. + * math/test-math-narrow.h: Likewise. + * math/test-narrow-macros.c: Likewise. + * sysdeps/ieee754/ldbl-opt/test-narrow-macros-ldbl-64.c: Likewise. + * sysdeps/ieee754/ldbl-opt/Makefile (tests): Add + test-narrow-macros-ldbl-64. + (CFLAGS-test-narrow-macros-ldbl-64.c): New variable. + + * math/bits/mathcalls-narrow.h: New file. + * include/bits/mathcalls-narrow.h: Likewise. + * math/math-narrow.h: Likewise. + * math/math.h (__MATHCALL_NARROW_ARGS_1): New macro. + (__MATHCALL_NARROW_ARGS_2): Likewise. + (__MATHCALL_NARROW_ARGS_3): Likewise. + (__MATHCALL_NARROW_NORMAL): Likewise. + (__MATHCALL_NARROW_REDIR): Likewise. + (__MATHCALL_NARROW): Likewise. + [__GLIBC_USE (IEC_60559_BFP_EXT)]: Repeatedly include + with _Mret_, _Marg_ and __MATHCALL_NAME + defined. + [__GLIBC_USE (IEC_60559_TYPES_EXT)]: Likewise. + * math/Makefile (headers): Add bits/mathcalls-narrow.h. + (libm-narrow-fns): New variable. + (libm-narrow-types-basic): Likewise. + (libm-narrow-types-ldouble-yes): Likewise. + (libm-narrow-types-float128-yes): Likewise. + (libm-narrow-types-float128-alias-yes): Likewise. + (libm-narrow-types): Likewise. + (libm-routines): Add narrowing functions. + * sysdeps/i386/fpu/fenv_private.h [__x86_64__] + (libc_feholdexcept_setroundf128): New macro. + [__x86_64__] (libc_feupdateenv_testf128): Likewise. + * sysdeps/ieee754/float128/float128_private.h: Include + . + [libc_feholdexcept_setroundf128] (libc_feholdexcept_setroundl): + Undefine and redefine. + [libc_feupdateenv_testf128] (libc_feupdateenv_testl): Likewise. + (libm_alias_float_ldouble): Undefine and redefine. + (libm_alias_double_ldouble): Likewise. + + * math/Makefile [$(PERL) != no] (libm-test-incs): Remove variable. + +2018-02-09 Wilco Dijkstra + + * sysdeps/aarch64/fpu/fpu_control.h: Use builtins for accessing + FPCR/FPSR. + +2018-02-09 Rical Jasan + + * manual/creature.texi: Convert references to gcc.info to gcc. + * manual/stdio.texi: Likewise. + * manual/string.texi: Likewise. + +2018-02-07 Joseph Myers + + [BZ #17979] + * posix/bits/types.h (__int_least8_t): New typedef. + (__uint_least8_t): Likewise. + (__int_least16_t): Likewise. + (__uint_least16_t): Likewise. + (__int_least32_t): Likewise. + (__uint_least32_t): Likewise. + (__int_least64_t): Likewise. + (__uint_least64_t): Likewise. + * sysdeps/generic/stdint.h (int_least8_t): Define using + __int_least8_t. + (int_least16_t): Define using __int_least16_t. + (int_least32_t): Define using __int_least32_t. + (int_least64_t): Define using __int_least64_t. + (uint_least8_t): Define using __uint_least8_t. + (uint_least16_t): Define using __uint_least16_t. + (uint_least32_t): Define using __uint_least32_t. + (uint_least64_t): Define using __uint_least64_t. + * wcsmbs/uchar.h: Include . + (char16_t): Define using __uint_least16_t conditional only on + [!__USE_ISOCXX11]. + (char32_t): Define using __uint_least32_t conditional only on + [!__USE_ISOCXX11]. + * wcsmbs/test-char-types.c: New file. + * wcsmbs/Makefile (tests): Add test-char-types. + + * scripts/build-many-glibcs.py (Context.checkout): Default MPFR + version to 4.0.1. + +2018-02-07 Zack Weinberg + + * bits/_G_config.h: Move back to sysdeps/generic/_G_config.h. + Delete all contents except for definitions of _G_HAVE_MMAP and + _G_HAVE_MREMAP. Add commentary explaining those two symbols. + * sysdeps/unix/sysv/linux/bits/_G_config.h: Move back to + sysdeps/unix/sysv/linux/_G_config.h. Make same content + change as above. + + * libio/libio.h: Don't include bits/_G_config.h here. + Include stddef.h with __need_wchar_t defined. Include + bits/types/__mbstate_t.h, bits/types/wint_t.h, and gconv.h. + Define _IO_iconv_t here, directly. + Don't define _IO_HAVE_ST_BLKSIZE. + * libio/libioP.h: Include _G_config.h here. Move include of + shlib-compat.h up with rest of includes. Simplify conditionals + controlling definition of _IO_JUMPS_OFFSET. + + * csu/init.c: Remove always-true #if around entire file. + Don't include stdio.h. Set _IO_stdin_used to hardwired + constant 0x20001, and update commentary. + * include/stdio.h, sysdeps/ieee754/ldbl-opt/nldbl-compat.h: + Replace all uses of _G_va_list with __gnuc_va_list. + * libio/filedoalloc.c: Use #if defined _STATBUF_ST_BLKSIZE + instead of #if _IO_HAVE_ST_BLKSIZE. + * libio/fileops.c: Test _G_HAVE_MREMAP with #if, not #ifdef. + * libio/iofdopen.c, libio/iofopen.c: Test _G_HAVE_MMAP with #if, + not #ifdef. + + * libio/bits/libio.h: Move back to libio/libio.h and adjust + multiple-include guard to match. + Merge contents of libio/bits/libio-ldbl.h and include/libio.h + into this file. + Remove preprocessor conditionals that are always true and/or + redundant to other preprocessor conditionals in the same nest. + Include shlib-compat.h unconditionally. + Error out if _LIBC is not defined, or if _ISOMAC is defined, + or if _IO_MTSAFE_IO is defined but _IO_lock_t_defined is not + defined after including stdio.h. + Use __BEGIN_DECLS/__END_DECLS. + + * libio/bits/libio-ldbl.h, include/bits/libio.h: Delete file. + * include/stdio.h, libio/iolibio.h, libio/libioP.h: Include + libio.h as rather than as . + +2018-02-07 Zack Weinberg + + * libio/bits/types/__fpos_t.h, libio/bits/types/__fpos64_t.h: + New single-type headers split from _G_config.h. + * libio/bits/types/cookie_io_functions_t.h + * libio/bits/types/struct_FILE.h + New single-type headers split from libio.h. + + * libio/Makefile: Install the above new headers. Don't install + libio.h, _G_config.h, bits/libio.h, bits/_G_config.h, or + bits/libio-ldbl.h. + * libio/_G_config.h, libio/libio.h: Delete file. + + * libio/bits/libio.h: Remove improper-inclusion guard. + Include stdio.h and don't repeat anything that it does. + Define _IO_fpos_t as __fpos_t, _IO_fpos64_t as __fpos64_t, + _IO_BUFSIZ as BUFSIZ, _IO_va_list as __gnuc_va_list, + __io_read_fn as cookie_read_function_t, + __io_write_fn as cookie_write_function_t, + __io_seek_fn as cookie_seek_function_t, + __io_close_fn as cookie_close_function_t, + and _IO_cookie_io_functions_t as cookie_io_functions_t. + Define _STDIO_USES_IOSTREAM, __HAVE_COLUMN, and _IO_file_flags + here, in the "compatibility defines" section. Remove an #if 0 + block. Use the "body" macros from bits/types/struct_FILE.h to + define _IO_getc_unlocked, _IO_putc_unlocked, _IO_feof_unlocked, + and _IO_ferror_unlocked. + Move prototypes of __uflow and __overflow... + + * libio/stdio.h: ...here. Don't include bits/libio.h. + Don't define _STDIO_USES_IOSTREAM. Get __gnuc_va_list + directly from stdarg.h. Include bits/types/__fpos_t.h, + bits/types/__fpos64_t.h, bits/types/struct_FILE.h, + and, when __USE_GNU, bits/types/cookie_io_functions_t.h. + Use __gnuc_va_list, not _G_va_list; __fpos_t, not _G_fpos_t; + __fpos64_t, not _G_fpos64_t; FILE, not struct _IO_FILE; + cookie_io_functions_t, not _IO_cookie_io_functions_t; + __ssize_t, not _IO_ssize_t. Unconditionally define + BUFSIZ as 8192 and EOF as (-1). + + * libio/bits/stdio.h: Add multiple-include guard. Use the "body" + macros from bits/types/struct_FILE.h instead of _IO_* macros + from libio.h; use __gnuc_va_list instead of va_list and __ssize_t + instead of _IO_ssize_t. + * libio/bits/stdio2.h: Similarly. + + * libio/iolibio.h: Add multiple-include guard. + Include bits/libio.h after stdio.h. + * libio/libioP.h: Add multiple-include guard. + Include stdio.h and bits/libio.h before iolibio.h. + + * include/bits/types/__fpos_t.h, include/bits/types/__fpos64_t.h + * include/bits/types/cookie_io_functions_t.h + * include/bits/types/struct_FILE.h: New wrappers. + + * bits/_G_config.h, sysdeps/unix/sysv/linux/_G_config.h: + Get definitions of _G_fpos_t and _G_fpos64_t from + bits/types/__fpos_t.h and bits/types/__fpos64_t.h + respectively. Remove improper-inclusion guards. + + * conform/data/stdio.h-data: Update expectations of va_list. + * scripts/check-installed-headers.sh: Remove special case for + libio.h and _G_config.h. + +2018-02-07 Joseph Myers + + [BZ #15105] + [BZ #19463] + * include/sys/sysmacros.h [!_ISOMAC] + (__SYSMACROS_NEED_IMPLEMENTATION): Define macro. + [!_SYS_SYSMACROS_H_WRAPPER && !_ISOMAC] + (_SYS_SYSMACROS_H_WRAPPER): Likewise. + [!_SYS_SYSMACROS_H_WRAPPER && !_ISOMAC] (gnu_dev_major): Use + libc_hidden_proto. + [!_SYS_SYSMACROS_H_WRAPPER && !_ISOMAC] (gnu_dev_minor): Likewise. + [!_SYS_SYSMACROS_H_WRAPPER && !_ISOMAC] (gnu_dev_makedev): + Likewise. + [!_SYS_SYSMACROS_H_WRAPPER && !_ISOMAC] (__SYSMACROS_DECL_TEMPL): + Undefine and redefine to add use __gnu_dev_ prefix. + [!_SYS_SYSMACROS_H_WRAPPER && !_ISOMAC] (__SYSMACROS_IMPL_TEMPL): + Likewise. + [!_SYS_SYSMACROS_H_WRAPPER && !_ISOMAC] (__gnu_dev_major): Declare + and define as hidden inline function. + [!_SYS_SYSMACROS_H_WRAPPER && !_ISOMAC] (__gnu_dev_minor): + Likewise. + [!_SYS_SYSMACROS_H_WRAPPER && !_ISOMAC] (__gnu_dev_makedev): + Likewise. + * misc/makedev.c (OUT_OF_LINE_IMPL_TEMPL): Use __gnu_dev_ prefix. + (gnu_dev_major): Use weak_alias and libc_hidden_weak. + (gnu_dev_minor): Likewise. + (gnu_dev_makedev): Likewise. + * csu/check_fds.c (check_one_fd): Use __gnu_dev_makedev instead of + makedev. + * posix/wordexp.c (exec_comm_child): Likewise. + * sysdeps/mach/hurd/xmknodat.c (__xmknodat): Use __gnu_dev_minor + instead of minor and __gnu_dev_major instead of major. + * sysdeps/unix/sysv/linux/device-nrs.h (DEV_TTY_P): Use + __gnu_dev_major instead of major. + * sysdeps/unix/sysv/linux/pathconf.c (distinguish_extX): Use + __gnu_dev_major instead of gnu_dev_major and __gnu_dev_minor + instead of gnu_dev_minor. + * sysdeps/unix/sysv/linux/ptsname.c (MASTER_P): Likewise. + (SLAVE_P): Likewise. + (__ptsname_internal): Use __gnu_dev_minor instead of minor. + * sysdeps/unix/sysv/linux/ttyname.h (is_pty): Use __gnu_dev_major + instead of major. + + [BZ #21313] + * locale/weight.h (findidx): Disable -Wmaybe-uninitialized for -Os + in another place. + * locale/weightwc.h (findidx): Likewise. + +2018-02-07 Wilco Dijkstra + + * manual/probes.texi (slowlog): Delete documentation of removed probe. + (slowlog_inexact): Likewise + * sysdeps/ieee754/dbl-64/e_log.c (__ieee754_log): Remove slow paths. + * sysdeps/ieee754/dbl-64/ulog.h: Remove unused declarations. + +2018-02-07 Igor Gnatenko + + [BZ #22797] + * sysdeps/unix/sysv/linux/bits/mman-shared.h (pkey_get): Add + missing second underscore to parameter name. + +2018-02-06 Joseph Myers + + [BZ #14508] + [BZ #15512] + [BZ #17082] + [BZ #20530] + * bits/byteswap.h: Update file comment. Do not include + . + (__bswap_constant_16): Cast result to __uint16_t. Use signed 0xff + constant. + (__bswap_16): Define as inline function. + (__bswap_constant_32): Reformat definition. + (__bswap_32): Always define as inline function, not macro, using + __uint32_t. Use __builtin_bswap32 if [__GNUC_PREREQ (4, 3)], + otherwise __bswap_constant_32. + (__bswap_constant_64): Reformat definition. Do not use + __extension__ here. + (__bswap_64): Always define as inline function, not macro. Use + __extension__ on function definition. Use __builtin_bswap64 if + [__GNUC_PREREQ (4, 3)], otherwise __bswap_constant_64. + * string/test-endian-file-scope.c: New file. + * string/test-endian-sign-conversion.c: Likewise. + * string/Makefile (headers): Remove bits/byteswap-16.h. + (tests): Add test-endian-file-scope and + test-endian-sign-conversion. + (CFLAGS-test-endian-sign-conversion.c): New variable. + * bits/byteswap-16.h: Remove file. + * sysdeps/ia64/bits/byteswap-16.h: Likewise. + * sysdeps/ia64/bits/byteswap.h: Likewise. + * sysdeps/m68k/bits/byteswap.h: Likewise. + * sysdeps/s390/bits/byteswap-16.h: Likewise. + * sysdeps/s390/bits/byteswap.h: Likewise. + * sysdeps/tile/bits/byteswap.h: Likewise. + * sysdeps/x86/bits/byteswap-16.h: Likewise. + * sysdeps/x86/bits/byteswap.h: Likewise. + + [BZ #17721] + * misc/sys/cdefs.h [!__GNUC__ && (__cplusplus || (__STDC_VERSION__ + && __STDC_VERSION__ >= 199901L))] (__inline): Define to inline. + [!__GNUC_PREREQ (2,92) && __STDC_VERSION__ && __STDC_VERSION__ >= + 199901L] (__restrict): Define to restrict. + + [BZ #19667] + * string/testcopy.c: Include . Do not include + . Use . + (main): Rename to do_test. Make static. Use xmalloc instead of + malloc. + + [BZ #13575] + * posix/bits/posix1_lim.h: Include . + [!SSIZE_MAX && !(__WORDSIZE == 64 || __WORDSIZE32_SIZE_ULONG)] + (SSIZE_MAX): Define to INT_MAX. + * posix/test-ssize-max.c: New file. + * posix/Makefile (tests): Add test-ssize-max. + + [BZ #19668] + * sysdeps/powerpc/fpu/tst-setcontext-fpscr.c: Include + . Do not include . + (query_auxv): Use xmalloc instead of malloc. + + [BZ #14553] + * posix/sys/types.h (loff_t): Only define for [__USE_MISC]. + * sysdeps/unix/sysv/linux/sys/quota.h (dqoff): Use __loff_t + instead of loff_t. + +2018-02-06 Florian Weimer + + [BZ #18023] + * sysdeps/unix/sysv/linux/getlogin_r.c (__getlogin_r_loginuid): + Use scratch_buffer instead of extend_alloca. + +2018-02-06 Zack Weinberg + + * libio/stdio.h: Don't define getc or putc as macros. + * libio/bits/stdio.h (getchar, putchar): Use getc and putc, + not _IO_getc and _IO_putc. + + * stdio-common/tstgetln.c: Don't redefine FILE, va_list, or BUFSIZ. + * stdio-common/tstgetln.c: Don't redefine ssize_t. + +2018-02-06 Joseph Myers + + * sysdeps/gnu/netinet/tcp.h (TCP_FASTOPEN_KEY): New macro. + (TCP_FASTOPEN_NO_COOKIE): Likewise. + + * sysdeps/unix/sysv/linux/bits/in.h (IPV6_FREEBIND): New macro. + + [BZ #14890] + * elf/elf.h (NT_PRFPREG): New macro. + (NT_S390_VXRS_LOW): Likewise. + (NT_S390_VXRS_HIGH): Likewise. + (NT_S390_GS_CB): Likewise. + (NT_S390_GS_BC): Likewise. + (NT_S390_RI_CB): Likewise. + + * sysdeps/unix/sysv/linux/aarch64/bits/mman.h [__USE_MISC] + (MAP_SYNC): New macro. + * sysdeps/unix/sysv/linux/arm/bits/mman.h [__USE_MISC] (MAP_SYNC): + Likewise. + * sysdeps/unix/sysv/linux/ia64/bits/mman.h [__USE_MISC] + (MAP_SYNC): Likewise. + * sysdeps/unix/sysv/linux/m68k/bits/mman.h [__USE_MISC] + (MAP_SYNC): Likewise. + * sysdeps/unix/sysv/linux/microblaze/bits/mman.h [__USE_MISC] + (MAP_SYNC): Likewise. + * sysdeps/unix/sysv/linux/nios2/bits/mman.h [__USE_MISC] + (MAP_SYNC): Likewise. + * sysdeps/unix/sysv/linux/riscv/bits/mman.h [__USE_MISC] + (MAP_SYNC): Likewise. + * sysdeps/unix/sysv/linux/s390/bits/mman.h [__USE_MISC] + (MAP_SYNC): Likewise. + * sysdeps/unix/sysv/linux/sh/bits/mman.h [__USE_MISC] (MAP_SYNC): + Likewise. + * sysdeps/unix/sysv/linux/x86/bits/mman.h [__USE_MISC] (MAP_SYNC): + Likewise. + + * sysdeps/unix/sysv/linux/bits/mman-linux.h [__USE_MISC] + (MAP_SHARED_VALIDATE): New macro. + * sysdeps/unix/sysv/linux/hppa/bits/mman.h [__USE_MISC] + (MAP_SHARED_VALIDATE): Likewise. + +2018-02-05 H.J. Lu + + * elf/dl-addr.c (determine_info): Use ADDRIDX with DT_GNU_HASH. + * elf/dl-lookup.c (_dl_setup_hash): Likewise. + * elf/get-dynamic-info.h (elf_get_dynamic_info): Likewise. + +2018-02-05 H.J. Lu + + * elf/elf.h (DT_SYMTAB_SHNDX): New. Set to 34. + (DT_NUM): Updated to 35. + +2018-02-05 H.J. Lu + + * sysdeps/i386/dl-machine.h (elf_machine_rel): Replace + __builtin_expect with __glibc_likely and __glibc_unlikely. + (elf_machine_rela): Likewise. + (elf_machine_lazy_rel): Likewise. + +2018-02-05 H.J. Lu + + * sysdeps/x86_64/dl-machine.h (elf_machine_rela): Replace + __builtin_expect with __glibc_likely and __glibc_unlikely. + (elf_machine_lazy_rel): Likewise. + +2018-02-05 H.J. Lu + + [BZ #22638] + * sysdeps/sparc/sparc32/start.S (_start): Check PIC instead of + SHARED. + * sysdeps/sparc/sparc64/start.S (_start): Likewise. + +2018-02-05 Andreas Schwab + + [BZ #22761] + * assert/assert-perr.c (__assert_perror_fail): Append %n to format + string. + +2018-02-04 Samuel Thibault + + * stdlib/test-atexit-race-common.c [!defined PTHREAD_STACK_MIN]: Do + not check against PTHREAD_STACK_MIN. + +2018-02-02 Sean McKean + + [BZ #22735] + * time/time.h (clock): Reference CLOCKS_PER_SEC in comment. + +2018-02-02 Florian Weimer + + [BZ #22753] + * sysdeps/posix/preadv2.c (preadv2): Handle offset == -1. + * sysdeps/posix/preadv64v2.c (preadv64v2): Likewise. + * sysdeps/posix/pwritev2.c (pwritev2): Likewise. + * sysdeps/posix/pwritev64v2.c (pwritev64v2): Likweise. + * 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): Likweise. + * manual/llio.texi (Scatter-Gather): Mention offset -1. + * misc/tst-preadvwritev-common.c (do_test_without_offset): New. + * misc/tst-preadvwritev2.c (do_test): Call it. + * misc/tst-preadvwritev64v2.c (do_test): Likewise. + +2018-02-02 Siddhesh Poyarekar + + * sysdeps/aarch64/memcmp.S: Use L() macro for labels. + + * benchtests/bench-memcmp.c: Print json instead of plain text. + + * benchtests/bench-memcmp.c (do_test): Call realloc_buf for + every test run. + +2018-02-01 Joseph Myers + + * sysdeps/unix/sysv/linux/syscall-names.list: Update kernel + version to 4.15. + (s390_sthyi): New syscall. + + * sysdeps/generic/ldbl-classify-compat.h: New file. + * sysdeps/arm/ldbl-classify-compat.h: Likewise. + * sysdeps/m68k/coldfire/ldbl-classify-compat.h: Likewise. + * sysdeps/microblaze/ldbl-classify-compat.h: Likewise. + * sysdeps/mips/ldbl-classify-compat.h: Likewise. + * sysdeps/nios2/ldbl-classify-compat.h: Likewise. + * sysdeps/sh/ldbl-classify-compat.h: Likewise. + * sysdeps/ieee754/dbl-64/s_finite.c: Include + . + [LDBL_CLASSIFY_COMPAT]: Test value, not whether defined. + * sysdeps/ieee754/dbl-64/s_isinf.c: Include + . + [LDBL_CLASSIFY_COMPAT]: Test value, not whether defined. + * sysdeps/ieee754/dbl-64/s_isnan.c: Include + . + [LDBL_CLASSIFY_COMPAT]: Test value, not whether defined. + * sysdeps/ieee754/dbl-64/wordsize-64/s_finite.c: Include + . + [LDBL_CLASSIFY_COMPAT]: Test value, not whether defined. + * sysdeps/ieee754/dbl-64/wordsize-64/s_isinf.c: Include + . + [LDBL_CLASSIFY_COMPAT]: Test value, not whether defined. + * sysdeps/ieee754/dbl-64/wordsize-64/s_isnan.c: Include + . + [LDBL_CLASSIFY_COMPAT]: Test value, not whether defined. + * sysdeps/arm/math_private.h (LDBL_CLASSIFY_COMPAT): Remove macro. + * sysdeps/mips/math_private.h (LDBL_CLASSIFY_COMPAT): Likewise. + * sysdeps/m68k/coldfire/math_private.h: Remove file. + * sysdeps/microblaze/math_private.h: Likewise. + * sysdeps/nios2/math_private.h: Likewise. + * sysdeps/sh/math_private.h: Likewise. + + * sysdeps/m68k/coldfire/fpu/math_private.h: Move to .... + * sysdeps/m68k/coldfire/math_private.h: ... here. + * sysdeps/m68k/coldfire/nofpu/math_private.h: Remove file. + * sysdeps/tile/math_private.h: Likewise. + * sysdeps/microblaze/math_private.h (libc_feholdexcept_setround): + Remove macro. + * sysdeps/nios2/math_private.h (libc_feholdexcept_setround): + Likewise. + + * sysdeps/m68k/coldfire/nofpu/math_private.h (libc_fesetround): + Remove macro. + (libc_fetestexcept): Likewise. + (libc_feupdateenv_test): Likewise. + * sysdeps/microblaze/math_private.h (libc_fesetround): Likewise. + (libc_fetestexcept): Likewise. + (libc_feupdateenv_test): Likewise. + * sysdeps/nios2/math_private.h (libc_fesetround): Likewise. + (libc_fetestexcept): Likewise. + (libc_feupdateenv_test): Likewise. + * sysdeps/tile/math_private.h (libc_fesetround): Likewise. + (libc_fetestexcept): Likewise. + (libc_feupdateenv_test): Likewise. + + * sysdeps/generic/math_private.h + [!FE_HAVE_ROUNDING_MODES && FE_ALL_EXCEPT == 0] (feholdexcept): + New inline function. + [!FE_HAVE_ROUNDING_MODES && FE_ALL_EXCEPT == 0] (__feholdexcept): + Likewise. + + * include/fenv.h [!_ISOMAC && !FE_TONEAREST]: Give #error. + [!_ISOMAC] (FE_HAVE_ROUNDING_MODES): New macro. + * sysdeps/generic/math_private.h + [!FE_HAVE_ROUNDING_MODES && FE_ALL_EXCEPT == 0] (fegetenv): New + inline function. + [!FE_HAVE_ROUNDING_MODES && FE_ALL_EXCEPT == 0] (__fegetenv): + Likewise. + [!FE_HAVE_ROUNDING_MODES && FE_ALL_EXCEPT == 0] (fesetenv): + Likewise. + [!FE_HAVE_ROUNDING_MODES && FE_ALL_EXCEPT == 0] (__fesetenv): + Likewise. + [!FE_HAVE_ROUNDING_MODES && FE_ALL_EXCEPT == 0] (feupdateenv): + Likewise. + [!FE_HAVE_ROUNDING_MODES && FE_ALL_EXCEPT == 0] (__feupdateenv): + Likewise. + [!FE_HAVE_ROUNDING_MODES] (fegetround): Likewise. + [!FE_HAVE_ROUNDING_MODES] (__fegetround): Likewise. + [!FE_HAVE_ROUNDING_MODES] (fesetround): Likewise. + [!FE_HAVE_ROUNDING_MODES] (__fesetround): Likewise. + * sysdeps/tile/math_private.h (fegetenv): Remove inline function. + (__fegetenv): Likewise. + (fesetenv): Likewise. + (__fesetenv): Likewise. + (feupdateenv): Likewise. + (__feupdateenv): Likewise. + (fegetround): Likewise. + (__fegetround): Likewise. + (fesetround): Likewise. + (__fesetround): Likewise. + + * sysdeps/generic/math_private.h [FE_ALL_EXCEPT == 0] + (feraiseexcept): New macro. + [FE_ALL_EXCEPT == 0] (__feraiseexcept): Likewise. + * sysdeps/m68k/coldfire/nofpu/math_private.h (feraiseexcept): + Remove macro. + (__feraiseexcept): Likewise. + (feclearexcept): Likewise. + * sysdeps/microblaze/math_private.h (feraiseexcept): Likewise. + (__feraiseexcept): Likewise. + (feclearexcept): Likewise. + * sysdeps/nios2/math_private.h (feraiseexcept): Likewise. + (__feraiseexcept): Likewise. + (feclearexcept): Likewise. + * sysdeps/tile/math_private.h (feraiseexcept): Likewise. + (__feraiseexcept): Likewise. + (feclearexcept): Likewise. + (fetestexcept): Likewise. + + * sysdeps/m68k/coldfire/math-tests.h: New file. + + * sysdeps/m68k/fpu/bits/fenv.h: Move to .... + * sysdeps/m68k/bits/fenv.h: ... here. + [!__HAVE_68881__ && !__HAVE_FPU__ && !__mcffpu__] (FE_INEXACT): Do + not define. + [!__HAVE_68881__ && !__HAVE_FPU__ && !__mcffpu__] (FE_DIVBYZERO): + Likewise. + [!__HAVE_68881__ && !__HAVE_FPU__ && !__mcffpu__] (FE_UNDERFLOW): + Likewise. + [!__HAVE_68881__ && !__HAVE_FPU__ && !__mcffpu__] (FE_OVERFLOW): + Likewise. + [!__HAVE_68881__ && !__HAVE_FPU__ && !__mcffpu__] (FE_INVALID): + Likewise. + [!__HAVE_68881__ && !__HAVE_FPU__ && !__mcffpu__] (FE_ALL_EXCEPT): + Define to 0. + [!__HAVE_68881__ && !__HAVE_FPU__ && !__mcffpu__] + (__FE_UNDEFINED): New enum constant. + [!__HAVE_68881__ && !__HAVE_FPU__ && !__mcffpu__] (FE_TOWARDZERO): + Do not define. + [!__HAVE_68881__ && !__HAVE_FPU__ && !__mcffpu__] (FE_DOWNWARD): + Likewise. + [!__HAVE_68881__ && !__HAVE_FPU__ && !__mcffpu__] (FE_UPWARD): + Likewise. + [!__HAVE_68881__ && !__HAVE_FPU__ && !__mcffpu__] (fenv_t): Define + to match generic bits/fenv.h. + [!__HAVE_68881__ && !__HAVE_FPU__ && !__mcffpu__] (FE_NOMASK_ENV): + Do not define. + + * soft-fp/double.h (union _FP_UNION_D): Do not use attribute + packed on bits. + * soft-fp/extended.h (union _FP_UNION_E): Likewise. + * soft-fp/half.h (union _FP_UNION_H): Likewise. + * soft-fp/quad.h (union _FP_UNION_Q): Likewise. + * soft-fp/single.h (union _FP_UNION_S): Likewise. + +2018-02-01 Carlos O'Donell + Ramin Seyed-Moussavi + Joseph Myers + + [BZ #21314] + * sysdeps/ieee754/dbl-64/s_log1p.c: Include . + (__log1p): Disable -Wmaybe-uninitialized for -Os around + computation using c. + * sysdeps/ieee754/flt-32/s_log1pf.c: Include . + (__log1pf): Disable -Wmaybe-uninitialized for -Os around + computation using c. + +2018-02-01 Dmitry V. Levin + + * version.h (RELEASE): Set to "development". + (VERSION): Set to "2.27.9000". + * NEWS (2.28): New section. + + * version.h (RELEASE): Set to "stable". + (VERSION): Set to "2.27". + * include/features.h (__GLIBC_MINOR__): Set to 2.27. + + * NEWS: Add the list of bugs fixed in 2.27. + +2018-02-01 Adhemerval Zanella + + * stdlib/test-atexit-race-common.c (do_test): Check stack size + against PTHREAD_STACK_MIN. + +2018-02-01 Dmitry V. Levin + + * manual/contrib.texi (Palmer Dabbelt, Arjun Shankar, Florian Weimer): + New entries. + (Rafał Lużyński, Andreas Schwab): Update. + +2018-02-01 Rafał Lużyński + + [BZ #10871] + * NEWS: List the languages which actually use the alternative + months feature in this release. Also explain that "alt_mon" and + "ab_alt_mon" are optional. + +2018-01-31 Il'ya Malakhov + + [BZ #22765] + * crypt/badsalttest.c (do_test): Set cd.initialized to 0. + +2018-01-31 Dmitry V. Levin + + * manual/install.texi (Tools for Compilation): Update the newest + versions of gcc, binutils, texinfo, gawk, bison, and sed. + * INSTALL: Regenerated. + +2018-01-30 Samuel Thibault + + * sysdeps/pthread/allocalim.h (__libc_use_alloca): Use __glibc_likely + instead of __builtin_expect. + +2018-01-30 Florian Weimer + + * nss/bug17079.c (do_test): Use nss_files only for reading passwd + data. + * nss/tst-nss-getpwent.c (do_test): Likewise. + +2018-01-30 Rafał Lużyński + + [BZ #10871] + * localedata/locales/hr_HR (mon): Rename to... + (alt_mon): This. + (mon): Import from CLDR (genitive case). + (d_t_fmt): Update the comment. + +2018-01-29 Andreas Schwab + + * sysdeps/posix/fpathconf.c (__fpathconf): Verify the values of + _POSIX_CHOWN_RESTRICTED, _POSIX_NO_TRUNC, _POSIX_VDISABLE. + * sysdeps/posix/pathconf.c (__pathconf): Likewise. + +2018-01-29 Samuel Thibault + + * mach/Versions: Fix version when __mach_host_self_ was added. + * hurd/Versions: Fix version when _hurd_exec_paths was added. + * sysdeps/mach/hurd/i386/ld.abilist: New file. + * sysdeps/mach/hurd/i386/libBrokenLocale.abilist: New file. + * sysdeps/mach/hurd/i386/libanl.abilist: New file. + * sysdeps/mach/hurd/i386/libc.abilist: New file. + * sysdeps/mach/hurd/i386/libcrypt.abilist: New file. + * sysdeps/mach/hurd/i386/libdl.abilist: New file. + * sysdeps/mach/hurd/i386/libm.abilist: New file. + * sysdeps/mach/hurd/i386/libnsl.abilist: New file. + * sysdeps/mach/hurd/i386/libresolv.abilist: New file. + * sysdeps/mach/hurd/i386/librt.abilist: New file. + * sysdeps/mach/hurd/i386/libutil.abilist: New file. + * sysdeps/pthread/allocalim.h (__libc_use_alloca): Commute operands of + || to respect codestyle. + * libio/tst-memstream3.c (_FWRITE): Rename to FWRITE_FUNC. + (do_test_bz20181): Rename accordingly. + * malloc/malloc.c: Include . + (assert): Do not define. + [!defined NDEBUG] (__assert_fail): Define to __malloc_assert. + * bits/fcntl.h: Fix comment for FREAD and FWRITE. + * sysdeps/mach/hurd/bits/fcntl.h: Likewise. + * sysdeps/mach/hurd/hp-timing.h: New file. + * sysdeps/mach/hurd/i386/tlsdesc.sym: New file. + +2018-01-29 Darius Rad + + * sysdeps/unix/sysv/linux/riscv/ipc_priv.h: New file. + +2018-01-29 Palmer Dabbelt + + * sysdeps/init_array/crti.S (.section .init_array): Add + PREINIT_FUNCTION when defined. + * manual/math.texi: RISC-V supports _Float128 and _Float64x. + * config.h.in: Regenerate. + * manual/platform.texi: Add RISC-V documenation for + __riscv_flush_icache. + * sysdeps/riscv/__longjmp.S: New file. + * sysdeps/riscv/backtrace.c: Likewise. + * sysdeps/riscv/bits/endian.h: Likewise. + * sysdeps/riscv/bits/setjmp.h: Likewise. + * sysdeps/riscv/bits/wordsize.h: Likewise. + * sysdeps/riscv/bsd-_setjmp.c: Likewise. + * sysdeps/riscv/bsd-setjmp.c: Likewise. + * sysdeps/riscv/dl-trampoline.S: Likewise. + * sysdeps/riscv/gccframe.h: Likewise. + * sysdeps/riscv/jmpbuf-offsets.h: Likewise. + * sysdeps/riscv/jmpbuf-unwind.h: Likewise. + * sysdeps/riscv/machine-gmon.h: Likewise. + * sysdeps/riscv/memusage.h: Likewise. + * sysdeps/riscv/setjmp.S: Likewise. + * sysdeps/riscv/sys/asm.h: Likewise. + * sysdeps/riscv/tls-macros.h: Likewise. + * sysdeps/riscv/dl-tls.h: New file. + * sysdeps/riscv/libc-tls.c: Likewise. + * sysdeps/riscv/nptl/tcb-offsets.sym: Likewise. + * sysdeps/riscv/nptl/tls.h: Likewise. + * sysdeps/riscv/stackinfo.h: Likewise. + * sysdeps/riscv/bits/fenv.h: New file. + * sysdeps/riscv/e_sqrtl.c: Likewise. + * sysdeps/riscv/fpu_control.h: Likewise. + * sysdeps/riscv/math-tests.h: Likewise. + * sysdeps/riscv/nofpu/Implies: Likewise. + * sysdeps/riscv/sfp-machine.h: Likewise. + * sysdeps/riscv/tininess.h: Likewise. + * sysdeps/riscv/rv64/rvd/s_ceil.c: New file. + * sysdeps/riscv/rv64/rvd/s_floor.c: Likewise. + * sysdeps/riscv/rv64/rvd/s_llrint.c: Likewise. + * sysdeps/riscv/rv64/rvd/s_llround.c: Likewise. + * sysdeps/riscv/rv64/rvd/s_lrint.c: Likewise. + * sysdeps/riscv/rv64/rvd/s_lround.c: Likewise. + * sysdeps/riscv/rv64/rvd/s_nearbyint.c: Likewise. + * sysdeps/riscv/rv64/rvd/s_rint.c: Likewise. + * sysdeps/riscv/rv64/rvd/s_round.c: Likewise. + * sysdeps/riscv/rv64/rvd/s_roundeven.c: Likewise. + * sysdeps/riscv/rv64/rvd/s_trunc.c: Likewise. + * sysdeps/riscv/rv64/rvf/s_llrintf.c: Likewise. + * sysdeps/riscv/rv64/rvf/s_llroundf.c: Likewise. + * sysdeps/riscv/rv64/rvf/s_lrintf.c: Likewise. + * sysdeps/riscv/rv64/rvf/s_lroundf.c: Likewise. + * sysdeps/riscv/rvd/e_sqrt.c: Likewise. + * sysdeps/riscv/rvd/s_copysign.c: Likewise. + * sysdeps/riscv/rvd/s_finite.c: Likewise. + * sysdeps/riscv/rvd/s_fma.c: Likewise. + * sysdeps/riscv/rvd/s_fmax.c: Likewise. + * sysdeps/riscv/rvd/s_fmin.c: Likewise. + * sysdeps/riscv/rvd/s_fpclassify.c: Likewise. + * sysdeps/riscv/rvd/s_isinf.c: Likewise. + * sysdeps/riscv/rvd/s_isnan.c: Likewise. + * sysdeps/riscv/rvd/s_issignaling.c: Likewise. + * sysdeps/riscv/rvf/e_sqrtf.c: Likewise. + * sysdeps/riscv/rvf/fclrexcpt.c: Likewise. + * sysdeps/riscv/rvf/fegetenv.c: Likewise. + * sysdeps/riscv/rvf/fegetmode.c: Likewise. + * sysdeps/riscv/rvf/fegetround.c: Likewise. + * sysdeps/riscv/rvf/feholdexcpt.c: Likewise. + * sysdeps/riscv/rvf/fesetenv.c: Likewise. + * sysdeps/riscv/rvf/fesetexcept.c: Likewise. + * sysdeps/riscv/rvf/fesetmode.c: Likewise. + * sysdeps/riscv/rvf/fesetround.c: Likewise. + * sysdeps/riscv/rvf/feupdateenv.c: Likewise. + * sysdeps/riscv/rvf/fgetexcptflg.c: Likewise. + * sysdeps/riscv/rvf/fraiseexcpt.c: Likewise. + * sysdeps/riscv/rvf/fsetexcptflg.c: Likewise. + * sysdeps/riscv/rvf/ftestexcept.c: Likewise. + * sysdeps/riscv/rvf/get-rounding-mode.h: Likewise. + * sysdeps/riscv/rvf/math_private.h: Likewise. + * sysdeps/riscv/rvf/s_ceilf.c: Likewise. + * sysdeps/riscv/rvf/s_copysignf.c: Likewise. + * sysdeps/riscv/rvf/s_finitef.c: Likewise. + * sysdeps/riscv/rvf/s_floorf.c: Likewise. + * sysdeps/riscv/rvf/s_fmaf.c: Likewise. + * sysdeps/riscv/rvf/s_fmaxf.c: Likewise. + * sysdeps/riscv/rvf/s_fminf.c: Likewise. + * sysdeps/riscv/rvf/s_fpclassifyf.c: Likewise. + * sysdeps/riscv/rvf/s_isinff.c: Likewise. + * sysdeps/riscv/rvf/s_isnanf.c: Likewise. + * sysdeps/riscv/rvf/s_issignalingf.c: Likewise. + * sysdeps/riscv/rvf/s_nearbyintf.c: Likewise. + * sysdeps/riscv/rvf/s_rintf.c: Likewise. + * sysdeps/riscv/rvf/s_roundevenf.c: Likewise. + * sysdeps/riscv/rvf/s_roundf.c: Likewise. + * sysdeps/riscv/rvf/s_truncf.c: Likewise. + * sysdeps/riscv/nptl/bits/pthreadtypes-arch.h: New file. + * sysdeps/riscv/nptl/bits/semaphore.h: Likewise. + * sysdeps/riscv/nptl/libc-lowlevellock.c: Likewise. + * sysdeps/unix/sysv/linux/riscv/atomic-machine.h: Likewise. + * sysdeps/riscv/nptl/nptl-sysdep.S: New file. + * sysdeps/unix/sysv/linux/riscv/arch-fork.h: Likewise. + * sysdeps/unix/sysv/linux/riscv/clone.S: Likewise. + * sysdeps/unix/sysv/linux/riscv/profil-counter.h: Likewise. + * sysdeps/unix/sysv/linux/riscv/pt-vfork.S: Likewise. + * sysdeps/unix/sysv/linux/riscv/syscall.c: Likewise. + * sysdeps/unix/sysv/linux/riscv/sysdep.S: Likewise. + * sysdeps/unix/sysv/linux/riscv/sysdep.h: Likewise. + * sysdeps/unix/sysv/linux/riscv/vfork.S: Likewise. + * sysdeps/riscv/nptl/pthread-offsets.h: New file. + * sysdeps/riscv/nptl/pthreaddef.h: Likewise. + * sysdeps/unix/sysv/linux/riscv/bits/fcntl.h: Likewise. + * sysdeps/unix/sysv/linux/riscv/bits/mman.h: Likewise. + * sysdeps/unix/sysv/linux/riscv/bits/sigcontext.h: Likewise. + * sysdeps/unix/sysv/linux/riscv/dl-cache.h: Likewise. + * sysdeps/unix/sysv/linux/riscv/flush-icache.c: Likewise. + * sysdeps/unix/sysv/linux/riscv/getcontext.S: Likewise. + * sysdeps/unix/sysv/linux/riscv/init-first.c: Likewise. + * sysdeps/unix/sysv/linux/riscv/libc-vdso.h: Likewise. + * sysdeps/unix/sysv/linux/riscv/makecontext.c: Likewise. + * sysdeps/unix/sysv/linux/riscv/readelflib.c: Likewise. + * sysdeps/unix/sysv/linux/riscv/register-dump.h: Likewise. + * sysdeps/unix/sysv/linux/riscv/setcontext.S: Likewise. + * sysdeps/unix/sysv/linux/riscv/sigcontextinfo.h: Likewise. + * sysdeps/unix/sysv/linux/riscv/swapcontext.S: Likewise. + * sysdeps/unix/sysv/linux/riscv/sys/cachectl.h: Likewise. + * sysdeps/unix/sysv/linux/riscv/sys/procfs.h: Likewise. + * sysdeps/unix/sysv/linux/riscv/sys/ucontext.h: Likewise. + * sysdeps/unix/sysv/linux/riscv/sys/user.h: Likewise. + * sysdeps/unix/sysv/linux/riscv/ucontext-macros.h: Likewise. + * sysdeps/unix/sysv/linux/riscv/ucontext_i.sym: Likewise. + * sysdeps/unix/sysv/linux/riscv/dl-static.c: New file. + * sysdeps/unix/sysv/linux/riscv/ldconfig.h: Likewise. + * sysdeps/unix/sysv/linux/riscv/ldsodefs.h: Likewise. + * sysdeps/riscv/nofpu/libm-test-ulps: New file. + * sysdeps/riscv/nofpu/libm-test-ulps-name: Likewise. + * sysdeps/riscv/rv64/rvd/libm-test-ulps: Likewise. + * sysdeps/riscv/rv64/rvd/libm-test-ulps-name: Likewise. + * sysdeps/unix/sysv/linux/riscv/localplt.data: Likewise. + * sysdeps/unix/sysv/linux/riscv/rv64/c++-types.data: Likewise. + * sysdeps/unix/sysv/linux/riscv/rv64/ld.abilist: Likewise. + * sysdeps/unix/sysv/linux/riscv/rv64/libanl.abilist: Likewise. + * sysdeps/unix/sysv/linux/riscv/rv64/libc.abilist: Likewise. + * sysdeps/unix/sysv/linux/riscv/rv64/libdl.abilist: Likewise. + * sysdeps/unix/sysv/linux/riscv/rv64/libm.abilist: Likewise. + * sysdeps/unix/sysv/linux/riscv/rv64/libnsl.abilist: Likewise. + * sysdeps/unix/sysv/linux/riscv/rv64/librt.abilist: Likewise. + * sysdeps/unix/sysv/linux/riscv/rv64/libutil.abilist: Likewise. + * sysdeps/riscv/Implies: New file. + * sysdeps/riscv/Makefile: Likewise. + * sysdeps/riscv/configure: Likewise. + * sysdeps/riscv/configure.ac: Likewise. + * sysdeps/riscv/nptl/Makefile: Likewise. + * sysdeps/riscv/preconfigure: Likewise. + * sysdeps/riscv/rv64/Implies-after: Likewise. + * sysdeps/riscv/rv64/rvd/Implies: Likewise. + * sysdeps/riscv/rv64/rvf/Implies: Likewise. + * sysdeps/unix/sysv/linux/riscv/Implies: Likewise. + * sysdeps/unix/sysv/linux/riscv/Makefile: Likewise. + * sysdeps/unix/sysv/linux/riscv/Versions: Likewise. + * sysdeps/unix/sysv/linux/riscv/configure: Likewise. + * sysdeps/unix/sysv/linux/riscv/configure.ac: Likewise. + * sysdeps/unix/sysv/linux/riscv/ldd-rewrite.sed: Likewise. + * sysdeps/unix/sysv/linux/riscv/rv64/Implies: Likewise. + * sysdeps/unix/sysv/linux/riscv/rv64/Makefile: Likewise. + * sysdeps/unix/sysv/linux/riscv/shlib-versions: Likewise. + * scripts/build-many-glibcs.py (Context): Add RISC-V targets. + (Config): Likewise. + +2018-01-29 Florian Weimer + + [BZ #22701] + * include/rpcsvc/nislib.h (__nis_default_ttl): Add + libnsl_hidden_proto. + * include/rpcsvc/yp.h (yp_xdrall): Declare with + libnsl_hidden_proto. + * include/rpcsvc/ypclnt.h (yp_maplist): Likewise. + * nis/Makefile (libnsl-routines): Add nss-default only for + build-obsolete-nsl. + * nis/nis_defaults.c (__nis_default_ttl): Add + libnsl_hidden_nolink_def. + * nis/rpcsvc/ypclnt.h (yp_maplist): Remove #ifdef'ed-out + declaration. + * nis/yp_xdr.c (xdr_ypall): Add libnsl_hidden_nolink_def. + * nis/ypclnt.c (yp_maplist): Likewise. + +2018-01-29 Romain Naour (tiny change) + + * sysdeps/unix/sysv/linux/microblaze/kernel-features.h + (__ASSUME_COPY_FILE_RANGE) [__LINUX_KERNEL_VERSION < 0x040A00]: Undef. + +2018-01-29 Joseph Myers + + * scripts/build-many-glibcs.py (Context.git_checkout): Use git + clean -dxfq for git updates when replacing sources. + + * scripts/build-many-glibcs.py (Config.build_gcc): Use + --disable-libcilkrts unconditionally, not just for the final GCC + build for Hurd. + + * scripts/build-many-glibcs.py (Context.checkout): Default Linux + version to 4.15. + +2018-01-29 Rafał Lużyński + + [BZ #10871] + * localedata/locales/lt_LT (alt_mon): Import from CLDR (nominative + case). + +2018-01-29 Rafał Lużyński + + [BZ #10871] + * localedata/locales/be_BY (mon): Rename to... + (alt_mon): This, then synchronize with CLDR (nominative case). + (abmon): Rename to... + (ab_alt_mon): This, then synchronize with CLDR (nominative case). + (mon): Import from CLDR (genitive case). + (abmon): Likewise. + * localedata/locales/be_BY@latin (mon): Rename to... + (alt_mon): This. + (mon): Add, proper genitive forms provided by Viktar Siarheichyk. + + * localedata/locales/be_BY@latin (lang_name): Reworded to + "biełaruskaja mova". + +2018-01-29 Rafał Lużyński + + [BZ #10871] + * localedata/locales/el_CY (mon): Renamed to... + (alt_mon): This. + (mon): Import from CLDR (genitive case). + * localedata/locales/el_GR: Likewise. + +2018-01-29 Rafał Lużyński + + [BZ #10871] + * localedata/locales/ru_RU (mon): Rename to... + (alt_mon): This. + (abmon): Rename to... + (ab_alt_mon): This. + (mon): Import from CLDR (genitive case). + (abmon): Copy from the old content except the 5th month which is + now in the genitive case, even when abbreviated. + * localedata/locales/ru_UA: Likewise. + * time/tst-strptime.c (day_tests): Add an actual example of + a difference between %b and %Ob in Russian. + +2018-01-27 Samuel Thibault + + * sysdeps/mach/hurd/xmknodat.c: Include . + * sysdeps/mach/hurd/profil.c: Reuse `a' variable instead of introducing + a `c' variable. + * resolv/res-close.c: Include . + * sysdeps/generic/not-cancel.h: Include , , + , , . + (NOT_CANCEL_H): Add inclusion guard. + * sysdeps/generic/sigset-cvt-mask.h: Include . + * sysdeps/generic/sigsetops.h (__sigemptyset, __sigfillset, + __sigandset, __sigorset, __sigaddset, __sigdelset): Make them really + return 0. + * sysdeps/mach/hurd/dl-sysdep.c (_dl_sysdep_start): Cast + vm_address_t * to ElfW(Addr) * for dl_main parameter. + * sysdeps/pthread/posix-timer.h (timer_ptr2id): Cast to timer_t + instead of void *. + * sysdeps/pthread/timer_create.c (timer_create): Do not use + timer_ptr2id to cast struct timer_node * to void *. + * scripts/build-many-glibcs.py [os == gnu] (build_gcc): Pass + --disable-libcilkrts to gcc configure. + (checkout_vcs): Add mig and gnumach repository URLs, run autoreconf, + and make them the default for now. + * sysdeps/mach/hurd/Makefile [$(subdir)==nis]: Add + -DUSE_BINDINGDIR=1 to CFLAGS-ypclnt.c. + * mach/Machrules (MIGFLAGS): Do not set -DMACH_IPC_COMPAT=0. + * mach/mach/mach_traps.h: Drop comment about MACH_IPC_COMPAT. + * sysdeps/mach/hurd/fork.c (__fork): Drop special casing + MACH_IPC_COMPAT. + * sysdeps/mach/hurd/dl-sysdep.c (_exit): Call LOSE and abort() if + __task_terminate would ever return successfully. + * sysdeps/mach/hurd/profil.c (special_profil_failure): Move variable + to global scope. + * sysdeps/mach/pagecopy.h (PAGE_THRESHOLD): Rename to + PAGE_COPY_THRESHOLD and set to benchmarked 16384. + * sysdeps/mach/hurd/getresgid.c (__getresgid): Set result from + critical section to make code simpler and avoid warning. + * sysdeps/mach/hurd/getresuid.c (__getresuid): Set result from + critical section to make code simpler and avoid warning. + * sysdeps/mach/hurd/spawni.c (__spawni): Make relpath and abspath + const char * instead of char *. + * hurd/hurd/lookup.h (__hurd_file_name_lookup, hurd_file_name_lookup, + __hurd_file_name_split, hurd_file_name_split, + __hurd_directory_name_split, hurd_directory_name_split, + __hurd_file_name_lookup_retry, hurd_file_name_lookup_retry, + hurd_file_name_path_lookup): Make lookup function parameter take a + const char *name instead of char *name. + * hurd/hurdlookup.c (__hurd_file_name_lookup, __hurd_file_name_split, + __hurd_directory_name_split): Likewise. + * hurd/lookup-retry.c (__hurd_file_name_lookup_retry): Likewise. + * hurd/path-lookup.c (hurd_file_name_path_lookup): Likewise. + * sysdeps/mach/hurd/check_native.c: New file. + * sysdeps/mach/hurd/check_pf.c: New file. + * nscd/gai.c (__getifaddrs): Define macro to getifaddrs. + (__freeifaddrs): Define macro to freeifaddrs. + * sysdeps/mach/hurd/libhurduser.abilist: New file. + * sysdeps/mach/libmachuser.abilist: New file. + * libio/tst-memstream3.c (FWRITE): Rename to _FWRITE. + (do_test_bz20181): Rename accordingly. + * libio/tst-wmemstream3.c (FWRITE): Rename accordingly. + * io/tst-copy_file_range.c [!defined CLONE_NEWNS]: Do not include + . + * hurd/hurd.h (__hurd_fail): Always declare function, and provide inline + version only if __USE_EXTERN_INLINES is defined. + * hurd/hurd/fd.h (_hurd_fd_error_signal, _hurd_fd_error, __hurd_dfail, + __hurd_sockfail): Likewise. + (_hurd_fd_get): Always declare functions, and provide inline versions + only if __USE_EXTERN_INLINES and _LIBC are defined and IS_IN(libc). + * hurd/hurd/port.h (_hurd_port_init, _hurd_port_locked_get, + _hurd_port_get, _hurd_port_free, _hurd_port_locked_set, + _hurd_port_set): Always declare functions, and provide inline versions + only if __USE_EXTERN_INLINES and _LIBC are defined and + IS_IN(libc). + * hurd/hurd/signal.h (_hurd_self_sigstate, _hurd_critical_section_lock, + _hurd_critical_section_unlock): Likewise. + * hurd/hurd/threadvar.h (__hurd_threadvar_location_from_sp, + * __hurd_threadvar_location): Likewise. + * hurd/hurd/userlink.h (_hurd_userlink_link, _hurd_userlink_unlink, + _hurd_userlink_clear): Likewise. + * mach/lock-intern.h (__spin_lock_init, __spin_lock, __mutex_lock, + __mutex_unlock, __mutex_trylock): Always declare functions, and provide + inline versions only if __USE_EXTERN_INLINES and _LIBC are defined. + * mach/mach/mig_support.h (__mig_strncpy): Likewise. + * sysdeps/generic/machine-lock.h (__spin_unlock, __spin_try_lock, + __spin_lock_locked): Likewise. + * sysdeps/mach/i386/machine-lock.h (__spin_unlock, __spin_try_lock, + __spin_lock_locked): Likewise. + * mach/spin-lock.c (__USE_EXTERN_INLINES): Define to 1. + * hurd/Versions (libc: GLIBC_2.27): Add _hurd_fd_error_signal, + _hurd_fd_error, __hurd_dfail, __hurd_sockfail, _hurd_port_locked_set, + __hurd_threadvar_location_from_sp, __hurd_threadvar_location, + _hurd_userlink_link, _hurd_userlink_unlink, _hurd_userlink_clear. + * sysdeps/mach/hurd/bits/posix_opt.h (_POSIX_CHOWN_RESTRICTED, + _POSIX_NO_TRUNC): Define to 0. + * sysdeps/pthread/allocalim.h [!defined PTHREAD_STACK_MIN]: Do not + check size against PTHREAD_STACK_MIN. + * hurd/hurd/signal.h [__USE_EXTERN_INLINES][_LIBC][IS_IN(libc) || + IS_IN(libpthread)]: Include . + * mach/Makefile (user-interfaces): Add mach/gnumach. + * sysdeps/mach/configure.ac (mach_interface_list): Add gnumach. + * sysdeps/mach/configure (mach_interface_list): Regenerate. + * sysdeps/mach/hurd/bits/posix_opt.h (_POSIX_VDISABLE): Set to '\0' + instead of invalid -1. + * sysdeps/mach/hurd/net/ethernet.h: Include . + * sysdeps/mach/hurd/net/if_arp.h: Include . + * sysdeps/mach/hurd/net/if_ppp.h: Do not include non-existing + . + +2018-01-27 Thomas Schwinge + + * hurd/fcntl-internal.h: New file. + +2018-01-27 James Clarke + + * sysdeps/hppa/fpu/libm-test-ulps: Update. + + * sysdeps/alpha/fpu/libm-test-ulps: Update. + +2018-01-26 Andreas Schwab + + [BZ #22701] + * nis/Makefile (libnsl-inhibit-o) [$(build-obsolete-nsl) != yes]: + Build only shared objects. + +2018-01-26 Carlos O'Donell + + * README: Update for hppa. + +2018-01-26 Patrick McGehearty + + * sysdeps/sparc/fpu/libm-test-ulps: Update + cpow, ctan, ctanh, j0, j1, y0, yn ulps. + +2018-01-26 Carlos O'Donell + + Revert: + + 2017-12-19 H.J. Lu + + [BZ #22563] + * sysdeps/i386/nptl/tcb-offsets.sym (FEATURE_1_OFFSET): New. + * sysdeps/i386/nptl/tls.h (tcbhead_t): Add feature_1. + * sysdeps/x86_64/nptl/tcb-offsets.sym (FEATURE_1_OFFSET): New. + * sysdeps/x86_64/nptl/tls.h (tcbhead_t): Rename __glibc_unused1 + to feature_1. + + 2017-12-19 H.J. Lu + + [BZ #22563] + * bits/types/__cancel_jmp_buf_tag.h: New file. + * sysdeps/unix/sysv/linux/x86/bits/types/__cancel_jmp_buf_tag.h + * sysdeps/unix/sysv/linux/x86/pthreaddef.h: Likewise. + * sysdeps/unix/sysv/linux/x86/nptl/pthreadP.h: Likewise. + * nptl/Makefile (headers): Add + bits/types/__cancel_jmp_buf_tag.h. + * nptl/descr.h [NEED_SAVED_MASK_IN_CANCEL_JMP_BUF] + (pthread_unwind_buf): Add saved_mask to cancel_jmp_buf. + * sysdeps/nptl/pthread.h: Include + . + (__pthread_unwind_buf_t): Use struct __cancel_jmp_buf_tag with + __cancel_jmp_buf. + * sysdeps/unix/sysv/linux/hppa/pthread.h: Likewise. + +2018-01-25 Rafał Lużyński + + [BZ #10871] + * localedata/locales/uk_UA (mon): Renamed to... + (alt_mon): This. + (alt_digits): "0" removed and then renamed to... + (mon): This. + (date_fmt): Definition changed not to use the alternative + digits hack. + +2018-01-25 Palmer Dabbelt + + * elf/cache.c (print_entry): Add FLAG_RISCV_FLOAT_ABI_SOFT and + FLAG_RISCV_FLOAT_ABI_DOUBLE. + * elf/elf.h (EF_RISCV_RVC): New define. + (EF_RISCV_FLOAT_ABI): Likewise. + (EF_RISCV_FLOAT_ABI_SOFT): Likewise. + (EF_RISCV_FLOAT_ABI_SINGLE): Likewise. + (EF_RISCV_FLOAT_ABI_DOUBLE): Likewise. + (EF_RISCV_FLOAT_ABI_QUAD): Likewise. + * sysdeps/generic/ldconfig.h (FLAG_RISCV_FLOAT_ABI_SOFT): New + define. + (FLAG_RISCV_FLOAT_ABI_DOUBLE): Likewise. + +2018-01-25 Andreas Schwab + + * aclocal.m4 (LIBC_SLIBDIR_RTLDDIR): Consistently put arguments in + single quotes. + * sysdeps/gnu/configure: Regenerate. + * sysdeps/unix/sysv/linux/aarch64/configure: Regenerate. + * sysdeps/unix/sysv/linux/mips/configure: Regenerate. + * sysdeps/unix/sysv/linux/powerpc/powerpc64/configure: Regenerate. + * sysdeps/unix/sysv/linux/s390/s390-64/configure: Regenerate. + * sysdeps/unix/sysv/linux/sparc/sparc64/configure: Regenerate. + * sysdeps/unix/sysv/linux/tile/configure: Regenerate. + * sysdeps/unix/sysv/linux/x86_64/64/configure: Regenerate. + * sysdeps/unix/sysv/linux/x86_64/x32/configure: Regenerate. + +2018-01-25 Samuel Thibault + + * scripts/build-many-glibcs.py (checkout_vcs): Add hurd repository + URL, and run autoconf, make it the default for now. + +2018-01-24 Joseph Myers + + * scripts/build-many-glibcs.py (Context.add_all_configs): Add + soft-float ColdFire configuration. + + * sysdeps/unix/sysv/linux/m68k/localplt.data: Move to .... + * sysdeps/unix/sysv/linux/m68k/m680x0/localplt.data: ... here. + * sysdeps/unix/sysv/linux/m68k/coldfire/localplt.data: New file. + + * sysdeps/m68k/coldfire/nofpu/math_private.h: New file. Based on + MicroBlaze file. + + * sysdeps/unix/sysv/linux/m68k/coldfire/jmp_buf-macros.h: Move to + .... + * sysdeps/unix/sysv/linux/m68k/coldfire/fpu/jmp_buf-macros.h: + ... here. + * sysdeps/unix/sysv/linux/m68k/coldfire/nofpu/jmp_buf-macros.h: + New file. + + * sysdeps/unix/sysv/linux/m68k/jmp_buf-macros.h: Move to .... + * sysdeps/unix/sysv/linux/m68k/m680x0/jmp_buf-macros.h: ... here. + * sysdeps/unix/sysv/linux/m68k/coldfire/jmp_buf-macros.h: New + file. + +2018-01-24 Szabolcs Nagy + + [BZ #22742] + * sysdeps/unix/sysv/linux/aarch64/sys/ucontext.h (__glibc_reserved1): + Rename to __reserved and add comment. + * sysdeps/unix/sysv/linux/aarch64/ucontext_i.sym (__glibc_reserved1): + Rename to __reserved. + +2018-01-24 Joseph Myers + + * scripts/build-many-glibcs.py (Context.add_all_configs): Add + i686-gnu configurations. + (Context.run_builds): Include mig, gnumach and hurd in components + considered. + (Context.checkout): Add mig, gnumach and hurd to components. + (Context.checkout_tar): Add URL mappings for mig, gnumach and + hurd. + (Context.bot_cycle): Check for changes to mig, gnumach and hurd. + (Config.build): Install gnumach headers, build mig and install + hurd headers for 'gnu' OS. + (Config.install_gnumach_headers): New function. + (Config.install_hurd_headers): Likewise. + (Glibc.build_glibc): Do not use /usr for 'gnu' OS. Specifiy MIG + when building for 'gnu' OS. + +2018-01-23 Tobias Klauser + + * manual/tunables.texi (Hardware Capability Tunables): Fix + spelling. + +2018-01-22 Rical Jasan + + * manual/locale.texi (ALTMON_1, ALTMON_2, ALTMON_3, ALTMON_4) + (ALTMON_5, ALTMON_6, ALTMON_7, ALTMON_8, ALTMON_9, ALTMON_10) + (ALTMON_11, ALTMON_12): Improve documentation. + * manual/time.texi (strftime): Likewise. + +2018-01-22 Rafał Lużyński + + [BZ #10871] + * localedata/locales/pl_PL: Alternative month names added, + primary month names are genitive now. + * time/tst-strptime.c (day_tests): Actually use a genitive case + of a month name in Polish language. + +2018-01-22 Rafał Lużyński + + [BZ #10871] + * manual/locale.texi: Document ALTMON_1..12 constants for + nl_langinfo. Specify when to use ALTMON instead of MON. + * manual/time.texi (strftime, strptime): Document GNU extension + permitting O modifier with %B and %b. Specify when to use + %OB instead of %B. + +2018-01-22 Rafał Lużyński + + [BZ #10871] + * locale/C-time.c (_nl_C_LC_TIME): Add abbreviated alternative month + names, define them as the same as abbreviated month names explicitly. + * locale/categories.def (LC_TIME): Add ab_alt_mon and wide-ab_alt_mon. + * locale/langinfo.h: (_NL_ABALTMON_1, _NL_ABALTMON_2, _NL_ABALTMON_3, + _NL_ABALTMON_4, _NL_ABALTMON_5, _NL_ABALTMON_6, _NL_ABALTMON_7, + _NL_ABALTMON_8, _NL_ABALTMON_9, _NL_ABALTMON_10, _NL_ABALTMON_11, + _NL_ABALTMON_12, _NL_WABALTMON_1, _NL_WABALTMON_2, _NL_WABALTMON_3, + _NL_WABALTMON_4, _NL_WABALTMON_5, _NL_WABALTMON_6, _NL_WABALTMON_7, + _NL_WABALTMON_8, _NL_WABALTMON_9, _NL_WABALTMON_10, _NL_WABALTMON_11, + _NL_WABALTMON_12): New enum constants. + * locale/programs/ld-time.c (struct locale_time_t): Add ab_alt_mon, + wab_alt_mon, and ab_alt_mon_defined members. + (time_output): Output ab_alt_mon and wab_alt_mon members. + (time_read): Read them, initialize them as copies of abmon and wabmon + respectively if they are missing, initialize ab_alt_mon_defined. + * locale/programs/locfile-kw.gperf (ab_alt_mon): Define. + * locale/programs/locfile-kw.h: Regenerate. + * locale/programs/locfile-token.h (tok_ab_alt_mon): New enum constant. + * time/Makefile [$(run-built-tests) = yes] (LOCALES): Add es_ES.UTF-8 + and ru_RU.UTF-8. + * time/strftime_l.c (a_altmonth, aam_len): New macros. + [!COMPILE_WIDE] (ABALTMON_1): New macro. + (__strftime_internal): Handle %Ob and %Oh formats. + * time/strptime_l.c [_LIBC] (ab_alt_month_name): New macro. + (__strptime_internal): Handle %Ob and %Oh formats. + * time/tst-strptime.c (day_tests): Add more tests to parse different + forms of month names including the new %Ob format specifier. + +2018-01-22 Rafał Lużyński + + [BZ #10871] + * locale/C-time.c (_nl_C_LC_TIME): Add alternative month names, + define them as the same as primary full month names explicitly. + * locale/categories.def (LC_TIME): Add alt_mon and wide-alt_mon. + * locale/langinfo.h (__ALTMON_1, __ALTMON_2, __ALTMON_3, __ALTMON_4, + __ALTMON_5, __ALTMON_6, __ALTMON_7, __ALTMON_8, __ALTMON_9, __ALTMON_10, + __ALTMON_11, __ALTMON_12, _NL_WALTMON_1, _NL_WALTMON_2, _NL_WALTMON_3, + _NL_WALTMON_4, _NL_WALTMON_5, _NL_WALTMON_6, _NL_WALTMON_7, + _NL_WALTMON_8, _NL_WALTMON_9, _NL_WALTMON_10, _NL_WALTMON_11, + _NL_WALTMON_12): New enum constants. + [__USE_GNU] (ALTMON_1, ALTMON_2, ALTMON_3, ALTMON_4, ALTMON_5, ALTMON_6, + ALTMON_7, ALTMON_8, ALTMON_9, ALTMON_10, ALTMON_11, ALTMON_12): New + macros. + * locale/programs/ld-time.c (struct locale_time_t): Add alt_mon, + walt_mon, and alt_mon_defined members. + (time_output): Output alt_mon and walt_mon members. + (time_read): Read them, initialize them as copies of mon and wmon + respectively if they are missing, initialize alt_mon_defined. + * locale/programs/locfile-kw.gperf (alt_mon): Define. + * locale/programs/locfile-kw.h: Regenerate. + * locale/programs/locfile-token.h (tok_alt_mon): New enum constant. + * localedata/tst-langinfo.c (map): Add tests for the new constants + ALTMON_1 .. ALTMON_12. + * time/Makefile [$(run-built-tests) = yes] (LOCALES): Add fr_FR.UTF-8 + and pl_PL.UTF-8. + * time/strftime_l.c (f_altmonth): New macro. + (__strftime_internal): Handle %OB format. + * time/strptime_l.c [_LIBC] (alt_month_name): New macro. + (__strptime_internal): Handle %OB format. + * time/tst-strptime.c (day_tests): Add tests to parse different forms + of month names including the new %OB format specifier. + +2018-01-19 Tulio Magno Quites Machado Filho + + [BZ #22685] + * sysdeps/powerpc/powerpc32/sysdep.h (ABORT_TRANSACTION_IMPL): Renamed + from ABORT_TRANSACTION. + (ABORT_TRANSACTION): Redirect to ABORT_TRANSACTION_IMPL. + * sysdeps/powerpc/powerpc64/sysdep.h (ABORT_TRANSACTION, + ABORT_TRANSACTION_IMPL): Likewise. + * sysdeps/unix/sysv/linux/powerpc/not-errno.h: New file. Reuse + Linux code, but remove the code that aborts transactions. + +2018-01-19 Samuel Thibault + + * sysdeps/generic/netinet/if_ether.h: Include . + +2018-01-19 Rafał Lużyński + + * localedata/locales/gu_IN (LC_IDENTIFICATION): Fix an obvious typo + in date: "2004-14-09" should be "2004-09-14". + * localedata/locales/lo_LA: Fix an obvious typo in date in the header: + "2003-15-09" should be "2003-09-15". + +2018-01-18 Arjun Shankar + + [BZ #22343] + [BZ #22774] + CVE-2018-6485 + CVE-2018-6551 + * malloc/malloc.c (checked_request2size): call REQUEST_OUT_OF_RANGE + after padding. + (_int_memalign): check for integer overflow before calling + _int_malloc. + * malloc/tst-malloc-too-large.c: New test. + * malloc/Makefile: Add tst-malloc-too-large. + +2018-01-18 Rafał Lużyński + + * localedata/locales/bho_NP (LC_IDENTIFICATION): Fix an obvious typo + in date: "2017-24-07" should be "2017-07-24". + * localedata/locales/mai_IN: Likewise. + * localedata/locales/mai_NP: Likewise. + +2018-01-17 Dmitry V. Levin + + * po/ru.po: Update translations. + +2018-01-17 Joseph Myers + + [BZ #22719] + * sysdeps/hppa/backtrace.c: New file. + +2018-01-17 H.J. Lu + + [BZ #22715] + * sysdeps/x86_64/dl-trampoline.h (_dl_runtime_profile): Properly + align La_x86_64_retval to VEC_SIZE. + +2018-01-16 Joseph Myers + + * sysdeps/x86_64/backtrace.c: Include . + (init): Use LIBGCC_S_SO not hardcoded "libgcc_s.so.1". + +2018-01-16 Florian Weimer + + * nptl/Makefile [$(have-cxx-thread_local)] (tests-unsupported): + Move tst-thread-exit-clobber ... + [$(CXX)] (tests-unsupported): ... to here. + +2018-01-16 Szabolcs Nagy + + * sysdeps/unix/sysv/linux/aarch64/bits/hwcap.h (HWCAP_SHA3): Define. + (HWCAP_SM3, HWCAP_SM4, HWCAP_ASIMDDP, HWCAP_SHA512, HWCAP_SVE): Define. + * sysdeps/unix/sysv/linux/aarch64/dl-procinfo.c + (_dl_aarch64_cap_flags): Update. + (_DL_HWCAP_COUNT): Update. + +2018-01-16 Szabolcs Nagy + + * sysdeps/unix/sysv/linux/aarch64/dl-procinfo.h + (_DL_HWCAP_LAST): Remove. + (_DL_HWCAP_COUNT): Move to ... + * sysdeps/unix/sysv/linux/aarch64/dl-procinfo.c + (_DL_HWCAP_COUNT): ... here. + +2018-01-16 Florian Weimer + + * nptl/Makefile (CFLAGS-tst-minstack-throw.o): Compile in C++11 + mode with GNU extensions. + +2018-01-15 Alan Hayward + + * elf/elf.h (NT_ARM_SVE): Define. + +2018-01-15 Florian Weimer + + [BZ #22636] + * nptl/tst-minstack-throw.cc: New file. + * nptl/Makefile (tests): Add tst-minstack-throw. + (LDLIBS-tst-minstack-throw): Link with libstdc++. + [!CXX] (tests-unsupported): Add tst-minstack-throw. + +2018-01-15 Joseph Myers + + * scripts/build-many-glibcs.py (Context.checkout): Default + binutils version to 2.30 branch, MPFR version to 4.0.0 and MPC + version to 1.1.0. + +2018-01-13 Carlos O'Donell + + [BZ #22707] + * elf/elf.h (DF_1_STUB): Define. + (DF_1_PIE): Define. + +2018-01-12 Tulio Magno Quites Machado Filho + + [BZ #22697] + * sysdeps/powerpc/powerpc32/power4/fpu/s_llround.S (__llround): + Do not add 0.5 to integer or out-of-range arguments. + +2018-01-12 Dmitry V. Levin + + * po/bg.po: Update translations. + * po/cs.po: Likewise. + * po/de.po: Likewise. + * po/ko.po: Likewise. + * po/pl.po: Likewise. + * po/sv.po: Likewise. + * po/uk.po: Likewise. + * po/vi.po: Likewise. + +2018-01-12 Szabolcs Nagy + + * aarch64/start.S (_start): Use __wrap_main. + (__wrap_main): New local symbol. + +2018-01-12 Dmitry V. Levin + + [BZ #22679] + CVE-2018-1000001 + * sysdeps/unix/sysv/linux/getcwd.c (__getcwd): Fall back to + generic_getcwd if the path returned by getcwd syscall is not absolute. + * io/tst-getcwd-abspath.c: New test. + * io/Makefile (tests): Add tst-getcwd-abspath. + +2018-01-12 Istvan Kurucsai + + * malloc/malloc.c (malloc_consolidate): Add size check. + +2018-01-12 Florian Weimer + + * support/write_message.c (write_message): Preserve errno. + * support/check.c (print_failure): Likewise. + * support/support_test_verify_impl.c (support_test_verify_impl): + Likewise. + * support/support_test_compare_failure.c + (support_test_compare_failure): Likewise. + +2018-01-12 Florian Weimer + + [BZ #22701] + * nis/Makefile (install-lib-ldscripts, $(inst_libdir)/libnsl.so): + Prevent installation of libnsl.so. + (libnsl-inhibit-o): Do not build (or install) static libraries. + +2018-01-12 Egmont Koblinger + + [BZ #22657] + * localedata/locales/hu_HU (d_t_fmt): Avoid a leading space + before the day number which may produce a double space. + (date_fmt): Likewise. + +2018-01-12 Joseph Myers + + * sysdeps/s390/fpu/feholdexcpt.c (__feholdexcept): Call __fegetenv + instead of fegetenv. + +2018-01-11 Joseph Myers + + [BZ #22702] + * sysdeps/generic/math_private.h (libc_feresetround_noex): Update + comment to say exceptions are discarded. + (libc_feholdsetround_noex_ctx): Use __feholdexcept instead of + __fegetenv. + (SET_RESTORE_ROUND_NOEX): Update comment to say non-stop mode must + be enabled. + +2018-01-11 Florian Weimer + + * sysdeps/gnu/unwind-resume.c (__libgcc_s_init): Update comment + and error message. + +2018-01-11 Florian Weimer + + [BZ #22636] + * nptl/Makefile (tests): Add tst-minstack-cancel, tst-minstack-exit. + * nptl/tst-minstack-cancel.c, nptl/tst-minstack-exit.c: New files. + +2018-01-10 Joseph Myers + + [BZ #22693] + * sysdeps/ieee754/ldbl-128ibm/s_log1pl.c (__log1pl): Handle + negative arguments in test for NaN or infinity argument. + +2018-01-10 Dmitry V. Levin + + * po/libc.pot: Regenerate. + +2018-01-10 Florian Weimer + + [BZ #22636] + * sysdeps/nptl/unwind-forcedunwind.c (pthread_cancel_init): Open + libgcc.so with RTLD_NOW, to avoid lazy binding during unwind. + +2018-01-10 Samuel Thibault + + * hurd/hurd/fd.h: Include + (__hurd_at_flags): New function. + * hurd/lookup-at.c (__file_name_lookup_at): Replace flag computation + with call to __hurd_at_flags. + * include/unistd.h (__faccessat, __faccessat_noerrno): Add declaration. + * sysdeps/mach/hurd/access.c (access_common): Move implementation to + __faccessat + (hurd_fail_seterrno, hurd_fail_noerrno): Move to sysdeps/mach/hurd/faccessat.c. + (__access_noerrno): Use __faccessat_common instead of access_common. + (__access): Likewise. + * sysdeps/mach/hurd/euidaccess.c (__euidaccess): Replace implementation + with a call to __faccessat. + * sysdeps/mach/hurd/faccessat.c (faccessat): Rename into... + (__faccessat_common): ... this. Move implementation of __access into it when + AT_FLAGS does not contain AT_EACCESS. Make it call __hurd_at_flags, add + reauthenticate_cwdir_at helper to implement AT mechanism. + (__faccessat_noerrno): New function, just calls __faccessat_common. + (__faccessat): New function, just calls __faccessat_common. + (faccessat): Define weak alias. + +2018-01-10 Joseph Myers + + [BZ #22691] + * sysdeps/powerpc/nofpu/Makefile [$(subdir) = math] + (CFLAGS-s_fmaxmagl.c): New variable. + [$(subdir) = math] (CFLAGS-s_fminmagl.c: Likewise. + + [BZ #22690] + * sysdeps/ieee754/ldbl-128ibm/s_lrintl.c (__lrintl): Use unsigned + long int for arguments of possibly overflowing addition or + subtraction. + * sysdeps/ieee754/ldbl-128ibm/s_lroundl.c (__lroundl): Likewise. + +2018-01-09 Joseph Myers + + [BZ #22688] + * sysdeps/powerpc/nofpu/Makefile [$(subdir) = math] + (CFLAGS-e_remainderl.c): New variable. + + [BZ #22687] + * sysdeps/powerpc/nofpu/Makefile (CFLAGS-s_cacosl.c): New + variable. + (CFLAGS-s_cacoshl.c): Likewise. + (CFLAGS-s_casinhl.c): Likewise. + (CFLAGS-s_catanl.c): Likewise. + (CFLAGS-s_catanhl.c): Likewise. + (CFLAGS-s_cexpl.c): Likewise. + (CFLAGS-s_ccoshl.c): Add -fsignaling-nans. + (CFLAGS-s_csinhl.c): Likewise. + (CFLAGS-s_clogl.c): Likewise. + (CFLAGS-s_clog10l.c): Likewise. + (CFLAGS-s_csinl.c): Likewise. + (CFLAGS-s_csqrtl.c): Likewise. + +2017-01-09 Emilio Pozuelo Monfort +2017-01-09 Svante Signell + + * hurd/hurdexec.c (_hurd_exec): Deprecate function. + (_hurd_exec_paths): New function. + * hurd/hurd.h (_hurd_exec): Deprecate function. + (_hurd_exec_paths): Declare function. + * hurd/Versions: Export _hurd_exec_paths. + * sysdeps/mach/hurd/execve.c: Include and + (__execve): Use __getcwd to build absolute path, and use + _hurd_exec_paths instead of _hurd_exec. + * sysdeps/mach/hurd/spawni.c: Likewise. + * sysdeps/mach/hurd/fexecve.c: Use _hurd_exec_paths instead of + _hurd_exec. + +2018-01-08 Dmitry V. Levin + + * sysdeps/unix/sysv/linux/tst-ttyname.c (do_in_chroot_1): Skip the + test instead of failing in case of ENOENT returned by posix_openpt. + +2018-01-08 Florian Weimer + + resolv: Support binary labels in test framework. + * support/resolv_test.c (struct to_be_freed): Remove. + (struct compressed_name): New. + (allocate_compressed_name, ascii_tolower) + (compare_compressed_name): New functions. + (struct resolv_response_builder): Update type of + compression_offsets for use with tsearch. Rempve to_be_freed. + (response_push_pointer_to_free): Remove function. + (resolv_response_add_name): Rewrite using struct compressed_name + and tsearch instead of hsearch_r. + (response_builder_allocate): Remove initialization of + compression_offsets. + (response_builder_free): Update for removal of to_be_freed. Use + tdestroy instead of hdestroy_r. + * resolv/Makefile (tests): Add tst-resolv-binary. + (tst-resolv-binary): Link with -lresolv -lpthread. + +2018-01-08 Florian Weimer + + * support/check.h (TEST_COMPARE): Allow sign mismatch at compile + time. Pass positive flag instead of negative flag to + support_test_compare_failure. + (support_test_compare_failure): Change negative parameter to + positive. + * support/support_test_compare_failure.c (report) + (support_test_compare_failure): Likewise. + * support/tst-test_compare.c (return_ssize_t, return_int): New. + (do_test): Check int/size_t, ssize_t/size_t comparisons. + +2018-01-08 Szabolcs Nagy + + [BZ #22637] + * nptl/descr.h (stackblock, stackblock_size): Update comments. + * nptl/allocatestack.c (allocate_stack): Add guardsize to stacksize. + * nptl/nptl-init.c (__pthread_get_minstack): Remove guardsize from + stacksize. + * nptl/pthread_getattr_np.c (pthread_getattr_np): Likewise. + +2018-01-08 H.J. Lu + + * sysdeps/x86_64/fpu/multiarch/Makefile (libm-sysdep_routines): + Add s_sincosf-sse2 and s_sincosf-fma. + (CFLAGS-s_sincosf-fma.c): New. + * sysdeps/x86_64/fpu/multiarch/s_sincosf-fma.c: New file. + * sysdeps/x86_64/fpu/multiarch/s_sincosf-sse2.S: Likewise. + * sysdeps/x86_64/fpu/multiarch/s_sincosf.c: Likewise. + * sysdeps/x86_64/fpu/s_sincosf.S: Don't add alias if + __sincosf is defined. + +2018-01-08 Florian Weimer + + * nptl/tst-thread-exit-clobber.cc: New file. + * nptl/Makefile (CFLAGS-tst-thread-exit-clobber.o): Compile in + C++11 mode. + (LDLIBS-tst-thread-exit-clobber): Link with libstdc++. + (tests): Add tst-thread-exit-clobber. + [!CXX] (tests-unsupported): Add tst-thread-exit-clobber. + +2018-01-08 Florian Weimer + + * support/check.h (support_static_assert): Define. + (TEST_COMPARE): Use it. + +2018-01-07 Aurelien Jarno + + * sysdeps/unix/sysv/linux/getrlimit64 (getrlimit64) + [!__RLIM_T_MATCHES_RLIM64_T] + [!SHLIB_COMPAT (libc, GLIBC_2_1, GLIBC_2_2)]: Define as weak alias of + __getrlimit64. Add libc_hidden_weak. + +2018-01-06 Palmer Dabbelt + + * elf/elf.h (R_RISCV_NONE): New define. + (R_RISCV_32): Likewise. + (R_RISCV_64): Likewise. + (R_RISCV_RELATIVE): Likewise. + (R_RISCV_COPY): Likewise. + (R_RISCV_JUMP_SLOT): Likewise. + (R_RISCV_TLS_DTPMOD32): Likewise. + (R_RISCV_TLS_DTPMOD64): Likewise. + (R_RISCV_TLS_DTPREL32): Likewise. + (R_RISCV_TLS_DTPREL64): Likewise. + (R_RISCV_TLS_TPREL32): Likewise. + (R_RISCV_TLS_TPREL64): Likewise. + * Makerules (make-link-multidir): Make directories before linking into + them. + * sysdeps/unix/sysv/linux/dl-vdso.h (VDSO_NAME_LINUX_4_15): New + define. + (VDSO_HASH_LINUX_4_15): Likewise. + * scripts/build-many-glibcs.py (class Glibc): Strip shared objects + in subdirectories of lib. + * nptl/Makefile (/librt.so): Always depend on + "$(shared-thread-library)". + +2018-01-06 Samuel Thibault + + * sysdeps/mach/hurd/i386/jmp_buf-macros.h: New file. + * sysdeps/i386/dl-tlsdesc.S (_dl_tlsdesc_dynamic) [NO_RTLD_HIDDEN]: Call + JUMPTARGET (___tls_get_addr) instead of HIDDEN_JUMPTARGET + (___tls_get_addr). + * sysdeps/x86_64/dl-tlsdesc.S (_dl_tlsdesc_dynamic): Likewise. + * sysdeps/i386/fpu/libm-test-ulps: Regenerated for GCC 7 with + "-O2 -march=i686". + * posix/tst-glob_symlinks.c [!PATH_MAX]: Define PATH_MAX macro. + * sysdeps/gnu/glob64.c (__glob): Define macro instead of glob macro. + (__glob64): Define GLIBC_2_27 versioned symbol instead of glob64. + * sysdeps/gnu/glob-lstat-compat.c: New file. + * sysdeps/gnu/glob64-lstat-compat.c: New file. + * sysdeps/posix/pwritev_common.c: Add PROT_READ to __mmap prot. + +2018-01-05 Tulio Magno Quites Machado Filho + + * sysdeps/powerpc/powerpc64/dl-machine.c (_dl_reloc_overflow): + Reserve 16 chars to reloc_addr before calling _itoa_word. + +2018-01-05 Aurelien Jarno + + [BZ #22678] + * sysdeps/unix/sysv/linux/prlimit.c (prlimit): Translate + old_rlimit from RLIM64_INFINITY to RLIM_INFINITY. + + * sysdeps/unix/sysv/linux/tst-rlimit-infinity.c: New file. + * sysdeps/unix/sysv/linux/Makefile (tests): Add tst-rlimit-infinity. + + * resource/tst-getrlimit.c: Add copyright header. + +2018-01-05 Aurelien Jarno + Adhemerval Zanella + + * sysdeps/unix/sysv/linux/getrlimit64.c [USE_VERSIONED_RLIMIT]: Do not + define getrlimit and getrlimit64 as weak aliases of __getrlimit64. + Define __GI_getrlimit64 as weak alias of __getrlimit64. + [__RLIM_T_MATCHES_RLIM64_T]: Do not redefine SHLIB_COMPAT, use #elif + instead. + * sysdeps/unix/sysv/linux/setrlimit64.c [USE_VERSIONED_RLIMIT]: Do not + define setrlimit and setrlimit64 as weak aliases of __setrlimit64. + * sysdeps/unix/sysv/linux/alpha/bits/resource.h (RLIM_INFINITY, + RLIM64_INFINITY): Fix values to match the kernel ones. + * sysdeps/unix/sysv/linux/alpha/getrlimit64.c: Define + USE_VERSIONED_RLIMIT. Rename __getrlimit64 into __old_getrlimit64 and + provide it as getrlimit@@GLIBC_2_0 and getrlimit64@@GLIBC_2_1. Add a + __getrlimit64 function and provide it as getrlimit@@GLIBC_2_27 and + getrlimit64@@GLIBC_2_27. + * sysdeps/unix/sysv/linux/alpha/setrlimit64.c: Ditto with setrlimit + and setrlimit64. + * sysdeps/unix/sysv/linux/alpha/libc.abilist (GLIBC_2.27): Add + getrlimit, setrlimit, getrlimit64 and setrlimit64. + * sysdeps/unix/sysv/linux/alpha/Versions (libc): Add getrlimit, + setrlimit, getrlimit64 and setrlimit64. + +2018-01-05 Aurelien Jarno + + [BZ #22648] + * sysdeps/unix/sysv/linux/alpha/getrlimit64.c: New file. + * sysdeps/unix/sysv/linux/alpha/setrlimit64.c: Ditto. + +2018-01-04 Joseph Myers + + * malloc/tst-malloc-tcache-leak.c (TIMEOUT): Define to 50. + * posix/tst-glob-tilde.c (TIMEOUT): Define to 200. + * resolv/tst-resolv-res_ninit.c (TIMEOUT): Define to 50. + +2018-01-03 Adhemerval Zanella + + [BZ #15479] + [BZ #22666] + * sysdeps/alpha/fpu/s_trunc.c: Remove file. + * sysdeps/alpha/fpu/s_truncf.c: Likewise. + + [BZ #15479] + [BZ #22665] + * sysdeps/alpha/fpu/s_ceil.c: Remove file. + * sysdeps/alpha/fpu/s_ceilf.c: Likewise. + * sysdeps/alpha/fpu/s_floor.c: Likewise. + * sysdeps/alpha/fpu/s_floorf.c: Likewise. + +2018-01-04 Florian Weimer + + [BZ #22667] + * sysdeps/unix/sysv/linux/i386/makecontext.S (__makecontext): + Align the stack before calling exit. + * stdlib/tst-makecontext-align.c: New file. + * stdlib/Makefile (tests): Add tst-makecontext-align. + +2018-01-04 Florian Weimer + + Add support for calling dlvsym from libc.so. + * include/dlfcn.h (__libc_dlvsym): Declare. + * elf/Makefile (tests-static-internal): Add + tst-libc_dlvsym-static. + (tests-internal): Add tst-libc_dlvsym. + (modules-names): Add tst-libc_dlvsym-dso. + (tst-libc_dlvsym, tst-libc_dlvsym-static): Link with libdl. + (tst-libc_dlvsym-dso.so): Link with libdl, libsupport. + (tst-libc_dlvsym.out, tst-libc_dlvsym-static.out): The shared + object tst-libc_dlvsym-dso.so needs to be built before running + these tests. + (tst-libc_dlvsym-static-ENV): Set LD_LIBRARY_PATH. + * elf/Versions: Export __libc_dlvsym. + * elf/dl-libc.c (struct do_dlvsym_args): New. + (do_dlvsym, __libc_dlvsym): New functions. + (struct dl_open_hook, _dl_open_hook): Add dlvsym member. + (_dl_open_hook2): New variable. + (__libc_register_dl_open_hook): Set it. + * elf/tst-libc_dlvsym-dso.c: New file. + * elf/tst-libc_dlvsym-static.c: Likewise. + * elf/tst-libc_dlvsym.c: Likewise. + * elf/tst-libc_dlvsym.h: Likewise. + +2018-01-03 Samuel Thibault + + * support/support_enter_mount_namespace.c [!CLONE_NEWNS]: Do not + include . + +2018-01-02 Wilco Dijkstra + + * math/math.h (math_errhandling): Set to 0 with __FAST_MATH__. + Add __NO_MATH_ERRNO__ check. + +2018-01-02 Joseph Myers + + * sysdeps/mips/mips32/libm-test-ulps: Update. + * sysdeps/mips/mips64/libm-test-ulps: Likewise. + +2018-01-02 Florian Weimer + + * misc/tst-pselect.c: Add copyright header. + +2018-01-02 Aurelien Jarno + + * sysdeps/unix/sysv/linux/alpha/getrlimit64.c: Fix a typo in the + comment. + * sysdeps/unix/sysv/linux/alpha/setrlimit64.c: Fix a typo in the + comment. + (settrlimit): Rename into setrlimit. + (__sttrlimit): Rename into __setrlimit. + + * sysdeps/unix/sysv/linux/alpha/getrlimit64.c (__old_getrlimit64): + Drop __RLIM_T_MATCHES_RLIM64_T conditional as __old_getrlimit64 is + never defined in that case. + +2018-01-02 Joseph Myers + + * sysdeps/powerpc/nofpu/libm-test-ulps: Update. + + * sysdeps/arm/libm-test-ulps: Update. + + * math/Makefile (run-regen-ulps): Add $(objpfx) to test name here. + (regen-ulps): Use $(libm-tests) not $^ in shell loop. + +2018-01-02 Rajalakshmi Srinivasaraghavan + + * NEWS: Add cosf and sincosf to list of optimized functions. + +2018-01-02 Aurelien Jarno + + [BZ #22660] + * sysdeps/alpha/fpu/s_fmax.S: Remove file. + * sysdeps/alpha/fpu/s_fmaxf.S: Likewise. + * sysdeps/alpha/fpu/s_fmin.S: Likewise. + * sysdeps/alpha/fpu/s_fminf.S: Likewise. + +2018-01-01 Dmitry V. Levin + + [BZ #22433] + * sysdeps/unix/sysv/linux/arm/sys/ptrace.h: New file. + + * elf/dl-load.c (decompose_rpath): Check for rpath emptiness before + making a copy of it. + +2018-01-01 Joseph Myers + + * manual/texinfo.tex: Update to version 2017-12-26.21 with + trailing whitespace removed. + * scripts/config.guess: Update to version 2018-01-01. + * scripts/config.sub: Update to version 2018-01-01. + * scripts/move-if-change: Update from gnulib. + + * NEWS: Update copyright dates. + * catgets/gencat.c (print_version): Likewise. + * csu/version.c (banner): Likewise. + * debug/catchsegv.sh: Likewise. + * debug/pcprofiledump.c (print_version): Likewise. + * debug/xtrace.sh (do_version): Likewise. + * elf/ldconfig.c (print_version): Likewise. + * elf/ldd.bash.in: Likewise. + * elf/pldd.c (print_version): Likewise. + * elf/sotruss.sh: Likewise. + * elf/sprof.c (print_version): Likewise. + * iconv/iconv_prog.c (print_version): Likewise. + * iconv/iconvconfig.c (print_version): Likewise. + * locale/programs/locale.c (print_version): Likewise. + * locale/programs/localedef.c (print_version): Likewise. + * login/programs/pt_chown.c (print_version): Likewise. + * malloc/memusage.sh (do_version): Likewise. + * malloc/memusagestat.c (print_version): Likewise. + * malloc/mtrace.pl: Likewise. + * manual/libc.texinfo: Likewise. + * nptl/version.c (banner): Likewise. + * nscd/nscd.c (print_version): Likewise. + * nss/getent.c (print_version): Likewise. + * nss/makedb.c (print_version): Likewise. + * posix/getconf.c (main): Likewise. + * scripts/test-installation.pl: Likewise. + * sysdeps/unix/sysv/linux/lddlibc4.c (main): Likewise. + + * All files with FSF copyright notices: Update copyright dates + using scripts/update-copyrights. + * locale/programs/charmap-kw.h: Regenerated. + * locale/programs/locfile-kw.h: Likewise. + +2017-12-31 Zack Weinberg + + * libio/bits/libio-ldbl.h: Correct check for improper + inclusion. Add own multiple include guard. + +2017-12-30 Aurelien Jarno + Dmitry V. Levin + + [BZ #22625] + CVE-2017-16997 + * elf/dl-load.c (fillin_rpath): Check for empty tokens before dynamic + string token expansion. Check for NULL pointer or empty string possibly + returned by expand_dynamic_string_token. + (decompose_rpath): Check for empty path after dynamic string + token expansion. + +2017-12-29 Dmitry V. Levin + + [BZ #22433] + * sysdeps/unix/sysv/linux/x86/sys/ptrace.h: New file. + + * sysdeps/unix/sysv/linux/sys/ptrace.h (__ptrace_request): Add comments + about PTRACE_PEEKSIGINFO, PTRACE_GETSIGMASK, PTRACE_SETSIGMASK, and + PTRACE_SECCOMP_GET_FILTER. Update comments about PTRACE_SINGLESTEP + and PTRACE_SYSCALL. + * 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. + * sysdeps/unix/sysv/linux/tile/sys/ptrace.h: Likewise. + + * sysdeps/unix/sysv/linux/sys/ptrace.h: Include . + (__ptrace_setoptions, __ptrace_eventcodes, __ptrace_peeksiginfo_args, + __ptrace_peeksiginfo_flags, ptrace): Move to ... + * sysdeps/unix/sysv/linux/bits/ptrace-shared.h: ... new file. + * sysdeps/unix/sysv/linux/Makefile (sysdep_headers): Add + bits/ptrace-shared.h. + * sysdeps/unix/sysv/linux/aarch64/sys/ptrace.h: Include + . + (__ptrace_setoptions, __ptrace_eventcodes, __ptrace_peeksiginfo_args, + __ptrace_peeksiginfo_flags, ptrace): Remove. + * 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. + * sysdeps/unix/sysv/linux/tile/sys/ptrace.h: Likewise. + +2017-12-29 Aurelien Jarno + + [BZ #17804] + * dirent/scandir-tail.c (SCANDIR_TAIL): Move __set_errno (0) at the + end of the loop. Improve comments. + +2017-12-29 Zack Weinberg + + [BZ #22615] + * manual/errno.texi (Checking for Errors): Explicitly say that errno + might be set on success. + +2017-12-29 Aurelien Jarno + + [BZ #22611] + * malloc/tst-realloc.c (do_test): Remove the test checking that errno + is unchanged on success. + +2017-12-27 Dmitry V. Levin + + * elf/dl-dst.h (DL_DST_COUNT): Remove is_path argument, all callers + updated. + * elf/dl-load.c (is_dst, _dl_dst_count, _dl_dst_substitute, + expand_dynamic_string_token): Likewise. + * sysdeps/generic/ldsodefs.h (_dl_dst_count, _dl_dst_substitute): Remove + is_path argument. + + * elf/dl-load.c (is_dst): Remove checks that is_path is set and name + contains ':'. + + * elf/dl-load.c (_dl_dst_substitute): Remove checks that is_path + is set and name contains ':', and all code depending on these checks. + +2017-12-24 Zack Weinberg + + * libio/libio.h, libio/_G_config.h: New stub headers which issue a + deprecation warning and then include , + respectively. + * libio/libio.h: Rename the original version of this file to + libio/bits/libio.h. Error out if not included by stdio.h or the + stub libio.h. + * include/libio.h: Move to include/bits. Forward to libio/bits/libio.h. + * sysdeps/generic/_G_config.h: Move to top-level bits/. Error out + if not included by bits/libio.h or the stub _G_config.h. + * sysdeps/unix/sysv/linux/_G_config.h: Move to + sysdeps/unix/sysv/linux/bits. Error out if not included by + bits/libio.h or the stub _G_config.h. + * libio/stdio.h: Include bits/libio.h, not libio.h. + * libio/Makefile: Install bits/libio.h and bits/_G_config.h as + well as libio.h and _G_config.h. + + * csu/init.c, libio/fmemopen.c, libio/iolibio.h, libio/oldfmemopen.c + * libio/strfile.h, stdio-common/vfscanf.c + * sysdeps/pthread/flockfile.c, sysdeps/pthread/funlockfile.c + Include stdio.h, not _G_config.h nor libio.h. + * libio/iofgetpos.c: Also rename fgetpos64 out of the way. + * libio/iofsetpos.c: Also rename fsetpos64 out of the way. + + * scripts/check-installed-headers.sh: Skip libio.h and _G_config.h. + +2017-12-23 Dmitry V. Levin + + [BZ #22347] + * stdlib/getrandom.c (getrandom): Fix comment. + * sysdeps/unix/sysv/linux/getrandom.c (getrandom): Likewise. + +2017-12-23 Aurelien Jarno + + [BZ #21161] + * manual/arith.texi (strtoul): Fix a typo. + + [BZ #22596] + * manual/arith.texi (finite): Fix the description of the return + value. + +2017-12-22 Eric Blake + + Avoid gcc warnings on cygwin + * posix/regex_internal.c (re_string_reconstruct) [!RE_ENABLE_I18N]: + * posix/regexec.c (check_arrival_add_next_nodes) [!RE_ENABLE_I18N]: + Avoid unused variable. + +2017-12-22 Florian Weimer + + * io/Makefile (routines): Add copy_file_range. + (tests): Add tst-copy_file_range. + (tests-static, tests-internal): Add tst-copy_file_range-compat. + * io/Versions (GLIBC_2.27): Export copy_file_range. + * io/copy_file_range-compat.c: New file. + * io/copy_file_range.c: Likewise. + * io/tst-copy_file_range-compat.c: Likewise. + * io/tst-copy_file_range.c: Likewise. + * manual/llio.texi (Copying File Data): New section. + * posix/unistd.h [__USE_GNU] (copy_file_range): Declare. + * support/Makefile (libsupport-routines): Add support-xfstat, + xftruncate, xlseek. + * support/support-xfstat.c: New file. + * support/xftruncate.c: Likewise. + * support/xlseek.c: Likewise. + * support/xunistd.h (xfstat, xftruncate, xlseek): Declare. + * sysdeps/unix/sysv/linux/**.abilist: Update. + * sysdeps/unix/sysv/linux/copy_file_range.c: New file. + +2017-12-21 Szabolcs Nagy + + * scripts/build-many-glibcs.py (Context.add_all_configs): Add + disable-multi-arch variant to aarch64-linux-gnu. + +2017-12-20 Joseph Myers + + * manual/texinfo.tex: Update to version 2017-12-18.20 with + trailing whitespace removed. + * scripts/config.guess: Update to version 2017-12-17. + * scripts/config.sub: Update to version 2017-11-23. + * scripts/install-sh: Update to version 2017-09-23.17. + * scripts/move-if-change: Update to version 2017-09-13 06:45. + +2017-12-20 Adhemerval Zanella + + * sysdeps/tile/__longjmp.S (__longjmp): Use lowercase instructions. + * sysdeps/tile/__tls_get_addr.S (__tls_get_addr): Likewise. + * sysdeps/tile/_mcount.S (__mcount): Likewise. + * sysdeps/tile/crti.S (_init, _fini): Likewise. + * sysdeps/tile/crtn.S: Likewise. + * sysdeps/tile/dl-start.S (_start): Likewise. + * sysdeps/tile/dl-trampoline.S: Likewise. + * sysdeps/tile/setjmp.S (__sigsetjmp): Likewise. + * sysdeps/tile/start.S (_start): Likewise. + * sysdeps/unix/sysv/linux/tile/clone.S (_clone): Likewise. + * sysdeps/unix/sysv/linux/tile/getcontext.S (__getcontext): Likewise. + * sysdeps/unix/sysv/linux/tile/ioctl.S (__ioctl): Likewise. + * sysdeps/unix/sysv/linux/tile/setcontext.S (__setcontext): Likewise. + * sysdeps/unix/sysv/linux/tile/swapcontext.S (__swapcontext): Likewise. + * sysdeps/unix/sysv/linux/tile/syscall.S (syscall): Likewise. + * sysdeps/unix/sysv/linux/tile/vfork.S (__vfork): Likewise. + + * stdlib/bug-getcontext.c (do_test): Remove tilepro mention in + comment. + * sysdeps/tile/preconfigure: Remove tilegx folder. + * sysdeps/tile/tilegx/Implies: Move definitions to ... + * sysdeps/tile/Implies: ... here. + * sysdeps/tile/tilegx/Makefile: Move rules to ... + * sysdeps/tile/Makefile: ... here. + * sysdeps/tile/tilegx/atomic-machine.h: Move definitions to ... + * sysdeps/tile/atomic-machine.h: ... here. Add include guards. + * sysdeps/tile/tilegx/bits/wordsize.h: Move to ... + * sysdeps/tile/bits/wordsize.h: ... here. + * sysdeps/tile/tilegx/*: Move to ... + * sysdeps/tile/*: ... here. + * sysdeps/tile/tilegx/tilegx32/Implies: Move to ... + * sysdeps/tile/tilegx32/Implies: ... here. + * sysdeps/tile/tilegx/tilegx64/Implies: Move to ... + * sysdeps/tile/tilegx64/Implies: ... here. + * sysdeps/unix/sysv/linux/tile/tilegx/Makefile: Move definitions + to ... + * sysdeps/unix/sysv/linux/tile/Makefile: ... here. + * sysdeps/unix/sysv/linux/tile/tilegx/*: Move to ... + * sysdeps/unix/sysv/linux/tile/*: ... here. + * sysdeps/unix/sysv/linux/tile/tilegx/tilegx32/*: Move to ... + * sysdeps/unix/sysv/linux/tile/tilegx32/*: ... here. + * sysdeps/unix/sysv/linux/tile/tilegx/tilegx64/*: Move to ... + * sysdeps/unix/sysv/linux/tile/tilegx64/*: ... here. + + * README: Remove tilepro-*-linux-gnu from supported architecture. + * scripts/build-many-glibcs.py: Likewise. + * sysdeps/tile/__tls_get_addr.S (__tls_get_addr): Likewise. + * sysdeps/tile/crti.S (PREINIT_FUNCTION): Likewise. + * sysdeps/tile/dl-machine.h (ELF_MACHINE_NAME, + elf_machine_matches_host, elf_machine_dynamic, + elf_machine_load_address, elf_machine_runtime_setup, reloc_howto + howto, elf_machine_rela): Likewise. + * sysdeps/tile/dl-start.S (_start): Likewise. + * sysdeps/tile/memcmp.c (DBLALIGN, REVBYTES): Likewise. + * sysdeps/tile/memcopy.h (MEMCPY_OK_FOR_FWD_MEMMOVE, + MEMCPY_OK_FOR_FWD_MEMMOVE, op_t): Likewise. + * sysdeps/tile/nptl/pthread_spin_lock.c (TNS, CMPTNS): Likewise. + * sysdeps/tile/nptl/pthread_spin_trylock.c (TNS): Likewise. + * sysdeps/tile/nptl/pthread_spin_unlock.c (pthread_spin_unlock): + Likewise. + * sysdeps/tile/nptl/tls.h (DB_THREAD_SELF): Likewise. + * sysdeps/tile/preconfigure: Likewise. + * sysdeps/tile/stackguard-macros.h (STACK_CHK_GUARD, + POINTER_CHK_GUARD): Likewise. + * sysdeps/tile/stackinfo.h (__stackinfo_sub): Likewise. + * sysdeps/tile/start.S (_start): Likewise. + * sysdeps/tile/tls-macros.h (TLS_GD_OFFSET, TLS_IE_OFFSET, _TLS_LE): + Likewise. + * sysdeps/tile/sysdep.h (REGSIZE): Likewise. + (LD, LD4U, ST, ST4, BNEZ, BEQZ, BEQZT, BGTZ, CMPEQI, CMPEQ, CMOVEQZ, + CMOVNEZ): Remove. + * sysdeps/unix/sysv/linux/tile/bits/environments.h + (__ILP32_OFF32_CFLAGS, __ILP32_OFFBIG_CFLAGS, __ILP32_OFF32_LDFLAGS, + __ILP32_OFFBIG_LDFLAGS, __LP64_OFF64_CFLAGS, __LP64_OFF64_LDFLAGS): + Likewise. + * sysdeps/tile/wordcopy.c (DBLALIGN): Likewise. + * sysdeps/tile/tilepro/Implies: Remove file. + * sysdeps/tile/tilepro/atomic-machine.h: Likewise. + * sysdeps/tile/tilepro/bits/wordsize.h: Likewise. + * sysdeps/tile/tilepro/memchr.c: Likewise. + * sysdeps/tile/tilepro/memcpy.S: Likewise. + * sysdeps/tile/tilepro/memset.c: Likewise. + * sysdeps/tile/tilepro/memusage.h: Likewise. + * sysdeps/tile/tilepro/rawmemchr.c: Likewise. + * sysdeps/tile/tilepro/strchr.c: Likewise. + * sysdeps/tile/tilepro/strchrnul.c: Likewise. + * sysdeps/tile/tilepro/strlen.c: Likewise. + * sysdeps/tile/tilepro/strrchr.c: Likewise. + * sysdeps/unix/sysv/linux/tile/tilepro/Implies: Likewise. + * sysdeps/unix/sysv/linux/tile/tilepro/c++-types.data: Likewise. + * sysdeps/unix/sysv/linux/tile/tilepro/jmp_buf-macros.h: Likewise. + * sysdeps/unix/sysv/linux/tile/tilepro/ld.abilist: Likewise. + * sysdeps/unix/sysv/linux/tile/tilepro/ldconfig.h: Likewise. + * sysdeps/unix/sysv/linux/tile/tilepro/libBrokenLocale.abilist: + Likewise. + * sysdeps/unix/sysv/linux/tile/tilepro/libanl.abilist: Likewise. + * sysdeps/unix/sysv/linux/tile/tilepro/libc.abilist: Likewise. + * sysdeps/unix/sysv/linux/tile/tilepro/libcrypt.abilist: Likewise. + * sysdeps/unix/sysv/linux/tile/tilepro/libdl.abilist: Likewise. + * sysdeps/unix/sysv/linux/tile/tilepro/libm.abilist: Likewise. + * sysdeps/unix/sysv/linux/tile/tilepro/libnsl.abilist: Likewise. + * sysdeps/unix/sysv/linux/tile/tilepro/libpthread.abilist: Likewise. + * sysdeps/unix/sysv/linux/tile/tilepro/libresolv.abilist: Likewise. + * sysdeps/unix/sysv/linux/tile/tilepro/librt.abilist: Likewise. + * sysdeps/unix/sysv/linux/tile/tilepro/libthread_db.abilist: Likewise. + * sysdeps/unix/sysv/linux/tile/tilepro/libutil.abilist: Likewise. + * sysdeps/unix/sysv/linux/tile/tilepro/register-dump.h: Likewise. + * sysdeps/unix/sysv/linux/tile/sysconf.c (linux_sysconf): Remove + tilepro mention in comment. + + * nptl/Makefile (libpthread-routines): Add pthread_join_common. + * nptl/pthreadP.h (__pthread_timedjoin_ex): New prototype. + * nptl/pthread_join_common.c: New file: common function used on + pthread_join, pthread_timedjoin_np, pthread_tryjoin_np. + * nptl/pthread_join.c (pthread_join): Use __pthread_timedjoin_ex. + * nptl/pthread_tryjoin.c (pthread_tryjoin): Likewise. + * nptl/pthread_timedjoin.c (pthread_timedjoin_np): Likewise. + (cleanup): Move definition to pthread_join_common.c. + * sysdeps/unix/sysv/linux/i386/lowlevellock.h (__lll_timedwait_tid): + Remove superflous checks. + * sysdeps/unix/sysv/linux/x86_64/lowlevellock.h (__lll_timedwait_tid): + Likewise. + +2017-12-20 Szabolcs Nagy + + * sysdeps/aarch64/libm-test-ulps: Update. + +2017-12-20 Adhemerval Zanella + + * sysdeps/aarch64/memset.S (MEMSET): Define. + +2017-12-20 Florian Weimer + + [BZ #22635] + nptl: Provide full implementation of pthread_self in libc.so. + * nptl/Makefile (routines): Add pthread_self. + (libpthread-routines): Replace pthread_self with + compat-pthread_self. + * nptl/forward.c (pthread_self): Remove. + * nptl/nptl-init.c (pthread_functions): Do not initialize + ptr_pthread_self. + * nptl/pthread_self.c (pthread_self): Remove weak alias. + * nptl/compat-pthread_self.c: New file. + * sysdeps/nptl/pthread-functions.h (struct pthread_functions): + Remove ptr_pthread_self. + +2017-12-19 Arnold D. Robbins + + * posix/regcomp.c: Fix spelling in comments. + * posix/regex.h: Likewise. + * posix/regex_internal.c: Likewise. + * posix/regexec.c: Likewise. + +2017-12-19 Gabriel F. T. Gomes + + [BZ #22377] + * math/Makefile [C++] (tests): Add test for iseqsig. + * math/math.h [C++] (iseqsig): New implementation, which does + not rely on __MATH_TG/__builtin_types_compatible_p. + * math/test-math-iseqsig.cc: New file. + * sysdeps/powerpc/powerpc64le/Makefile + (CFLAGS-test-math-iseqsig.cc): New variable. + +2017-12-19 Dmitry V. Levin + + * elf/dl-load.c (is_trusted_path): Remove. + (fillin_rpath): Remove check_trusted argument and its use, + all callers changed. + +2017-12-19 H.J. Lu + + [BZ #22630] + * Makeconfig (link-pie-before-libc): Replace -pie with + $(if $($(@F)-no-pie),$(no-pie-ldflag),-pie). + * elf/Makefile (LDFLAGS-tst-dlopen-aout): Removed. + (tst-dlopen-aout-no-pie): New. + (LDFLAGS-tst-prelink): Removed. + (tst-prelink-no-pie): New. + (LDFLAGS-tst-main1): Removed. + (tst-main1-no-pie): New. + * gmon/Makefile (LDFLAGS-tst-gmon): Removed. + (tst-gmon-no-pie): New. + +2017-12-19 H.J. Lu + + * manual/install.texi: Document that --enable-static-pie + implies PIE. + * INSTALL: Regenerated. + +2017-12-19 Bernd Edlinger + + [BZ #21309] + * sysdeps/ieee754/dbl-64/e_pow.c (checkint): Make m and n + unsigned. + +2017-12-19 Joseph Myers + + Revert: + + 2017-12-19 Joseph Myers + + * sysdeps/x86_64/fpu/libm-test-ulps: Update. + + 2017-12-19 Patrick McGehearty + + * sysdeps/ieee754/dbl-64/e_exp.c: Include and + . Include "eexp.tbl". + (half): New constant. + (one): Likewise. + (__ieee754_exp): Rewrite. + (__slowexp): Remove prototype. + * sysdeps/ieee754/dbl-64/eexp.tbl: New file. + * sysdeps/ieee754/dbl-64/slowexp.c: Remove file. + * sysdeps/i386/fpu/slowexp.c: Likewise. + * sysdeps/ia64/fpu/slowexp.c: Likewise. + * sysdeps/m68k/m680x0/fpu/slowexp.c: Likewise. + * sysdeps/x86_64/fpu/multiarch/slowexp-avx.c: Likewise. + * sysdeps/x86_64/fpu/multiarch/slowexp-fma.c: Likewise. + * sysdeps/x86_64/fpu/multiarch/slowexp-fma4.c: Likewise. + * sysdeps/generic/math_private.h (__slowexp): Remove prototype. + * sysdeps/ieee754/dbl-64/e_pow.c: Remove mention of slowexp.c in + comment. + * sysdeps/powerpc/power4/fpu/Makefile [$(subdir) = math] + (CPPFLAGS-slowexp.c): Remove variable. + * sysdeps/x86_64/fpu/multiarch/Makefile (libm-sysdep_routines): + Remove slowexp-fma, slowexp-fma4 and slowexp-avx. + (CFLAGS-slowexp-fma.c): Remove variable. + (CFLAGS-slowexp-fma4.c): Likewise. + (CFLAGS-slowexp-avx.c): Likewise. + * sysdeps/x86_64/fpu/multiarch/e_exp-avx.c (__slowexp): Do not + define as macro. + * sysdeps/x86_64/fpu/multiarch/e_exp-fma.c (__slowexp): Likewise. + * sysdeps/x86_64/fpu/multiarch/e_exp-fma4.c (__slowexp): Likewise. + * math/Makefile (type-double-routines): Remove slowexp. + * manual/probes.texi (slowexp_p6): Remove. + (slowexp_p32): Likewise. + +2017-12-19 Adhemerval Zanella + + * lib/glob.c (glob): Use a 'char *', not a 'void *', in pointer + arithmetic. + + * lib/glob.c (glob): Do not pass NULL to mempcpy. + +2017-12-19 Joseph Myers + + * sysdeps/x86_64/fpu/libm-test-ulps: Update. + +2017-12-19 Patrick McGehearty + + * sysdeps/ieee754/dbl-64/e_exp.c: Include and + . Include "eexp.tbl". + (half): New constant. + (one): Likewise. + (__ieee754_exp): Rewrite. + (__slowexp): Remove prototype. + * sysdeps/ieee754/dbl-64/eexp.tbl: New file. + * sysdeps/ieee754/dbl-64/slowexp.c: Remove file. + * sysdeps/i386/fpu/slowexp.c: Likewise. + * sysdeps/ia64/fpu/slowexp.c: Likewise. + * sysdeps/m68k/m680x0/fpu/slowexp.c: Likewise. + * sysdeps/x86_64/fpu/multiarch/slowexp-avx.c: Likewise. + * sysdeps/x86_64/fpu/multiarch/slowexp-fma.c: Likewise. + * sysdeps/x86_64/fpu/multiarch/slowexp-fma4.c: Likewise. + * sysdeps/generic/math_private.h (__slowexp): Remove prototype. + * sysdeps/ieee754/dbl-64/e_pow.c: Remove mention of slowexp.c in + comment. + * sysdeps/powerpc/power4/fpu/Makefile [$(subdir) = math] + (CPPFLAGS-slowexp.c): Remove variable. + * sysdeps/x86_64/fpu/multiarch/Makefile (libm-sysdep_routines): + Remove slowexp-fma, slowexp-fma4 and slowexp-avx. + (CFLAGS-slowexp-fma.c): Remove variable. + (CFLAGS-slowexp-fma4.c): Likewise. + (CFLAGS-slowexp-avx.c): Likewise. + * sysdeps/x86_64/fpu/multiarch/e_exp-avx.c (__slowexp): Do not + define as macro. + * sysdeps/x86_64/fpu/multiarch/e_exp-fma.c (__slowexp): Likewise. + * sysdeps/x86_64/fpu/multiarch/e_exp-fma4.c (__slowexp): Likewise. + * math/Makefile (type-double-routines): Remove slowexp. + * manual/probes.texi (slowexp_p6): Remove. + (slowexp_p32): Likewise. + +2017-12-19 Adhemerval Zanella + James Clarke + + [BZ #22603] + * sysdeps/ia64/memchr.S (__memchr): Avoid overflow in pointer + addition. + +2017-12-19 Adhemerval Zanella + + [BZ #22605] + * sysdeps/unix/sysv/linux/sh/clone.S (__clone): Fix exit return + code. + +2017-12-19 H.J. Lu + + [BZ #22563] + * sysdeps/i386/nptl/tcb-offsets.sym (FEATURE_1_OFFSET): New. + * sysdeps/i386/nptl/tls.h (tcbhead_t): Add feature_1. + * sysdeps/x86_64/nptl/tcb-offsets.sym (FEATURE_1_OFFSET): New. + * sysdeps/x86_64/nptl/tls.h (tcbhead_t): Rename __glibc_unused1 + to feature_1. + +2017-12-19 H.J. Lu + + [BZ #22563] + * bits/types/__cancel_jmp_buf_tag.h: New file. + * sysdeps/unix/sysv/linux/x86/bits/types/__cancel_jmp_buf_tag.h + * sysdeps/unix/sysv/linux/x86/pthreaddef.h: Likewise. + * sysdeps/unix/sysv/linux/x86/nptl/pthreadP.h: Likewise. + * nptl/Makefile (headers): Add + bits/types/__cancel_jmp_buf_tag.h. + * nptl/descr.h [NEED_SAVED_MASK_IN_CANCEL_JMP_BUF] + (pthread_unwind_buf): Add saved_mask to cancel_jmp_buf. + * sysdeps/nptl/pthread.h: Include + . + (__pthread_unwind_buf_t): Use struct __cancel_jmp_buf_tag with + __cancel_jmp_buf. + * sysdeps/unix/sysv/linux/hppa/pthread.h: Likewise. + +2017-12-18 H.J. Lu + + * scripts/build-many-glibcs.py (Context.add_all_configs): Add + --enable-static-pie variants to x86_64, x32 and i686. + +2017-12-19 Joseph Myers + + [BZ #22631] + * sysdeps/m68k/m680x0/fpu/bits/mathinline.h (__m81_defun): Add + argument for attrubutes. All callers changed. + (__inline_mathop1): Likewise. All callers changed. + (__inline_mathop): Likewise. All callers changed. + [__USE_MISC] (scalbn): Use __inline_forward instead of + __inline_forward_c. + [__USE_ISOC99] (scalbln): Likewise. + [__USE_ISOC99] (nearbyint): Likewise. + [__USE_ISOC99] (lrint): Likewise. + [__USE_MISC] (scalbnf): Likewise. + [__USE_ISOC99] (scalblnf): Likewise. + [__USE_ISOC99] (nearbyintf): Likewise. + [__USE_ISOC99] (lrintf): Likewise. + [__USE_MISC] (scalbnl): Likewise. + [__USE_ISOC99] (scalblnl): Likewise. + [__USE_ISOC99] (nearbyintl): Likewise. + [__USE_ISOC99] (lrintl): Likewise. + * sysdeps/m68k/m680x0/fpu/mathimpl.h: All callers of + __inline_mathop and __m81_defun changed. + + * scripts/build-many-glibcs.py (Context.add_all_configs): Specify + CPU or FPU for ARM hard-float configurations. + +2017-12-18 Joseph Myers + + * nptl/tst-attr3.c: Include . + (do_test) [__GNUC_PREREQ (7, 0)]: Ignore -Wrestrict for two tests. + + * posix/tst-glob_symlinks.c (do_test): Increase size of buf. + + * string/tester.c (test_strncat): Also disable -Warray-bounds + warnings for two tests. + +2017-12-18 H.J. Lu + + [BZ #22614] + * Makeconfig (no-pie-ldflag): Set to -no-pie only if + $(cc-pie-default) == yes. + * config.make.in (cc-pie-default): New. + * configure.ac (libc_cv_pie_default): Renamed to ... + (libc_cv_cc_pie_default): This. + (libc_cv_pie_default): Set to $libc_cv_cc_pie_default. + * configure: Regenerated. + +2017-12-18 Florian Weimer + + [BZ #20204] + ld.so: Harden dl-libc/libdl hooks. + * sysdeps/generic/ldsodefs.h (_dl_init_all_dirs): Update comment. + (rtld_active): New function. + * dlfcn/dladdr.c (__dladdr): Call it. + * dlfcn/dladdr1.c (__dladdr1): Likewise. + * dlfcn/dlclose.c (__dlcose): Likewise. + * dlfcn/dlerror.c (__dlerror): Likewise. + * dlfcn/dlinfo.c (__dlinfo): Likewise. + * dlfcn/dlmopen.c (__dlmopen): Likewise. + * dlfcn/dlopen.c (__dlopen): Likewise. + * dlfcn/dlopenold.c (__dlopen_nocheck): Likewise. + * dlfcn/dlsym.c (__dlsym): Likewise. + * dlfcn/dlvsym.c (__dlvsym): Likewise. + * libio/vtables.c (_IO_vtable_check): Likewise. + * elf/dl-libc.c (__libc_dlopen_mode, __libc_dlsym) + (__libc_dlclose): Likewise. + * elf/rtld.c (dl_main): Update comment on the _dl_init_all_dirs + assignment. + +2017-12-18 Joseph Myers + + [BZ #22446] + * nscd/connections.c (handle_request) [SO_PEERCRED]: Use separate + buffers for readlink input and output. + +2017-12-18 Sergei Trofimovich + + [BZ #22624] + * sysdeps/mips/setjmp_aux.c (__sigsetjmp_aux): Use + inhibit_stack_protector. + + [BZ #22624] + * sysdeps/mips/mips64/setjmp_aux.c (__sigsetjmp_aux): Use + inhibit_stack_protector. + +2017-12-18 Dmitry V. Levin + + [BZ #22627] + * elf/dl-load.c (_dl_init_paths): Remove _dl_dst_substitute preparatory + code and invocation. + +2017-12-18 Szabolcs Nagy + + * sysdeps/aarch64/start.S (_start): Handle PIC && !SHARED case. + +2017-12-16 Aurelien Jarno + + [BZ #22505] + * elf/ldconfig.c (main): Call setlocale to force LC_COLLATE to C. + +2017-12-16 Rajalakshmi Srinivasaraghavan + + * sysdeps/s390/fpu/libm-test-ulps: Update. + +2017-12-16 Rajalakshmi Srinivasaraghavan + + * sysdeps/powerpc/fpu/libm-test-ulps: Update. + +2017-12-16 Rajalakshmi Srinivasaraghavan + + * sysdeps/ieee754/flt-32/s_cosf.c: Move reduced() and + constants to s_sincosf.h file. + * sysdeps/ieee754/flt-32/s_sinf.c: Likewise. + * sysdeps/ieee754/flt-32/s_sincosf.c: New + implementation. + * sysdeps/ieee754/flt-32/s_sincosf.h: + New file. + +2017-12-12 Carlos O'Donell + + [BZ #14681] + * elf/tst-leaks1.c (do_test): Call one dlopen with $ORIGIN expansion + before mtrace. + +2017-12-15 H.J. Lu + + [BZ #19574] + * INSTALL: Regenerated. + * Makeconfig (real-static-start-installed-name): New. + (pic-default): Updated for --enable-static-pie. + (pie-default): New for --enable-static-pie. + (default-pie-ldflag): Likewise. + (+link-static-before-libc): Replace $(DEFAULT-LDFLAGS-$(@F)) + with $(if $($(@F)-no-pie),$(no-pie-ldflag),$(default-pie-ldflag)). + Replace $(static-start-installed-name) with + $(real-static-start-installed-name). + (+prectorT): Updated for --enable-static-pie. + (+postctorT): Likewise. + (CFLAGS-.o): Add $(pie-default). + (CFLAGS-.op): Likewise. + * NEWS: Mention --enable-static-pie. + * config.h.in (ENABLE_STATIC_PIE): New. + * configure.ac (--enable-static-pie): New configure option. + (have-no-dynamic-linker): New LIBC_CONFIG_VAR. + (have-static-pie): Likewise. + Enable static PIE if linker supports --no-dynamic-linker. + (ENABLE_STATIC_PIE): New AC_DEFINE. + (enable-static-pie): New LIBC_CONFIG_VAR. + * configure: Regenerated. + * csu/Makefile (omit-deps): Add r$(start-installed-name) and + gr$(start-installed-name) for --enable-static-pie. + (extra-objs): Likewise. + (install-lib): Likewise. + (extra-objs): Add static-reloc.o and static-reloc.os + ($(objpfx)$(start-installed-name)): Also depend on + $(objpfx)static-reloc.o. + ($(objpfx)r$(start-installed-name)): New. + ($(objpfx)g$(start-installed-name)): Also depend on + $(objpfx)static-reloc.os. + ($(objpfx)gr$(start-installed-name)): New. + * csu/libc-start.c (LIBC_START_MAIN): Call _dl_relocate_static_pie + in libc.a. + * csu/libc-tls.c (__libc_setup_tls): Add main_map->l_addr to + initimage. + * csu/static-reloc.c: New file. + * elf/Makefile (routines): Add dl-reloc-static-pie. + (elide-routines.os): Likewise. + (DEFAULT-LDFLAGS-tst-tls1-static-non-pie): Removed. + (tst-tls1-static-non-pie-no-pie): New. + * elf/dl-reloc-static-pie.c: New file. + * elf/dl-support.c (_dl_get_dl_main_map): New function. + * elf/dynamic-link.h (ELF_DURING_STARTUP): Also check + STATIC_PIE_BOOTSTRAP. + * elf/get-dynamic-info.h (elf_get_dynamic_info): Likewise. + * gmon/Makefile (tests): Add tst-gmon-static-pie. + (tests-static): Likewise. + (DEFAULT-LDFLAGS-tst-gmon-static): Removed. + (tst-gmon-static-no-pie): New. + (CFLAGS-tst-gmon-static-pie.c): Likewise. + (CRT-tst-gmon-static-pie): Likewise. + (tst-gmon-static-pie-ENV): Likewise. + (tests-special): Likewise. + ($(objpfx)tst-gmon-static-pie.out): Likewise. + (clean-tst-gmon-static-pie-data): Likewise. + ($(objpfx)tst-gmon-static-pie-gprof.out): Likewise. + * gmon/tst-gmon-static-pie.c: New file. + * manual/install.texi: Document --enable-static-pie. + * sysdeps/generic/ldsodefs.h (_dl_relocate_static_pie): New. + (_dl_get_dl_main_map): Likewise. + * sysdeps/i386/configure.ac: Check if linker supports static PIE. + * sysdeps/x86_64/configure.ac: Likewise. + * sysdeps/i386/configure: Regenerated. + * sysdeps/x86_64/configure: Likewise. + * sysdeps/mips/Makefile (ASFLAGS-.o): Add $(pie-default). + (ASFLAGS-.op): Likewise. + +2017-12-15 Joseph Myers + + * io/Makefile (tst-open-tmpfile-ARGS): New variable. + * posix/tst-mmap-offset.c (fname): Use /tmp. + * stdlib/tst-setcontext3.sh (tempfile): Use ${objpfx}. + +2017-12-15 Steve Ellcey + + * nscd/dbg_log.c (dbg_log): Increase msg buffer size. + +2017-12-15 Thomas Schwinge + + * sysdeps/mach/hurd/dl-sysdep.c (__access_noerrno): Don't set + errno. + +2017-12-15 Joseph Myers + + * scripts/build-many-glibcs.py (Context.add_all_configs): Use + --with-float=hard for arm-linux-gnueabihf configurations. + + [BZ #14121] + * po/Makefile (generated): Add $(ALL_LINGUAS:%=%.mo). + (%.mo): Change to $(objpfx)%.mo. Use $(make-target-directory). + ($(mo-installed)): Use $(objpfx)%.mo. + (realclean): Remove rule. + + * po/Makefile (linguas): Remove rule and dependencies. + (linguas.mo): Likewise. + (.PHONY): Do not depend on linguas and linguas.mo. + (podir): Remove variable. + (pofiles): Likewise. + [$(pofiles)] (%.po): Remove rule. + + * sysdeps/sparc/sparc32/Makefile + ($(divrem:%=$(sysdep_dir)/sparc/sparc32/%.S)): Do not include + start-of-line whitespace in argument of echo. + * sysdeps/sparc/sparc32/divrem.m4: Avoid generating lines starting + with whitespace. Generate __wrap_.udiv alias. + * sysdeps/sparc/sparc32/rem.S: Regenerated. + * sysdeps/sparc/sparc32/sdiv.S: Likewise. + * sysdeps/sparc/sparc32/udiv.S: Likewise. + * sysdeps/sparc/sparc32/urem.S: Likewise. + +2017-12-15 Rajalakshmi Srinivasaraghavan + + * sysdeps/powerpc/powerpc64/power8/strcpy.S: Use vectors + for aligned inputs. + +2017-12-14 Siddhesh Poyarekar + + * benchtests/bench-strcmp.c: Print output in JSON format. + + * elf/dl-tunables.list: Remove redundant SXID_ERASE. + +2017-12-14 Florian Weimer + + [BZ #22607] + CVE-2017-1000409 + * elf/dl-load.c (_dl_init_paths): Compute number of components in + the expanded path string. + +2017-12-14 Florian Weimer + + [BZ #22606] + CVE-2017-1000408 + * elf/dl-load.c (system_dirs): Update comment. + (nsystem_dirs_len): Use array_length. + (_dl_init_paths): Use nsystem_dirs_len to compute the array size. + +2017-12-14 Florian Weimer + + Simplify compiling most of support/ outside of glibc. + * support/check_addrinfo.c: Include . + * support/check_dns_packet.c: Likewise. + * support/check_hostent.c: Likewise. + * support/support_can_chroot.c: Include . + * support/support_format_addrinfo.c: Include + * support/support_format_dns_packet.c: Include . + * support/support_format_hostent.c: Include . + * support/support_format_netent.c: Likewise. + * support/support_write_string.c: Include . + * support/xdlfcn.c: Include . + +2017-12-14 H.J. Lu + + * sysdeps/x86_64/fpu/s_cosf.S: Removed. + +2017-12-14 Patrick McGehearty + Adhemerval Zanella + + * sysdeps/sparc/sparc32/sparcv9/multiarch/Makefile + (sysdeps_routines): Add memset-niagara7. + * sysdeps/sparc/sparc64/multiarch/Makefile (sysdes_rotuines): + Likewise. + * sysdeps/sparc/sparc32/sparcv9/multiarch/memset-niagara7.S: New + file. + * sysdeps/sparc/sparc64/multiarch/memset-niagara7.S: Likewise. + * sysdeps/sparc/sparc64/multiarch/ifunc-impl-list.c + (__libc_ifunc_impl_list): Add __bzero_niagara7 and __memset_niagara7. + * sysdeps/sparc/sparc64/multiarch/ifunc-memset.h (IFUNC_SELECTOR): + Add niagara7 option. + * NEWS: Mention sparc m7 optimized memcpy, mempcpy, memmove, and + memset. + + * sysdeps/sparc/sparc32/sparcv9/multiarch/Makefile + (sysdeps_routines): Add memcpy-memmove-niagara7 and memmove-ultra1. + * sysdeps/sparc/sparc64/multiarch/Makefile (sysdeps_routines): + Likewise. + * sysdeps/sparc/sparc32/sparcv9/multiarch/memcpy-memmove-niagara7.S: + New file. + * sysdeps/sparc/sparc32/sparcv9/multiarch/memmove-ultra1.S: Likewise. + * sysdeps/sparc/sparc32/sparcv9/multiarch/rtld-memmove.c: Likewise. + * sysdeps/sparc/sparc64/multiarch/ifunc-impl-list.c + (__libc_ifunc_impl_list): Add __memcpy_niagara7, __mempcpy_niagara7, + and __memmove_niagara7. + * sysdeps/sparc/sparc64/multiarch/ifunc-memcpy.h (IFUNC_SELECTOR): + Add niagara7 option. + * sysdeps/sparc/sparc64/multiarch/memmove.c: New file. + * sysdeps/sparc/sparc64/multiarch/ifunc-memmove.h: Likewise. + * sysdeps/sparc/sparc64/multiarch/memcpy-memmove-niagara7.S: Likewise. + * sysdeps/sparc/sparc64/multiarch/memmove-ultra1.S: Likewise. + * sysdeps/sparc/sparc64/multiarch/rtld-memmove.c: Likewise. + +2017-12-14 Jose E. Marchesi + + * sysdeps/sparc/sparc32/sparcv9/memmove.S: New file. + * sysdeps/sparc/sparc32/sparcv9/rtld-memmove.c: Likewise. + * sysdeps/sparc/sparc64/memmove.S: Likewise. + * sysdeps/sparc/sparc64/rtld-memmove.c: Likewise. + + * sysdeps/sparc/bits/hwcap.h (HWCAP_SPARC_ADP): Defined. + * sysdeps/sparc/dl-procinfo.c: Added "adp" to the + _dl_sparc_cap_flags array. + * sysdeps/sparc/dl-procinfo.h (_DL_HWCAP_COUNT): Increment. + +2017-12-13 Siddhesh Poyarekar + + * sysdeps/aarch64/strcmp.S (misaligned8): Compare dword at a + time whenever possible. + +2017-12-12 Carlos O'Donell + + * elf/Makefile [$(nss-crypt)$(static-nss-crypt) == yesno] + (CFLAGS-tst-linkall-static.c): Undefine USE_CRYPT first. + +2017-12-12 Joseph Myers + + * soft-fp/fmadf4.c: Move to .... + * sysdeps/ieee754/soft-fp/s_fma.c: ... here. + * soft-fp/fmasf4.c: Move to .... + * sysdeps/ieee754/soft-fp/s_fmaf.c: ... here. + * soft-fp/fmatf4.c: Move to .... + * sysdeps/ieee754/soft-fp/s_fmal.c: ... here. + * sysdeps/ieee754/soft-fp/Makefile: New file. + * sysdeps/arm/preconfigure.ac: Define with_fp_cond. + * sysdeps/arm/preconfigure: Regenerated. + * sysdeps/arm/nofpu/Implies: New file. + * sysdeps/arm/s_fma.c: Remove file. + * sysdeps/arm/s_fmaf.c: Likewise. + * sysdeps/m68k/coldfire/nofpu/Implies: New file. + * sysdeps/m68k/coldfire/nofpu/s_fma.c: Remove file. + * sysdeps/m68k/coldfire/nofpu/s_fmaf.c: Likewise. + * sysdeps/microblaze/Implies: Add ieee754/soft-fp. + * sysdeps/microblaze/s_fma.c: Remove file. + * sysdeps/microblaze/s_fmaf.c: Likewise. + * sysdeps/mips/mips32/nofpu/Implies: New file. + * sysdeps/mips/mips64/n32/fpu/s_fma.c: Likewise. + * sysdeps/mips/mips64/n32/nofpu/Implies: Likewise. + * sysdeps/mips/mips64/n64/fpu/s_fma.c: Likewise. + * sysdeps/mips/mips64/n64/nofpu/Implies: Likewise. + * sysdeps/mips/ieee754/s_fma.c: Remove file. + * sysdeps/mips/ieee754/s_fmaf.c: Likewise. + * sysdeps/mips/ieee754/s_fmal.c: Update include for move of fmal + implementation. + * sysdeps/nios2/Implies: Add ieee754/soft-fp. + * sysdeps/nios2/s_fma.c: Remove file. + * sysdeps/nios2/s_fmaf.c: Likewise. + * sysdeps/sh/nofpu/Implies: New file. + * sysdeps/sh/s_fma.c: Remove file. + * sysdeps/sh/s_fmaf.c: Likewise. + * sysdeps/tile/Implies: Add ieee754/soft-fp. + * sysdeps/tile/s_fma.c: Remove file. + * sysdeps/tile/s_fmaf.c: Likewise. + +2017-12-12 H.J. Lu + + * sysdeps/x86_64/fpu/multiarch/Makefile (libm-sysdep_routines): + Add s_cosf-sse2 and s_cosf-fma. + (CFLAGS-s_cosf-fma.c): New. + * sysdeps/x86_64/fpu/multiarch/s_cosf-fma.c: New file. + * sysdeps/x86_64/fpu/multiarch/s_cosf-sse2.c: Likewise. + * sysdeps/x86_64/fpu/multiarch/s_cosf.c: Likewise. + +2017-12-12 Steve Ellcey + + * nscd/nscd.h (init_traced_file): Change strncpy to memcpy. + +2017-12-12 Adhemerval Zanella + + * libio/Makefile (tests): Add tst-bz22415. + (tst-bz22415-ENV): New rule. + (generated): Add tst-bz22415.mtrace and tst-bz22415.check. + (tests-special): Add tst-bz22415-mem.out. + ($(objpfx)tst-bz22415-mem.out): New rule. + * libio/fileops.c (_IO_new_file_seekoff): Call _IO_free_backup_area + in case of a successful seek operation. + * libio/wfileops.c (_IO_wfile_seekoff): Likewise. + (_IO_wfile_overflow): Call _IO_free_wbackup_area in case a write + buffer is required. + * libio/tst-bz22415.c: New test. + + * sysdeps/ia64/fpu/libm-test-ulps: Update. + +2017-12-12 James Clarke + + * sysdeps/unix/sysv/linux/ia64/ipc_priv.h: New file defining + __IPC_64 to 0 to avoid IPC_64 being set. + +2017-12-12 Szabolcs Nagy + + [BZ #22593] + * math/bits/mathcalls.h (nextafter): Remove const. + (nexttoward): Likewise. + +2017-12-12 Joseph Myers + + * configure.ac (--with-fp): Remove configure option. + (with_fp_cond): New variable. + (libc_cv_with_fp): New configure test. Use this variable instead + of with_fp. + * configure: Regenerated. + * config.make.in (with-fp): Use @libc_cv_with_fp@. + * manual/install.texi (Configuring and compiling): Remove + --without-fp. + * INSTALL: Regenerated. + * sysdeps/m68k/preconfigure (with_fp_cond): Define for ColdFire. + * sysdeps/mips/preconfigure (with_fp_cond): Define. + * sysdeps/powerpc/preconfigure (with_fp_cond): Define for 32-bit. + * sysdeps/sh/preconfigure (with_fp_cond): Define. + * scripts/build-many-glibcs.py (Context.add_all_configs): Do not + use --without-fp to configure glibc. + +2017-12-12 Rical Jasan + + * manual/locale.texi (nl_langinfo): Fix a typo. + +2017-12-12 Aurelien Jarno + + [BZ #22588] + * manual/conf.texi (SC_SSIZE_MAX): Rename into _SC_SSIZE_MAX. + +2017-12-11 H.J. Lu + + * argp/Makefile (CFLAGS-argp-help.c): Replace = with +=. + (CFLAGS-argp-parse.c): Likewise. + (CFLAGS-argp-fmtstream.c): Likewise. + * crypt/Makefile (CPPFLAGS-sha256-crypt.c): Likewise. + (CPPFLAGS-sha512-crypt.c): Likewise. + (CPPFLAGS-md5-crypt.c): Likewise. + * debug/Makefile (CFLAGS-stack_chk_fail.c): Likewise. + (CFLAGS-stack_chk_fail_local.c): Likewise. + (CFLAGS-backtrace.c): Likewise. + (CFLAGS-sprintf_chk.c): Likewise. + (CFLAGS-snprintf_chk.c): Likewise. + (CFLAGS-vsprintf_chk.c): Likewise. + (CFLAGS-vsnprintf_chk.c): Likewise. + (CFLAGS-asprintf_chk.c): Likewise. + (CFLAGS-vasprintf_chk.c): Likewise. + (CFLAGS-obprintf_chk.c): Likewise. + (CFLAGS-dprintf_chk.c): Likewise. + (CFLAGS-vdprintf_chk.c): Likewise. + (CFLAGS-printf_chk.c): Likewise. + (CFLAGS-fprintf_chk.c): Likewise. + (CFLAGS-vprintf_chk.c): Likewise. + (CFLAGS-vfprintf_chk.c): Likewise. + (CFLAGS-gets_chk.c): Likewise. + (CFLAGS-fgets_chk.c): Likewise. + (CFLAGS-fgets_u_chk.c): Likewise. + (CFLAGS-fread_chk.c): Likewise. + (CFLAGS-fread_u_chk.c): Likewise. + (CFLAGS-swprintf_chk.c): Likewise. + (CFLAGS-vswprintf_chk.c): Likewise. + (CFLAGS-wprintf_chk.c): Likewise. + (CFLAGS-fwprintf_chk.c): Likewise. + (CFLAGS-vwprintf_chk.c): Likewise. + (CFLAGS-vfwprintf_chk.c): Likewise. + (CFLAGS-fgetws_chk.c): Likewise. + (CFLAGS-fgetws_u_chk.c): Likewise. + (CFLAGS-read_chk.c): Likewise. + (CFLAGS-pread_chk.c): Likewise. + (CFLAGS-pread64_chk.c): Likewise. + (CFLAGS-recv_chk.c): Likewise. + (CFLAGS-recvfrom_chk.c): Likewise. + (CFLAGS-tst-longjmp_chk.c): Likewise. + (CPPFLAGS-tst-longjmp_chk.c): Likewise. + (CFLAGS-tst-longjmp_chk2.c): Likewise. + (CPPFLAGS-tst-longjmp_chk2.c): Likewise. + (CFLAGS-tst-longjmp_chk3.c): Likewise. + (CPPFLAGS-tst-longjmp_chk3.c): Likewise. + (CFLAGS-tst-chk1.c): Likewise. + (CFLAGS-tst-chk2.c): Likewise. + (CFLAGS-tst-chk3.c): Likewise. + (CFLAGS-tst-chk4.cc): Likewise. + (CFLAGS-tst-chk5.cc): Likewise. + (CFLAGS-tst-chk6.cc): Likewise. + (CFLAGS-tst-lfschk1.c): Likewise. + (CFLAGS-tst-lfschk2.c): Likewise. + (CFLAGS-tst-lfschk3.c): Likewise. + (CFLAGS-tst-lfschk4.cc): Likewise. + (CFLAGS-tst-lfschk5.cc): Likewise. + (CFLAGS-tst-lfschk6.cc): Likewise. + (CFLAGS-tst-ssp-1.c): Likewise. + * dirent/Makefile (CFLAGS-scandir.c): Likewise. + (CFLAGS-scandir64.c): Likewise. + (CFLAGS-scandir-tail.c): Likewise. + (CFLAGS-scandir64-tail.c): Likewise. + * elf/Makefile (CPPFLAGS-dl-tunables.c): Likewise. + (CFLAGS-dl-tunables.c): Likewise. + (CFLAGS-dl-runtime.c): Likewise. + (CFLAGS-dl-lookup.c): Likewise. + (CFLAGS-dl-iterate-phdr.c): Likewise. + (CFLAGS-vismain.c): Likewise. + (CFLAGS-tst-linkall-static.c): Likewise. + (CFLAGS-tst-linkall-static.c): Likewise. + (CPPFLAGS-dl-load.c): Likewise. + (CFLAGS-ldconfig.c): Likewise. + (CFLAGS-dl-cache.c): Likewise. + (CFLAGS-cache.c): Likewise. + (CFLAGS-rtld.c): Likewise. + (CFLAGS-multiload.c): Likewise. + (CFLAGS-filtmod1.c): Likewise. + (CFLAGS-tst-align.c): Likewise. + (CFLAGS-tst-align2.c): Likewise. + (CFLAGS-tst-alignmod.c): Likewise. + (CFLAGS-tst-alignmod2.c): Likewise. + (CPPFLAGS-tst-execstack.c): Likewise. + (CFLAGS-tst-ptrguard1-static.c): Likewise. + (CFLAGS-tst-latepthreadmod.c): Likewise. + * grp/Makefile (CFLAGS-getgrgid_r.c): Likewise. + (CFLAGS-getgrnam_r.c): Likewise. + (CFLAGS-getgrent_r.c): Likewise. + (CFLAGS-getgrent.c): Likewise. + (CFLAGS-fgetgrent.c): Likewise. + (CFLAGS-fgetgrent_r.c): Likewise. + (CFLAGS-putgrent.c): Likewise. + (CFLAGS-initgroups.c): Likewise. + (CFLAGS-getgrgid.c): Likewise. + * gshadow/Makefile (CFLAGS-getsgent_r.c): Likewise. + (CFLAGS-getsgent.c): Likewise. + (CFLAGS-fgetsgent.c): Likewise. + (CFLAGS-fgetsgent_r.c): Likewise. + (CFLAGS-putsgent.c): Likewise. + (CFLAGS-getsgnam.c): Likewise. + (CFLAGS-getsgnam_r.c): Likewise. + * iconv/Makefile (CFLAGS-iconv_prog.c): Likewise. + (CFLAGS-iconv_charmap.c): Likewise. + (CFLAGS-dummy-repertoire.c): Likewise. + (CFLAGS-charmap.c): Likewise. + (CFLAGS-linereader.c): Likewise. + (CFLAGS-simple-hash.c): Likewise. + (CFLAGS-gconv_conf.c): Likewise. + (CFLAGS-iconvconfig.c): Likewise. + * inet/Makefile (CFLAGS-gethstbyad_r.c): Likewise. + (CFLAGS-gethstbyad.c): Likewise. + (CFLAGS-gethstbynm_r.c): Likewise. + (CFLAGS-gethstbynm.c): Likewise. + (CFLAGS-gethstbynm2_r.c): Likewise. + (CFLAGS-gethstbynm2.c): Likewise. + (CFLAGS-gethstent_r.c): Likewise. + (CFLAGS-gethstent.c): Likewise. + (CFLAGS-rcmd.c): Likewise. + (CFLAGS-getnetbynm_r.c): Likewise. + (CFLAGS-getnetbynm.c): Likewise. + (CFLAGS-getnetbyad_r.c): Likewise. + (CFLAGS-getnetbyad.c): Likewise. + (CFLAGS-getnetent_r.c): Likewise. + (CFLAGS-getnetent.c): Likewise. + (CFLAGS-getaliasent_r.c): Likewise. + (CFLAGS-getaliasent.c): Likewise. + (CFLAGS-getrpcent_r.c): Likewise. + (CFLAGS-getrpcent.c): Likewise. + (CFLAGS-getservent_r.c): Likewise. + (CFLAGS-getservent.c): Likewise. + (CFLAGS-getprtent_r.c): Likewise. + (CFLAGS-getprtent.c): Likewise. + (CFLAGS-either_ntoh.c): Likewise. + (CFLAGS-either_hton.c): Likewise. + (CFLAGS-getnetgrent.c): Likewise. + (CFLAGS-getnetgrent_r.c): Likewise. + (CFLAGS-tst-checks-posix.c): Likewise. + (CFLAGS-tst-sockaddr.c): Likewise. + * intl/Makefile (CFLAGS-tst-gettext.c): Likewise. + (CFLAGS-tst-translit.c): Likewise. + (CFLAGS-tst-gettext2.c): Likewise. + (CFLAGS-tst-codeset.c): Likewise. + (CFLAGS-tst-gettext3.c): Likewise. + (CFLAGS-tst-gettext4.c): Likewise. + (CFLAGS-tst-gettext5.c): Likewise. + (CFLAGS-tst-gettext6.c): Likewise. + * io/Makefile (CFLAGS-open.c): Likewise. + (CFLAGS-open64.c): Likewise. + (CFLAGS-creat.c): Likewise. + (CFLAGS-creat64.c): Likewise. + (CFLAGS-fcntl.c): Likewise. + (CFLAGS-poll.c): Likewise. + (CFLAGS-ppoll.c): Likewise. + (CFLAGS-lockf.c): Likewise. + (CFLAGS-statfs.c): Likewise. + (CFLAGS-fstatfs.c): Likewise. + (CFLAGS-statvfs.c): Likewise. + (CFLAGS-fstatvfs.c): Likewise. + (CFLAGS-fts.c): Likewise. + (CFLAGS-fts64.c): Likewise. + (CFLAGS-ftw.c): Likewise. + (CFLAGS-ftw64.c): Likewise. + (CFLAGS-lockf.c): Likewise. + (CFLAGS-posix_fallocate.c): Likewise. + (CFLAGS-posix_fallocate64.c): Likewise. + (CFLAGS-fallocate.c): Likewise. + (CFLAGS-fallocate64.c): Likewise. + (CFLAGS-read.c): Likewise. + (CFLAGS-write.c): Likewise. + (CFLAGS-test-stat.c): Likewise. + (CFLAGS-test-lfs.c): Likewise. + * libio/Makefile (CFLAGS-fileops.c): Likewise. + (CFLAGS-fputc.c): Likewise. + (CFLAGS-fputwc.c): Likewise. + (CFLAGS-freopen64.c): Likewise. + (CFLAGS-freopen.c): Likewise. + (CFLAGS-fseek.c): Likewise. + (CFLAGS-fseeko64.c): Likewise. + (CFLAGS-fseeko.c): Likewise. + (CFLAGS-ftello64.c): Likewise. + (CFLAGS-ftello.c): Likewise. + (CFLAGS-fwide.c): Likewise. + (CFLAGS-genops.c): Likewise. + (CFLAGS-getc.c): Likewise. + (CFLAGS-getchar.c): Likewise. + (CFLAGS-getwc.c): Likewise. + (CFLAGS-getwchar.c): Likewise. + (CFLAGS-iofclose.c): Likewise. + (CFLAGS-iofflush.c): Likewise. + (CFLAGS-iofgetpos64.c): Likewise. + (CFLAGS-iofgetpos.c): Likewise. + (CFLAGS-iofgets.c): Likewise. + (CFLAGS-iofgetws.c): Likewise. + (CFLAGS-iofputs.c): Likewise. + (CFLAGS-iofputws.c): Likewise. + (CFLAGS-iofread.c): Likewise. + (CFLAGS-iofsetpos64.c): Likewise. + (CFLAGS-iofsetpos.c): Likewise. + (CFLAGS-ioftell.c): Likewise. + (CFLAGS-iofwrite.c): Likewise. + (CFLAGS-iogetdelim.c): Likewise. + (CFLAGS-iogetline.c): Likewise. + (CFLAGS-iogets.c): Likewise. + (CFLAGS-iogetwline.c): Likewise. + (CFLAGS-ioputs.c): Likewise. + (CFLAGS-ioseekoff.c): Likewise. + (CFLAGS-ioseekpos.c): Likewise. + (CFLAGS-iosetbuffer.c): Likewise. + (CFLAGS-iosetvbuf.c): Likewise. + (CFLAGS-ioungetc.c): Likewise. + (CFLAGS-ioungetwc.c): Likewise. + (CFLAGS-oldfileops.c): Likewise. + (CFLAGS-oldiofclose.c): Likewise. + (CFLAGS-oldiofgetpos64.c): Likewise. + (CFLAGS-oldiofgetpos.c): Likewise. + (CFLAGS-oldiofsetpos64.c): Likewise. + (CFLAGS-oldiofsetpos.c): Likewise. + (CFLAGS-peekc.c): Likewise. + (CFLAGS-putc.c): Likewise. + (CFLAGS-putchar.c): Likewise. + (CFLAGS-putwc.c): Likewise. + (CFLAGS-putwchar.c): Likewise. + (CFLAGS-rewind.c): Likewise. + (CFLAGS-wfileops.c): Likewise. + (CFLAGS-wgenops.c): Likewise. + (CFLAGS-oldiofopen.c): Likewise. + (CFLAGS-iofopen.c): Likewise. + (CFLAGS-iofopen64.c): Likewise. + (CFLAGS-oldtmpfile.c): Likewise. + (CFLAGS-tst_putwc.c): Likewise. + * locale/Makefile (CFLAGS-md5.c): Likewise. + (CFLAGS-charmap.c): Likewise. + (CFLAGS-locfile.c): Likewise. + (CFLAGS-charmap-dir.c): Likewise. + * login/Makefile (CFLAGS-grantpt.c): Likewise. + (CFLAGS-getpt.c): Likewise. + (CFLAGS-pt_chown.c): Likewise. + * malloc/Makefile (CFLAGS-mcheck-init.c): Likewise. + (CFLAGS-obstack.c): Likewise. + * math/Makefile (CFLAGS-test-tgmath3.c): Likewise. + (CFLAGS-test-double-vlen4-wrappers.c): Likewise. + (CFLAGS-test-double-vlen8-wrappers.c): Likewise. + (CFLAGS-test-float-vlen8-wrappers.c): Likewise. + (CFLAGS-test-float-vlen16-wrappers.c): Likewise. + (CFLAGS-test-tgmath.c): Likewise. + (CFLAGS-test-tgmath2.c): Likewise. + (CFLAGS-test-tgmath-ret.c): Likewise. + (CFLAGS-test-powl.c): Likewise. + (CFLAGS-test-snan.c): Likewise. + (CFLAGS-test-signgam-finite.c): Likewise. + (CFLAGS-test-signgam-finite-c99.c): Likewise. + (CFLAGS-test-signgam-finite-c11.c): Likewise. + (CFLAGS-test-signgam-uchar.c): Likewise. + (CFLAGS-test-signgam-uchar-init.c): Likewise. + (CFLAGS-test-signgam-uchar-static.c): Likewise. + (CFLAGS-test-signgam-uchar-init-static.c): Likewise. + (CFLAGS-test-signgam-uint.c): Likewise. + (CFLAGS-test-signgam-uint-init.c): Likewise. + (CFLAGS-test-signgam-uint-static.c): Likewise. + (CFLAGS-test-signgam-uint-init-static.c): Likewise. + (CFLAGS-test-signgam-ullong.c): Likewise. + (CFLAGS-test-signgam-ullong-init.c): Likewise. + (CFLAGS-test-signgam-ullong-static.c): Likewise. + (CFLAGS-test-signgam-ullong-init-static.c): Likewise. + (CFLAGS-test-math-cxx11.cc): Likewise. + (CFLAGS-test-math-isinff.cc): Likewise. + (CFLAGS-test-math-iszero.cc): Likewise. + (CFLAGS-test-math-issignaling.cc): Likewise. + (CFLAGS-test-math-iscanonical.cc): Likewise. + (CFLAGS-test-iszero-excess-precision.c): Likewise. + (CFLAGS-test-iseqsig-excess-precision.c): Likewise. + (CFLAGS-test-flt-eval-method.c): Likewise. + (CFLAGS-test-fe-snans-always-signal.c): Likewise. + (CFLAGS-test-finite-macros.c): Likewise. + * misc/Makefile (CFLAGS-select.c): Likewise. + (CFLAGS-tsearch.c): Likewise. + (CFLAGS-lsearch.c): Likewise. + (CFLAGS-pselect.c): Likewise. + (CFLAGS-readv.c): Likewise. + (CFLAGS-writev.c): Likewise. + (CFLAGS-preadv.c): Likewise. + (CFLAGS-preadv64.c): Likewise. + (CFLAGS-pwritev.c): Likewise. + (CFLAGS-pwritev64.c): Likewise. + (CFLAGS-preadv2.c): Likewise. + (CFLAGS-preadv64v2.c): Likewise. + (CFLAGS-pwritev2.c): Likewise. + (CFLAGS-pwritev64v2.c): Likewise. + (CFLAGS-usleep.c): Likewise. + (CFLAGS-syslog.c): Likewise. + (CFLAGS-error.c): Likewise. + (CFLAGS-getpass.c): Likewise. + (CFLAGS-mkstemp.c): Likewise. + (CFLAGS-mkstemp64.c): Likewise. + (CFLAGS-getsysstats.c): Likewise. + (CFLAGS-getusershell.c): Likewise. + (CFLAGS-err.c): Likewise. + (CFLAGS-tst-tsearch.c): Likewise. + (CFLAGS-msync.c): Likewise. + (CFLAGS-fdatasync.c): Likewise. + (CFLAGS-fsync.c): Likewise. + * nptl/Makefile (CFLAGS-nptl-init.c): Likewise. + (CFLAGS-unwind.c): Likewise. + (CFLAGS-unwind-forcedunwind.c): Likewise. + (CFLAGS-pthread_cancel.c): Likewise. + (CFLAGS-pthread_setcancelstate.c): Likewise. + (CFLAGS-pthread_setcanceltype.c): Likewise. + (CFLAGS-cancellation.c): Likewise. + (CFLAGS-libc-cancellation.c): Likewise. + (CFLAGS-pthread_exit.c): Likewise. + (CFLAGS-forward.c): Likewise. + (CFLAGS-pthread_testcancel.c): Likewise. + (CFLAGS-pthread_join.c): Likewise. + (CFLAGS-pthread_timedjoin.c): Likewise. + (CFLAGS-pthread_once.c): Likewise. + (CFLAGS-pthread_cond_wait.c): Likewise. + (CFLAGS-sem_wait.c): Likewise. + (CFLAGS-sem_timedwait.c): Likewise. + (CFLAGS-fcntl.c): Likewise. + (CFLAGS-lockf.c): Likewise. + (CFLAGS-pread.c): Likewise. + (CFLAGS-pread64.c): Likewise. + (CFLAGS-pwrite.c): Likewise. + (CFLAGS-pwrite64.c): Likewise. + (CFLAGS-wait.c): Likewise. + (CFLAGS-waitpid.c): Likewise. + (CFLAGS-sigwait.c): Likewise. + (CFLAGS-msgrcv.c): Likewise. + (CFLAGS-msgsnd.c): Likewise. + (CFLAGS-tcdrain.c): Likewise. + (CFLAGS-open.c): Likewise. + (CFLAGS-open64.c): Likewise. + (CFLAGS-pause.c): Likewise. + (CFLAGS-recv.c): Likewise. + (CFLAGS-send.c): Likewise. + (CFLAGS-accept.c): Likewise. + (CFLAGS-sendto.c): Likewise. + (CFLAGS-connect.c): Likewise. + (CFLAGS-recvfrom.c): Likewise. + (CFLAGS-recvmsg.c): Likewise. + (CFLAGS-sendmsg.c): Likewise. + (CFLAGS-close.c): Likewise. + (CFLAGS-read.c): Likewise. + (CFLAGS-write.c): Likewise. + (CFLAGS-nanosleep.c): Likewise. + (CFLAGS-sigsuspend.c): Likewise. + (CFLAGS-msync.c): Likewise. + (CFLAGS-fdatasync.c): Likewise. + (CFLAGS-fsync.c): Likewise. + (CFLAGS-pt-system.c): Likewise. + (CFLAGS-tst-cleanup2.c): Likewise. + (CFLAGS-tst-cleanupx2.c): Likewise. + (CFLAGS-flockfile.c): Likewise. + (CFLAGS-ftrylockfile.c): Likewise. + (CFLAGS-funlockfile.c): Likewise. + (CFLAGS-tst-initializers1.c): Likewise. + (CFLAGS-tst-initializers1-c89.c): Likewise. + (CFLAGS-tst-initializers1-c99.c): Likewise. + (CFLAGS-tst-initializers1-c11.c): Likewise. + (CFLAGS-tst-initializers1-gnu89.c): Likewise. + (CFLAGS-tst-initializers1-gnu99.c): Likewise. + (CFLAGS-tst-initializers1-gnu11.c): Likewise. + * nscd/Makefile (CFLAGS-nscd_getpw_r.c): Likewise. + (CFLAGS-nscd_getgr_r.c): Likewise. + (CFLAGS-nscd_gethst_r.c): Likewise. + (CFLAGS-nscd_getai.c): Likewise. + (CFLAGS-nscd_initgroups.c): Likewise. + * posix/Makefile (CFLAGS-getaddrinfo.c): Likewise. + (CFLAGS-pause.c): Likewise. + (CFLAGS-pread.c): Likewise. + (CFLAGS-pread64.c): Likewise. + (CFLAGS-pwrite.c): Likewise. + (CFLAGS-pwrite64.c): Likewise. + (CFLAGS-sleep.c): Likewise. + (CFLAGS-wait.c): Likewise. + (CFLAGS-waitid.c): Likewise. + (CFLAGS-waitpid.c): Likewise. + (CFLAGS-getopt.c): Likewise. + (CFLAGS-wordexp.c): Likewise. + (CFLAGS-sysconf.c): Likewise. + (CFLAGS-pathconf.c): Likewise. + (CFLAGS-fpathconf.c): Likewise. + (CFLAGS-spawn.c): Likewise. + (CFLAGS-spawnp.c): Likewise. + (CFLAGS-spawni.c): Likewise. + (CFLAGS-glob.c): Likewise. + (CFLAGS-glob64.c): Likewise. + (CFLAGS-getconf.c): Likewise. + (CFLAGS-nanosleep.c): Likewise. + * pwd/Makefile (CFLAGS-getpwent_r.c): Likewise. + (CFLAGS-getpwent.c): Likewise. + (CFLAGS-getpw.c): Likewise. + (CFLAGS-fgetpwent_r.c): Likewise. + * resolv/Makefile (CFLAGS-res_hconf.c): Likewise. + * rt/Makefile (CFLAGS-aio_suspend.c): Likewise. + (CFLAGS-mq_timedreceive.c): Likewise. + (CFLAGS-mq_timedsend.c): Likewise. + (CFLAGS-clock_nanosleep.c): Likewise. + (CFLAGS-librt-cancellation.c): Likewise. + * shadow/Makefile (CFLAGS-getspent_r.c): Likewise. + (CFLAGS-getspent.c): Likewise. + (CFLAGS-fgetspent.c): Likewise. + (CFLAGS-fgetspent_r.c): Likewise. + (CFLAGS-putspent.c): Likewise. + (CFLAGS-getspnam.c): Likewise. + (CFLAGS-getspnam_r.c): Likewise. + * signal/Makefile (CFLAGS-sigpause.c): Likewise. + (CFLAGS-sigsuspend.c): Likewise. + (CFLAGS-sigtimedwait.c): Likewise. + (CFLAGS-sigwait.c): Likewise. + (CFLAGS-sigwaitinfo.c): Likewise. + (CFLAGS-sigreturn.c): Likewise. + * stdio-common/Makefile (CFLAGS-vfprintf.c): Likewise. + (CFLAGS-vfwprintf.c): Likewise. + (CFLAGS-tmpfile.c): Likewise. + (CFLAGS-tmpfile64.c): Likewise. + (CFLAGS-tempname.c): Likewise. + (CFLAGS-psignal.c): Likewise. + (CFLAGS-vprintf.c): Likewise. + (CFLAGS-cuserid.c): Likewise. + (CFLAGS-errlist.c): Likewise. + (CFLAGS-siglist.c): Likewise. + (CFLAGS-scanf15.c): Likewise. + (CFLAGS-scanf17.c): Likewise. + * stdlib/Makefile (CFLAGS-bsearch.c): Likewise. + (CFLAGS-msort.c): Likewise. + (CFLAGS-qsort.c): Likewise. + (CFLAGS-system.c): Likewise. + (CFLAGS-fmtmsg.c): Likewise. + (CFLAGS-strfmon.c): Likewise. + (CFLAGS-strfmon_l.c): Likewise. + (CFLAGS-strfromd.c): Likewise. + (CFLAGS-strfromf.c): Likewise. + (CFLAGS-strfroml.c): Likewise. + (CFLAGS-tst-bsearch.c): Likewise. + (CFLAGS-tst-qsort.c): Likewise. + (CFLAGS-tst-makecontext2.c): Likewise. + * sunrpc/Makefile (CFLAGS-xbootparam_prot.c): Likewise. + (CFLAGS-xnlm_prot.c): Likewise. + (CFLAGS-xrstat.c): Likewise. + (CFLAGS-xyppasswd.c): Likewise. + (CFLAGS-xklm_prot.c): Likewise. + (CFLAGS-xrex.c): Likewise. + (CFLAGS-xsm_inter.c): Likewise. + (CFLAGS-xmount.c): Likewise. + (CFLAGS-xrusers.c): Likewise. + (CFLAGS-xspray.c): Likewise. + (CFLAGS-xnfs_prot.c): Likewise. + (CFLAGS-xrquota.c): Likewise. + (CFLAGS-xkey_prot.c): Likewise. + (CFLAGS-auth_unix.c): Likewise. + (CFLAGS-key_call.c): Likewise. + (CFLAGS-pmap_rmt.c): Likewise. + (CFLAGS-clnt_perr.c): Likewise. + (CFLAGS-openchild.c): Likewise. + * sysvipc/Makefile (CFLAGS-msgrcv.c): Likewise. + (CFLAGS-msgsnd.c): Likewise. + * termios/Makefile (CFLAGS-tcdrain.c): Likewise. + * time/Makefile (CFLAGS-tzfile.c): Likewise. + (CFLAGS-tzset.c): Likewise. + (CFLAGS-getdate.c): Likewise. + (CFLAGS-test_time.c): Likewise. + (CPPFLAGS-tst-tzname.c): Likewise. + * timezone/Makefile (CFLAGS-zdump.c): Likewise. + (CFLAGS-zic.c): Likewise. + * wcsmbs/Makefile (CFLAGS-wcwidth.c): Likewise. + (CFLAGS-wcswidth.c): Likewise. + (CFLAGS-wcstol.c): Likewise. + (CFLAGS-wcstoul.c): Likewise. + (CFLAGS-wcstoll.c): Likewise. + (CFLAGS-wcstoull.c): Likewise. + (CFLAGS-wcstod.c): Likewise. + (CFLAGS-wcstold.c): Likewise. + (CFLAGS-wcstof128.c): Likewise. + (CFLAGS-wcstof.c): Likewise. + (CFLAGS-wcstol_l.c): Likewise. + (CFLAGS-wcstoul_l.c): Likewise. + (CFLAGS-wcstoll_l.c): Likewise. + (CFLAGS-wcstoull_l.c): Likewise. + (CFLAGS-wcstod_l.c): Likewise. + (CFLAGS-wcstold_l.c): Likewise. + (CFLAGS-wcstof128_l.c): Likewise. + (CFLAGS-wcstof_l.c): Likewise. + (CPPFLAGS-tst-wchar-h.c): Likewise. + (CPPFLAGS-wcstold_l.c): Likewise. + +2017-12-11 Paul A. Clarke + + * sysdeps/ieee754/flt-32/s_cosf.c: New implementation. + +2017-12-11 Adhemerval Zanella + Tulio Magno Quites Machado Filho + + * manual/tunables.texi (Hardware Capability Tunables): Document + glibc.tune.cached_memopt. + * sysdeps/powerpc/cpu-features.c: New file. + * sysdeps/powerpc/cpu-features.h: New file. + * sysdeps/powerpc/dl-procinfo.c [!IS_IN(ldconfig)]: Add + _dl_powerpc_cpu_features. + * sysdeps/powerpc/dl-tunables.list: New file. + * sysdeps/powerpc/ldsodefs.h: Include cpu-features.h. + * sysdeps/powerpc/powerpc32/power4/multiarch/init-arch.h + (INIT_ARCH): Initialize use_aligned_memopt. + * sysdeps/powerpc/powerpc64/dl-machine.h [defined(SHARED && + IS_IN(rtld))]: Restrict dl_platform_init availability and + initialize CPU features used by tunables. + * sysdeps/powerpc/powerpc64/multiarch/Makefile (sysdep_routines): + Add memcpy-power8-cached. + * sysdeps/powerpc/powerpc64/multiarch/ifunc-impl-list.c: Add + __memcpy_power8_cached. + * sysdeps/powerpc/powerpc64/multiarch/memcpy.c: Likewise. + * sysdeps/powerpc/powerpc64/multiarch/memcpy-power8-cached.S: + New file. + +2017-12-11 H.J. Lu + + * string/Makefile (CFLAGS-inl-tester.c): Replace = with +=. + (CFLAGS-noinl-tester.c): Likewise. + (CFLAGS-tst-strlen.c): Likewise. + (CFLAGS-stratcliff.c): Likewise. + (CFLAGS-test-ffs.c): Likewise. + (CFLAGS-tst-inlcall.c): Likewise. + (CFLAGS-tst-xbzero-opt.c): Likewise. + (CFLAGS-memcpy.c): Likewise. + (CFLAGS-wordcopy.c): Likewise. + +2017-12-11 Stefan Liebler + + * sysdeps/s390/s390-64/dl-trampoline.h (_dl_runtime_resolve): + Store r15 on stack and add cfi rule. + * sysdeps/s390/s390-32/dl-trampoline.h (_dl_runtime_resolve): + Likewise. + +2017-12-10 Aurelien Jarno + + [BZ #22577] + * elf/rtld.c (init_tls): Add missing new line to the _dl_fatal_printf + call. + +2017-12-07 H.J. Lu + + * sysdeps/x86_64/fpu/multiarch/Makefile (libm-sysdep_routines): + Add s_sinf-sse2 and s_sinf-fma. + (CFLAGS-s_sinf-fma.c): New. + * sysdeps/x86_64/fpu/multiarch/s_sinf-fma.c: New file. + * sysdeps/x86_64/fpu/multiarch/s_sinf-sse2.c: Likewise. + * sysdeps/x86_64/fpu/multiarch/s_sinf.c: Likewise. + +2017-12-07 H.J. Lu + + * sysdeps/x86_64/fpu/s_sinf.S: Removed. + +2017-12-07 Joseph Myers + + [BZ #22568] + * math/s_ctan_template.c (M_DECL_FUNC (__ctan)): Set imaginary + part of result to imaginary part of argument if it is zero and the + real part of the argument is not finite. + * math/s_ctanh_template.c (M_DECL_FUNC (__ctanh)): Set real part + of result to real part of argument if it is zero and the imaginary + part of the argument is not finite. + +2017-12-07 Mike FABIAN + + [BZ #22524] + * localedata/Makefile: Add lt_LT.UTF-8 to test-input + and to the list of locales to be built for testing. + * localedata/lt_LT.UTF-8.in: New file for testing the collation. + * localedata/locales/lt_LT (LC_COLLATE): Use “copy "iso14651_t1"” + and build the collation rules upon that. + +2017-12-07 Joseph Myers + + * bits/floatn-common.h (__HAVE_FLOAT32): Define to 1. + * manual/math.texi (Mathematics): Document support for _Float32. + * math/Makefile (test-types): Add float32. + * math/Versions (GLIBC_2.27): Add _Float32 functions. + * stdlib/Versions (GLIBC_2.27): Likewise. + * wcsmbs/Versions (GLIBC_2.27): Likewise. + * sysdeps/unix/sysv/linux/aarch64/libc.abilist: Update. + * sysdeps/unix/sysv/linux/aarch64/libm.abilist: Likewise. + * sysdeps/unix/sysv/linux/alpha/libc.abilist: Likewise. + * sysdeps/unix/sysv/linux/alpha/libm.abilist: Likewise. + * sysdeps/unix/sysv/linux/arm/libc.abilist: Likewise. + * sysdeps/unix/sysv/linux/arm/libm.abilist: Likewise. + * sysdeps/unix/sysv/linux/hppa/libc.abilist: Likewise. + * sysdeps/unix/sysv/linux/hppa/libm.abilist: Likewise. + * sysdeps/unix/sysv/linux/i386/libc.abilist: Likewise. + * sysdeps/unix/sysv/linux/i386/libm.abilist: Likewise. + * sysdeps/unix/sysv/linux/ia64/libc.abilist: Likewise. + * sysdeps/unix/sysv/linux/ia64/libm.abilist: Likewise. + * sysdeps/unix/sysv/linux/m68k/coldfire/libc.abilist: Likewise. + * sysdeps/unix/sysv/linux/m68k/coldfire/libm.abilist: Likewise. + * sysdeps/unix/sysv/linux/m68k/m680x0/libc.abilist: Likewise. + * sysdeps/unix/sysv/linux/m68k/m680x0/libm.abilist: Likewise. + * sysdeps/unix/sysv/linux/microblaze/libc.abilist: Likewise. + * sysdeps/unix/sysv/linux/microblaze/libm.abilist: Likewise. + * sysdeps/unix/sysv/linux/mips/mips32/fpu/libc.abilist: Likewise. + * sysdeps/unix/sysv/linux/mips/mips32/libm.abilist: Likewise. + * sysdeps/unix/sysv/linux/mips/mips32/nofpu/libc.abilist: + Likewise. + * sysdeps/unix/sysv/linux/mips/mips64/libm.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/nios2/libm.abilist: Likewise. + * sysdeps/unix/sysv/linux/powerpc/powerpc32/fpu/libc.abilist: + Likewise. + * sysdeps/unix/sysv/linux/powerpc/powerpc32/fpu/libm.abilist: + Likewise. + * sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/libc.abilist: + Likewise. + * sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/libm.abilist: + Likewise. + + * sysdeps/unix/sysv/linux/powerpc/powerpc64/libc-le.abilist: + Likewise. + * sysdeps/unix/sysv/linux/powerpc/powerpc64/libc.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/libc.abilist: Likewise. + * sysdeps/unix/sysv/linux/s390/s390-32/libm.abilist: Likewise. + * sysdeps/unix/sysv/linux/s390/s390-64/libc.abilist: Likewise. + * sysdeps/unix/sysv/linux/s390/s390-64/libm.abilist: Likewise. + * sysdeps/unix/sysv/linux/sh/libc.abilist: Likewise. + * sysdeps/unix/sysv/linux/sh/libm.abilist: Likewise. + * sysdeps/unix/sysv/linux/sparc/sparc32/libc.abilist: Likewise. + * sysdeps/unix/sysv/linux/sparc/sparc32/libm.abilist: Likewise. + * sysdeps/unix/sysv/linux/sparc/sparc64/libc.abilist: Likewise. + * sysdeps/unix/sysv/linux/sparc/sparc64/libm.abilist: Likewise. + * sysdeps/unix/sysv/linux/tile/tilegx/tilegx32/libc.abilist: + Likewise. + * sysdeps/unix/sysv/linux/tile/tilegx/tilegx32/libm.abilist: + Likewise. + * sysdeps/unix/sysv/linux/tile/tilegx/tilegx64/libc.abilist: + Likewise. + * sysdeps/unix/sysv/linux/tile/tilegx/tilegx64/libm.abilist: + Likewise. + * sysdeps/unix/sysv/linux/tile/tilepro/libc.abilist: Likewise. + * sysdeps/unix/sysv/linux/tile/tilepro/libm.abilist: Likewise. + * sysdeps/unix/sysv/linux/x86_64/64/libc.abilist: Likewise. + * sysdeps/unix/sysv/linux/x86_64/64/libm.abilist: Likewise. + * sysdeps/unix/sysv/linux/x86_64/x32/libc.abilist: Likewise. + * sysdeps/unix/sysv/linux/x86_64/x32/libm.abilist: Likewise. + * sysdeps/i386/fpu/libm-test-ulps: Likewise. + * sysdeps/i386/i686/fpu/multiarch/libm-test-ulps: Likewise. + +2017-12-06 Joseph Myers + + * stdlib/strtof.c: Include + [__HAVE_FLOAT32 && !__HAVE_DISTINCT_FLOAT32] (strtof32): Define + and later undefine as macro. Define as weak alias if + [!USE_WIDE_CHAR]. + [__HAVE_FLOAT32 && !__HAVE_DISTINCT_FLOAT32] (wcstof32): Define + and later undefine as macro. Define as weak alias if + [USE_WIDE_CHAR]. + * stdlib/strtof_l.c: Include + [__HAVE_FLOAT32 && !__HAVE_DISTINCT_FLOAT32] (strtof32_l): Define + and later undefine as macro. Define as weak alias if + [!USE_WIDE_CHAR]. + [__HAVE_FLOAT32 && !__HAVE_DISTINCT_FLOAT32] (wcstof32_l): Define + and later undefine as macro. Define as weak alias if + [USE_WIDE_CHAR]. + + * stdlib/strfromf.c: Include . + [__HAVE_FLOAT32 && !__HAVE_DISTINCT_FLOAT32] (strfromf32): Define + and later undefine as macro and define as weak alias. + + * math/test-float32.h: New file. + + * sysdeps/generic/libm-alias-float.h: Include . + [__HAVE_FLOAT32 && !__HAVE_DISTINCT_FLOAT32] + (libm_alias_float_other_r): Create f32 alias. + (libm_alias_float_r): Use semicolon before call to + libm_alias_float_other_r. + + * sysdeps/ia64/fpu/e_exp2f.S (__exp2f): Use exp2 not __exp2 as + second argument to libm_alias_float_other. + * sysdeps/ia64/fpu/e_log2f.S (__log2f): Use log2 not __log2 as + second argument to libm_alias_float_other. + * sysdeps/ia64/fpu/e_powf.S (__powf): Use pow not __pow as second + argument to libm_alias_float_other. + + [BZ #22561] + * math/s_cacosh_template.c (M_DECL_FUNC (__cacosh)): Use pi/2 for + real part of result for argument 0 + i * NaN. + * math/libm-test-cacosh.inc (cacosh_test_data): Update expected + results for tests of 0 + i * NaN. + +2017-12-06 Adhemerval Zanella + + * sysdeps/alpha/fpu/libm-test-ulps: Update. + +2017-12-06 David S. Miller + + * sysdeps/sparc/fpu/libm-test-ulps: Update + exp_{downward,towardzero,upward} ulps. + +2017-12-06 Joseph Myers + + * sysdeps/ieee754/ldbl-96/e_j1l.c (qone): Don't make local + variables static. + + * sysdeps/ieee754/ldbl-128/e_j0l.c (Y0_2N): Make const. + (Y0_2D): Likewise. + * sysdeps/ieee754/ldbl-128/e_j1l.c (Y0_2N): Likewise. + (Y0_2D): Likewise. + * sysdeps/ieee754/ldbl-128ibm/e_j0l.c (Y0_2N): Likewise. + (Y0_2D): Likewise. + * sysdeps/ieee754/ldbl-128ibm/e_j1l.c (Y0_2N): Likewise. + (Y0_2D): Likewise. + +2017-12-06 Mike FABIAN + + [BZ #22515] + * localedata/Makefile: Add hsb_DE.UTF-8 to test-input + and to the list of locales to be built for testing. + * localedata/hsb_DE.UTF-8.in: New file for testing the collation. + * localedata/locales/hsb_DE (LC_COLLATE): Use “copy "iso14651_t1"” + and build the collation rules upon that. + +2017-12-06 Rajalakshmi Srinivasaraghavan + + * NEWS: Add sinf to list of optimized functions. + +2017-12-06 Joseph Myers + + * bits/floatn-common.h (__HAVE_FLOAT64): Define to 1. + (__HAVE_FLOAT32X): Likewise. + * manual/math.texi (Mathematics): Document support for _Float64 + and _Float32x. + * math/Makefile (test-types): Add float64 and float32x. + * math/Versions (GLIBC_2.27): Add _Float64 and _Float32x + functions. + * stdlib/Versions (GLIBC_2.27): Likewise. + * wcsmbs/Versions (GLIBC_2.27): Likewise. + * sysdeps/unix/sysv/linux/aarch64/libc.abilist: Update. + * sysdeps/unix/sysv/linux/aarch64/libm.abilist: Likewise. + * sysdeps/unix/sysv/linux/alpha/libc.abilist: Likewise. + * sysdeps/unix/sysv/linux/alpha/libm.abilist: Likewise. + * sysdeps/unix/sysv/linux/arm/libc.abilist: Likewise. + * sysdeps/unix/sysv/linux/arm/libm.abilist: Likewise. + * sysdeps/unix/sysv/linux/hppa/libc.abilist: Likewise. + * sysdeps/unix/sysv/linux/hppa/libm.abilist: Likewise. + * sysdeps/unix/sysv/linux/i386/libc.abilist: Likewise. + * sysdeps/unix/sysv/linux/i386/libm.abilist: Likewise. + * sysdeps/unix/sysv/linux/ia64/libc.abilist: Likewise. + * sysdeps/unix/sysv/linux/ia64/libm.abilist: Likewise. + * sysdeps/unix/sysv/linux/m68k/coldfire/libc.abilist: Likewise. + * sysdeps/unix/sysv/linux/m68k/coldfire/libm.abilist: Likewise. + * sysdeps/unix/sysv/linux/m68k/m680x0/libc.abilist: Likewise. + * sysdeps/unix/sysv/linux/m68k/m680x0/libm.abilist: Likewise. + * sysdeps/unix/sysv/linux/microblaze/libc.abilist: Likewise. + * sysdeps/unix/sysv/linux/microblaze/libm.abilist: Likewise. + * sysdeps/unix/sysv/linux/mips/mips32/fpu/libc.abilist: Likewise. + * sysdeps/unix/sysv/linux/mips/mips32/libm.abilist: Likewise. + * sysdeps/unix/sysv/linux/mips/mips32/nofpu/libc.abilist: + Likewise. + * sysdeps/unix/sysv/linux/mips/mips64/libm.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/nios2/libm.abilist: Likewise. + * sysdeps/unix/sysv/linux/powerpc/powerpc32/fpu/libc.abilist: + Likewise. + * sysdeps/unix/sysv/linux/powerpc/powerpc32/fpu/libm.abilist: + Likewise. + * sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/libc.abilist: + Likewise. + * sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/libm.abilist: + Likewise. + * sysdeps/unix/sysv/linux/powerpc/powerpc64/libc-le.abilist: + Likewise. + * sysdeps/unix/sysv/linux/powerpc/powerpc64/libc.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/libc.abilist: Likewise. + * sysdeps/unix/sysv/linux/s390/s390-32/libm.abilist: Likewise. + * sysdeps/unix/sysv/linux/s390/s390-64/libc.abilist: Likewise. + * sysdeps/unix/sysv/linux/s390/s390-64/libm.abilist: Likewise. + * sysdeps/unix/sysv/linux/sh/libc.abilist: Likewise. + * sysdeps/unix/sysv/linux/sh/libm.abilist: Likewise. + * sysdeps/unix/sysv/linux/sparc/sparc32/libc.abilist: Likewise. + * sysdeps/unix/sysv/linux/sparc/sparc32/libm.abilist: Likewise. + * sysdeps/unix/sysv/linux/sparc/sparc64/libc.abilist: Likewise. + * sysdeps/unix/sysv/linux/sparc/sparc64/libm.abilist: Likewise. + * sysdeps/unix/sysv/linux/tile/tilegx/tilegx32/libc.abilist: + Likewise. + * sysdeps/unix/sysv/linux/tile/tilegx/tilegx32/libm.abilist: + Likewise. + * sysdeps/unix/sysv/linux/tile/tilegx/tilegx64/libc.abilist: + Likewise. + * sysdeps/unix/sysv/linux/tile/tilegx/tilegx64/libm.abilist: + Likewise. + * sysdeps/unix/sysv/linux/tile/tilepro/libc.abilist: Likewise. + * sysdeps/unix/sysv/linux/tile/tilepro/libm.abilist: Likewise. + * sysdeps/unix/sysv/linux/x86_64/64/libc.abilist: Likewise. + * sysdeps/unix/sysv/linux/x86_64/64/libm.abilist: Likewise. + * sysdeps/unix/sysv/linux/x86_64/x32/libc.abilist: Likewise. + * sysdeps/unix/sysv/linux/x86_64/x32/libm.abilist: Likewise. + * sysdeps/i386/fpu/libm-test-ulps: Likewise. + * sysdeps/i386/i686/fpu/multiarch/libm-test-ulps: Likewise. + +2017-12-05 Joseph Myers + + * bits/floatn-common.h: Include . + [__HAVE_FLOAT64 && (!__GNUC_PREREQ (7, 0) || defined __cplusplus) + && __NO_LONG_DOUBLE_MATH] (__f64): Use suffix 'l'. + [__HAVE_FLOAT64 && (!__GNUC_PREREQ (7, 0) || defined __cplusplus) + && __NO_LONG_DOUBLE_MATH] (__CFLOAT64): Use _Complex long double. + [__HAVE_FLOAT64 && (!__GNUC_PREREQ (7, 0) || defined __cplusplus) + && __NO_LONG_DOUBLE_MATH] (_Float64): Use long double. + [__HAVE_FLOAT64 && !__GNUC_PREREQ (7, 0) && __NO_LONG_DOUBLE_MATH] + (__builtin_huge_valf64): Use __builtin_huge_vall. + [__HAVE_FLOAT64 && !__GNUC_PREREQ (7, 0) && __NO_LONG_DOUBLE_MATH] + (__builtin_inff64): Use __builtin_infl. + [__HAVE_FLOAT64 && !__GNUC_PREREQ (7, 0) && __NO_LONG_DOUBLE_MATH] + (__builtin_nanf64): Use __builtin_nanl. + [__HAVE_FLOAT64 && !__GNUC_PREREQ (7, 0) && __NO_LONG_DOUBLE_MATH] + (__builtin_nansf64): Use __builtin_nansl. + +2017-12-05 Rogerio A. Cardoso + Paul E. Murphy + Carlos O'Donell + + * elf/dl-tunables.list: Add elision parameters. + * manual/tunables.texi: Add entries about elision tunable. + * sysdeps/unix/sysv/linux/powerpc/elision-conf.c: + Add callback functions to dynamically enable/disable elision. + Add multiple callbacks functions to set elision parameters. + Deleted __libc_enable_secure check. + * sysdeps/unix/sysv/linux/s390/elision-conf.c: Likewise. + * sysdeps/unix/sysv/linux/x86/elision-conf.c: Likewise. + * configure: Regenerated. + * configure.ac: Option enable_lock_elision was deleted. + * config.h.in: ENABLE_LOCK_ELISION flag was deleted. + * config.make.in: Remove references to enable_lock_elision. + * manual/install.texi: Elision configure option was removed. + * INSTALL: Regenerated to remove enable_lock_elision. + * nptl/Makefile: + Disable elision so it can verify error case for destroying a mutex. + * sysdeps/powerpc/nptl/elide.h: + Cleanup ENABLE_LOCK_ELISION check. + Deleted macros for the case when ENABLE_LOCK_ELISION was not defined. + * sysdeps/s390/configure: Regenerated. + * sysdeps/s390/configure.ac: Remove references to enable_lock_elision.. + * nptl/tst-mutex8.c: + Deleted all #ifndef ENABLE_LOCK_ELISION from the test. + * sysdeps/powerpc/powerpc32/sysdep.h: + Deleted all ENABLE_LOCK_ELISION checks. + * sysdeps/powerpc/powerpc64/sysdep.h: Likewise. + * sysdeps/powerpc/sysdep.h: Likewise. + * sysdeps/s390/nptl/bits/pthreadtypes-arch.h: Likewise. + * sysdeps/unix/sysv/linux/powerpc/force-elision.h: Likewise. + * sysdeps/unix/sysv/linux/s390/elision-conf.h: Likewise. + * sysdeps/unix/sysv/linux/s390/force-elision.h: Likewise. + * sysdeps/unix/sysv/linux/s390/lowlevellock.h: Likewise. + * sysdeps/unix/sysv/linux/s390/Makefile: Remove references to + enable-lock-elision. + +2017-12-05 Joseph Myers + + * stdlib/strtod.c: Include . + (BUILD_DOUBLE): New macro. + [BUILD_DOUBLE && __HAVE_FLOAT64 && !__HAVE_DISTINCT_FLOAT64] + (strtof64): Define and later undefine as macro. Define as weak + alias if [!USE_WIDE_CHAR]. + [BUILD_DOUBLE && __HAVE_FLOAT64 && !__HAVE_DISTINCT_FLOAT64] + (wcstof64): Define and later undefine as macro. Define as weak + alias if [USE_WIDE_CHAR]. + [BUILD_DOUBLE && __HAVE_FLOAT32X && !__HAVE_DISTINCT_FLOAT32X] + (strtof32x): Define and later undefine as macro. Define as weak + alias if [!USE_WIDE_CHAR]. + [BUILD_DOUBLE && __HAVE_FLOAT32X && !__HAVE_DISTINCT_FLOAT32X] + (wcstof32x): Define and later undefine as macro. Define as weak + alias if [USE_WIDE_CHAR]. + * stdlib/strtod_l.c: Include . + (BUILD_DOUBLE): New macro. + [BUILD_DOUBLE && __HAVE_FLOAT64 && !__HAVE_DISTINCT_FLOAT64] + (strtof64_l): Define and later undefine as macro. Define as weak + alias if [!USE_WIDE_CHAR]. + [BUILD_DOUBLE && __HAVE_FLOAT64 && !__HAVE_DISTINCT_FLOAT64] + (wcstof64_l): Define and later undefine as macro. Define as weak + alias if [USE_WIDE_CHAR]. + [BUILD_DOUBLE && __HAVE_FLOAT32X && !__HAVE_DISTINCT_FLOAT32X] + (strtof32x_l): Define and later undefine as macro. Define as weak + alias if [!USE_WIDE_CHAR]. + [BUILD_DOUBLE && __HAVE_FLOAT32X && !__HAVE_DISTINCT_FLOAT32X] + (wcstof32x_l): Define and later undefine as macro. Define as weak + alias if [USE_WIDE_CHAR]. + +2017-12-05 Adhemerval Zanella + + * sysdeps/ieee754/flt-32/s_sinf.c (ones): Define as double. + (reduced): Use ones as double instead of integer. + +2017-12-05 Szabolcs Nagy + + * sysdeps/ieee754/flt-32/s_sinf.c (sinf): Use isless. + +2017-12-05 Joseph Myers + + * stdlib/strfromd.c: Include . + [__HAVE_FLOAT64 && !__HAVE_DISTINCT_FLOAT64] (strfromf64): Define + and later undefine as macro and define as weak alias. + [__HAVE_FLOAT32X && !__HAVE_DISTINCT_FLOAT32X] (strfromf32x): + Likewise. + + * math/test-float32x.h: New file. + * math/test-float64.h: Likewise. + + * sysdeps/generic/libm-alias-double.h: Include . + (libm_alias_double_other_r_f64): New macro. + (libm_alias_double_other_r_f32x): Likewise. + (libm_alias_double_other_r): Use libm_alias_double_other_r_f64 and + libm_alias_double_other_r_f32x. + (libm_alias_double_r): Use semicolon before call to + libm_alias_double_other_r. + * sysdeps/ieee754/ldbl-opt/libm-alias-double.h: Include + . + (libm_alias_double_other_r_f64): New macro. + (libm_alias_double_other_r_f32x): Likewise. + (libm_alias_double_other_r): Use libm_alias_double_other_r_f64 and + libm_alias_double_other_r_f32x. + +2017-12-05 H.J. Lu + + * sysdeps/ieee754/flt-32/s_sinf.c (reduced): Replace long with + int. + (SINF_FUNC): Likewise. Replace floor with simple casts. + +2017-12-05 Mike FABIAN + + [BZ #22517] + * localedata/Makefile: Add et_EE.UTF-8 to test-input + and to the list of locales to be built for testing. + * localedata/et_EE.UTF-8.in: New file for testing the collation. + * localedata/locales/et_EE (LC_COLLATE): Use “copy "iso14651_t1"” + and build the collation rules upon that. + +2017-12-05 Chris Metcalf + + * sysdeps/tile/tilegx/string-endian.h (VECOP): Provide working + replacements for __insn_xxx builtins for v1cmpeq, v1cmpltu, + v1cmpne, v1add, v1shru, v1shl (register and immediate versions). + * sysdeps/tile/tilegx/memchr.c (__memchr): Use VECOP function + instead of __insn__xxx. + * sysdeps/tile/tilegx/rawmemchr.c (__rawmemchr): Likewise. + * sysdeps/tile/tilegx/strstr.c (strcasechr): Likewise. + * sysdeps/tile/tilegx/strrchr.c (strrchr): Likewise. + * sysdeps/tile/tilegx/strlen.c (strlen): Likewise. + * sysdeps/tile/tilegx/strchrnul.c (__strchrnul): Likewise. + * sysdeps/tile/tilegx/strchr.c (strchr): Likewise. + +2017-12-05 Florian Weimer + + Linux: Implement interfaces for memory protection keys + * support/Makefile (libsupport-routines): Add xraise, xsigaction, + xsignal, xsysconf. + * support/xsignal.h (xraise, xsignal, xsigaction): Declare. + * support/xunistd.h (xsysconf): Declare. + * support/xraise.c: New file. + * support/xsigaction.c: Likewise. + * support/xsignal.c: Likewise. + * support/xsysconf.c: Likewise. + * sysdeps/unix/sysv/linux/Makefile [misc] (routines): Add + pkey_set, pkey_get, pkey_mprotect. + [misc] (tests): Add tst-pkey. + (tst-pkey): Link with -lpthread. + * sysdeps/unix/sysv/linux/Versions (GLIBC_2.27): Add pkey_alloc, + pkey_free, pkey_set, pkey_get, pkey_mprotect. + * sysdeps/unix/sysv/linux/bits/mman-linux.h (PKEY_DISABLE_ACCESS) + (PKEY_DISABLE_WRITE): Define. + (pkey_alloc, pkey_free, pkey_set, pkey_get, pkey_mprotect): + Declare. + * sysdeps/unix/sysv/linux/bits/siginfo-consts.h (SEGV_BNDERR) + (SEGV_PKUERR): Add. + * sysdeps/unix/sysv/linux/pkey_get.c: New file. + * sysdeps/unix/sysv/linux/pkey_set.c: Likewise. + * sysdeps/unix/sysv/linux/pkey_mprotect.c: Likewise. + * sysdeps/unix/sysv/linux/syscalls.list (pkey_alloc, pkey_free): + Add. + * sysdeps/unix/sysv/linux/tst-pkey.c: New file. + * sysdeps/unix/sysv/linux/x86/arch-pkey.h: Likewise. + * sysdeps/unix/sysv/linux/x86/pkey_get.c: Likewise. + * sysdeps/unix/sysv/linux/x86/pkey_set.c: Likewise. + * sysdeps/unix/sysv/linux/**.abilist: Update. + +2017-12-05 Florian Weimer + + * support/tst-test_compare.c (subprocess): Use long long instead + of long argument for consistent type width across 32-bit and + 64-bit architectures. + (do_test): Adjust expected output. + +2017-12-05 Joseph Myers + + * sysdeps/powerpc/fpu/s_cosf.c: Include . + (cosf): Define using libm_alias_float. + * sysdeps/powerpc/fpu/s_fabs.S: Include . + (fabsf): Define using libm_alias_float. + * sysdeps/powerpc/fpu/s_fmaf.S: Include . + (fmaf): Define using libm_alias_float. + * sysdeps/powerpc/fpu/s_rintf.c: Include . + (rintf): Define using libm_alias_float. + * sysdeps/powerpc/fpu/s_sinf.c: Include . + (sinf): Define using libm_alias_float. + * sysdeps/powerpc/power5+/fpu/s_modff.c: Include + . + (modff): Define using libm_alias_float. + * sysdeps/powerpc/power7/fpu/s_logbf.c: Include + . + (logbf): Define using libm_alias_float. + * sysdeps/powerpc/powerpc32/fpu/s_ceilf.S: Include + . + (ceilf): Define using libm_alias_float. + * sysdeps/powerpc/powerpc32/fpu/s_copysign.S: Include + . + (copysignf): Define using libm_alias_float. + * sysdeps/powerpc/powerpc32/fpu/s_floorf.S: Include + . + (floorf): Define using libm_alias_float. + * sysdeps/powerpc/powerpc32/fpu/s_llrintf.c: Include + . + (llrintf): Define using libm_alias_float. + * sysdeps/powerpc/powerpc32/fpu/s_llroundf.c: Include + . + (llroundf): Define using libm_alias_float. + * sysdeps/powerpc/powerpc32/fpu/s_lrint.S: Include + . + (lrintf): Define using libm_alias_float. + * sysdeps/powerpc/powerpc32/fpu/s_lround.S: Include + . + (lroundf): Define using libm_alias_float. + * sysdeps/powerpc/powerpc32/fpu/s_nearbyintf.S: Include + . + (nearbyintf): Define using libm_alias_float. + * sysdeps/powerpc/powerpc32/fpu/s_rintf.S: Include + . + (rintf): Define using libm_alias_float. + * sysdeps/powerpc/powerpc32/fpu/s_roundf.S: Include + . + (roundf): Define using libm_alias_float. + * sysdeps/powerpc/powerpc32/fpu/s_truncf.S: Include + . + (truncf): Define using libm_alias_float. + * sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_ceilf.c: + Include . + (ceilf): Define using libm_alias_float. + * sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_copysignf.c: + Include . + (copysignf): Define using libm_alias_float. + * sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_floorf.c: + Include . + (floorf): Define using libm_alias_float. + * sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_llrintf.c: + Include . + (llrintf): Define using libm_alias_float. + * sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_llroundf.c: + Include . + (llroundf): Define using libm_alias_float. + * sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_logbf.c: + Include . + (logbf): Define using libm_alias_float. + * sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_lrintf.c: + Include . + (lrintf): Define using libm_alias_float. + * sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_lroundf.c: + Include . + (lroundf): Define using libm_alias_float. + * sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_modff.c: + Include . + (modff): Define using libm_alias_float. + * sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_roundf.c: + Include . + (roundf): Define using libm_alias_float. + * sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_truncf.c: + Include . + (truncf): Define using libm_alias_float. + * sysdeps/powerpc/powerpc32/power4/fpu/s_llrintf.S: Include + . + (llrintf): Define using libm_alias_float. + * sysdeps/powerpc/powerpc32/power4/fpu/s_llround.S: Include + . + (llroundf): Define using libm_alias_float. + * sysdeps/powerpc/powerpc32/power5+/fpu/s_ceilf.S: Include + . + (ceilf): Define using libm_alias_float. + * sysdeps/powerpc/powerpc32/power5+/fpu/s_floorf.S: Include + . + (floorf): Define using libm_alias_float. + * sysdeps/powerpc/powerpc32/power5+/fpu/s_llround.S: Include + . + (llroundf): Define using libm_alias_float. + * sysdeps/powerpc/powerpc32/power5+/fpu/s_lround.S: Include + . + (lroundf): Define using libm_alias_float. + * sysdeps/powerpc/powerpc32/power5+/fpu/s_roundf.S: Include + . + (roundf): Define using libm_alias_float. + * sysdeps/powerpc/powerpc32/power5+/fpu/s_truncf.S: Include + . + (truncf): Define using libm_alias_float. + * sysdeps/powerpc/powerpc32/power6/fpu/s_copysign.S: Include + . + (copysignf): Define using libm_alias_float. + * sysdeps/powerpc/powerpc32/power6/fpu/s_llrintf.S: Include + . + (llrintf): Define using libm_alias_float. + * sysdeps/powerpc/powerpc32/power6/fpu/s_llround.S: Include + . + (llroundf): Define using libm_alias_float. + * sysdeps/powerpc/powerpc32/power6x/fpu/s_lrint.S: Include + . + (lrintf): Define using libm_alias_float. + * sysdeps/powerpc/powerpc32/power6x/fpu/s_lround.S: Include + . + (lroundf): Define using libm_alias_float. + * sysdeps/powerpc/powerpc64/fpu/multiarch/s_ceilf.c: Include + . + (ceilf): Define using libm_alias_float. + * sysdeps/powerpc/powerpc64/fpu/multiarch/s_copysignf.c: Include + . + (copysignf): Define using libm_alias_float. + * sysdeps/powerpc/powerpc64/fpu/multiarch/s_cosf.c: Include + . + (cosf): Define using libm_alias_float. + * sysdeps/powerpc/powerpc64/fpu/multiarch/s_floorf.c: Include + . + (floorf): Define using libm_alias_float. + * sysdeps/powerpc/powerpc64/fpu/multiarch/s_llrintf.c: Include + . + (llrintf): Define using libm_alias_float. + * sysdeps/powerpc/powerpc64/fpu/multiarch/s_llroundf.c: Include + . + (llroundf): Define using libm_alias_float. + * sysdeps/powerpc/powerpc64/fpu/multiarch/s_logbf.c: Include + . + (logbf): Define using libm_alias_float. + * sysdeps/powerpc/powerpc64/fpu/multiarch/s_modff.c: Include + . + (modff): Define using libm_alias_float. + * sysdeps/powerpc/powerpc64/fpu/multiarch/s_roundf.c: Include + . + (roundf): Define using libm_alias_float. + * sysdeps/powerpc/powerpc64/fpu/multiarch/s_sinf.c: Include + . + (sinf): Define using libm_alias_float. + * sysdeps/powerpc/powerpc64/fpu/multiarch/s_truncf.c: Include + . + (truncf): Define using libm_alias_float. + * sysdeps/powerpc/powerpc64/fpu/s_ceilf.S: Include + . + (ceilf): Define using libm_alias_float. + * sysdeps/powerpc/powerpc64/fpu/s_copysign.S: Include + . + (copysignf): Define using libm_alias_float. + * sysdeps/powerpc/powerpc64/fpu/s_floorf.S: Include + . + (floorf): Define using libm_alias_float. + * sysdeps/powerpc/powerpc64/fpu/s_llrint.S: Include + . + (llrintf): Define using libm_alias_float. + * sysdeps/powerpc/powerpc64/fpu/s_llroundf.S: Include + . + (llroundf): Define using libm_alias_float. + * sysdeps/powerpc/powerpc64/fpu/s_nearbyintf.S: Include + . + (nearbyintf): Define using libm_alias_float. + * sysdeps/powerpc/powerpc64/fpu/s_rintf.S: Include + . + (rintf): Define using libm_alias_float. + * sysdeps/powerpc/powerpc64/fpu/s_roundf.S: Include + . + (roundf): Define using libm_alias_float. + * sysdeps/powerpc/powerpc64/fpu/s_truncf.S: Include + . + (truncf): Define using libm_alias_float. + * sysdeps/powerpc/powerpc64/power5+/fpu/s_ceilf.S: Include + . + (ceilf): Define using libm_alias_float. + * sysdeps/powerpc/powerpc64/power5+/fpu/s_floorf.S: Include + . + (floorf): Define using libm_alias_float. + * sysdeps/powerpc/powerpc64/power5+/fpu/s_llround.S: Include + . + (llroundf): Define using libm_alias_float. + * sysdeps/powerpc/powerpc64/power5+/fpu/s_roundf.S: Include + . + (roundf): Define using libm_alias_float. + * sysdeps/powerpc/powerpc64/power5+/fpu/s_truncf.S: Include + . + (truncf): Define using libm_alias_float. + * sysdeps/powerpc/powerpc64/power6/fpu/s_copysign.S: Include + . + (copysignf): Define using libm_alias_float. + * sysdeps/powerpc/powerpc64/power6x/fpu/s_llrint.S: Include + . + (llrintf): Define using libm_alias_float. + * sysdeps/powerpc/powerpc64/power6x/fpu/s_llround.S: Include + . + (llroundf): Define using libm_alias_float. + * sysdeps/powerpc/powerpc64/power8/fpu/s_cosf.S: Include + . + (cosf): Define using libm_alias_float. + * sysdeps/powerpc/powerpc64/power8/fpu/s_llrint.S: Include + . + (llrintf): Define using libm_alias_float. + * sysdeps/powerpc/powerpc64/power8/fpu/s_llround.S: Include + . + (llroundf): Define using libm_alias_float. + * sysdeps/powerpc/powerpc64/power8/fpu/s_sinf.S: Include + . + (sinf): Define using libm_alias_float. + +2017-12-04 Florian Weimer + + * support/check.h (TEST_COMPARE): Define. + (support_test_compare_failure): Declare. + * support/Makefile (libsupport-routines): Add + support_test_compare_failure. + (tests): Add tst-test_compare. + * support /support_test_compare_failure.c: New file. + * support/tst-test_compare.c: Likewise. + +2017-12-04 Mike FABIAN + + [BZ #22527] + * localedata/locales/tr_TR (LC_COLLATE): Base collation rules + on iso14651_t1. A test file localedata/tr_TR.UTF-8.in is already + available, this rewrite of the collation rules does reproduce + the test file in the same order. + +2017-12-04 Mike FABIAN + + [BZ #10580] + * localedata/locales/hr_HR (LC_TIME): Use two letters for the + digraphs in the month and day names. Using single code points for + digraphs is deprecated. While there are dedicated Unicode + codepoints, for the digraphs, these are included for backwards + compatibility and modern texts use a sequence of Basic Latin + characters. See: https://www.unicode.org/faq/ligature_digraph.html + This makes the month and day names agree exactly with CLDR now, + CLDR does not use the single code points for the digraphs either. + +2017-12-04 Chris Metcalf + + * sysdeps/tile/libm-test-ulps: Update ca{cos,sin,tan}{,h} ulps. + +2017-12-04 Joseph Myers + + * sysdeps/ieee754/flt-32/s_sinf.c (SINF_FUNC): Use __floor instead + of floor. + +2017-12-04 Siddhesh Poyarekar + + * sysdeps/aarch64/multiarch/memcpy_generic.S (__GI_memcpy): + Define only for libc.so. + +2017-12-04 Stefan Liebler + + * sysdeps/unix/sysv/linux/s390/s390-64/sysdep.h + (INTERNAL_VSYSCALL_CALL, CLOBBER_0, CLOBBER_1, CLOBBER_2, + CLOBBER_3, CLOBBER_4, CLOBBER_5, CLOBBER_6, + INTERNAL_VSYSCALL_NO_SYSCALL_FALLBACK): Remove. + * sysdeps/unix/sysv/linux/s390/s390-32/sysdep.h: Likewise. + +2017-12-04 Rajalakshmi Srinivasaraghavan + + [BZ #5997] + * sysdeps/ieee754/flt-32/s_sinf.c: New implementation. + +2017-12-02 John David Anglin + + [BZ libc/19170] + * sysdeps/hppa/crti.S: Declare PREINIT_FUNCTION weak_extern when + PREINIT_FUNCTION_WEAK is nonzero. + (gmon_initializer): New function. Put procedure label for it in + .init_array section. + (_init): Don't call PREINIT_FUNCTION. + * sysdeps/hppa/crtn.S (__gmon_start__): Remove. + * sysdeps/hppa/dl-lookupcfg.h (DL_FIXUP_MAKE_VALUE): Create null fixup + value when map argument is null. + + * sysdeps/hppa/dl-fptr.c (elf_machine_resolve): Remove unnecessary + depi instruction from PIC pc-relative sequence. + * sysdeps/hppa/dl-fptr.h (ELF_MACHINE_LOAD_ADDRESS): Likewise. + * sysdeps/hppa/dl-machine.h (elf_machine_dynamic): Likewise. + (elf_machine_load_address): Likewise. + (elf_machine_runtime_setup): Likewise. + +2017-12-02 Joseph Myers + + * sysdeps/powerpc/power7/fpu/s_logb.c: Include + . + (logb): Define using libm_alias_double. + * sysdeps/powerpc/powerpc32/fpu/s_copysign.S: Include + . + (copysign): Define using libm_alias_double. + * sysdeps/powerpc/powerpc32/fpu/s_llrint.c: Include + . + (llrint): Define using libm_alias_double. + * sysdeps/powerpc/powerpc32/fpu/s_llround.c: Include + . + (llround): Define using libm_alias_double. + * sysdeps/powerpc/powerpc32/fpu/s_lrint.S: Include + . + (lrint): Define using libm_alias_double. + * sysdeps/powerpc/powerpc32/fpu/s_lround.S: Include + . + (lround): Define using libm_alias_double. + * sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_copysign.c: + Include . + (copysign): Define using libm_alias_double. + * sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_llrint.c: + Include . + (llrint): Define using libm_alias_double. + * sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_llround.c: + Include . + (llround): Define using libm_alias_double. + * sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_logb.c: Include + . + (logb): Define using libm_alias_double. + * sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_lrint.c: + Include . + (lrint): Define using libm_alias_double. + * sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_lround.c: + Include . + (lround): Define using libm_alias_double. + * sysdeps/powerpc/powerpc32/power4/fpu/s_llrint.S: Include + . + (llrint): Define using libm_alias_double. + * sysdeps/powerpc/powerpc32/power4/fpu/s_llround.S: Include + . + (llround): Define using libm_alias_double. + * sysdeps/powerpc/powerpc32/power5+/fpu/s_llround.S: Include + . + (llround): Define using libm_alias_double. + * sysdeps/powerpc/powerpc32/power5+/fpu/s_lround.S: Include + . + (lround): Define using libm_alias_double. + * sysdeps/powerpc/powerpc32/power6/fpu/s_copysign.S: Include + . + (copysign): Define using libm_alias_double. + * sysdeps/powerpc/powerpc32/power6/fpu/s_llrint.S: Include + . + (llrint): Define using libm_alias_double. + * sysdeps/powerpc/powerpc32/power6/fpu/s_llround.S: Include + . + (llround): Define using libm_alias_double. + * sysdeps/powerpc/powerpc32/power6x/fpu/s_lrint.S: Include + . + (lrint): Define using libm_alias_double. + * sysdeps/powerpc/powerpc32/power6x/fpu/s_lround.S: Include + . + (lround): Define using libm_alias_double. + * sysdeps/powerpc/powerpc64/fpu/multiarch/s_copysign.c: Include + . + (copysign): Define using libm_alias_double. + * sysdeps/powerpc/powerpc64/fpu/multiarch/s_llrint.c: Include + . + (llrint): Define using libm_alias_double. + (lrint): Likewise. + * sysdeps/powerpc/powerpc64/fpu/multiarch/s_llround.c: Include + . + (llround): Define using libm_alias_double. + (lround): Likewise. + * sysdeps/powerpc/powerpc64/fpu/multiarch/s_logb.c: Include + . + (logb): Define using libm_alias_double. + * sysdeps/powerpc/powerpc64/fpu/s_copysign.S: Include + . + (copysign): Define using libm_alias_double. + * sysdeps/powerpc/powerpc64/fpu/s_llrint.S: Include + . + (llrint): Define using libm_alias_double. + (lrint): Likewise. + * sysdeps/powerpc/powerpc64/fpu/s_llround.S: Include + . + (llround): Define using libm_alias_double. + (lround): Likewise. + * sysdeps/powerpc/powerpc64/power5+/fpu/s_llround.S: Include + . + (llround): Define using libm_alias_double. + (lround): Likewise. + * sysdeps/powerpc/powerpc64/power6/fpu/s_copysign.S: Include + . + (copysign): Define using libm_alias_double. + * sysdeps/powerpc/powerpc64/power6x/fpu/s_llrint.S: Include + . + (llrint): Define using libm_alias_double. + (lrint): Likewise. + * sysdeps/powerpc/powerpc64/power6x/fpu/s_llround.S: Include + . + (llround): Define using libm_alias_double. + (lround): Likewise. + * sysdeps/powerpc/powerpc64/power8/fpu/s_llrint.S: Include + . + (llrint): Define using libm_alias_double. + (lrint): Likewise. + * sysdeps/powerpc/powerpc64/power8/fpu/s_llround.S: Include + . + (llround): Define using libm_alias_double. + (lround): Likewise. + +2017-12-01 Joseph Myers + + * sysdeps/powerpc/powerpc64/fpu/multiarch/s_llround.c + [LONG_DOUBLE_COMPAT(libm, GLIBC_2_1)] (lroundl): Do not define + compat symbol based on llround. + + * sysdeps/powerpc/power7/fpu/s_logb.c + [LONG_DOUBLE_COMPAT (libm, GLIBC_2_0)] (logbl): Define as compat + symbol based on __logb, not on logb. + * sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_logb.c + [LONG_DOUBLE_COMPAT (libm, GLIBC_2_0)] (logbl): Likewise. + * sysdeps/powerpc/powerpc64/fpu/multiarch/s_logb.c + [LONG_DOUBLE_COMPAT (libm, GLIBC_2_0)] (logbl): Likewise. + + * sysdeps/powerpc/fpu/s_rint.c: Include . + (rint): Define using libm_alias_double. + * sysdeps/powerpc/power5+/fpu/s_modf.c: Include + . + (modf): Define using libm_alias_double. + * sysdeps/powerpc/powerpc32/fpu/s_ceil.S: Include + . + (ceil): Define using libm_alias_double. + * sysdeps/powerpc/powerpc32/fpu/s_floor.S: Include + . + (floor): Define using libm_alias_double. + * sysdeps/powerpc/powerpc32/fpu/s_nearbyint.S: Include + . + (nearbyint): Define using libm_alias_double. + * sysdeps/powerpc/powerpc32/fpu/s_rint.S: Include + . + (rint): Define using libm_alias_double. + * sysdeps/powerpc/powerpc32/fpu/s_round.S: Include + . + (round): Define using libm_alias_double. + * sysdeps/powerpc/powerpc32/fpu/s_trunc.S: Include + . + (trunc): Define using libm_alias_double. + * sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_ceil.c: Include + . + (ceil): Define using libm_alias_double. + * sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_floor.c: + Include . + (floor): Define using libm_alias_double. + * sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_modf.c: Include + . + (modf): Define using libm_alias_double. + * sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_round.c: + Include . + (round): Define using libm_alias_double. + * sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_trunc.c: + Include . + (trunc): Define using libm_alias_double. + * sysdeps/powerpc/powerpc32/power5+/fpu/s_ceil.S: Include + . + (ceil): Define using libm_alias_double. + * sysdeps/powerpc/powerpc32/power5+/fpu/s_floor.S: Include + . + (floor): Define using libm_alias_double. + * sysdeps/powerpc/powerpc32/power5+/fpu/s_round.S: Include + . + (round): Define using libm_alias_double. + * sysdeps/powerpc/powerpc32/power5+/fpu/s_trunc.S: Include + . + (trunc): Define using libm_alias_double. + * sysdeps/powerpc/powerpc64/fpu/multiarch/s_ceil.c: Include + . + (ceil): Define using libm_alias_double. + * sysdeps/powerpc/powerpc64/fpu/multiarch/s_floor.c: Include + . + (floor): Define using libm_alias_double. + * sysdeps/powerpc/powerpc64/fpu/multiarch/s_modf.c: Include + . + (modf): Define using libm_alias_double. + * sysdeps/powerpc/powerpc64/fpu/multiarch/s_round.c: Include + . + (round): Define using libm_alias_double. + * sysdeps/powerpc/powerpc64/fpu/multiarch/s_trunc.c: Include + . + (trunc): Define using libm_alias_double. + * sysdeps/powerpc/powerpc64/fpu/s_ceil.S: Include + . + (ceil): Define using libm_alias_double. + * sysdeps/powerpc/powerpc64/fpu/s_floor.S: Include + . + (floor): Define using libm_alias_double. + * sysdeps/powerpc/powerpc64/fpu/s_nearbyint.S: Include + . + (nearbyint): Define using libm_alias_double. + * sysdeps/powerpc/powerpc64/fpu/s_rint.S: Include + . + (rint): Define using libm_alias_double. + * sysdeps/powerpc/powerpc64/fpu/s_round.S: Include + . + (round): Define using libm_alias_double. + * sysdeps/powerpc/powerpc64/fpu/s_trunc.S: Include + . + (trunc): Define using libm_alias_double. + * sysdeps/powerpc/powerpc64/power5+/fpu/s_ceil.S: Include + . + (ceil): Define using libm_alias_double. + * sysdeps/powerpc/powerpc64/power5+/fpu/s_floor.S: Include + . + (floor): Define using libm_alias_double. + * sysdeps/powerpc/powerpc64/power5+/fpu/s_round.S: Include + . + (round): Define using libm_alias_double. + * sysdeps/powerpc/powerpc64/power5+/fpu/s_trunc.S: Include + . + (trunc): Define using libm_alias_double. + + * sysdeps/powerpc/fpu/s_fabs.S: Include . + (fabs): Define using libm_alias_double. + * sysdeps/powerpc/fpu/s_fma.S: Include . + (fma): Define using libm_alias_double. + * sysdeps/powerpc/powerpc32/fpu/s_fabs.S: Remove file. + * sysdeps/powerpc/powerpc32/fpu/s_fma.S: Likewise. + * sysdeps/powerpc/powerpc64/fpu/s_fabs.S: Likewise. + * sysdeps/powerpc/powerpc64/fpu/s_fma.S: Likewise. + +2017-12-01 Adhemerval Zanella + + * sysdeps/unix/sysv/linux/x86_64/x32/getcpu.c: Remove file. + + * sysdeps/sparc/sparc-ifunc.h (SPARC_ASM_IFUNC_DFLT, + SPARC_ASM_IFUNC1, SPARC_ASM_IFUNC2, SET, SPARC_ASM_VIS2_IFUNC, + SPARC_ASM_VIS3_IFUNC, SPARC_ASM_VIS3_VIS2_IFUNC): Remove macros. + + * sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/s_copysign.c: Fix build + due redirect macro. + +2017-12-01 Andreas Schwab + + * intl/Makefile ($(objpfx)plural.c): Add $(make-target-directory). + +2017-12-01 Adhemerval Zanella + + * sysdeps/sparc/sparc64/cpu_relax.c: New file. + * sysdeps/sparc/sparc32/sparcv9/cpu_relax.c: Likewise. + * sysdeps/sparc/sparc64/cpu_relax.S: Remove file. + * sysdeps/sparc/sparc32/sparcv9/cpu_relax.S: Likewise. + + * sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/Makefile + (libm-sysdep_routines): Add s_nearbyintf-generic and + s_nearbyint-generic. + * sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/s_nearbyint-generic.S: + New file. + * sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/s_nearbyint.c: Likewise. + * sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/s_nearbyintf-generic.S: + Likewise. + * sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/s_nearbyintf.c: + Likewise. + * sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/s_nearbyint.S: Remove + file. + * sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/s_nearbyintf.S: + Likewise. + + * sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/Makefile + (libm-sysdep_routines): Add s_rintf-generic and s_rint-generic. + * sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/s_rint-generic.S: New + file. + * sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/s_rint.c: Likewise. + * sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/s_rintf-generic.S: + Likewise. + * sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/s_rintf.c: Likewise. + * sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/s_rint.S: Remove file. + * sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/s_rintf.S: Likewise. + + * sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/Makefile + (libm-sysdep_routines): Add s_llrintf-generic and s_llrint-generic. + * sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/s_llrint-generic.S: New + file. + * sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/s_llrint.c: Likewise. + * sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/s_llrintf-generic.S: + Likewise. + * sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/s_llrintf.c: Likewise. + * sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/s_llrint.S: Remove file. + * sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/s_llrintf.S: Likewise. + + * sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/Makefile + (libm-sysdep_routines): Add s_fabsf-generic and s_fabs-generic. + * sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/s_fabs-generic.S: New + file. + * sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/s_fabs.c: Likewise. + * sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/s_fabsf-generic.S: + Likewise. + * sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/s_fabsf.c: Likewise. + * sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/s_fabs.S: Remove file. + * sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/s_fabsf.S: Likewise. + + * sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/Makefile + (sysdep_calls): New rule. + (sysdep_routines): Use sysdep_calls as base. + (libm-sysdep_routines): Add generic rule for symbols shared with + libc. Add s_copysign-generic and s_copysign-generic objects. + * sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/s_copysign-generic.S: + New file. + * sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/s_copysign.c: Likewise. + * sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/s_copysignf-generic.S: + Likewise. + * sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/s_copysignf.c: Likewise. + * sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/s_copysign.S: Remove file. + * sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/s_copysignf.S: Likewise. + +2017-12-01 Mike FABIAN + + [BZ #22519] + * localedata/Makefile: Add is_IS.UTF-8 to test-input and to + the list of locales to be built for testing. + * localedata/is_IS.UTF-8.in: New file. + * localedata/locales/is_IS (LC_COLLATE): Base collation rules + on iso14651_t1. + +2017-12-01 Joseph Myers + + * sysdeps/powerpc/powerpc32/e500/nofpu/s_fabsf.S: Include + . + (fabsf): Define using libm_alias_float. + +2017-11-30 H.J. Lu + + * sysdeps/mips/dl-machine.h (elf_machine_reloc): Expand MIN. + +2017-11-30 Joseph Myers + + * sysdeps/m68k/coldfire/fpu/s_fabsf.c: Include + . + (fabsf): Define using libm_alias_float. + * sysdeps/m68k/coldfire/fpu/s_lrintf.c: Include + . + (lrintf): Define using libm_alias_float. + * sysdeps/m68k/coldfire/fpu/s_rintf.c: Include + . + (rintf): Define using libm_alias_float. + + * sysdeps/m68k/coldfire/fpu/s_fabs.c: Include + . + (fabs): Define using libm_alias_double. + * sysdeps/m68k/coldfire/fpu/s_lrint.c: Include + . + (lrint): Define using libm_alias_double. + * sysdeps/m68k/coldfire/fpu/s_rint.c: Include + . + (rint): Define using libm_alias_double. + + * sysdeps/m68k/m680x0/fpu/s_atan_template.c: New file. + * sysdeps/m68k/m680x0/fpu/s_ceil_template.c: Likewise. + * sysdeps/m68k/m680x0/fpu/s_cos_template.c: Likewise. + * sysdeps/m68k/m680x0/fpu/s_expm1_template.c: Likewise. + * sysdeps/m68k/m680x0/fpu/s_fabs_template.c: Likewise. + * sysdeps/m68k/m680x0/fpu/s_floor_template.c: Likewise. + * sysdeps/m68k/m680x0/fpu/s_frexp_template.c: Likewise. + * sysdeps/m68k/m680x0/fpu/s_lrint_template.c: Likewise. + * sysdeps/m68k/m680x0/fpu/s_modf_template.c: Likewise. + * sysdeps/m68k/m680x0/fpu/s_nearbyint_template.c: Likewise. + * sysdeps/m68k/m680x0/fpu/s_remquo_template.c: Likewise. + * sysdeps/m68k/m680x0/fpu/s_rint_template.c: Likewise. + * sysdeps/m68k/m680x0/fpu/s_sin_template.c: Likewise. + * sysdeps/m68k/m680x0/fpu/s_sincos_template.c: Likewise. + * sysdeps/m68k/m680x0/fpu/s_tan_template.c: Likewise. + * sysdeps/m68k/m680x0/fpu/s_tanh_template.c: Likewise. + * sysdeps/m68k/m680x0/fpu/s_trunc_template.c: Likewise. + * sysdeps/m68k/m680x0/fpu/s_atan.c: Reimplement to use + s_atan_template.c. + * sysdeps/m68k/m680x0/fpu/s_atanf.c: Likewise. + * sysdeps/m68k/m680x0/fpu/s_atanl.c: Likewise. + * sysdeps/m68k/m680x0/fpu/s_ceil.c: Reimplement to use + s_ceil_template.c. + * sysdeps/m68k/m680x0/fpu/s_ceilf.c: Likewise. + * sysdeps/m68k/m680x0/fpu/s_ceill.c: Likewise. + * sysdeps/m68k/m680x0/fpu/s_cos.c: Reimplement to use + s_cos_template.c. + * sysdeps/m68k/m680x0/fpu/s_cosf.c: Likewise. + * sysdeps/m68k/m680x0/fpu/s_cosl.c: Likewise. + * sysdeps/m68k/m680x0/fpu/s_expm1.c: Reimplement to use + s_expm1_template.c. + * sysdeps/m68k/m680x0/fpu/s_expm1f.c: Likewise. + * sysdeps/m68k/m680x0/fpu/s_expm1l.c: Likewise. + * sysdeps/m68k/m680x0/fpu/s_fabs.c: Reimplement to use + s_fabs_template.c. + * sysdeps/m68k/m680x0/fpu/s_fabsf.c: Likewise. + * sysdeps/m68k/m680x0/fpu/s_fabsl.c: Likewise. + * sysdeps/m68k/m680x0/fpu/s_floor.c: Reimplement to use + s_floor_template.c. + * sysdeps/m68k/m680x0/fpu/s_floorf.c: Likewise. + * sysdeps/m68k/m680x0/fpu/s_floorl.c: Likewise. + * sysdeps/m68k/m680x0/fpu/s_frexp.c: Reimplement to use + s_frexp_template.c. + * sysdeps/m68k/m680x0/fpu/s_frexpf.c: Likewise. + * sysdeps/m68k/m680x0/fpu/s_lrint.c: Reimplement to use + s_lrint_template.c. + * sysdeps/m68k/m680x0/fpu/s_lrintf.c: Likewise. + * sysdeps/m68k/m680x0/fpu/s_lrintl.c: Likewise. + * sysdeps/m68k/m680x0/fpu/s_modf.c: Reimplement to use + s_modf_template.c. + * sysdeps/m68k/m680x0/fpu/s_modff.c: Likewise. + * sysdeps/m68k/m680x0/fpu/s_modfl.c: Likewise. + * sysdeps/m68k/m680x0/fpu/s_nearbyint.c: Reimplement to use + s_nearbyint_template.c. + * sysdeps/m68k/m680x0/fpu/s_nearbyintf.c: Likewise. + * sysdeps/m68k/m680x0/fpu/s_nearbyintl.c: Likewise. + * sysdeps/m68k/m680x0/fpu/s_remquo.c: Reimplement to use + s_remquo_template.c. + * sysdeps/m68k/m680x0/fpu/s_remquof.c: Likewise. + * sysdeps/m68k/m680x0/fpu/s_remquol.c: Likewise. + * sysdeps/m68k/m680x0/fpu/s_rint.c: Reimplement to use + s_rint_template.c. + * sysdeps/m68k/m680x0/fpu/s_rintf.c: Likewise. + * sysdeps/m68k/m680x0/fpu/s_rintl.c: Likewise. + * sysdeps/m68k/m680x0/fpu/s_sin.c: Reimplement to use + s_sin_template.c. + * sysdeps/m68k/m680x0/fpu/s_sinf.c: Likewise. + * sysdeps/m68k/m680x0/fpu/s_sinl.c: Likewise. + * sysdeps/m68k/m680x0/fpu/s_sincos.c: Reimplement to use + s_sincos_template.c. + * sysdeps/m68k/m680x0/fpu/s_sincosf.c: Likewise. + * sysdeps/m68k/m680x0/fpu/s_sincosl.c: Likewise. + * sysdeps/m68k/m680x0/fpu/s_tan.c: Reimplement to use + s_tan_template.c. + * sysdeps/m68k/m680x0/fpu/s_tanf.c: Likewise. + * sysdeps/m68k/m680x0/fpu/s_tanl.c: Likewise. + * sysdeps/m68k/m680x0/fpu/s_tanh.c: Reimplement to use + s_tanh_template.c. + * sysdeps/m68k/m680x0/fpu/s_tanhf.c: Likewise. + * sysdeps/m68k/m680x0/fpu/s_tanhl.c: Likewise. + * sysdeps/m68k/m680x0/fpu/s_trunc.c: Reimplement to use + s_trunc_template.c. + * sysdeps/m68k/m680x0/fpu/s_truncf.c: Likewise. + * sysdeps/m68k/m680x0/fpu/s_truncl.c: Likewise. + * sysdeps/m68k/m680x0/fpu/s_significand.c: Reimplement based on + s_atan.c instead of including s_atan.c. + * sysdeps/m68k/m680x0/fpu/s_significandf.c: Reimplement based on + s_atanf.c instead of including s_atanf.c. + * sysdeps/m68k/m680x0/fpu/s_significandl.c: Reimplement based on + s_atanl.c instead of including s_atanl.c. + * sysdeps/m68k/m680x0/fpu/s_log1p.c: Include s_significand.c + instead of s_atan.c. + * sysdeps/m68k/m680x0/fpu/s_log1pf.c: Include s_significandf.c + instead of s_atanf.c. + * sysdeps/m68k/m680x0/fpu/s_log1pl.c: Include s_significandl.c + instead of s_atanl.c. + + * scripts/update-copyrights: Do not handle intl/plural.c + specially. + +2017-11-30 Juro Bystricky + + [BZ #22432] + * configure.ac (BISON): Require to be present. + * configure: Regenerated. + * intl/Makefile (generated): Add plural.c. + [$(BISON) != no]: Make code unconditional. + (plural.c): Change rule to $(objpfx)plural.c. + ($(objpfx)plural.o): Depend on $(objpfx)plural.c. + * intl/plural.c: Remove. + * manual/install.texi (Tools for Compilation): Document bison as + required. + * INSTALL: Regenerated. + +2017-11-30 Joseph Myers + + * sysdeps/m68k/m680x0/fpu/s_llrint.c: Include + . + (llrint): Define using libm_alias_double. + * sysdeps/m68k/m680x0/fpu/s_llrintf.c: Include + . + (llrintf): Define using libm_alias_float. + * sysdeps/m68k/m680x0/fpu/s_llrintl.c: Include + . + (llrintl): Define using libm_alias_ldouble. + + * sysdeps/m68k/m680x0/fpu/s_ccosh_template.c (ccosh): Use + declare_mgen_alias instead of weak_alias. + * sysdeps/m68k/m680x0/fpu/s_cexp_template.c (cexp): Likewise. + * sysdeps/m68k/m680x0/fpu/s_csin_template.c (csin): Likewise. + * sysdeps/m68k/m680x0/fpu/s_csinh_template.c (csinh): Likewise. + +2017-11-30 Adhemerval Zanella + + * sysdeps/sparc/sparc64/multiarch/Makefile (sysdep_routines): + Add add_n-generic. + * sysdeps/sparc/sparc64/multiarch/add_n-generic.S: New file. + * sysdeps/sparc/sparc64/multiarch/add_n.c: Likewise. + * sysdeps/sparc/sparc64/multiarch/add_n.S: Remove file. + + * sysdeps/sparc/sparc64/multiarch/Makefile (sysdep_routines): + Add submul_1-generic. + * sysdeps/sparc/sparc64/multiarch/submul_1-generic.S: New file. + * sysdeps/sparc/sparc64/multiarch/submul_1.c: Likewise. + * sysdeps/sparc/sparc64/multiarch/submul_1.S: Remove file. + + * sysdeps/sparc/sparc64/multiarch/Makefile (sysdep_routines): + Add addmul_1-generic. + * sysdeps/sparc/sparc64/multiarch/addmul_1-generic.S: New file. + * sysdeps/sparc/sparc64/multiarch/addmul_1.c: Likewise. + * sysdeps/sparc/sparc64/multiarch/addmul_1.S: Remove file. + + * sysdeps/sparc/sparc64/multiarch/Makefile (sysdep_routines): + Add sub_n-generic. + * sysdeps/sparc/sparc64/multiarch/sub_n-generic.S: New file. + * sysdeps/sparc/sparc64/multiarch/sub_n.c: Likewise. + * sysdeps/sparc/sparc64/multiarch/sub_n.S: Remove file. + + * sysdeps/sparc/sparc64/multiarch/Makefile (sysdep_routines): + Add mul_1-generic. + * sysdeps/sparc/sparc64/multiarch/mul_1-generic.S: New file. + * sysdeps/sparc/sparc64/multiarch/mul_1.c: Likewise. + * sysdeps/sparc/sparc64/multiarch/mul_1.S: Remove file. + +2017-11-30 Mike FABIAN + + According to CLDR, collation rules for Serbian and Bosnian + should be the same as for Croatian. + + [BZ #22534] + * localedata/Makefile: Add sr_RS.UTF-8 and bs_BA.UTF-8 to test-input + and to the list of locales to be built for testing. + * localedata/bs_BA.UTF-8.in: New file (same as hr_HR.UTF-8.in). + * localedata/sr_RS.UTF-8.in: New file (same as hr_HR.UTF-8.in). + * localedata/locales/bs_BA (LC_COLLATE): Use “copy "hr_HR"”. + * localedata/locales/sr_RS (LC_COLLATE): Use “copy "hr_HR"”. + +2017-11-30 Mike FABIAN + + * localedata/locales/hr_HR (LC_COLLATE): Fix collation + to make test case pass. + * localedata/hr_HR.UTF-8.in: Add more test strings. + +2017-11-30 Mike FABIAN + + * stdlib/tst-strfmon_l.c: Fix testcase. Needed because of [BZ #10580] + +2017-11-30 Dragan Stanojević - Nevidljivi + + * localedata/Makefile: Add hr_HR.UTF-8 to test-input and to + the list of locales to built for testing. + * localedata/hr_HR.UTF-8.in: New file. + +2017-11-30 Dragan Stanojević - Nevidljivi + + [BZ #10580] + * localedata/locales/hr_HR (LC_COLLATE): Base collation rules on + iso14651_t1. + * localedata/locales/hr_HR (LC_TIME): Sync month and day names with + CLDR (except use ligatures for the digraphs, CLDR does not use + the ligatures), add first_workday, some fixes in the date and time + formats. + * localedata/locales/hr_HR (LC_CTYPE): Add transliteration rules + for Đ and đ. + * localedata/locales/hr_HR (LC_MONETARY): Change currency_symbol to + lower case. p_cs_precedes and n_cs_precedes should be 0 instead of 1. + Add int_p_cs_precedes and int_n_cs_precedes. + * localedata/locales/hr_HR (LC_NUMERIC): Change thousands_sep to + "" (NARROW NO-BREAK SPACE) and grouping to 3;3 (Agrees with + LC_MONETARY now). + * localedata/locales/hr_HR (LC_TELEPHONE): Add tel_dom_fmt. + * localedata/locales/hr_HR (LC_NAME): Add name_mr, name_mrs, and + name_miss. + * localedata/locales/hr_HR (LC_ADDRESS): Add country_post, country_isbn, + and lang_lib. Change postal_fmt. + +2017-11-30 H.J. Lu + + * debug/longjmp_chk.c: Include instead of + . + * setjmp/longjmp.c: Include instead of . + (__libc_siglongjmp): Cast &env[0].__saved_mask to "sigset_t *". + * setjmp/sigjmp.c: Include instead of . + (__sigjmp_save): Cast &env[0].__saved_mask to "sigset_t *". + * sysdeps/generic/setjmpP.h: New file. + * sysdeps/unix/sysv/linux/x86/jmp_buf-ssp.sym: Likewise. + * sysdeps/unix/sysv/linux/x86/setjmpP.h: Likewise. + * sysdeps/unix/sysv/linux/x86/tst-saved_mask-1.c: Likewise. + * sysdeps/unix/sysv/linux/x86/Makefile (gen-as-const-headers): + Add jmp_buf-ssp.sym. + (tests): Add tst-saved_mask-1. + +2017-11-30 Arjun Shankar + + [BZ #22375] + CVE-2017-17426 + * malloc/malloc.c (__libc_malloc): Use checked_request2size + instead of request2size. + +2017-11-30 Joseph Myers + + * sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/s_llrint.S + (__lllrint): Remove alias. + (lllrint): Likewise. + * sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/s_llrintf.S + (__lllrintf): Likewise. + (lllrintf): Likewise. + + * sysdeps/sparc/sparc32/fpu/s_copysignf.S: Include + . + (copysignf): Define using libm_alias_float. + * sysdeps/sparc/sparc32/fpu/s_fabsf.S: Include + . + (fabsf): Define using libm_alias_float. + * sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/s_copysignf.S: + Include . + (copysignf): Define using libm_alias_float. + * sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/s_fabsf.S: Include + . + (fabsf): Define using libm_alias_float. + * sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/s_fdimf.c: Include + . + (fdimf): Define using libm_alias_float. + * sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/s_fmaf.c: Include + . + (fmaf): Define using libm_alias_float. + * sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/s_llrintf.S: Include + . + (llrintf): Define using libm_alias_float. + * sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/s_nearbyintf.S: + Include . + (nearbyintf): Define using libm_alias_float. + * sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/s_rintf.S: Include + . + (rintf): Define using libm_alias_float. + * sysdeps/sparc/sparc32/sparcv9/fpu/s_llrintf.S: Include + . + (llrintf): Define using libm_alias_float. + * sysdeps/sparc/sparc32/sparcv9/fpu/s_lrintf.S: Include + . + (lrintf): Define using libm_alias_float. + * sysdeps/sparc/sparc32/sparcv9/fpu/s_nearbyintf.S: Include + . + (nearbyintf): Define using libm_alias_float. + * sysdeps/sparc/sparc32/sparcv9/fpu/s_rintf.S: Include + . + (rintf): Define using libm_alias_float. + * sysdeps/sparc/sparc64/fpu/multiarch/s_ceilf.c: Include + . + (ceilf): Define using libm_alias_float. + * sysdeps/sparc/sparc64/fpu/multiarch/s_floorf.c: Include + . + (floorf): Define using libm_alias_float. + * sysdeps/sparc/sparc64/fpu/multiarch/s_fmaf.c: Include + . + (fmaf): Define using libm_alias_float. + * sysdeps/sparc/sparc64/fpu/multiarch/s_lrintf.c: Include + . + (lrintf): Define using libm_alias_float. + (llrintf): Likewise. + * sysdeps/sparc/sparc64/fpu/multiarch/s_nearbyintf.c: Include + . + (nearbyintf): Define using libm_alias_float. + * sysdeps/sparc/sparc64/fpu/multiarch/s_rintf.c: Include + . + (rintf): Define using libm_alias_float. + * sysdeps/sparc/sparc64/fpu/multiarch/s_truncf.c: Include + . + (truncf): Define using libm_alias_float. + * sysdeps/sparc/sparc64/fpu/s_copysignf.S: Include + . + (copysignf): Define using libm_alias_float. + * sysdeps/sparc/sparc64/fpu/s_fabsf.c: Include + . + (fabsf): Define using libm_alias_float. + * sysdeps/sparc/sparc64/fpu/s_lrintf.S: Include + . + (lrintf): Define using libm_alias_float. + (llrintf): Likewise. + * sysdeps/sparc/sparc64/fpu/s_nearbyintf.S: Include + . + (nearbyintf): Define using libm_alias_float. + * sysdeps/sparc/sparc64/fpu/s_rintf.S: Include + . + (rintf): Define using libm_alias_float. + +2017-11-29 Joseph Myers + + * sysdeps/sparc/sparc32/fpu/s_copysign.S: Include + . + (copysign): Define using libm_alias_double. + * sysdeps/sparc/sparc32/fpu/s_fabs.S: Include + . + (fabs): Define using libm_alias_double. + * sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/s_copysign.S: + Include . + (copysign): Define using libm_alias_double. + * sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/s_fabs.S: Include + . + (fabs): Define using libm_alias_double. + * sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/s_fdim.c: Include + . + (fdim): Define using libm_alias_double. + * sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/s_fma.c: Include + . + (fma): Define using libm_alias_double. + * sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/s_llrint.S: Include + . + (llrint): Define using libm_alias_double. + * sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/s_nearbyint.S: + Include . + (nearbyint): Define using libm_alias_double. + * sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/s_rint.S: Include + . + (rint): Define using libm_alias_double. + * sysdeps/sparc/sparc32/sparcv9/fpu/s_fabs.S: Include + . + (fabs): Define using libm_alias_double. + * sysdeps/sparc/sparc32/sparcv9/fpu/s_llrint.S: Include + . + (llrint): Define using libm_alias_double. + * sysdeps/sparc/sparc32/sparcv9/fpu/s_nearbyint.S: Include + . + (nearbyint): Define using libm_alias_double. + * sysdeps/sparc/sparc32/sparcv9/fpu/s_rint.S: Include + . + (rint): Define using libm_alias_double. + * sysdeps/sparc/sparc64/fpu/multiarch/s_ceil.c: Include + . + (ceil): Define using libm_alias_double. + * sysdeps/sparc/sparc64/fpu/multiarch/s_floor.c: Include + . + (floor): Define using libm_alias_double. + * sysdeps/sparc/sparc64/fpu/multiarch/s_fma.c: Include + . + (fma): Define using libm_alias_double. + * sysdeps/sparc/sparc64/fpu/multiarch/s_lrint.c: Include + . + (lrint): Define using libm_alias_double. + (llrint): Likewise. + * sysdeps/sparc/sparc64/fpu/multiarch/s_nearbyint.c: Include + . + (nearbyint): Define using libm_alias_double. + * sysdeps/sparc/sparc64/fpu/multiarch/s_rint.c: Include + . + (rint): Define using libm_alias_double. + * sysdeps/sparc/sparc64/fpu/multiarch/s_trunc.c: Include + . + (trunc): Define using libm_alias_double. + * sysdeps/sparc/sparc64/fpu/s_copysign.S: Include + . + (copysign): Define using libm_alias_double. + * sysdeps/sparc/sparc64/fpu/s_fabs.c: Include + . + (fabs): Define using libm_alias_double. + * sysdeps/sparc/sparc64/fpu/s_lrint.S: Include + . + (lrint): Define using libm_alias_double. + (llrint): Likewise. + * sysdeps/sparc/sparc64/fpu/s_nearbyint.S: Include + . + (nearbyint): Define using libm_alias_double. + * sysdeps/sparc/sparc64/fpu/s_rint.S: Include + . + (rint): Define using libm_alias_double. + + [BZ #22229] + * sysdeps/sparc/sparc32/sparcv9/fpu/s_fabs.S: Include + . + (fabsl): Define as compat symbol at version GLIBC_2_0 for libm. + + * scripts/build-many-glibcs.py (Context.add_all_configs): Add + SPARC --disable-multi-arch glibc variants. + + * sysdeps/x86_64/fpu/multiarch/e_exp2f.c: Include + . + (exp2f): Define using libm_alias_float, or libm_alias_float_other + if [SHARED]. + * sysdeps/x86_64/fpu/multiarch/e_expf.c: Include + . + (exp2f): Define using libm_alias_float, or libm_alias_float_other + if [SHARED]. + * sysdeps/x86_64/fpu/multiarch/e_log2f.c: Include + . + (exp2f): Define using libm_alias_float, or libm_alias_float_other + if [SHARED]. + * sysdeps/x86_64/fpu/multiarch/e_logf.c: Include + . + (exp2f): Define using libm_alias_float, or libm_alias_float_other + if [SHARED]. + * sysdeps/x86_64/fpu/multiarch/e_powf.c: Include + . + (exp2f): Define using libm_alias_float, or libm_alias_float_other + if [SHARED]. + * sysdeps/x86_64/fpu/multiarch/s_ceilf.c: Include + . + (ceilf): Define using libm_alias_float. + * sysdeps/x86_64/fpu/multiarch/s_floorf.c: Include + . + (floorf): Define using libm_alias_float. + * sysdeps/x86_64/fpu/multiarch/s_fmaf.c: Include + . + (fmaf): Define using libm_alias_float. + * sysdeps/x86_64/fpu/multiarch/s_nearbyintf.c: Include + . + (nearbyintf): Define using libm_alias_float. + * sysdeps/x86_64/fpu/multiarch/s_rintf.c: Include + . + (rintf): Define using libm_alias_float. + * sysdeps/x86_64/fpu/multiarch/s_truncf.c: Include + . + (truncf): Define using libm_alias_float. + * sysdeps/x86_64/fpu/s_copysignf.S: Include . + (copysignf): Define using libm_alias_float. + * sysdeps/x86_64/fpu/s_cosf.S: Include . + (cosf): Define using libm_alias_float. + * sysdeps/x86_64/fpu/s_fabsf.c: Include . + (fabsf): Define using libm_alias_float. + * sysdeps/x86_64/fpu/s_fmaxf.S: Include . + (fmaxf): Define using libm_alias_float. + * sysdeps/x86_64/fpu/s_fminf.S: Include . + (fminf): Define using libm_alias_float. + * sysdeps/x86_64/fpu/s_llrintf.S: Include . + (llrintf): Define using libm_alias_float. + [!__ILP32__] (lrintf): Likewise. + * sysdeps/x86_64/fpu/s_sincosf.S: Include . + (sincosf): Define using libm_alias_float. + * sysdeps/x86_64/fpu/s_sinf.S: Include . + (sinf): Define using libm_alias_float. + * sysdeps/x86_64/x32/fpu/s_lrintf.S: Include . + (lrintf): Define using libm_alias_float. + + * sysdeps/x86_64/fpu/multiarch/s_atan.c: Include + . + (atan): Define using libm_alias_double. + * sysdeps/x86_64/fpu/multiarch/s_ceil.c: Include + . + (ceil): Define using libm_alias_double. + * sysdeps/x86_64/fpu/multiarch/s_floor.c: Include + . + (floor): Define using libm_alias_double. + * sysdeps/x86_64/fpu/multiarch/s_fma.c: Include + . + (fma): Define using libm_alias_double. + * sysdeps/x86_64/fpu/multiarch/s_nearbyint.c: Include + . + (nearbyint): Define using libm_alias_double. + * sysdeps/x86_64/fpu/multiarch/s_rint.c: Include + . + (rint): Define using libm_alias_double. + * sysdeps/x86_64/fpu/multiarch/s_sin.c: Include + . + (sin): Define using libm_alias_double. + (cos): Likewise. + * sysdeps/x86_64/fpu/multiarch/s_tan.c: Include + . + (tan): Define using libm_alias_double. + * sysdeps/x86_64/fpu/multiarch/s_trunc.c: Include + . + (trunc): Define using libm_alias_double. + * sysdeps/x86_64/fpu/s_copysign.S: Include . + (copysign): Define using libm_alias_double. + * sysdeps/x86_64/fpu/s_fabs.c: Include . + (fabs): Define using libm_alias_double. + * sysdeps/x86_64/fpu/s_fmax.S: Include . + (fmax): Define using libm_alias_double. + * sysdeps/x86_64/fpu/s_fmin.S: Include . + (fmin): Define using libm_alias_double. + * sysdeps/x86_64/fpu/s_llrint.S: Include . + (llrint): Define using libm_alias_double. + [!__ILP32__] (lrint): Likewise. + * sysdeps/x86_64/x32/fpu/s_lrint.S: Include . + (lrint): Define using libm_alias_double. + +2017-11-29 Adhemerval Zanella + + * sysdeps/sparc/sparc64/fpu/multiarch/Makefile + (libm-sysdep_routines): Add s_rintf-generic and s_rint-generic + objects. + * sysdeps/sparc/sparc64/fpu/multiarch/s_rint-generic.S: New file. + * sysdeps/sparc/sparc64/fpu/multiarch/s_rint.c: Likewise. + * sysdeps/sparc/sparc64/fpu/multiarch/s_rintf-generic.S: Likewise. + * sysdeps/sparc/sparc64/fpu/multiarch/s_rintf.c: Likewise. + * sysdeps/sparc/sparc64/fpu/multiarch/s_rint.S: Remove file. + * sysdeps/sparc/sparc64/fpu/multiarch/s_rintf.S: Likewise. + + * sysdeps/sparc/sparc64/fpu/multiarch/Makefile + (libm-sysdep_routines): Add s_lrint-generic and s_lrintf-generic + objects. + * sysdeps/sparc/sparc64/fpu/multiarch/s_lrint-generic.S: New file. + * sysdeps/sparc/sparc64/fpu/multiarch/s_lrint.c: Likewise. + * sysdeps/sparc/sparc64/fpu/multiarch/s_lrintf-generic.S: Likewise. + * sysdeps/sparc/sparc64/fpu/multiarch/s_lrintf.c: Likewise. + * sysdeps/sparc/sparc64/fpu/multiarch/s_lrint.S: Remove file. + * sysdeps/sparc/sparc64/fpu/multiarch/s_lrintf.S: Likewise. + + * sysdeps/sparc/sparc64/fpu/multiarch/Makefile + (libm-sysdep_routines): Add s_nearbyint-generic and + s_nearbyintf-generic objects. + * sysdeps/sparc/sparc64/fpu/multiarch/s_nearbyint-generic.S: New file. + * sysdeps/sparc/sparc64/fpu/multiarch/s_nearbyint.c: Likewise. + * sysdeps/sparc/sparc64/fpu/multiarch/s_nearbyintf-generic.S: Likewise. + * sysdeps/sparc/sparc64/fpu/multiarch/s_nearbyintf.c: Likewise. + * sysdeps/sparc/sparc64/fpu/multiarch/s_nearbyint.S: Remove file. + * sysdeps/sparc/sparc64/fpu/multiarch/s_nearbyintf.S: Likewise. + + * sysdeps/sparc/sparc64/fpu/multiarch/Makefile (sysdeps_calls): + Add s_finitef-generic and s_finite-generic objects. + * sysdeps/sparc/sparc64/fpu/multiarch/s_finite-generic.S: New file. + * sysdeps/sparc/sparc64/fpu/multiarch/s_finite.c: Likewise. + * sysdeps/sparc/sparc64/fpu/multiarch/s_finitef-generic.S: Likewise. + * sysdeps/sparc/sparc64/fpu/multiarch/s_finitef.c: Likewise. + * sysdeps/sparc/sparc64/fpu/multiarch/s_finite.S: Remove file. + * sysdeps/sparc/sparc64/fpu/multiarch/s_finitef.S: Remove file. + + * sysdeps/sparc/sparc64/fpu/multiarch/Makefile (sysdeps_calls): + Add s_isinff-generic and s_isinf-generic objects. + * sysdeps/sparc/sparc64/fpu/multiarch/s_isinf-generic.S: New file. + * sysdeps/sparc/sparc64/fpu/multiarch/s_isinf.c: Likewise. + * sysdeps/sparc/sparc64/fpu/multiarch/s_isinff-generic.S: Likewise. + * sysdeps/sparc/sparc64/fpu/multiarch/s_isinff.c: Likewise. + * sysdeps/sparc/sparc64/fpu/multiarch/s_isinf.S: Remove file. + * sysdeps/sparc/sparc64/fpu/multiarch/s_isinff.S: Likewise. + + * sysdeps/sparc/sparc64/fpu/multiarch/Makefile (sysdeps_calls): + Add s_isnanf-generic and s_isnan-generic objects. + * sysdeps/sparc/sparc64/fpu/multiarch/s_isnan-generic.S: New file. + * sysdeps/sparc/sparc64/fpu/multiarch/s_isnanf-generic.S: Likewise. + * sysdeps/sparc/sparc64/fpu/multiarch/s_isnan.c: Likewise. + * sysdeps/sparc/sparc64/fpu/multiarch/s_isnanf.c: Likewise. + * sysdeps/sparc/sparc64/fpu/multiarch/s_isnan.S: Remove file. + * sysdeps/sparc/sparc64/fpu/multiarch/s_isnanf.S: Likewise. + + * sysdeps/sparc/sparc-ifunc.h (sparc_libm_ifunc_redirected): New + macro. + * sysdeps/sparc/sparc64/fpu/multiarch/Makefile (sysdep_calls): New + rule. + (sysdep_routines): Use sysdep_calls as base. + (libm-sysdep_routines): Add generic rule for symbols shared with + libc. Add s_signbit-generic and s_signbitf-generic objects. + * sysdeps/sparc/sparc64/fpu/multiarch/s_signbit.c: New file. + * sysdeps/sparc/sparc64/fpu/multiarch/s_signbitf.c: Likewise. + * sysdeps/sparc/sparc64/fpu/multiarch/s_signbit-generic.S: Likewise. + * sysdeps/sparc/sparc64/fpu/multiarch/s_signbitf-generic.S: Likewise. + * sysdeps/sparc/sparc64/fpu/multiarch/s_signbit.S: Remove file. + * sysdeps/sparc/sparc64/fpu/multiarch/s_signbitf.S: Likewise. + +2017-11-29 Joseph Myers + + * sysdeps/ia64/fpu/libm-symbols.h: Include . + * sysdeps/ia64/fpu/e_acosf.S (acosf): Use libm_alias_float_other. + * sysdeps/ia64/fpu/e_acoshf.S (acoshf): Likewise. + * sysdeps/ia64/fpu/e_asinf.S (asinf): Likewise. + * sysdeps/ia64/fpu/e_atan2f.S (atan2f): Likewise. + * sysdeps/ia64/fpu/e_atanhf.S (atanhf): Likewise. + * sysdeps/ia64/fpu/e_coshf.S (coshf): Likewise. + * sysdeps/ia64/fpu/e_exp10f.S (exp10f): Likewise. + * sysdeps/ia64/fpu/e_exp2f.S (exp2f): Likewise. + * sysdeps/ia64/fpu/e_expf.S (expf): Likewise. + * sysdeps/ia64/fpu/e_fmodf.S (fmodf): Likewise. + * sysdeps/ia64/fpu/e_hypotf.S (hypotf): Likewise. + * sysdeps/ia64/fpu/e_lgammaf_r.c (lgammaf_r): Define using + libm_alias_float_r. + * sysdeps/ia64/fpu/e_log2f.S (log2f): Use libm_alias_float_other. + * sysdeps/ia64/fpu/e_logf.S (log10f): Likewise. + (logf): Likewise. + * sysdeps/ia64/fpu/e_powf.S (powf): Likewise. + * sysdeps/ia64/fpu/e_remainderf.S (remainderf): Likewise. + * sysdeps/ia64/fpu/e_sinhf.S (sinhf): Likewise. + * sysdeps/ia64/fpu/e_sqrtf.S (sqrtf): Likewise. + * sysdeps/ia64/fpu/libm_sincosf.S (sincosf): Likewise. + * sysdeps/ia64/fpu/s_asinhf.S (asinhf): Likewise. + * sysdeps/ia64/fpu/s_atanf.S (atanf): Likewise. + * sysdeps/ia64/fpu/s_cbrtf.S (cbrtf): Likewise. + * sysdeps/ia64/fpu/s_ceilf.S (ceilf): Likewise. + * sysdeps/ia64/fpu/s_copysign.S (copysignf): Define using + libm_alias_float. + * sysdeps/ia64/fpu/s_cosf.S (sinf): Use libm_alias_float_other. + (cosf): Likewise. + * sysdeps/ia64/fpu/s_erfcf.S (erfcf): Likewise. + * sysdeps/ia64/fpu/s_erff.S (erff): Likewise. + * sysdeps/ia64/fpu/s_expm1f.S (expm1f): Likewise. + * sysdeps/ia64/fpu/s_fabsf.S (fabsf): Likewise. + * sysdeps/ia64/fpu/s_fdimf.S (fdimf): Likewise. + * sysdeps/ia64/fpu/s_floorf.S (floorf): Likewise. + * sysdeps/ia64/fpu/s_fmaf.S (fmaf): Likewise. + * sysdeps/ia64/fpu/s_fmaxf.S (fmaxf): Likewise. + * sysdeps/ia64/fpu/s_frexpf.c (frexpf): Likewise. + * sysdeps/ia64/fpu/s_ldexpf.c (ldexpf): Likewise. + * sysdeps/ia64/fpu/s_log1pf.S (log1pf): Likewise. + * sysdeps/ia64/fpu/s_logbf.S (logbf): Likewise. + * sysdeps/ia64/fpu/s_modff.S (modff): Likewise. + * sysdeps/ia64/fpu/s_nearbyintf.S (nearbyintf): Likewise. + * sysdeps/ia64/fpu/s_nextafterf.S (nextafterf): Likewise. + * sysdeps/ia64/fpu/s_rintf.S (rintf): Likewise. + * sysdeps/ia64/fpu/s_roundf.S (roundf): Likewise. + * sysdeps/ia64/fpu/s_scalblnf.c (scalblnf): Likewise. + * sysdeps/ia64/fpu/s_scalbnf.c (scalbnf): Define using + libm_alias_float. + * sysdeps/ia64/fpu/s_tanf.S (tanf): Use libm_alias_float_other. + * sysdeps/ia64/fpu/s_tanhf.S (tanhf): Likewise. + * sysdeps/ia64/fpu/s_truncf.S (truncf): Likewise. + * sysdeps/ia64/fpu/w_lgammaf_main.c + [BUILD_LGAMMA && !USE_AS_COMPAT] (lgammaf): Likewise. + * sysdeps/ia64/fpu/w_tgammaf_compat.S (tgammaf): Likewise. + +2017-11-28 Mike FABIAN + Alexandre Oliva + + [BZ #17750] + * Makefile: add fr_CA.UTF-8 to test-input and LOCALES. + * localedata/fr_CA.UTF-8.in: New file with test data for backward + accents sorting. + * localedata/fr_FR.UTF-8.in: Fix test data for forward accents + sorting. + * localedata/locales/cs_CZ (LC_COLLATE): Remove “define DIACRIT_FORWARD” + * localedata/locales/de_DE (LC_COLLATE): Likewise. + * localedata/locales/hu_HU (LC_COLLATE): Likewise. + * localedata/locales/lb_LU (LC_COLLATE): Likewise. + * localedata/locales/yuw_PG (LC_COLLATE): Likewise. + * localedata/locales/fr_CA (LC_COLLATE): Add “define DIACRIT_BACKWARD” + * localedata/locales/iso14651_t1_common: Use “ifdef DIACRIT_FORWARD” + instead of “ifdef DIACRIT_BACKWARD”. + +2017-11-29 Adhemerval Zanella + + * config.h.in (HAVE_AS_VIS3_SUPPORT): Remove check for VIS3 support. + * sysdeps/sparc/configure.ac (HAVE_AS_VIS3_SUPPORT): Likewise. + * sysdeps//sparc/sparc32/sparcv9/fpu/multiarch/s_fdim.c: Likewise. + * sysdeps//sparc/sparc32/sparcv9/fpu/multiarch/s_fdimf.c: Likewise. + * sysdeps//sparc/sparc32/sparcv9/fpu/multiarch/s_fma.c: Likewise. + * sysdeps//sparc/sparc32/sparcv9/fpu/multiarch/s_fmaf.c: Likewise. + * sysdeps/sparc/sparc64/fpu/multiarch/s_ceil.c: Likewise. + * sysdeps/sparc/sparc64/fpu/multiarch/s_ceilf.c: Likewise. + * sysdeps/sparc/sparc64/fpu/multiarch/s_floor.c: Likewise. + * sysdeps/sparc/sparc64/fpu/multiarch/s_floorf.c: Likewise. + * sysdeps/sparc/sparc64/fpu/multiarch/s_fma.c: Likewise. + * sysdeps/sparc/sparc64/fpu/multiarch/s_fmaf.c: Likewise. + * sysdeps/sparc/sparc64/fpu/multiarch/s_trunc.c: Likewise. + * sysdeps/sparc/sparc64/fpu/multiarch/s_truncf.c: Likewise. + * sysdeps/sparc/sparc-ifunc.h [!HAVE_AS_VIS3_SUPPORT] + (SPARC_ASM_VIS3_IFUNC, SPARC_ASM_VIS3_VIS2_IFUNC): Remove macros. + * sysdeps/sparc/sparc32/sparcv9/Makefile [$(have-as-vis3) != yes] + (ASFLAGS.o, ASFLAGS-.os, ASFLAGS-.op, ASFLAGS-.oS): Remove rules. + * sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/Makefile + ($(have-as-vis3) == yes): Remove conditional. + * sysdeps/sparc/sparc64/Makefile (($(have-as-vis3) == yes)): + Likewise. + * sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/s_fdim-generic.c: New + file. + * sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/s_fdimf-generic.c: New + file. + * sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/s_fma-generic.c: New + file. + * sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/s_fmaf-generic.c: New + file. + * sysdeps/sparc/sparc64/fpu/multiarch/s_ceil-generic.c: New file. + * sysdeps/sparc/sparc64/fpu/multiarch/s_ceilf-generic.c: New file. + * sysdeps/sparc/sparc64/fpu/multiarch/s_floor-generic.c: New file. + * sysdeps/sparc/sparc64/fpu/multiarch/s_floorf-generic.c: New file. + * sysdeps/sparc/sparc64/fpu/multiarch/s_fma-generic.c: New file. + * sysdeps/sparc/sparc64/fpu/multiarch/s_fmaf-generic.c: New file. + * sysdeps/sparc/sparc64/fpu/multiarch/s_trunc-generic.c: New file. + * sysdeps/sparc/sparc64/fpu/multiarch/s_truncf-generic.c: New file. + +2017-11-29 Joseph Myers + + * sysdeps/ia64/fpu/libm-symbols.h: Include . + * sysdeps/ia64/fpu/e_acos.S (acos): Use libm_alias_double_other. + * sysdeps/ia64/fpu/e_acosh.S (acosh): Likewise. + * sysdeps/ia64/fpu/e_asin.S (asin): Likewise. + * sysdeps/ia64/fpu/e_atan2.S (atan2): Likewise. + * sysdeps/ia64/fpu/e_atanh.S (atanh): Likewise. + * sysdeps/ia64/fpu/e_cosh.S (cosh): Likewise. + * sysdeps/ia64/fpu/e_exp.S (exp): Likewise. + * sysdeps/ia64/fpu/e_exp10.S (exp10): Likewise. + * sysdeps/ia64/fpu/e_exp2.S (exp2): Likewise. + * sysdeps/ia64/fpu/e_fmod.S (fmod): Likewise. + * sysdeps/ia64/fpu/e_hypot.S (hypot): Likewise. + * sysdeps/ia64/fpu/e_lgamma_r.c (lgamma_r): Define using + libm_alias_double_r. + * sysdeps/ia64/fpu/e_log.S (log10): Use libm_alias_double_other. + (log): Likewise. + * sysdeps/ia64/fpu/e_log2.S (log2): Likewise. + * sysdeps/ia64/fpu/e_pow.S (pow): Likewise. + * sysdeps/ia64/fpu/e_remainder.S (remainder): Likewise. + * sysdeps/ia64/fpu/e_sinh.S (sinh): Likewise. + * sysdeps/ia64/fpu/e_sqrt.S (sqrt): Likewise. + * sysdeps/ia64/fpu/libm_sincos.S (sincos): Likewise. + * sysdeps/ia64/fpu/s_asinh.S (asinh): Likewise. + * sysdeps/ia64/fpu/s_atan.S (atan): Likewise. + * sysdeps/ia64/fpu/s_cbrt.S (cbrt): Likewise. + * sysdeps/ia64/fpu/s_ceil.S (ceil): Likewise. + * sysdeps/ia64/fpu/s_copysign.S (copysign): Define using + libm_alias_double. + * sysdeps/ia64/fpu/s_cos.S (sin): Use libm_alias_double_other. + (cos): Likewise. + * sysdeps/ia64/fpu/s_erf.S (erf): Likewise. + * sysdeps/ia64/fpu/s_erfc.S (erfc): Likewise. + * sysdeps/ia64/fpu/s_expm1.S (expm1): Likewise. + * sysdeps/ia64/fpu/s_fabs.S (fabs): Likewise. + * sysdeps/ia64/fpu/s_fdim.S (fdim): Likewise. + * sysdeps/ia64/fpu/s_floor.S (floor): Likewise. + * sysdeps/ia64/fpu/s_fma.S (fma): Likewise. + * sysdeps/ia64/fpu/s_fmax.S (fmax): Likewise. + * sysdeps/ia64/fpu/s_frexp.c (frexp): Likewise. + * sysdeps/ia64/fpu/s_ldexp.c (ldexp): Likewise. + * sysdeps/ia64/fpu/s_log1p.S (log1p): Likewise. + * sysdeps/ia64/fpu/s_logb.S (logb): Likewise. + * sysdeps/ia64/fpu/s_modf.S (modf): Likewise. + * sysdeps/ia64/fpu/s_nearbyint.S (nearbyint): Likewise. + * sysdeps/ia64/fpu/s_nextafter.S (nextafter): Likewise. + * sysdeps/ia64/fpu/s_rint.S (rint): Likewise. + * sysdeps/ia64/fpu/s_round.S (round): Likewise. + * sysdeps/ia64/fpu/s_scalbn.c (scalbn): Define using + libm_alias_double. + * sysdeps/ia64/fpu/s_tan.S (tan): Use libm_alias_double_other. + * sysdeps/ia64/fpu/s_tanh.S (tanh): Likewise. + * sysdeps/ia64/fpu/s_trunc.S (trunc): Likewise. + * sysdeps/ia64/fpu/w_lgamma_main.c + [BUILD_LGAMMA && !USE_AS_COMPAT] (lgamma): Likewise. + * sysdeps/ia64/fpu/w_tgamma_compat.S (tgamma): Likewise. + +2017-11-28 John David Anglin + + * sysdeps/hppa/start.S (_start): Check PIC instead of SHARED. Load + address of $global$ into %dp register earlier. Use pc-relative + instruction sequence for PIC case. + +2017-11-28 Joseph Myers + + * sysdeps/i386/fpu/s_asinhf.S: Include . + (asinhf): Define using libm_alias_float. + * sysdeps/i386/fpu/s_atanf.S: Include . + (atanf): Define using libm_alias_float. + * sysdeps/i386/fpu/s_cbrtf.S: Include . + (cbrtf): Define using libm_alias_float. + * sysdeps/i386/fpu/s_ceilf.S: Include . + (ceilf): Define using libm_alias_float. + * sysdeps/i386/fpu/s_copysignf.S: Include . + (copysignf): Define using libm_alias_float. + * sysdeps/i386/fpu/s_expm1f.S: Include . + (expm1f): Define using libm_alias_float. + * sysdeps/i386/fpu/s_fabsf.S: Include . + (fabsf): Define using libm_alias_float. + * sysdeps/i386/fpu/s_floorf.S: Include . + (floorf): Define using libm_alias_float. + * sysdeps/i386/fpu/s_fmaxf.S: Include . + (fmaxf): Define using libm_alias_float. + * sysdeps/i386/fpu/s_fminf.S: Include . + (fminf): Define using libm_alias_float. + * sysdeps/i386/fpu/s_frexpf.S: Include . + (frexpf): Define using libm_alias_float. + * sysdeps/i386/fpu/s_llrintf.S: Include . + (llrintf): Define using libm_alias_float. + * sysdeps/i386/fpu/s_logbf.S: Include . + (logbf): Define using libm_alias_float. + * sysdeps/i386/fpu/s_lrintf.S: Include . + (lrintf): Define using libm_alias_float. + * sysdeps/i386/fpu/s_nearbyintf.S: Include . + (nearbyintf): Define using libm_alias_float. + * sysdeps/i386/fpu/s_remquof.S: Include . + (remquof): Define using libm_alias_float. + * sysdeps/i386/fpu/s_rintf.S: Include . + (rintf): Define using libm_alias_float. + * sysdeps/i386/fpu/s_truncf.S: Include . + (truncf): Define using libm_alias_float. + * sysdeps/i386/i686/fpu/multiarch/e_exp2f.c: Include + . + (exp2f): Define using libm_alias_float, or libm_alias_float_other + if [SHARED]. + * sysdeps/i386/i686/fpu/multiarch/e_expf.c: Include + . + (expf): Define using libm_alias_float, or libm_alias_float_other + if [SHARED]. + * sysdeps/i386/i686/fpu/multiarch/e_log2f.c: Include + . + (log2f): Define using libm_alias_float, or libm_alias_float_other + if [SHARED]. + * sysdeps/i386/i686/fpu/multiarch/e_logf.c: Include + . + (logf): Define using libm_alias_float, or libm_alias_float_other + if [SHARED]. + * sysdeps/i386/i686/fpu/multiarch/e_powf.c: Include + . + (powf): Define using libm_alias_float, or libm_alias_float_other + if [SHARED]. + * sysdeps/i386/i686/fpu/multiarch/s_cosf.c: Include + . + (cosf): Define using libm_alias_float. + * sysdeps/i386/i686/fpu/multiarch/s_sincosf.c: Include + . + (sincosf): Define using libm_alias_float. + * sysdeps/i386/i686/fpu/multiarch/s_sinf.c: Include + . + (sinf): Define using libm_alias_float. + * sysdeps/i386/i686/fpu/s_fmaxf.S: Include . + (fmaxf): Define using libm_alias_float. + * sysdeps/i386/i686/fpu/s_fminf.S: Include . + (fminf): Define using libm_alias_float. + * sysdeps/i386/i686/multiarch/s_fmaf.c: Include + . + (fmaf): Define using libm_alias_float. + + * sysdeps/i386/fpu/s_asinh.S: Include . + (asinh): Define using libm_alias_double. + * sysdeps/i386/fpu/s_atan.S: Include . + (atan): Define using libm_alias_double. + * sysdeps/i386/fpu/s_cbrt.S: Include . + (cbrt): Define using libm_alias_double. + * sysdeps/i386/fpu/s_ceil.S: Include . + (ceil): Define using libm_alias_double. + * sysdeps/i386/fpu/s_copysign.S: Include . + (copysign): Define using libm_alias_double. + * sysdeps/i386/fpu/s_expm1.S: Include . + (expm1): Define using libm_alias_double. + * sysdeps/i386/fpu/s_fabs.S: Include . + (fabs): Define using libm_alias_double. + * sysdeps/i386/fpu/s_fdim.c: Include . + (fdim): Define using libm_alias_double. + * sysdeps/i386/fpu/s_floor.S: Include . + (floor): Define using libm_alias_double. + * sysdeps/i386/fpu/s_fmax.S: Include . + (fmax): Define using libm_alias_double. + * sysdeps/i386/fpu/s_fmin.S: Include . + (fmin): Define using libm_alias_double. + * sysdeps/i386/fpu/s_frexp.S: Include . + (frexp): Define using libm_alias_double. + * sysdeps/i386/fpu/s_llrint.S: Include . + (llrint): Define using libm_alias_double. + * sysdeps/i386/fpu/s_logb.S: Include . + (logb): Define using libm_alias_double. + * sysdeps/i386/fpu/s_lrint.S: Include . + (lrint): Define using libm_alias_double. + * sysdeps/i386/fpu/s_nearbyint.S: Include . + (nearbyint): Define using libm_alias_double. + * sysdeps/i386/fpu/s_remquo.S: Include . + (remquo): Define using libm_alias_double. + * sysdeps/i386/fpu/s_rint.S: Include . + (rint): Define using libm_alias_double. + * sysdeps/i386/fpu/s_trunc.S: Include . + (trunc): Define using libm_alias_double. + * sysdeps/i386/i686/fpu/s_fmax.S: Include . + (fmax): Define using libm_alias_double. + * sysdeps/i386/i686/fpu/s_fmin.S: Include . + (fmin): Define using libm_alias_double. + * sysdeps/i386/i686/multiarch/s_fma.c: Include . + (fma): Define using libm_alias_double. + +2017-11-28 H.J. Lu + + [BZ #22370] + * elf/dl-hwcaps.c (ROUND): Removed. + (_dl_important_hwcaps): Replace ROUND with ELF_NOTE_DESC_OFFSET + and ELF_NOTE_NEXT_OFFSET. + * elf/dl-load.c (ROUND): Removed. + (open_verify): Replace ROUND with ELF_NOTE_NEXT_OFFSET. + * elf/readelflib.c (ROUND): Removed. + (process_elf_file): Replace ROUND with ELF_NOTE_NEXT_OFFSET. + * include/elf.h [!_ISOMAC]: Include . + [!_ISOMAC] (ELF_NOTE_DESC_OFFSET): New. + [!_ISOMAC] (ELF_NOTE_NEXT_OFFSET): Likewise. + +2017-11-28 Joseph Myers + + * sysdeps/s390/fpu/s_fmaf.c: Include . + [!__fmaf] (fmaf): Define using libm_alias_float. + + * sysdeps/s390/fpu/s_fma.c: Include . + [!__fma] (fma): Define using libm_alias_double. + * sysdeps/unix/sysv/linux/s390/fpu/s_fma.c: Remove. + +2017-11-28 Mike FABIAN + + [BZ #22336] + * localedata/locales/cs_CZ (LC_COLLATE): Use “copy "iso14651_t1"” + and implement the collation rules for cs from CLDR on top of that. + * Makefile: Add cs_CZ.UTF-8 to test-input. + * cs_CZ.UTF-8.in: New file with test data to test the Czech sorting. + +2017-11-28 Siddhesh Poyarekar + + * localedata/Makefile (LOCALES): Remove duplicate cs_CZ.UTF-8. + +2017-11-28 Victor Rodriguez + Icarus Sparry + + * benchtests/Makefile:Add BENCHSET to allow subsets of + benchmarks to be run. + * benchtests/README: Add documentation for: Running subsets of + benchmarks. + +2017-11-28 Victor Rodriguez + + * benchtests/scripts/benchout.schema.json: Fix regex to accept a wider + range of tests names. + + * benchtests/scripts/benchout.schema.json: Add throughput as accepted + result from property and remove "max", min" and "mean" from + required properties based on benchtests/bench-skeleton.c. + +2017-11-28 Florian Weimer + + [BZ #20826] + Turn posix/tst-getaddrinfo4, posix/tst-getaddrinfo5 into xtests + due to Internet requirement. + * posix/Makefile (tests): Remove tst-getaddrinfo4, + tst-getaddrinfo5. + (xtests): Add tst-getaddrinfo4, tst-getaddrinfo5. + +2017-11-28 Adhemerval Zanella + + * sysdeps/sparc/sparc32/sparcv9/multiarch/Makefile + [$(subdir) = string] (sysdep_routines): Add memset-ultra1. + * sysdeps/sparc/sparc64/multiarch/Makefile [$(subdir) = string] + (sysdep_routines): Add memset-ultra1. + * sysdeps/sparc/sparc32/sparcv9/multiarch/memset-ultra1.S: New + file. + * sysdeps/sparc/sparc32/sparcv9/multiarch/memset.c: Likewise. + * sysdeps/sparc/sparc32/sparcv9/multiarch/bzero.c: Likewise. + * sysdeps/sparc/sparc64/multiarch/ifunc-memset.h: Likewise. + * sysdeps/sparc/sparc64/multiarch/memset-ultra1.S: Likewise. + * sysdeps/sparc/sparc64/multiarch/memset.c: Likewise. + * sysdeps/sparc/sparc64/multiarch/bzero.c: Likewise. + * sysdeps/sparc/sparc32/sparcv9/multiarch/memset.S: Remove file. + * sysdeps/sparc/sparc64/multiarch/memset.S: Likewise. + + * sysdeps/sparc/sparc32/sparcv9/multiarch/memcpy-ultra1.S: New + file. + * sysdeps/sparc/sparc32/sparcv9/multiarch/memcpy.c: Likewise. + * sysdeps/sparc/sparc32/sparcv9/multiarch/mempcpy.c: Likewise. + * sysdeps/sparc/sparc64/multiarch/ifunc-memcpy.h: Likewise. + * sysdeps/sparc/sparc64/multiarch/memcpy-ultra1.S: Likewise. + * sysdeps/sparc/sparc64/multiarch/memcpy.c: Likewise. + * sysdeps/sparc/sparc64/multiarch/mempcpy.c: Likewise. + * sysdeps/sparc/sparc-ifunc.h (sparc_libc_ifunc_redirected): New + macro. + * sysdeps/sparc/sparc32/sparcv9/multiarch/Makefile + [$(subdir) = string] (sysdep_routines): Add memcpy-ultra1. + * sysdeps/sparc/sparc64/multiarch/Makefile [$(subdir) = string] + (sysdep_routines): Add memcpy-ultra1. + * sysdeps/sparc/sparc64/multiarch/memcpy.S: Remove file. + * sysdeps/sparc/sparc32/sparcv9/multiarch/memcpy.S: Likewise. + +2017-11-28 Joseph Myers + + * sysdeps/alpha/fpu/cfloat-compat.h: Include . + (cfloat_versions): Take function argument without trailing 'f'. + Call libm_alias_float_other. + * sysdeps/alpha/fpu/cabsf.c: Update call to cfloat_versions. + * sysdeps/alpha/fpu/cargf.c: Likewise. + * sysdeps/alpha/fpu/cimagf.c: Likewise. + * sysdeps/alpha/fpu/conjf.c: Likewise. + * sysdeps/alpha/fpu/crealf.c: Likewise. + * sysdeps/alpha/fpu/s_cacosf.c: Likewise. + * sysdeps/alpha/fpu/s_cacoshf.c: Likewise. + * sysdeps/alpha/fpu/s_casinf.c: Likewise. + * sysdeps/alpha/fpu/s_casinhf.c: Likewise. + * sysdeps/alpha/fpu/s_catanf.c: Likewise. + * sysdeps/alpha/fpu/s_catanhf.c: Likewise. + * sysdeps/alpha/fpu/s_ccosf.c: Likewise. + * sysdeps/alpha/fpu/s_ccoshf.c: Likewise. + * sysdeps/alpha/fpu/s_cexpf.c: Likewise. + * sysdeps/alpha/fpu/s_clogf.c: Likewise. + * sysdeps/alpha/fpu/s_cpowf.c: Likewise. + * sysdeps/alpha/fpu/s_cprojf.c: Likewise. + * sysdeps/alpha/fpu/s_csinf.c: Likewise. + * sysdeps/alpha/fpu/s_csinhf.c: Likewise. + * sysdeps/alpha/fpu/s_csqrtf.c: Likewise. + * sysdeps/alpha/fpu/s_ctanf.c: Likewise. + * sysdeps/alpha/fpu/s_ctanhf.c: Likewise. + * sysdeps/alpha/fpu/s_clog10f.c: Include . + (clog10f): Use libm_alias_float_other. + * sysdeps/alpha/fpu/s_ceilf.c: Include . + (ceilf): Define using libm_alias_float. + * sysdeps/alpha/fpu/s_copysignf.c: Include . + (copysignf): Define using libm_alias_float. + * sysdeps/alpha/fpu/s_fabsf.c: Include . + (fabsf): Define using libm_alias_float. + * sysdeps/alpha/fpu/s_floorf.c: Include . + (floorf): Define using libm_alias_float. + * sysdeps/alpha/fpu/s_fmax.S: Include . + (fmaxf): Define using libm_alias_float. + * sysdeps/alpha/fpu/s_fmin.S: Include . + (fminf): Define using libm_alias_float. + * sysdeps/alpha/fpu/s_lrintf.c: Include . + (lrintf): Define using libm_alias_float. + (llrintf): Likewise. + * sysdeps/alpha/fpu/s_lroundf.c: Include . + (lroundf): Define using libm_alias_float. + (llroundf): Likewise. + * sysdeps/alpha/fpu/s_rintf.c: Include . + (rintf): Define using libm_alias_float. + * sysdeps/alpha/fpu/s_truncf.c: Include . + (truncf): Define using libm_alias_float. + + * sysdeps/aarch64/fpu/s_ceilf.c: Include . + (ceilf): Define using libm_alias_float. + * sysdeps/aarch64/fpu/s_floorf.c: Include . + (floorf): Define using libm_alias_float. + * sysdeps/aarch64/fpu/s_fmaf.c: Include . + (fmaf): Define using libm_alias_float. + * sysdeps/aarch64/fpu/s_fmaxf.c: Include . + (fmaxf): Define using libm_alias_float. + * sysdeps/aarch64/fpu/s_fminf.c: Include . + (fminf): Define using libm_alias_float. + * sysdeps/aarch64/fpu/s_llrintf.c: Include . + (llrintf): Define using libm_alias_float. + * sysdeps/aarch64/fpu/s_llroundf.c: Include . + (llroundf): Define using libm_alias_float. + * sysdeps/aarch64/fpu/s_lrintf.c: Include . + (lrintf): Define using libm_alias_float. + * sysdeps/aarch64/fpu/s_lroundf.c: Include . + (lroundf): Define using libm_alias_float. + * sysdeps/aarch64/fpu/s_nearbyintf.c: Include + . + (nearbyintf): Define using libm_alias_float. + * sysdeps/aarch64/fpu/s_rintf.c: Include . + (rintf): Define using libm_alias_float. + * sysdeps/aarch64/fpu/s_roundf.c: Include . + (roundf): Define using libm_alias_float. + * sysdeps/aarch64/fpu/s_truncf.c: Include . + (truncf): Define using libm_alias_float. + + * sysdeps/alpha/fpu/s_ceil.c: Include . + (ceil): Define using libm_alias_double. + * sysdeps/alpha/fpu/s_copysign.c: Include . + (copysign): Define using libm_alias_double. + * sysdeps/alpha/fpu/s_fabs.c: Include . + (fabs): Define using libm_alias_double. + * sysdeps/alpha/fpu/s_floor.c: Include . + (floor): Define using libm_alias_double. + * sysdeps/alpha/fpu/s_fmax.S: Include . + (fmax): Define using libm_alias_double. + * sysdeps/alpha/fpu/s_fmin.S: Include . + (fmin): Define using libm_alias_double. + * sysdeps/alpha/fpu/s_lrint.c: Include . + (lrint): Define using libm_alias_double. + (llrint): Likewise. + * sysdeps/alpha/fpu/s_lround.c: Include . + (lround): Define using libm_alias_double. + (llround): Likewise. + * sysdeps/alpha/fpu/s_rint.c: Include . + (rint): Define using libm_alias_double. + * sysdeps/alpha/fpu/s_trunc.c: Include . + (trunc): Define using libm_alias_double. + + * sysdeps/ieee754/ldbl-opt/libm-alias-double.h + (libm_alias_double_r): Add semicolon after weak_alias call. + +2017-11-27 Joseph Myers + + * sysdeps/aarch64/fpu/s_ceil.c: Include . + (ceil): Define using libm_alias_double. + * sysdeps/aarch64/fpu/s_floor.c: Include . + (floor): Define using libm_alias_double. + * sysdeps/aarch64/fpu/s_fma.c: Include . + (fma): Define using libm_alias_double. + * sysdeps/aarch64/fpu/s_fmax.c: Include . + (fmax): Define using libm_alias_double. + * sysdeps/aarch64/fpu/s_fmin.c: Include . + (fmin): Define using libm_alias_double. + * sysdeps/aarch64/fpu/s_llrint.c: Include . + (llrint): Define using libm_alias_double. + * sysdeps/aarch64/fpu/s_llround.c: Include . + (llround): Define using libm_alias_double. + * sysdeps/aarch64/fpu/s_lrint.c: Include . + (lrint): Define using libm_alias_double. + * sysdeps/aarch64/fpu/s_lround.c: Include . + (lround): Define using libm_alias_double. + * sysdeps/aarch64/fpu/s_nearbyint.c: Include . + (nearbyint): Define using libm_alias_double. + * sysdeps/aarch64/fpu/s_rint.c: Include . + (rint): Define using libm_alias_double. + * sysdeps/aarch64/fpu/s_round.c: Include . + (round): Define using libm_alias_double. + * sysdeps/aarch64/fpu/s_trunc.c: Include . + (trunc): Define using libm_alias_double. + +2017-11-27 Florian Weimer + + * sysdeps/unix/sysv/linux/mlock2.c: New file. + * sysdeps/unix/sysv/linux/tst-mlock2.c: Likewise. + * sysdeps/unix/sysv/linux/Makefile (routines): Add mlock2. + (tests): Add tst-mlock2. + * sysdeps/unix/sysv/linux/Versions (GLIBC_2.27): Export mlock2. + * sysdeps/unix/sysv/linux/kernel-features.h (__ASSUME_MLOCK2) + [__LINUX_KERNEL_VERSION >= 4.4]: Define. + * sysdeps/unix/sysv/linux/libc**.abilist: Update. + * manual/memory.texi (Page Lock Functions): Move @end deftypefun + for mlock. Document mlock2. + +2017-11-27 Joseph Myers + + * sysdeps/ia64/Makeconfig (float64x-alias-fcts): New variable. + * sysdeps/ieee754/float128/Makeconfig (float64x-alias-fcts): + Likewise. + * sysdeps/ieee754/ldbl-128/Makeconfig (float64x-alias-fcts): + Likewise. + * sysdeps/x86/Makeconfig: New file. + * bits/floatn-common.h (__HAVE_FLOAT64X): Remove macro. + (__HAVE_FLOAT64X_LONG_DOUBLE): Likewise. + * bits/floatn.h (__HAVE_FLOAT64X): New macro. + (__HAVE_FLOAT64X_LONG_DOUBLE): Likewise. + * sysdeps/ia64/bits/floatn.h (__HAVE_FLOAT64X): Likewise. + (__HAVE_FLOAT64X_LONG_DOUBLE): Likewise. + * sysdeps/ieee754/ldbl-128/bits/floatn.h (__HAVE_FLOAT64X): + Likewise. + (__HAVE_FLOAT64X_LONG_DOUBLE): Likewise. + * sysdeps/mips/ieee754/bits/floatn.h (__HAVE_FLOAT64X): Likewise. + (__HAVE_FLOAT64X_LONG_DOUBLE): Likewise. + * sysdeps/powerpc/bits/floatn.h (__HAVE_FLOAT64X): Likewise. + (__HAVE_FLOAT64X_LONG_DOUBLE): Likewise. + * sysdeps/x86/bits/floatn.h (__HAVE_FLOAT64X): Likewise. + (__HAVE_FLOAT64X_LONG_DOUBLE): Likewise. + * manual/math.texi (Mathematics): Document support for _Float64x. + * math/Versions (GLIBC_2.27): Add _Float64x functions. + * stdlib/Versions (GLIBC_2.27): Likewise. + * wcsmbs/Versions (GLIBC_2.27): Likewise. + * sysdeps/unix/sysv/linux/aarch64/libc.abilist: Update. + * sysdeps/unix/sysv/linux/aarch64/libm.abilist: Likewise. + * sysdeps/unix/sysv/linux/alpha/libc.abilist: Likewise. + * sysdeps/unix/sysv/linux/alpha/libm.abilist: Likewise. + * sysdeps/unix/sysv/linux/i386/libc.abilist: Likewise. + * sysdeps/unix/sysv/linux/i386/libm.abilist: Likewise. + * sysdeps/unix/sysv/linux/ia64/libc.abilist: Likewise. + * sysdeps/unix/sysv/linux/ia64/libm.abilist: Likewise. + * sysdeps/unix/sysv/linux/mips/mips64/libm.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/powerpc/powerpc64/libc-le.abilist: + Likewise. + * sysdeps/unix/sysv/linux/powerpc/powerpc64/libm-le.abilist: + Likewise. + * sysdeps/unix/sysv/linux/s390/s390-32/libc.abilist: Likewise. + * sysdeps/unix/sysv/linux/s390/s390-32/libm.abilist: Likewise. + * sysdeps/unix/sysv/linux/s390/s390-64/libc.abilist: Likewise. + * sysdeps/unix/sysv/linux/s390/s390-64/libm.abilist: Likewise. + * sysdeps/unix/sysv/linux/sparc/sparc32/libc.abilist: Likewise. + * sysdeps/unix/sysv/linux/sparc/sparc32/libm.abilist: Likewise. + * sysdeps/unix/sysv/linux/sparc/sparc64/libc.abilist: Likewise. + * sysdeps/unix/sysv/linux/sparc/sparc64/libm.abilist: Likewise. + * sysdeps/unix/sysv/linux/x86_64/64/libc.abilist: Likewise. + * sysdeps/unix/sysv/linux/x86_64/64/libm.abilist: Likewise. + * sysdeps/unix/sysv/linux/x86_64/x32/libc.abilist: Likewise. + * sysdeps/unix/sysv/linux/x86_64/x32/libm.abilist: Likewise. + * sysdeps/i386/fpu/libm-test-ulps: Likewise. + * sysdeps/i386/i686/fpu/multiarch/libm-test-ulps: Likewise. + +2017-11-27 Andreas Schwab + + * elf/Makefile (dl-routines): Add dl-sort-maps. + * elf/dl-sort-maps.c: New file. + * sysdeps/generic/ldsodefs.h (_dl_sort_fini): Don't declare. + (_dl_sort_maps): Declare. + * elf/dl-fini.c (_dl_sort_fini): Remove. + (_dl_fini): Use _dl_sort_maps instead of _dl_sort_fini. + * elf/dl-close.c (_dl_close_worker): Likewise. + * elf/dl-deps.c (_dl_map_object_deps): Use _dl_sort_maps instead of + open-coding it. + * elf/dl-open.c (dl_open_worker): Likewise. + +2017-11-24 Joseph Myers + + * sysdeps/ieee754/float128/s_fromfpf128.c (fromfpf128): Define + using libm_alias_float128. + * sysdeps/ieee754/float128/s_fromfpxf128.c (fromfpxf128): + Likewise. + * sysdeps/ieee754/float128/s_setpayloadf128.c (setpayloadf128): + Likewise. + * sysdeps/ieee754/float128/s_setpayloadsigf128.c + (setpayloadsigf128): Likewise. + * sysdeps/ieee754/float128/s_ufromfpf128.c (ufromfpf128): + Likewise. + * sysdeps/ieee754/float128/s_ufromfpxf128.c (ufromfpxf128): + Likewise. + + * sysdeps/powerpc/powerpc64le/Makefile ($(foreach + suf,$(all-object-suffixes),$(objpfx)test-float64x%$(suf))): Add + -mfloat128 to CFLAGS. + ($(foreach + suf,$(all-object-suffixes),$(objpfx)test-ifloat64x%$(suf))): + Likewise. + (CFLAGS-libm-test-support-float64x.c): New variable. + ($(objpfx)test-float64x% $(objpfx)test-ifloat64x%): Add + $(f128-loader-link) to gnulib-tests. + + * sysdeps/generic/libm-alias-float128.h: Include . + (libm_alias_float128_other_r): If + [__HAVE_FLOAT64X && !__HAVE_FLOAT64X_LONG_DOUBLE], define f64x + alias. + (libm_alias_float128_r): Add semicolon after weak_alias call. + * sysdeps/generic/libm-alias-ldouble.h + (libm_alias_ldouble_other_r_f128): New macro. + (libm_alias_ldouble_other_r_f64x): Likewise. + (libm_alias_ldouble_other_r): Use libm_alias_ldouble_other_r_f128 + and libm_alias_ldouble_other_r_f64x. + (libm_alias_ldouble_r): Add semicolon after weak_alias call. + * sysdeps/ieee754/ldbl-opt/libm-alias-ldouble.h + (libm_alias_ldouble_other_r_f128): New macro. + (libm_alias_ldouble_other_r_f64x): Likewise. + (libm_alias_ldouble_other_r): Use libm_alias_ldouble_other_r_f128 + and libm_alias_ldouble_other_r_f64x. + + * stdlib/strfroml.c: Always include . + [__HAVE_FLOAT64X_LONG_DOUBLE] (strfromf64x): Define and later + undefine as macro and define as weak alias. + * sysdeps/ieee754/float128/strfromf128.c: Include . + [__HAVE_FLOAT64X && !__HAVE_FLOAT64X_LONG_DOUBLE]: Include + . + [__HAVE_FLOAT64X && !__HAVE_FLOAT64X_LONG_DOUBLE] (strfromf64x): + Define and later undefine as macro and define as weak alias. + + * stdlib/strtold.c [__HAVE_FLOAT64X_LONG_DOUBLE] (strtof64x): + Define and later undefine as macro. Define as weak alias if + [!USE_WIDE_CHAR]. + [__HAVE_FLOAT64X_LONG_DOUBLE] (wcstof64x): Define and later + undefine as macro. Define as weak alias if [USE_WIDE_CHAR]. + * sysdeps/ieee754/float128/strtof128.c: Include . + [__HAVE_FLOAT64X && !__HAVE_FLOAT64X_LONG_DOUBLE] (strtof64x): + Define and later undefine as macro. Define as weak alias if + [!USE_WIDE_CHAR]. + [__HAVE_FLOAT64X && !__HAVE_FLOAT64X_LONG_DOUBLE] (wcstof64x): + Define and later undefine as macro. Define as weak alias if + [USE_WIDE_CHAR]. + * sysdeps/ieee754/float128/strtof128_l.c + [__HAVE_FLOAT64X && !__HAVE_FLOAT64X_LONG_DOUBLE] (strtof64x_l): + Define and later undefine as macro. Define as weak alias if + [!USE_WIDE_CHAR]. + [__HAVE_FLOAT64X && !__HAVE_FLOAT64X_LONG_DOUBLE] (wcstof64x_l): + Define and later undefine as macro. Define as weak alias if + [USE_WIDE_CHAR]. + * sysdeps/ieee754/ldbl-128/strtold_l.c + [__HAVE_FLOAT64X_LONG_DOUBLE] (strtof64x_l): Define and later + undefine as macro. Define as weak alias if [!USE_WIDE_CHAR]. + [__HAVE_FLOAT64X_LONG_DOUBLE] (wcstof64x_l): Define and later + undefine as macro. Define as weak alias if [USE_WIDE_CHAR]. + * sysdeps/ieee754/ldbl-64-128/strtold_l.c + [__HAVE_FLOAT64X_LONG_DOUBLE] (strtof64x_l): Define and later + undefine as macro. Define as weak alias if [!USE_WIDE_CHAR]. + [__HAVE_FLOAT64X_LONG_DOUBLE] (wcstof64x_l): Define and later + undefine as macro. Define as weak alias if [USE_WIDE_CHAR]. + * sysdeps/ieee754/ldbl-96/strtold_l.c + [__HAVE_FLOAT64X_LONG_DOUBLE] (strtof64x_l): Define and later + undefine as macro. Define as weak alias if [!USE_WIDE_CHAR]. + [__HAVE_FLOAT64X_LONG_DOUBLE] (wcstof64x_l): Define and later + undefine as macro. Define as weak alias if [USE_WIDE_CHAR]. + + * math/test-float64x.h: New file. + * math/Makefile (type-float64x-yes): New variable. + (test-types): Add $(type-float64x-$(float64x-alias-fcts)). + + * sysdeps/generic/math_private.h (min_of_type_f): Make into a + function-like macro. + (min_of_type_): Likewise. + (min_of_type_l): Likewise. + (min_of_type_f128): Likewise. + (min_of_type): Pass () as last argument of __MATH_TG. + + * stdlib/tst-strtod-round-skeleton.c + (__STDC_WANT_IEC_60559_TYPES_EXT__): Define before including + headers. + + * math/gen-tgmath-tests.py (Type.init_types): Pass suffix argument + for combinations of long double with _Float64 and _Float64x. + + * bits/libm-simd-decl-stubs.h (__DECL_SIMD_cosf16): New macro. + (__DECL_SIMD_cosf32): Likewise. + (__DECL_SIMD_cosf64): Likewise. + (__DECL_SIMD_cosf32x): Likewise. + (__DECL_SIMD_cosf64x): Likewise. + (__DECL_SIMD_cosf128x): Likewise. + (__DECL_SIMD_sinf16): Likewise. + (__DECL_SIMD_sinf32): Likewise. + (__DECL_SIMD_sinf64): Likewise. + (__DECL_SIMD_sinf32x): Likewise. + (__DECL_SIMD_sinf64x): Likewise. + (__DECL_SIMD_sinf128x): Likewise. + (__DECL_SIMD_sincosf16): Likewise. + (__DECL_SIMD_sincosf32): Likewise. + (__DECL_SIMD_sincosf64): Likewise. + (__DECL_SIMD_sincosf32x): Likewise. + (__DECL_SIMD_sincosf64x): Likewise. + (__DECL_SIMD_sincosf128x): Likewise. + (__DECL_SIMD_logf16): Likewise. + (__DECL_SIMD_logf32): Likewise. + (__DECL_SIMD_logf64): Likewise. + (__DECL_SIMD_logf32x): Likewise. + (__DECL_SIMD_logf64x): Likewise. + (__DECL_SIMD_logf128x): Likewise. + (__DECL_SIMD_expf16): Likewise. + (__DECL_SIMD_expf32): Likewise. + (__DECL_SIMD_expf64): Likewise. + (__DECL_SIMD_expf32x): Likewise. + (__DECL_SIMD_expf64x): Likewise. + (__DECL_SIMD_expf128x): Likewise. + (__DECL_SIMD_powf16): Likewise. + (__DECL_SIMD_powf32): Likewise. + (__DECL_SIMD_powf64): Likewise. + (__DECL_SIMD_powf32x): Likewise. + (__DECL_SIMD_powf64x): Likewise. + (__DECL_SIMD_powf128x): Likewise. + + * stdlib/Versions (libc): Move entries for wcstof128 and + wcstof128_l to .... + * wcsmbs/Versions (libc): ... here. + Include . + +2017-11-24 Florian Weimer + + * sysdeps/unix/sysv/linux/Makefile (sysdep_headers): Add + bits/mman-shared.h. + * sysdeps/unix/sysv/linux/bits/mman-linux.h: Include + . + (MFD_CLOEXEC, MFD_ALLOW_SEALING, MFD_HUGETLB, memfd_create): Move + to ... + * sysdeps/unix/sysv/linux/bits/mman-shared.h: ... this new file. + Add #ifndef guard for the MFD_* constants based on MFD_CLOEXEC. + * sysdeps/unix/sysv/linux/hppa/bits/mman.h: Include + . + +2017-11-24 Adhemerval Zanella + + [BZ #22457] + * sysdeps/posix/preadv_common.c (PREADV): Use mmap/munmap instead of + posix_memalign/free. + * sysdeps/posix/pwritev_common.c (PWRITEV): Likewise. + +2017-11-22 Mike FABIAN + + [BZ #22469] + * localedata/locales/pl_PL (LC_COLLATE): Use “copy "iso14651_t1"” + and implement the collation rules for pl from CLDR on top of that. + * Makefile: Add pl_PL.UTF-8 to test-input and to the list + of locales to be built for testing. + * pl_PL.UTF-8.in: New file with test data to test the Polish sorting. + +2017-11-23 Joseph Myers + + * sysdeps/ia64/fpu/libm-symbols.h: Include . + * sysdeps/ia64/fpu/e_acoshl.S (acoshl): Use + libm_alias_ldouble_other. + * sysdeps/ia64/fpu/e_acosl.S (acosl): Likewise. + * sysdeps/ia64/fpu/e_asinl.S (asinl): Likewise. + * sysdeps/ia64/fpu/e_atanhl.S (atanhl): Likewise. + * sysdeps/ia64/fpu/e_coshl.S (coshl): Likewise. + * sysdeps/ia64/fpu/e_exp10l.S (exp10l): Likewise. + * sysdeps/ia64/fpu/e_exp2l.S (exp2l): Likewise. + * sysdeps/ia64/fpu/e_fmodl.S (fmodl): Likewise. + * sysdeps/ia64/fpu/e_hypotl.S (hypotl): Likewise. + * sysdeps/ia64/fpu/e_lgammal_r.c (lgammal_r): Define using + libm_alias_ldouble_r. + * sysdeps/ia64/fpu/e_log2l.S (log2l): Use + libm_alias_ldouble_other. + * sysdeps/ia64/fpu/e_logl.S (logl): Likewise. + (log10l): Likewise. + * sysdeps/ia64/fpu/e_powl.S (powl): Likewise. + * sysdeps/ia64/fpu/e_remainderl.S (remainderl): Likewise. + * sysdeps/ia64/fpu/e_sinhl.S (sinhl): Likewise. + * sysdeps/ia64/fpu/e_sqrtl.S (sqrtl): Likewise. + * sysdeps/ia64/fpu/libm_sincosl.S (sincosl): Likewise. + * sysdeps/ia64/fpu/s_asinhl.S (asinhl): Likewise. + * sysdeps/ia64/fpu/s_atanl.S (atanl): Likewise. + (atan2l): Likewise. + * sysdeps/ia64/fpu/s_cbrtl.S (cbrtl): Likewise. + * sysdeps/ia64/fpu/s_ceill.S (ceill): Likewise. + * sysdeps/ia64/fpu/s_copysign.S (copysignl): Define using + libm_alias_ldouble. + * sysdeps/ia64/fpu/s_cosl.S (sinl): Use libm_alias_ldouble_other. + (cosl): Likewise. + * sysdeps/ia64/fpu/s_erfcl.S (erfcl): Likewise. + * sysdeps/ia64/fpu/s_erfl.S (erfl): Likewise. + * sysdeps/ia64/fpu/s_expm1l.S (expm1l): Likewise. + (expl): Likewise. + * sysdeps/ia64/fpu/s_fabsl.S (fabsl): Likewise. + * sysdeps/ia64/fpu/s_fdiml.S (fdiml): Likewise. + * sysdeps/ia64/fpu/s_floorl.S (floorl): Likewise. + * sysdeps/ia64/fpu/s_fmal.S (fmal): Likewise. + * sysdeps/ia64/fpu/s_fmaxl.S (fmaxl): Likewise. + * sysdeps/ia64/fpu/s_frexpl.c (frexpl): Likewise. + * sysdeps/ia64/fpu/s_ldexpl.c (ldexpl): Likewise. + * sysdeps/ia64/fpu/s_log1pl.S (log1pl): Likewise. + * sysdeps/ia64/fpu/s_logbl.S (logbl): Likewise. + * sysdeps/ia64/fpu/s_modfl.S (modfl): Likewise. + * sysdeps/ia64/fpu/s_nearbyintl.S (nearbyintl): Define using + libm_alias_ldouble. + * sysdeps/ia64/fpu/s_nextafterl.S (nextafterl): Use + libm_alias_ldouble_other. + * sysdeps/ia64/fpu/s_rintl.S (rintl): Likewise. + * sysdeps/ia64/fpu/s_roundl.S (roundl): Likewise. + * sysdeps/ia64/fpu/s_scalbnl.c (scalbnl): Define using + libm_alias_ldouble. + * sysdeps/ia64/fpu/s_tanhl.S (tanhl): Use + libm_alias_ldouble_other. + * sysdeps/ia64/fpu/s_tanl.S (tanl): Likewise. + * sysdeps/ia64/fpu/s_truncl.S (truncl): Likewise. + * sysdeps/ia64/fpu/w_lgammal_main.c + [BUILD_LGAMMA && !USE_AS_COMPAT] (lgammal): Likewise. + * sysdeps/ia64/fpu/w_tgammal_compat.S (tgammal): Likewise. + +2017-11-23 Florian Weimer + + * malloc/malloc.c (tcache_thread_shutdown): Rename from + tcache_thread_freeres. Define for USE_TCACHE and !USE_TCACHE + alike. Remove freeres marker. + * malloc/arena.c (arena_thread_freeres): Call + tcache_thread_shutdown. + +2017-11-23 Florian Weimer + + [BZ #22459] + Export nscd hash function as __nss_hash. + * include/nss.h (__nss_hash): Declare. + * nis/nis_hash.c (__nis_hash): Call __nss_hash. Turn into compat + symbol. + * nscd/Makefile (aux, nscd-modules): Remove nscd_hash. + * nscd/cache.c (cache_search, cache_add): Call __nss_hash instead + of __nscd_hash. + * nscd/nscd_helper.c (__nscd_cache_search): Likewise. + * nscd/nscd_hash.h, nscd/nscd_hash.c: Remove files. + * nss/Makefiles (routines): Add nss_hash. + * nss/Versions (GLIBC_PRIVATE): Export __nss_hash. + * nss/nss_hash.c: Rename from nis/nis_hash.c. + (__nss_hash): Rename from __nis_hash. Define hidden alias. + * nis/rpcsvc/nislib.h (__nis_hash): Remove declaration. + +2017-11-23 Florian Weimer + + [BZ #22478] + * sysdeps/unix/sysv/linux/sigwait.c (__sigwait): Retry on EINTR. + Return error code, not -1. + * signal/tst-sigwait-eintr.c: New file. + * signal/Makefile (tests): Add tst-sigwait-eintr. + +2017-11-23 Florian Weimer + + Linux: Add memfd_create system call wrapper + * sysdeps/unix/sysv/linux/Makefile [misc] (tests): Add + tst-memfd_create. + * sysdeps/unix/sysv/linux/bits/mman-linux.h [__USE_GNU] + (MFD_CLOEXEC, MFD_ALLOW_SEALING): Define. + [__USE_GNU] (memfd_create): Declare. + * sysdeps/unix/sysv/linux/Versions (GLIBC_2.27): Add memfd_create. + * sysdeps/unix/sysv/linux/syscalls.list (memfd_create): Add. + * sysdeps/unix/sysv/linux/tst-memfd_create.c: New file. + * sysdeps/unix/sysv/linux/**.abilist: Update. + * manual/llio.texi (Memory-mapped I/O): Document memfd_create. + +2017-11-22 Joseph Myers + + * localedata/gen-locale.sh: Fix typo in variable name. + + * resolv/res_debug.c (p_secstodate): Condition definition on + [SHLIB_COMPAT (libresolv, GLIBC_2_0, GLIBC_2_27)]. Define + directly as __p_secstodate, and as a compat symbol. Do not use + libresolv_hidden_def. + * resolv/resolv.h (p_secstodate): Remove macro and function + declaration. + * resolv/ns_print.c (ns_sprintrrf): Print times with %lu, not + using p_secstodate. + * include/resolv.h (__p_secstodate): Do not use + libresolv_hidden_proto. + * resolv/Makefile (tests): Move tst-p_secstodate to .... + (tests-internal): ... here. + * resolv/tst-p_secstodate.c: Include . Condition + all contents on [TEST_COMPAT (libresolv, GLIBC_2_0, GLIBC_2_27)] + and declare and use __p_secstodate and use compat_symbol_reference + in that case. + [!TEST_COMPAT (libresolv, GLIBC_2_0, GLIBC_2_27)] (do_test): Add + implementation returning 77. + + [BZ #22463] + * resolv/res_debug.c: Include . + (p_secstodate): Assert time_t at least as wide as u_long. On + overflow, use integer seconds since the epoch as output, or use + "" as output and set errno to EOVERFLOW if integer + seconds since the epoch would be 14 or more characters. + (p_secstodate) [__GNUC_PREREQ (7, 0)]: Disable -Wformat-overflow= + for sprintf call. + * resolv/tst-p_secstodate.c: New file. + * resolv/Makefile (tests): Add tst-p_secstodate. + ($(objpfx)tst-p_secstodate): Depend on $(objpfx)libresolv.so. + + * sysdeps/sparc/sparc64/soft-fp/s_frexpl.c: Remove file. + * sysdeps/sparc/sparc64/soft-fp/s_scalblnl.c: Likewise. + * sysdeps/sparc/sparc64/soft-fp/s_scalbnl.c: Likewise. + +2017-11-22 Paul Eggert + + * posix/regcomp.c (init_word_char): Add comments. + +2017-11-22 Joseph Myers + + [BZ #22447] + * sysdeps/unix/getlogin_r.c (__getlogin_r): Use __strnlen not + strlen to compute length of ut_user and set trailing NUL byte of + result explicitly. + +2017-11-21 Mike FABIAN + + [BZ #15537] + * localedata/locales/lv_LV (LC_COLLATE): Fix collation by + using “copy "iso14651_t1"” and then implementing the + collation rules for lv from CLDR on top of that. + * Makefile: Add lv_LV.UTF-8 to test-input and to the list + of locales to be built for testing. + * lv_LV.UTF-8.in: New file with test data to test the Latvian + sorting. + +2017-11-21 Joseph Myers + + * sysdeps/unix/sysv/linux/hppa/bits/mman.h + [__USE_MISC] (MADV_SPACEAVAIL): Remove macro. + [__USE_MISC] (MADV_VPS_PURGE): Likewise. + [__USE_MISC] (MADV_VPS_INHERIT): Likewise. + [__USE_MISC] (MADV_HWPOISON): New macro. + [__USE_MISC] (MADV_SOFT_OFFLINE): Likewise. + +2017-11-21 Adhemerval Zanella + + * nptl/pthreadP.h (ASSERT_PTHREAD_INTERNAL_SIZE): Add workarond for + -Wmissing-braces on GCC 4.9. + +2017-11-21 Stefan Liebler + + * sysdeps/s390/s390-64/start.S (_start): Add cfi information for r14. + * sysdeps/s390/s390-32/start.S (_start): Likewise + * sysdeps/unix/sysv/linux/s390/s390-64/clone.S + (thread_start): Likewise. + * sysdeps/unix/sysv/linux/s390/s390-32/clone.S + (thread_start): Likewise. + * sysdeps/unix/sysv/linux/s390/s390-64/__makecontext_ret.S + (__makecontext_ret): Likewise. + * sysdeps/unix/sysv/linux/s390/s390-32/__makecontext_ret.S + (__makecontext_ret): Likewise. + +2017-11-21 Stefan Liebler + + * include/wchar.h (__wcsnlen, __wcscat, __wcsncpy, __wcpncpy, + __wcschrnul): Remove attribute_hidden. + +2017-11-20 Paul Eggert + + regex: don't assume uint64_t or uint32_t + This avoids -Werror=overflow errors for 32-bit systems in + the 64-bit case. Problem reported by Joseph Myers in: + https://sourceware.org/ml/libc-alpha/2017-11/msg00694.html + Also, when this code is used in Gnulib it ports to platforms + that lack uint64_t and uint32_t. The C standard doesn't guarantee + them, and on some 32-bit compilers there is no uint64_t. + Problem reported by Gianluigi Tiesi in: + http://lists.gnu.org/archive/html/bug-gnulib/2012-03/msg00154.html + * posix/regcomp.c (init_word_char): Don't assume that the types + uint64_t and uint32_t exist. Adapted from Gnulib patch + 2012-05-27T06:40:00!eggert@cs.ucla.edu. See: + https://git.savannah.gnu.org/cgit/gnulib.git/commit/?id=252b52457da7887667c036d18cc5169777615bb0 + +2017-11-20 Siddhesh Poyarekar + + * sysdeps/aarch64/memset-reg.h: New file. + * sysdeps/aarch64/memset.S: Use it. + (__memset): Rename to MEMSET macro. + [ZVA_MACRO]: Use zva_macro. + * sysdeps/aarch64/multiarch/Makefile (sysdep_routines): + Add memset_generic and memset_falkor. + * sysdeps/aarch64/multiarch/ifunc-impl-list.c + (__libc_ifunc_impl_list): Add memset ifuncs. + * sysdeps/aarch64/multiarch/init-arch.h (INIT_ARCH): New + local variable zva_size. + * sysdeps/aarch64/multiarch/memset.c: New file. + * sysdeps/aarch64/multiarch/memset_generic.S: New file. + * sysdeps/aarch64/multiarch/memset_falkor.S: New file. + * sysdeps/aarch64/multiarch/rtld-memset.S: New file. + * sysdeps/unix/sysv/linux/aarch64/cpu-features.c + (DCZID_DZP_MASK): New macro. + (DCZID_BS_MASK): Likewise. + (init_cpu_features): Read and set zva_size. + * sysdeps/unix/sysv/linux/aarch64/cpu-features.h + (struct cpu_features): New member zva_size. + + * benchtests/bench-memcpy-walk.c (START_SIZE): Set to 128. + * benchtests/bench-memmove-walk.c (START_SIZE): Likewise. + * benchtests/bench-memset-walk.c (START_SIZE): Likewise. + + * benchtests/bench-memcpy-walk.c (do_one_test): Copy only + backwards. Fix timing computation. + * benchtests/bench-memmove-walk.c (do_one_test): Likewise. + * benchtests/bench-memset-walk.c (do_one_test): Walk backwards + on memset by N at a time. Fix timing computation. + +2017-11-20 Florian Weimer + + * manual/llio.texi (Memory-mapped I/O): Document MAP_HUGETLB, + MADV_HUGEPAGE, MADV_NOHUGEPAGE. + +2017-11-19 Florian Weimer + + manual: Document mprotect + * manual/memory.texi (Memory Protection): New section. + * manual/llio.texi (Memory-mapped I/O): Remove duplicate + documentation of PROT_* flags and reference the Memory Protection + section instead. + +2017-11-19 Florian Weimer + + * manual/llio.texi (I/O Primitives): Move preadv, preadv64, + pwritev, pwritev64, preadv2, preadv64v2, pwritev2, pwritev64v2 ... + (Scatter-Gather): ... to here. Remove misleading comment. + +2017-11-18 Christian Brauner + + * support/support_become_root.c (setup_uid_gid_mapping): Fix comment + style. + + * support/support_become_root.c (setup_uid_gid_mapping): Don't fail + when /proc//setgroups does not exist. + +2017-11-18 Florian Weimer + + * sysdeps/unix/sysv/linux/tst-ttyname.c + (become_root_in_mount_ns): Remove. + (do_in_chroot_1): Call support_enter_mount_namespace. + (do_in_chroot_2): Likewise. + (do_test): Call support_become_root early. + +2017-11-18 Florian Weimer + + * support/namespace.h (support_enter_mount_namespace): Declare. + * support/support_enter_mount_namespace.c: New file. + * support/Makefile (libsupport-routines): Add + support_enter_mount_namespace. + +2017-11-18 Florian Weimer + + * support/temp_file.c (support_create_temp_directory): Use + test_dir and do not rely on the presence of the XXXXXX suffix. + * support/temp_file.h (support_create_temp_directory): Update + comment. + * support/tst-xreadlink.c (do_test): Adjust. + * support/support_chroot.c (support_chroot_create): Likewise. + +2017-11-17 Tulio Magno Quites Machado Filho + + * sysdeps/powerpc/bits/hwcap.h (PPC_FEATURE2_HTM_NO_SUSPEND): New + macro. + * sysdeps/powerpc/dl-procinfo.c (_dl_powerpc_cap_flags): Add + htm-no-suspend. + +2017-11-17 Joseph Myers + + * sysdeps/x86_64/fpu/e_expl.S: Include . + [USE_AS_EXPM1L] (expm1l): Define using libm_alias_ldouble. + * sysdeps/x86_64/fpu/s_ceill.S: Include . + (ceill): Define using libm_alias_ldouble. + * sysdeps/x86_64/fpu/s_copysignl.S: Include + . + (copysignl): Define using libm_alias_ldouble. + * sysdeps/x86_64/fpu/s_fabsl.S: Include . + (fabsl): Define using libm_alias_ldouble. + * sysdeps/x86_64/fpu/s_floorl.S: Include . + (floorl): Define using libm_alias_ldouble. + * sysdeps/x86_64/fpu/s_fmaxl.S: Include . + (fmaxl): Define using libm_alias_ldouble. + * sysdeps/x86_64/fpu/s_fminl.S: Include . + (fminl): Define using libm_alias_ldouble. + * sysdeps/x86_64/fpu/s_llrintl.S: Include . + (llrintl): Define using libm_alias_ldouble. + (lrintl): Likewise. + * sysdeps/x86_64/fpu/s_nearbyintl.S: Include + . + (nearbyintl): Define using libm_alias_ldouble. + * sysdeps/x86_64/fpu/s_truncl.S: Include . + (truncl): Define using libm_alias_ldouble. + * sysdeps/x86_64/x32/fpu/s_lrintl.S: Include + . + (lrintl): Define using libm_alias_ldouble. + + * sysdeps/i386/fpu/e_expl.S: Include . + [USE_AS_EXPM1L] (expm1l): Define using libm_alias_ldouble. + * sysdeps/i386/fpu/s_asinhl.S: Include . + (asinhl): Define using libm_alias_ldouble. + * sysdeps/i386/fpu/s_atanl.c: Include . + (atanl): Define using libm_alias_ldouble. + * sysdeps/i386/fpu/s_cbrtl.S: Include . + (cbrtl): Define using libm_alias_ldouble. + * sysdeps/i386/fpu/s_ceill.S: Include . + (ceill): Define using libm_alias_ldouble. + * sysdeps/i386/fpu/s_copysignl.S: Include . + (copysignl): Define using libm_alias_ldouble. + * sysdeps/i386/fpu/s_fabsl.S: Include . + (fabsl): Define using libm_alias_ldouble. + * sysdeps/i386/fpu/s_floorl.S: Include . + (floorl): Define using libm_alias_ldouble. + * sysdeps/i386/fpu/s_fmaxl.S: Include . + (fmaxl): Define using libm_alias_ldouble. + * sysdeps/i386/fpu/s_fminl.S: Include . + (fminl): Define using libm_alias_ldouble. + * sysdeps/i386/fpu/s_frexpl.S: Include . + (frexpl): Define using libm_alias_ldouble. + * sysdeps/i386/fpu/s_llrintl.S: Include . + (llrintl): Define using libm_alias_ldouble. + * sysdeps/i386/fpu/s_logbl.c: Include . + (logbl): Define using libm_alias_ldouble. + * sysdeps/i386/fpu/s_lrintl.S: Include . + (lrintl): Define using libm_alias_ldouble. + * sysdeps/i386/fpu/s_nearbyintl.S: Include . + (nearbyintl): Define using libm_alias_ldouble. + * sysdeps/i386/fpu/s_nextafterl.c: Include . + (nextafterl): Define using libm_alias_ldouble. + * sysdeps/i386/fpu/s_remquol.S: Include . + (remquol): Define using libm_alias_ldouble. + * sysdeps/i386/fpu/s_rintl.c: Include . + (rintl): Define using libm_alias_ldouble. + * sysdeps/i386/fpu/s_truncl.S: Include . + (truncl): Define using libm_alias_ldouble. + * sysdeps/i386/i686/fpu/s_fmaxl.S: Include . + (fmaxl): Define using libm_alias_ldouble. + * sysdeps/i386/i686/fpu/s_fminl.S: Include . + (fminl): Define using libm_alias_ldouble. + + * bits/floatn-common.h [!__ASSEMBLER]: Disable everything related + to C syntax instead of availability and properties of types. + * bits/floatn.h [!__ASSEMBLER]: Likewise. + * sysdeps/ia64/bits/floatn.h [!__ASSEMBLER]: Likewise. + * sysdeps/ieee754/ldbl-128/bits/floatn.h [!__ASSEMBLER]: Likewise. + * sysdeps/mips/ieee754/bits/floatn.h [!__ASSEMBLER]: Likewise. + * sysdeps/powerpc/bits/floatn.h [!__ASSEMBLER]: Likewise. + * sysdeps/x86/bits/floatn.h [!__ASSEMBLER]: Likewise. + +2017-11-17 Florian Weimer + + support_become_root: Enable file creation in namespaces. + * support/support_become_root.c (setup_mapping): New function. + (support_become_root): Call it. + +2017-11-17 Joseph Myers + + * sysdeps/unix/sysv/linux/aarch64/bits/hwcap.h (HWCAP_DCPOP): New + macro. + +2017-11-16 Adhemerval Zanella + + * sysdeps/aarch64/fpu/Makefile (CFLAGS-s_fmax.c, CFLAGS-s_fmaxf.c, + CFLAGS-s_fmin.c, CFLAGS-s_fminf.c): New rule: add -ffinite-math-only. + +2017-11-16 Joseph Myers + + * sysdeps/unix/sysv/linux/net/if_arp.h (ARPHRD_RAWIP): New macro. + + * sysdeps/unix/sysv/linux/syscall-names.list: Update kernel + version to 4.14. + +2017-11-16 Siddhesh Poyarekar + + * INSTALL: Fix botched up regeneration. + + * NEWS: Update sourceare link to https. + * configure.ac: Likewise. + * crypt/md5test-giant.c: Likewise. + * dlfcn/bug-atexit1.c: Likewise. + * dlfcn/bug-atexit2.c: Likewise. + * localedata/README: Likewise. + * malloc/tst-mallocfork.c: Likewise. + * manual/install.texi: Likewise. + * nptl/tst-pthread-getattr.c: Likewise. + * stdio-common/tst-fgets.c: Likewise. + * stdio-common/tst-fwrite.c: Likewise. + * sunrpc/Makefile: Likewise. + * sysdeps/arm/armv7/multiarch/memcpy_impl.S: Likewise. + * wcsmbs/tst-mbrtowc2.c: Likewise. + * configure: Regenerate. + * INSTALL: Regenerate. + +2017-11-15 Martin Sebor + + * misc/sys/cdefs.h (__attribute_nonstring__): New macro. + * sysdeps/gnu/bits/utmp.h (struct utmp): Use it. + * sysdeps/unix/sysv/linux/s390/bits/utmp.h (struct utmp): Same. + +2017-11-15 Luke Shumaker + + [BZ #22145] + * sysdeps/unix/sysv/linux/tst-ttyname.c: New file. + * sysdeps/unix/sysv/linux/Makefile: Add tst-ttyname to tests. + + [BZ #22145] + * sysdeps/unix/sysv/linux/ttyname.c (ttyname): + Defer is_pty check until end of the function. + * sysdeps/unix/sysv/linux/ttyname_r.c (__ttyname_r): Likewise. + + [BZ #22145] + * sysdeps/unix/sysv/linux/ttyname.h (is_mytty): New function. + * sysdeps/unix/sysv/linux/ttyname.c (getttyname): Call is_mytty. + (ttyname): Likewise. + * sysdeps/unix/sysv/linux/ttyname_r.c (getttyname_r): Likewise. + (__ttyname_r): Likewise. + + * sysdeps/unix/sysv/linux/ttyname.h (is_pty): Change return type from + int to bool. + + * sysdeps/unix/sysv/linux/ttyname.h (is_pty): Update doc reference. + + * manual/terminal.texi (Is It a Terminal): + Mention ENODEV for ttyname and ttyname_r. + +2017-11-15 Joseph Myers + + * sysdeps/unix/sysv/linux/bits/socket.h (MSG_ZEROCOPY): New enum + constant and macro. + + * sysdeps/unix/sysv/linux/bits/mman-linux.h + [__USE_MISC] (MADV_WIPEONFORK): New macro. + [__USE_MISC] (MADV_KEEPONFORK): Likewise. + * sysdeps/unix/sysv/linux/hppa/bits/mman.h + [__USE_MISC] (MADV_WIPEONFORK): Likewise. + [__USE_MISC] (MADV_KEEPONFORK): Likewise. + +2017-11-15 Adhemerval Zanella + + * signal/sigrelse.c (sigrelse): Optimize implementation. + + * sysdeps/posix/sigpause.c (do_sigpause): Remove. + (__sigpause): Rely on __sigsuspend to implement single thread + optimization. Add LIBC_CANCEL_HANDLED for cancellation marking. + +2017-11-15 Joseph Myers + + * scripts/build-many-glibcs.py (Context.checkout): Default Linux + kernel version to 4.14. + +2017-11-15 Steve Ellcey + + [BZ #22442] + * sysdeps/unix/sysv/linux/if_index.c (__if_nametoindex): + Check if ifname is too long. + +2017-11-15 Luke Shumaker + + * sysdeps/unix/sysv/linux/epoll_wait.c: Include . + +2017-11-15 Mike FABIAN + + * localedata/locales/ka_GE (LC_MESSAGES): Add “X” back to yesexpr, + was accidentally lost. + +2017-11-15 Mike FABIAN + + * localedata/locales/az_IR: Add standard copyright header. + +2017-11-15 Florian Weimer + + [BZ #22439] + * malloc/malloc.c (__malloc_info): Count all heaps in an arena, + not just the top one. Output a new "subheaps" statistic. + +2017-11-15 Florian Weimer + + [BZ #22408] + * malloc/malloc.c (__malloc_info): Obtain arena heap statistics + under the per-arena lock. + * malloc/Makefile (tests): Add tst-malloc_info. + (tst-malloc_info): Link with libpthread. + * malloc/tst-malloc_info.c: New file. + +2017-11-15 Joseph Myers + + [BZ #21660] + * math/tgmath.h (__HAVE_BUILTIN_TGMATH): New macro. + [__HAVE_BUILTIN_TGMATH] (__TG_F16_ARG): Likewise. + [__HAVE_BUILTIN_TGMATH] (__TG_F32_ARG): Likewise. + [__HAVE_BUILTIN_TGMATH] (__TG_F64_ARG): Likewise. + [__HAVE_BUILTIN_TGMATH] (__TG_F128_ARG): Likewise. + [__HAVE_BUILTIN_TGMATH] (__TG_F32X_ARG): Likewise. + [__HAVE_BUILTIN_TGMATH] (__TG_F64X_ARG): Likewise. + [__HAVE_BUILTIN_TGMATH] (__TG_F128X_ARG): Likewise. + [__HAVE_BUILTIN_TGMATH] (__TGMATH_FUNCS): Likewise. + [__HAVE_BUILTIN_TGMATH] (__TGMATH_RCFUNCS): Likewise. + [__HAVE_BUILTIN_TGMATH] (__TGMATH_1): Likewise. + [__HAVE_BUILTIN_TGMATH] (__TGMATH_2): Likewise. + [__HAVE_BUILTIN_TGMATH] (__TGMATH_2STD): Likewise. + [__HAVE_BUILTIN_TGMATH] (__TGMATH_3): Likewise. + [__HAVE_BUILTIN_TGMATH] (__TGMATH_1C): Likewise. + [__HAVE_BUILTIN_TGMATH] (__TGMATH_2C): Likewise. + (__tgml): Make conditional on [!__HAVE_BUILTIN_TGMATH]. + (__floating_type): Likewise. + (__real_integer_type): Likewise. + (__complex_integer_type): Likewise. + (__expr_is_real): Likewise. + (__tgmath_real_type_sub): Likewise. + (__tgmath_real_type): Likewise. + (__tgmath_complex_type_sub): Likewise. + (__tgmath_complex_type): Likewise. + (__TGMATH_F128): Likewise. + (__TGMATH_CF128): Likewise. + [__HAVE_BUILTIN_TGMATH] (__TGMATH_UNARY_REAL_ONLY): Define using + new macros. + [__HAVE_BUILTIN_TGMATH] (__TGMATH_UNARY_REAL_RET_ONLY): Likewise. + [__HAVE_BUILTIN_TGMATH] (__TGMATH_BINARY_FIRST_REAL_ONLY): + Likewise. + [__HAVE_BUILTIN_TGMATH] (__TGMATH_BINARY_FIRST_REAL_STD_ONLY): + Likewise. + [__HAVE_BUILTIN_TGMATH] (__TGMATH_BINARY_REAL_ONLY): Likewise. + [__HAVE_BUILTIN_TGMATH] (__TGMATH_BINARY_REAL_STD_ONLY): Likewise. + [__HAVE_BUILTIN_TGMATH] (__TGMATH_BINARY_REAL_RET_ONLY): Likewise. + [__HAVE_BUILTIN_TGMATH] (__TGMATH_TERNARY_FIRST_SECOND_REAL_ONLY): + Likewise. + [__HAVE_BUILTIN_TGMATH] (__TGMATH_TERNARY_REAL_ONLY): Likewise. + [__HAVE_BUILTIN_TGMATH] (__TGMATH_TERNARY_FIRST_REAL_RET_ONLY): + Likewise. + [__HAVE_BUILTIN_TGMATH] (__TGMATH_UNARY_REAL_IMAG): Likewise. + [__HAVE_BUILTIN_TGMATH] (__TGMATH_UNARY_IMAG): Likewise. + [__HAVE_BUILTIN_TGMATH] (__TGMATH_UNARY_REAL_IMAG_RET_REAL): + Likewise. + [__HAVE_BUILTIN_TGMATH] (__TGMATH_BINARY_REAL_IMAG): Likewise. + (__TGMATH_UNARY_REAL_IMAG_RET_REAL_SAME): New macro. + (carg): Use __TGMATH_UNARY_REAL_IMAG_RET_REAL_SAME. + (cimag): Likewise. + (creal): Likewise. + +2017-11-14 Joseph Myers + + * string/tester.c (test_stpncpy): Disable -Wstringop-truncation + for stpncpy calls for GCC 8. + (test_strncat): Disable -Wstringop-truncation warning for strncat + calls for GCC 8. Disable -Wstringop-overflow= warning for one + strncat call for GCC 7. + (test_strncpy): Disable -Wstringop-truncation warning for strncpy + calls for GCC 8. + (test_memcmp): Use memcpy instead of strncpy for calls not copying + trailing NUL. + + * string/bug-strncat1.c: Include . + (main): Disable -Wstringop-truncation for strncat call for GCC 8. + +2017-11-13 Claude Paroz + + [BZ #22387] + * localedata/locales/aa_DJ: Improved readibility by replacing + sequences in the ASCII printable range by their ASCII + character equivalents. + * localedata/locales/aa_ER: Likewise. + * localedata/locales/aa_ER@saaho: Likewise. + * localedata/locales/aa_ET: Likewise. + * localedata/locales/af_ZA: Likewise. + * localedata/locales/agr_PE: Likewise. + * localedata/locales/ak_GH: Likewise. + * localedata/locales/am_ET: Likewise. + * localedata/locales/anp_IN: Likewise. + * localedata/locales/ar_AE: Likewise. + * localedata/locales/ar_BH: Likewise. + * localedata/locales/ar_DZ: Likewise. + * localedata/locales/ar_EG: Likewise. + * localedata/locales/ar_IN: Likewise. + * localedata/locales/ar_IQ: Likewise. + * localedata/locales/ar_JO: Likewise. + * localedata/locales/ar_KW: Likewise. + * localedata/locales/ar_LB: Likewise. + * localedata/locales/ar_LY: Likewise. + * localedata/locales/ar_MA: Likewise. + * localedata/locales/ar_OM: Likewise. + * localedata/locales/ar_QA: Likewise. + * localedata/locales/ar_SA: Likewise. + * localedata/locales/ar_SD: Likewise. + * localedata/locales/ar_SS: Likewise. + * localedata/locales/ar_SY: Likewise. + * localedata/locales/ar_TN: Likewise. + * localedata/locales/ar_YE: Likewise. + * localedata/locales/as_IN: Likewise. + * localedata/locales/ast_ES: Likewise. + * localedata/locales/ayc_PE: Likewise. + * localedata/locales/az_AZ: Likewise. + * localedata/locales/az_IR: Likewise. + * localedata/locales/be_BY: Likewise. + * localedata/locales/be_BY@latin: Likewise. + * localedata/locales/bem_ZM: Likewise. + * localedata/locales/ber_DZ: Likewise. + * localedata/locales/ber_MA: Likewise. + * localedata/locales/bg_BG: Likewise. + * localedata/locales/bhb_IN: Likewise. + * localedata/locales/bho_IN: Likewise. + * localedata/locales/bi_VU: Likewise. + * localedata/locales/bn_BD: Likewise. + * localedata/locales/bn_IN: Likewise. + * localedata/locales/bo_CN: Likewise. + * localedata/locales/bo_IN: Likewise. + * localedata/locales/br_FR: Likewise. + * localedata/locales/brx_IN: Likewise. + * localedata/locales/bs_BA: Likewise. + * localedata/locales/byn_ER: Likewise. + * localedata/locales/ca_AD: Likewise. + * localedata/locales/ca_ES: Likewise. + * localedata/locales/ca_FR: Likewise. + * localedata/locales/ca_IT: Likewise. + * localedata/locales/ce_RU: Likewise. + * localedata/locales/chr_US: Likewise. + * localedata/locales/cmn_TW: Likewise. + * localedata/locales/crh_UA: Likewise. + * localedata/locales/cs_CZ: Likewise. + * localedata/locales/csb_PL: Likewise. + * localedata/locales/cv_RU: Likewise. + * localedata/locales/cy_GB: Likewise. + * localedata/locales/da_DK: Likewise. + * localedata/locales/de_AT: Likewise. + * localedata/locales/de_BE: Likewise. + * localedata/locales/de_CH: Likewise. + * localedata/locales/de_DE: Likewise. + * localedata/locales/de_IT: Likewise. + * localedata/locales/de_LI: Likewise. + * localedata/locales/de_LU: Likewise. + * localedata/locales/doi_IN: Likewise. + * localedata/locales/dv_MV: Likewise. + * localedata/locales/dz_BT: Likewise. + * localedata/locales/el_CY: Likewise. + * localedata/locales/el_GR: Likewise. + * localedata/locales/en_AG: Likewise. + * localedata/locales/en_AU: Likewise. + * localedata/locales/en_BW: Likewise. + * localedata/locales/en_CA: Likewise. + * localedata/locales/en_DK: Likewise. + * localedata/locales/en_GB: Likewise. + * localedata/locales/en_HK: Likewise. + * localedata/locales/en_IE: Likewise. + * localedata/locales/en_IL: Likewise. + * localedata/locales/en_IN: Likewise. + * localedata/locales/en_NG: Likewise. + * localedata/locales/en_NZ: Likewise. + * localedata/locales/en_PH: Likewise. + * localedata/locales/en_SG: Likewise. + * localedata/locales/en_US: Likewise. + * localedata/locales/en_ZA: Likewise. + * localedata/locales/en_ZM: Likewise. + * localedata/locales/en_ZW: Likewise. + * localedata/locales/eo: Likewise. + * localedata/locales/es_AR: Likewise. + * localedata/locales/es_BO: Likewise. + * localedata/locales/es_CL: Likewise. + * localedata/locales/es_CO: Likewise. + * localedata/locales/es_CR: Likewise. + * localedata/locales/es_CU: Likewise. + * localedata/locales/es_DO: Likewise. + * localedata/locales/es_EC: Likewise. + * localedata/locales/es_ES: Likewise. + * localedata/locales/es_GT: Likewise. + * localedata/locales/es_HN: Likewise. + * localedata/locales/es_MX: Likewise. + * localedata/locales/es_NI: Likewise. + * localedata/locales/es_PA: Likewise. + * localedata/locales/es_PE: Likewise. + * localedata/locales/es_PR: Likewise. + * localedata/locales/es_PY: Likewise. + * localedata/locales/es_SV: Likewise. + * localedata/locales/es_US: Likewise. + * localedata/locales/es_UY: Likewise. + * localedata/locales/es_VE: Likewise. + * localedata/locales/et_EE: Likewise. + * localedata/locales/eu_ES: Likewise. + * localedata/locales/eu_ES@euro: Likewise. + * localedata/locales/fa_IR: Likewise. + * localedata/locales/ff_SN: Likewise. + * localedata/locales/fi_FI: Likewise. + * localedata/locales/fil_PH: Likewise. + * localedata/locales/fo_FO: Likewise. + * localedata/locales/fr_BE: Likewise. + * localedata/locales/fr_CA: Likewise. + * localedata/locales/fr_CH: Likewise. + * localedata/locales/fr_FR: Likewise. + * localedata/locales/fr_LU: Likewise. + * localedata/locales/fur_IT: Likewise. + * localedata/locales/fy_DE: Likewise. + * localedata/locales/fy_NL: Likewise. + * localedata/locales/ga_IE: Likewise. + * localedata/locales/gd_GB: Likewise. + * localedata/locales/gez_ER: Likewise. + * localedata/locales/gez_ET: Likewise. + * localedata/locales/gl_ES: Likewise. + * localedata/locales/gu_IN: Likewise. + * localedata/locales/gv_GB: Likewise. + * localedata/locales/ha_NG: Likewise. + * localedata/locales/hak_TW: Likewise. + * localedata/locales/he_IL: Likewise. + * localedata/locales/hi_IN: Likewise. + * localedata/locales/hif_FJ: Likewise. + * localedata/locales/hne_IN: Likewise. + * localedata/locales/hr_HR: Likewise. + * localedata/locales/hsb_DE: Likewise. + * localedata/locales/ht_HT: Likewise. + * localedata/locales/hu_HU: Likewise. + * localedata/locales/hy_AM: Likewise. + * localedata/locales/i18n: Likewise. + * localedata/locales/ia_FR: Likewise. + * localedata/locales/id_ID: Likewise. + * localedata/locales/ig_NG: Likewise. + * localedata/locales/ik_CA: Likewise. + * localedata/locales/is_IS: Likewise. + * localedata/locales/it_CH: Likewise. + * localedata/locales/it_IT: Likewise. + * localedata/locales/iu_CA: Likewise. + * localedata/locales/ja_JP: Likewise. + * localedata/locales/ka_GE: Likewise. + * localedata/locales/kk_KZ: Likewise. + * localedata/locales/kl_GL: Likewise. + * localedata/locales/kn_IN: Likewise. + * localedata/locales/ko_KR: Likewise. + * localedata/locales/kok_IN: Likewise. + * localedata/locales/ks_IN: Likewise. + * localedata/locales/ks_IN@devanagari: Likewise. + * localedata/locales/ku_TR: Likewise. + * localedata/locales/kw_GB: Likewise. + * localedata/locales/ky_KG: Likewise. + * localedata/locales/lb_LU: Likewise. + * localedata/locales/lg_UG: Likewise. + * localedata/locales/li_BE: Likewise. + * localedata/locales/li_NL: Likewise. + * localedata/locales/lij_IT: Likewise. + * localedata/locales/ln_CD: Likewise. + * localedata/locales/lo_LA: Likewise. + * localedata/locales/lt_LT: Likewise. + * localedata/locales/lv_LV: Likewise. + * localedata/locales/lzh_TW: Likewise. + * localedata/locales/mag_IN: Likewise. + * localedata/locales/mai_IN: Likewise. + * localedata/locales/mg_MG: Likewise. + * localedata/locales/mhr_RU: Likewise. + * localedata/locales/mi_NZ: Likewise. + * localedata/locales/mk_MK: Likewise. + * localedata/locales/ml_IN: Likewise. + * localedata/locales/mn_MN: Likewise. + * localedata/locales/mni_IN: Likewise. + * localedata/locales/mr_IN: Likewise. + * localedata/locales/ms_MY: Likewise. + * localedata/locales/mt_MT: Likewise. + * localedata/locales/my_MM: Likewise. + * localedata/locales/nan_TW: Likewise. + * localedata/locales/nan_TW@latin: Likewise. + * localedata/locales/nb_NO: Likewise. + * localedata/locales/nds_DE: Likewise. + * localedata/locales/nds_NL: Likewise. + * localedata/locales/ne_NP: Likewise. + * localedata/locales/nhn_MX: Likewise. + * localedata/locales/niu_NU: Likewise. + * localedata/locales/niu_NZ: Likewise. + * localedata/locales/nl_AW: Likewise. + * localedata/locales/nl_BE: Likewise. + * localedata/locales/nl_NL: Likewise. + * localedata/locales/nn_NO: Likewise. + * localedata/locales/nr_ZA: Likewise. + * localedata/locales/nso_ZA: Likewise. + * localedata/locales/oc_FR: Likewise. + * localedata/locales/om_ET: Likewise. + * localedata/locales/om_KE: Likewise. + * localedata/locales/or_IN: Likewise. + * localedata/locales/os_RU: Likewise. + * localedata/locales/pa_IN: Likewise. + * localedata/locales/pa_PK: Likewise. + * localedata/locales/pap_AW: Likewise. + * localedata/locales/pap_CW: Likewise. + * localedata/locales/pl_PL: Likewise. + * localedata/locales/ps_AF: Likewise. + * localedata/locales/pt_BR: Likewise. + * localedata/locales/pt_PT: Likewise. + * localedata/locales/quz_PE: Likewise. + * localedata/locales/raj_IN: Likewise. + * localedata/locales/ro_RO: Likewise. + * localedata/locales/ru_RU: Likewise. + * localedata/locales/ru_UA: Likewise. + * localedata/locales/rw_RW: Likewise. + * localedata/locales/sa_IN: Likewise. + * localedata/locales/sat_IN: Likewise. + * localedata/locales/sc_IT: Likewise. + * localedata/locales/sd_IN: Likewise. + * localedata/locales/sd_IN@devanagari: Likewise. + * localedata/locales/se_NO: Likewise. + * localedata/locales/sgs_LT: Likewise. + * localedata/locales/shs_CA: Likewise. + * localedata/locales/si_LK: Likewise. + * localedata/locales/sid_ET: Likewise. + * localedata/locales/sk_SK: Likewise. + * localedata/locales/sl_SI: Likewise. + * localedata/locales/sm_WS: Likewise. + * localedata/locales/so_DJ: Likewise. + * localedata/locales/so_ET: Likewise. + * localedata/locales/so_KE: Likewise. + * localedata/locales/so_SO: Likewise. + * localedata/locales/sq_AL: Likewise. + * localedata/locales/sq_MK: Likewise. + * localedata/locales/sr_ME: Likewise. + * localedata/locales/sr_RS: Likewise. + * localedata/locales/sr_RS@latin: Likewise. + * localedata/locales/ss_ZA: Likewise. + * localedata/locales/st_ZA: Likewise. + * localedata/locales/sv_FI: Likewise. + * localedata/locales/sv_SE: Likewise. + * localedata/locales/sw_KE: Likewise. + * localedata/locales/sw_TZ: Likewise. + * localedata/locales/szl_PL: Likewise. + * localedata/locales/ta_IN: Likewise. + * localedata/locales/ta_LK: Likewise. + * localedata/locales/tcy_IN: Likewise. + * localedata/locales/te_IN: Likewise. + * localedata/locales/tg_TJ: Likewise. + * localedata/locales/th_TH: Likewise. + * localedata/locales/the_NP: Likewise. + * localedata/locales/ti_ER: Likewise. + * localedata/locales/ti_ET: Likewise. + * localedata/locales/tig_ER: Likewise. + * localedata/locales/tk_TM: Likewise. + * localedata/locales/tl_PH: Likewise. + * localedata/locales/tn_ZA: Likewise. + * localedata/locales/to_TO: Likewise. + * localedata/locales/tpi_PG: Likewise. + * localedata/locales/tr_CY: Likewise. + * localedata/locales/tr_TR: Likewise. + * localedata/locales/ts_ZA: Likewise. + * localedata/locales/tt_RU: Likewise. + * localedata/locales/tt_RU@iqtelif: Likewise. + * localedata/locales/ug_CN: Likewise. + * localedata/locales/uk_UA: Likewise. + * localedata/locales/unm_US: Likewise. + * localedata/locales/ur_IN: Likewise. + * localedata/locales/ur_PK: Likewise. + * localedata/locales/uz_UZ: Likewise. + * localedata/locales/uz_UZ@cyrillic: Likewise. + * localedata/locales/ve_ZA: Likewise. + * localedata/locales/vi_VN: Likewise. + * localedata/locales/wa_BE: Likewise. + * localedata/locales/wae_CH: Likewise. + * localedata/locales/wal_ET: Likewise. + * localedata/locales/wo_SN: Likewise. + * localedata/locales/xh_ZA: Likewise. + * localedata/locales/yi_US: Likewise. + * localedata/locales/yo_NG: Likewise. + * localedata/locales/yue_HK: Likewise. + * localedata/locales/yuw_PG: Likewise. + * localedata/locales/zh_CN: Likewise. + * localedata/locales/zh_HK: Likewise. + * localedata/locales/zh_SG: Likewise. + * localedata/locales/zh_TW: Likewise. + * localedata/locales/zu_ZA: Likewise. + +2017-11-13 Florian Weimer + + * support/next_to_fault.h, support/next_to_fault.c: New files. + * support/Makefile (libsupport-routines): Add next_to_fault. + * resolv/tst-inet_pton.c (struct next_to_fault) + (next_to_fault_allocate, next_to_fault_free): Remove. + (run_one_test): Switch to interfaces. + +2017-11-13 H.J. Lu + + * elf/dl-support.c: Include . + * include/link.h: Include . + * sysdeps/generic/dl-procruntime.c: New file. + * sysdeps/generic/link_map.h: Likewise. + * sysdeps/generic/ldsodefs.h: Include in + the writable ld.so namespace. + +2017-11-12 Paul Eggert + + timezone: pacify GCC -Wstringop-truncation + Problem reported by Martin Sebor in: + https://sourceware.org/ml/libc-alpha/2017-11/msg00336.html + * timezone/zic.c (writezone): Use memcpy, not strncpy. + +2017-11-12 Florian Weimer + + * support/Makefile (libsupport-routines): Add xreadlink, xstrndup, + tst-xreadlink. + (tests): Add tst-xreadlink. + * support/support.h (xstrndup): Declare. + * support/xunistd.h (xunlink, xreadlink): Declare. + * support/temp_file.h (support_create_temp_directory): Declare. + * support/temp_file.c (support_create_temp_directory): New function. + * support/support_chroot.c (support_chroot_create): Use it. + * support/xreadlink.c: New file. + * support/xstrndup.c: Likewise. + * support/xunlink.c: Likewise. + * support/tst-xreadlink.c: Likewise. + +2017-11-11 John David Anglin + + * sysdeps/hppa/fpu/libm-test-ulps: Update clog10_downward ulps. + +2017-11-11 Florian Weimer + + [BZ #22409] + [BZ #22412] + * resolv/res_comp.c (printable_string, binary_hnok) + (binary_leading_dash): New functions. + (res_hnok): Reimplement using these functions and ns_name_pton. + (res_ownok): Likewise. + (res_mailok): Reimplement using printable_string, ns_name_pton and + binary_hnok. + (res_dnok): Reimplement using printable_string and ns_name_pton. + * resolv/tst-res_hnok.c (tests): Add additional tests. + (LETTERDIGITS, PRINTABLE): Define. + (do_test): Adjust one_char results. + +2017-11-11 Florian Weimer + + [BZ #22413] + * resolv/ns_name.c (ns_name_pton): Treat trailing backslash as error. + * resolv/tst-ns_name_pton.c (tests): Add trailing backslash tests. + +2017-11-11 Florian Weimer + + * resolv/tst-ns_name_pton.c: New file. + * resolv/Makefile (tests): Add tst-ns_name_pton. + (tst-ns_name_pton): Link against libresolv. + +2017-11-11 Florian Weimer + + * resolv/tst-res_hnok.c: New file. + * resolv/Makefile (tests): Add tst-res_hnok. + (tst-res_hnok): Link against libresolv. + +2017-11-11 Florian Weimer + + * resolv/tst-resolv-network.c: Use test framework instead explicit + main function. + +2017-11-09 H.J. Lu + + * include/setjmp.h [!_ISOMAC]: Include and + . + [!_ISOMAC] (STR_HELPER): New. + [!_ISOMAC] (STR): Likewise. + [!_ISOMAC] (TEST_SIZE): Likewise. + [!_ISOMAC] (TEST_ALIGN): Likewise. + [!_ISOMAC] (TEST_OFFSET): Likewise. + [!_ISOMAC] Add _Static_assert to check sizes, alignments and + field offsets of jmp_buf as well as sigjmp_buf. + * sysdeps/unix/sysv/linux/aarch64/jmp_buf-macros.h: Likewise. + * sysdeps/unix/sysv/linux/alpha/jmp_buf-macros.h: Likewise. + * sysdeps/unix/sysv/linux/arm/jmp_buf-macros.h: Likewise. + * sysdeps/unix/sysv/linux/hppa/jmp_buf-macros.h: Likewise. + * sysdeps/unix/sysv/linux/i386/jmp_buf-macros.h: Likewise. + * sysdeps/unix/sysv/linux/ia64/jmp_buf-macros.h: Likewise. + * sysdeps/unix/sysv/linux/m68k/jmp_buf-macros.h: Likewise. + * sysdeps/unix/sysv/linux/microblaze/jmp_buf-macros.h: Likewise. + * sysdeps/unix/sysv/linux/mips/mips32/jmp_buf-macros.h: Likewise. + * sysdeps/unix/sysv/linux/mips/mips64/n32/jmp_buf-macros.h: + Likewise. + * sysdeps/unix/sysv/linux/mips/mips64/n64/jmp_buf-macros.h: + Likewise. + * sysdeps/unix/sysv/linux/nios2/jmp_buf-macros.h: Likewise. + * sysdeps/unix/sysv/linux/powerpc/powerpc32/jmp_buf-macros.h: + Likewise. + * sysdeps/unix/sysv/linux/powerpc/powerpc64/jmp_buf-macros.h: + Likewise. + * sysdeps/unix/sysv/linux/s390/s390-32/jmp_buf-macros.h: Likewise. + * sysdeps/unix/sysv/linux/s390/s390-64/jmp_buf-macros.h: Likewise. + * sysdeps/unix/sysv/linux/sh/jmp_buf-macros.h: Likewise. + * sysdeps/unix/sysv/linux/sparc/sparc32/jmp_buf-macros.h: Likewise. + * sysdeps/unix/sysv/linux/sparc/sparc64/jmp_buf-macros.h: Likewise. + * sysdeps/unix/sysv/linux/tile/tilegx/tilegx32/jmp_buf-macros.h: + Likewise. + * sysdeps/unix/sysv/linux/tile/tilegx/tilegx64/jmp_buf-macros.h: + Likewise. + * sysdeps/unix/sysv/linux/tile/tilepro/jmp_buf-macros.h: Likewise. + * sysdeps/unix/sysv/linux/x86_64/64/jmp_buf-macros.h: Likewise. + * sysdeps/unix/sysv/linux/x86_64/x32/jmp_buf-macros.h: Likewise. + +2017-11-07 Joseph Myers + + * include/float.h + [!__GNUC_PREREQ (7, 0) && __GLIBC_USE (IEC_60559_TYPES_EXT) + && __HAVE_FLOAT32] (FLT32_MANT_DIG): New macro. + [!__GNUC_PREREQ (7, 0) && __GLIBC_USE (IEC_60559_TYPES_EXT) + && __HAVE_FLOAT32] (FLT32_DECIMAL_DIG): Likewise. + [!__GNUC_PREREQ (7, 0) && __GLIBC_USE (IEC_60559_TYPES_EXT) + && __HAVE_FLOAT32] (FLT32_DIG): Likewise. + [!__GNUC_PREREQ (7, 0) && __GLIBC_USE (IEC_60559_TYPES_EXT) + && __HAVE_FLOAT32] (FLT32_MIN_EXP): Likewise. + [!__GNUC_PREREQ (7, 0) && __GLIBC_USE (IEC_60559_TYPES_EXT) + && __HAVE_FLOAT32] (FLT32_MIN_10_EXP): Likewise. + [!__GNUC_PREREQ (7, 0) && __GLIBC_USE (IEC_60559_TYPES_EXT) + && __HAVE_FLOAT32] (FLT32_MAX_EXP): Likewise. + [!__GNUC_PREREQ (7, 0) && __GLIBC_USE (IEC_60559_TYPES_EXT) + && __HAVE_FLOAT32] (FLT32_MAX_10_EXP): Likewise. + [!__GNUC_PREREQ (7, 0) && __GLIBC_USE (IEC_60559_TYPES_EXT) + && __HAVE_FLOAT32] (FLT32_MAX): Likewise. + [!__GNUC_PREREQ (7, 0) && __GLIBC_USE (IEC_60559_TYPES_EXT) + && __HAVE_FLOAT32] (FLT32_EPSILON): Likewise. + [!__GNUC_PREREQ (7, 0) && __GLIBC_USE (IEC_60559_TYPES_EXT) + && __HAVE_FLOAT32] (FLT32_MIN): Likewise. + [!__GNUC_PREREQ (7, 0) && __GLIBC_USE (IEC_60559_TYPES_EXT) + && __HAVE_FLOAT32] (FLT32_TRUE_MIN): Likewise. + [!__GNUC_PREREQ (7, 0) && __GLIBC_USE (IEC_60559_TYPES_EXT) + && __HAVE_FLOAT64] (FLT64_MANT_DIG): Likewise. + [!__GNUC_PREREQ (7, 0) && __GLIBC_USE (IEC_60559_TYPES_EXT) + && __HAVE_FLOAT64] (FLT64_DECIMAL_DIG): Likewise. + [!__GNUC_PREREQ (7, 0) && __GLIBC_USE (IEC_60559_TYPES_EXT) + && __HAVE_FLOAT64] (FLT64_DIG): Likewise. + [!__GNUC_PREREQ (7, 0) && __GLIBC_USE (IEC_60559_TYPES_EXT) + && __HAVE_FLOAT64] (FLT64_MIN_EXP): Likewise. + [!__GNUC_PREREQ (7, 0) && __GLIBC_USE (IEC_60559_TYPES_EXT) + && __HAVE_FLOAT64] (FLT64_MIN_10_EXP): Likewise. + [!__GNUC_PREREQ (7, 0) && __GLIBC_USE (IEC_60559_TYPES_EXT) + && __HAVE_FLOAT64] (FLT64_MAX_EXP): Likewise. + [!__GNUC_PREREQ (7, 0) && __GLIBC_USE (IEC_60559_TYPES_EXT) + && __HAVE_FLOAT64] (FLT64_MAX_10_EXP): Likewise. + [!__GNUC_PREREQ (7, 0) && __GLIBC_USE (IEC_60559_TYPES_EXT) + && __HAVE_FLOAT64] (FLT64_MAX): Likewise. + [!__GNUC_PREREQ (7, 0) && __GLIBC_USE (IEC_60559_TYPES_EXT) + && __HAVE_FLOAT64] (FLT64_EPSILON): Likewise. + [!__GNUC_PREREQ (7, 0) && __GLIBC_USE (IEC_60559_TYPES_EXT) + && __HAVE_FLOAT64] (FLT64_MIN): Likewise. + [!__GNUC_PREREQ (7, 0) && __GLIBC_USE (IEC_60559_TYPES_EXT) + && __HAVE_FLOAT64] (FLT64_TRUE_MIN): Likewise. + [!__GNUC_PREREQ (7, 0) && __GLIBC_USE (IEC_60559_TYPES_EXT) + && __HAVE_FLOAT32X] (FLT32X_MANT_DIG): Likewise. + [!__GNUC_PREREQ (7, 0) && __GLIBC_USE (IEC_60559_TYPES_EXT) + && __HAVE_FLOAT32X] (FLT32X_DECIMAL_DIG): Likewise. + [!__GNUC_PREREQ (7, 0) && __GLIBC_USE (IEC_60559_TYPES_EXT) + && __HAVE_FLOAT32X] (FLT32X_DIG): Likewise. + [!__GNUC_PREREQ (7, 0) && __GLIBC_USE (IEC_60559_TYPES_EXT) + && __HAVE_FLOAT32X] (FLT32X_MIN_EXP): Likewise. + [!__GNUC_PREREQ (7, 0) && __GLIBC_USE (IEC_60559_TYPES_EXT) + && __HAVE_FLOAT32X] (FLT32X_MIN_10_EXP): Likewise. + [!__GNUC_PREREQ (7, 0) && __GLIBC_USE (IEC_60559_TYPES_EXT) + && __HAVE_FLOAT32X] (FLT32X_MAX_EXP): Likewise. + [!__GNUC_PREREQ (7, 0) && __GLIBC_USE (IEC_60559_TYPES_EXT) + && __HAVE_FLOAT32X] (FLT32X_MAX_10_EXP): Likewise. + [!__GNUC_PREREQ (7, 0) && __GLIBC_USE (IEC_60559_TYPES_EXT) + && __HAVE_FLOAT32X] (FLT32X_MAX): Likewise. + [!__GNUC_PREREQ (7, 0) && __GLIBC_USE (IEC_60559_TYPES_EXT) + && __HAVE_FLOAT32X] (FLT32X_EPSILON): Likewise. + [!__GNUC_PREREQ (7, 0) && __GLIBC_USE (IEC_60559_TYPES_EXT) + && __HAVE_FLOAT32X] (FLT32X_MIN): Likewise. + [!__GNUC_PREREQ (7, 0) && __GLIBC_USE (IEC_60559_TYPES_EXT) + && __HAVE_FLOAT32X] (FLT32X_TRUE_MIN): Likewise. + [!__GNUC_PREREQ (7, 0) && __GLIBC_USE (IEC_60559_TYPES_EXT) + && __HAVE_FLOAT64X] (FLT64X_MANT_DIG): Likewise. + [!__GNUC_PREREQ (7, 0) && __GLIBC_USE (IEC_60559_TYPES_EXT) + && __HAVE_FLOAT64X] (FLT64X_DECIMAL_DIG): Likewise. + [!__GNUC_PREREQ (7, 0) && __GLIBC_USE (IEC_60559_TYPES_EXT) + && __HAVE_FLOAT64X] (FLT64X_DIG): Likewise. + [!__GNUC_PREREQ (7, 0) && __GLIBC_USE (IEC_60559_TYPES_EXT) + && __HAVE_FLOAT64X] (FLT64X_MIN_EXP): Likewise. + [!__GNUC_PREREQ (7, 0) && __GLIBC_USE (IEC_60559_TYPES_EXT) + && __HAVE_FLOAT64X] (FLT64X_MIN_10_EXP): Likewise. + [!__GNUC_PREREQ (7, 0) && __GLIBC_USE (IEC_60559_TYPES_EXT) + && __HAVE_FLOAT64X] (FLT64X_MAX_EXP): Likewise. + [!__GNUC_PREREQ (7, 0) && __GLIBC_USE (IEC_60559_TYPES_EXT) + && __HAVE_FLOAT64X] (FLT64X_MAX_10_EXP): Likewise. + [!__GNUC_PREREQ (7, 0) && __GLIBC_USE (IEC_60559_TYPES_EXT) + && __HAVE_FLOAT64X] (FLT64X_MAX): Likewise. + [!__GNUC_PREREQ (7, 0) && __GLIBC_USE (IEC_60559_TYPES_EXT) + && __HAVE_FLOAT64X] (FLT64X_EPSILON): Likewise. + [!__GNUC_PREREQ (7, 0) && __GLIBC_USE (IEC_60559_TYPES_EXT) + && __HAVE_FLOAT64X] (FLT64X_MIN): Likewise. + [!__GNUC_PREREQ (7, 0) && __GLIBC_USE (IEC_60559_TYPES_EXT) + && __HAVE_FLOAT64X] (FLT64X_TRUE_MIN): Likewise. + + * stdlib/tst-strtod.h (F16): New macro. + (F32): Likewise. + (F64): Likewise. + (F32X): Likewise. + (F64X): Likewise. + (F128X): Likewise. + (IF_FLOAT16): Likewise. + (IF_FLOAT32): Likewise. + (IF_FLOAT64): Likewise. + (IF_FLOAT32X): Likewise. + (IF_FLOAT64X): Likewise. + (IF_FLOAT128X): Likewise. + (GEN_TEST_STRTOD_FOREACH): Conditionally call macros for _Float16, + _Float32, _Float64, _Float32x, _Float64x and _Float128x. + (STRTOD_TEST_FOREACH): Likewise. + * stdlib/tst-strtod-round-skeleton.c (CHOOSE_f32): New macro. + (CHOOSE_f64): Likewise. + (CHOOSE_f32x): Likewise. + (CHOOSE_f64x): Likewise. + +2017-11-07 Andreas Schwab + + * nptl/Makefile (tests-internal): Remove tst-typesizes. + +2017-11-07 Mike FABIAN + + [BZ #22403] + * localedata/locales/mfe_MU (LC_TIME): Fix wrong d_fmt, / needs + to be escaped. + * localedata/locales/miq_NI (LC_TIME): Fix wrong d_fmt, / needs + to be escaped. + +2017-11-07 Claude Paroz + + [BZ #22403] + * localedata/locales/an_ES (LC_TIME): Fix wrong d_fmt, / needs + to be escaped. + * localedata/locales/kab_DZ (LC_TIME): Fix wrong d_fmt, / needs + to be escaped. + * localedata/locales/om_ET (LC_TIME): Fix wrong d_fmt, / needs + to be escaped. + +2017-11-07 Adhemerval Zanella + + [BZ #22298] + * nptl/allocatestack.c (allocate_stack): Check if + __PTHREAD_MUTEX_HAVE_PREV is non-zero, instead if + __PTHREAD_MUTEX_HAVE_PREV is defined. + * nptl/descr.h (pthread): Likewise. + * nptl/nptl-init.c (__pthread_initialize_minimal_internal): + Likewise. + * nptl/pthread_create.c (START_THREAD_DEFN): Likewise. + * sysdeps/nptl/fork.c (__libc_fork): Likewise. + * sysdeps/nptl/pthread.h (PTHREAD_MUTEX_INITIALIZER): Likewise. + * sysdeps/nptl/bits/thread-shared-types.h + (__PTHREAD_MUTEX_NUSERS_AFTER_KIND, __PTHREAD_MUTEX_USE_UNION): New + defines. + (__pthread_internal_list): Check __PTHREAD_MUTEX_USE_UNION instead + of __WORDSIZE for internal layout. + (__pthread_mutex_s): Check __PTHREAD_MUTEX_NUSERS_AFTER_KIND instead + of __WORDSIZE for internal __nusers layout and __PTHREAD_MUTEX_USE_UNION + instead of __WORDSIZE whether to use an union for __spins and __list + fields. + (__PTHREAD_MUTEX_HAVE_PREV): Define also for __PTHREAD_MUTEX_USE_UNION + case. + * sysdeps/aarch64/nptl/bits/pthreadtypes-arch.h + (__PTHREAD_MUTEX_NUSERS_AFTER_KIND, __PTHREAD_MUTEX_USE_UNION): New + defines. + * sysdeps/alpha/nptl/bits/pthreadtypes-arch.h + (__PTHREAD_MUTEX_NUSERS_AFTER_KIND, __PTHREAD_MUTEX_USE_UNION): + Likewise. + * sysdeps/arm/nptl/bits/pthreadtypes-arch.h + (__PTHREAD_MUTEX_NUSERS_AFTER_KIND, __PTHREAD_MUTEX_USE_UNION): + Likewise. + * sysdeps/hppa/nptl/bits/pthreadtypes-arch.h + (__PTHREAD_MUTEX_NUSERS_AFTER_KIND, __PTHREAD_MUTEX_USE_UNION): + Likewise. + * sysdeps/ia64/nptl/bits/pthreadtypes-arch.h + (__PTHREAD_MUTEX_NUSERS_AFTER_KIND, __PTHREAD_MUTEX_USE_UNION): + Likewise. + * sysdeps/m68k/nptl/bits/pthreadtypes-arch.h + (__PTHREAD_MUTEX_NUSERS_AFTER_KIND, __PTHREAD_MUTEX_USE_UNION): + Likewise. + * sysdeps/microblaze/nptl/bits/pthreadtypes-arch.h + (__PTHREAD_MUTEX_NUSERS_AFTER_KIND, __PTHREAD_MUTEX_USE_UNION): + Likewise. + * sysdeps/mips/nptl/bits/pthreadtypes-arch.h + (__PTHREAD_MUTEX_NUSERS_AFTER_KIND, __PTHREAD_MUTEX_USE_UNION): + Likewise. + * sysdeps/nios2/nptl/bits/pthreadtypes-arch.h + (__PTHREAD_MUTEX_NUSERS_AFTER_KIND, __PTHREAD_MUTEX_USE_UNION): + Likewise. + * sysdeps/powerpc/nptl/bits/pthreadtypes-arch.h + (__PTHREAD_MUTEX_NUSERS_AFTER_KIND, __PTHREAD_MUTEX_USE_UNION): + Likewise. + * sysdeps/s390/nptl/bits/pthreadtypes-arch.h + (__PTHREAD_MUTEX_NUSERS_AFTER_KIND, __PTHREAD_MUTEX_USE_UNION): + Likewise. + * sysdeps/sh/nptl/bits/pthreadtypes-arch.h + (__PTHREAD_MUTEX_NUSERS_AFTER_KIND, __PTHREAD_MUTEX_USE_UNION): + Likewise. + * sysdeps/sparc/nptl/bits/pthreadtypes-arch.h + (__PTHREAD_MUTEX_NUSERS_AFTER_KIND, __PTHREAD_MUTEX_USE_UNION): + Likewise. + * sysdeps/tile/nptl/bits/pthreadtypes-arch.h + (__PTHREAD_MUTEX_NUSERS_AFTER_KIND, __PTHREAD_MUTEX_USE_UNION): + Likewise. + * sysdeps/x86/nptl/bits/pthreadtypes-arch.h + (__PTHREAD_MUTEX_NUSERS_AFTER_KIND, __PTHREAD_MUTEX_USE_UNION): + Likewise. + + * nptl/pthreadP.h (ASSERT_TYPE_SIZE, ASSERT_PTHREAD_INTERNAL_SIZE): + New macros. + * nptl/pthread_attr_init.c (__pthread_mutex_init): Add build time + checks for expected input type size. + * nptl/pthread_barrier_init.c (__pthread_barrier_init): Likewise. + * nptl/pthread_barrierattr_init.c (pthread_barrierattr_init): + Likewise. + * nptl/pthread_cond_init.c (__pthread_cond_init): Likewise. + * nptl/pthread_condattr_init.c (__pthread_condattr_init): Likewise. + * nptl/pthread_mutex_init.c (__pthread_mutex_init): Likewise. + * nptl/pthread_mutexattr_init.c (__pthread_mutexattr_init): Likewise. + * nptl/pthread_rwlock_init.c (__pthread_rwlock_init): Likewise. + * nptl/pthread_rwlockattr_init.c (pthread_rwlockattr_init): Likewise. + * nptl/sem_init.c (__new_sem_init, __old_sem_init): Likewise + * nptl/pthread_attr_destroy.c (__pthread_attr_destroy): Remove + superflous runtime assert check. + * nptl/pthread_attr_getaffinity.c (__pthread_attr_getaffinity_new): + Likewise. + * nptl/pthread_attr_getdetachstate.c (__pthread_attr_getdetachstate): + Likewise. + * nptl/pthread_attr_getguardsize.c (pthread_attr_getguardsize): + Likewise. + * nptl/pthread_attr_getinheritsched.c (__pthread_attr_getinheritsched): + Likewise. + * nptl/pthread_attr_getschedparam.c (__pthread_attr_getschedparam): + Likewise. + * nptl/pthread_attr_getschedpolicy.c (__pthread_attr_getschedpolicy): + Likewise. + * nptl/pthread_attr_getscope.c (__pthread_attr_getscope): Likewise. + * nptl/pthread_attr_getstack.c (__pthread_attr_getstack): Likewise. + * nptl/pthread_attr_getstackaddr.c (__pthread_attr_getstackaddr): + Likewise. + * nptl/pthread_attr_getstacksize.c (__pthread_attr_getstacksize): + Likewise. + * nptl/pthread_attr_setaffinity.c (__pthread_attr_setaffinity_new): + Likewise. + * nptl/pthread_attr_setdetachstate.c (__pthread_attr_setdetachstate): + Likewise. + * nptl/pthread_attr_setguardsize.c (pthread_attr_setguardsize): + Likewise. + * nptl/pthread_attr_setinheritsched.c + (__pthread_attr_setinheritsched): Likewise. + * nptl/pthread_attr_setschedparam.c (__pthread_attr_setschedparam): + Likewise. + * nptl/pthread_attr_setschedpolicy.c (__pthread_attr_setschedpolicy): + Likewise. + * nptl/pthread_attr_setscope.c (__pthread_attr_setscope): Likewise. + * nptl/pthread_attr_setstack.c (__pthread_attr_setstack, + __old_pthread_attr_setstack): Likewise. + * nptl/pthread_attr_setstackaddr.c (__pthread_attr_setstackaddr): + Likewise. + * nptl/pthread_attr_setstacksize.c (__pthread_attr_setstacksize): + Likewise. + * nptl/pthread_getattr_default_np.c (pthread_getattr_default_np): + Likewise. + * nptl/pthread_mutex_lock.c (__pthread_mutex_lock): Likewise. + * nptl/pthread_setattr_default_np.c (pthread_setattr_default_np): + Likewise. + * nptl/tst-typesizes.c: Remove file. + + * nptl/pthreadP.h (ASSERT_PTHREAD_STRING, + ASSERT_PTHREAD_INTERNAL_OFFSET): New macro. + * nptl/pthread_mutex_init.c (__pthread_mutex_init): Add build time + checks for internal pthread_mutex_t offsets. + * sysdeps/aarch64/nptl/pthread-offsets.h + (__PTHREAD_MUTEX_NUSERS_OFFSET, __PTHREAD_MUTEX_KIND_OFFSET, + __PTHREAD_MUTEX_SPINS_OFFSET, __PTHREAD_MUTEX_ELISION_OFFSET, + __PTHREAD_MUTEX_LIST_OFFSET): New macro. + * sysdeps/alpha/nptl/pthread-offsets.h: Likewise. + * sysdeps/arm/nptl/pthread-offsets.h: Likewise. + * sysdeps/hppa/nptl/pthread-offsets.h: Likewise. + * sysdeps/i386/nptl/pthread-offsets.h: Likewise. + * sysdeps/ia64/nptl/pthread-offsets.h: Likewise. + * sysdeps/m68k/nptl/pthread-offsets.h: Likewise. + * sysdeps/microblaze/nptl/pthread-offsets.h: Likewise. + * sysdeps/mips/nptl/pthread-offsets.h: Likewise. + * sysdeps/nios2/nptl/pthread-offsets.h: Likewise. + * sysdeps/powerpc/nptl/pthread-offsets.h: Likewise. + * sysdeps/s390/nptl/pthread-offsets.h: Likewise. + * sysdeps/sh/nptl/pthread-offsets.h: Likewise. + * sysdeps/sparc/nptl/pthread-offsets.h: Likewise. + * sysdeps/tile/nptl/pthread-offsets.h: Likewise. + * sysdeps/x86_64/nptl/pthread-offsets.h: Likewise. + +2017-11-07 Florian Weimer + + * bits/mman-linux.h: Move ... + * sysdeps/unix/sysv/linux/bits/mman-linux.h: ... here. Update + comment. + * sysdeps/unix/sysv/linux/bits/Makefile (sysdep_headers): Remove + outdated comment. + +2017-11-07 Rajalakshmi Srinivasaraghavan + + * sysdeps/powerpc/powerpc64/multiarch/strcasestr-power8.S (STRNLEN): + Redefine STRNLEN as __strnlen_power8. + +2017-11-06 Adhemerval Zanella + + * signal/sighold.c (sighold): Optimize implementation. + + * sysdeps/unix/sysv/linux/sigqueue.c (__sigqueue): Asssume + __NR_rt_sigqueueinfo. + + * sysdeps/unix/sysv/linux/Versions (libc) [GLIBC_PRIVATE]: Add + __sigtimedwait. + * sysdeps/unix/sysv/linux/sigtimedwait.c: Simplify includes and + assume __NR_rt_sigtimedwait. + * sysdeps/unix/sysv/linux/sigwait.c (__sigwait): Call __sigtimedwait + and add LIBC_CANCEL_HANDLED for cancellation marking. + * sysdeps/unix/sysv/linux/sigwaitinfo.c (__sigwaitinfo): Likewise. + + * sysdeps/arm/armv7/multiarch/Makefile [$(subdir) = string] + (sysdeps_routines): Add memchr_noneon. + * sysdeps/arm/armv7/multiarch/ifunc-memchr.h: New file. + * sysdeps/arm/armv7/multiarch/memchr_noneon.S: Likewise. + * sysdeps/arm/armv7/multiarch/rtld-memchr.S: Likewise. + * sysdeps/arm/armv7/multiarch/memchr.S: Remove file. + * sysdeps/arm/armv7/multiarch/memchr.c: New file. + * sysdeps/arm/armv7/multiarch/memchr_impl.S: Move to ... + * sysdeps/arm/armv7/multiarch/memchr_neon.S: ... here. + + * sysdeps/arm/arm-ifunc.h: New file. + * sysdeps/arm/armv7/multiarch/ifunc-memcpy.h: Likewise. + * sysdeps/arm/armv7/multiarch/memcpy.c: Likewise. + * sysdeps/arm/armv7/multiarch/memcpy_arm.S: Likewise. + * sysdeps/arm/armv7/multiarch/rtld-memcpy.S: Likewise. + * sysdeps/arm/armv7/multiarch/memcpy_neon.S [!__ARM_NEON__] + (__memcpy_neon): Avoid create hidden alias. + * sysdeps/arm/armv7/multiarch/memcpy_vfp.S [!__ARM_NEON_] + (__memcpy_vfp): Likewise. + * sysdeps/arm/armv7/multiarch/Makefile [$(subdir) = string] + (sysdep_routines): Add memcpy_arm. + * sysdeps/arm/armv7/multiarch/memcpy.S: Remove file. + +2017-11-06 H.J. Lu + + [BZ #22362] + * Makerules (make-link-multidir): New. + * config.make.in (multidir): New. + * configure.ac (libc_cv_multidir): New. AC_SUBST. + * configure: Regenerated. + * csu/Makefile [$(multidir) != .](multilib-extra-objs): New. + [$(multidir) != .](extra-objs): Add $(multilib-extra-objs). + [$(multidir) != .]($(addprefix $(objpfx)$(multidir)/, $(install-lib))): + New target. + +2017-11-06 Joseph Myers + + [BZ #22402] + * sysdeps/powerpc/bits/floatn.h: Include . + [__NO_LONG_DOUBLE_MATH] (__HAVE_FLOAT128): Define to 0. + +2017-11-04 Mike FABIAN + + * localedata/locales/tpi_PG (LC_TIME): Fix wrong d_fmt, / needs + to be escaped. + +2017-11-04 Florian Weimer + + * manual/llio.texi (Open-time Flags): Document O_TMPFILE. + +2017-11-03 Joseph Myers + + * math/math.h [__HAVE_DISTINCT_FLOAT16 + || __HAVE_DISTINCT_FLOAT32 || __HAVE_DISTINCT_FLOAT64 + || __HAVE_DISTINCT_FLOAT32X || __HAVE_DISTINCT_FLOAT64X + || __HAVE_DISTINCT_FLOAT128X]: Use #error. + [__NO_LONG_DOUBLE_MATH && __HAVE_DISTINCT_FLOAT128]: Likewise. + [__HAVE_DISTINCT_FLOAT128 && !__HAVE_GENERIC_SELECTION + && __HAVE_FLOATN_NOT_TYPEDEF]: Likewise. + [__HAVE_DISTINCT_FLOAT128 && __HAVE_GENERIC_SELECTION] + (__MATH_TG_F32): New macro. + [__HAVE_DISTINCT_FLOAT128 && __HAVE_GENERIC_SELECTION] + (__MATH_TG_F64X): Likewise. + [__HAVE_DISTINCT_FLOAT128 && __HAVE_GENERIC_SELECTION] + (__MATH_TG): Use __MATH_TG_F32 and __MATH_TG_F64X. + +2017-11-03 Dmitry V. Levin + + * po/de.po: Update translations. + * po/ru.po: Likewise. + +2017-11-03 Florian Weimer + + * manual/filesys.texi (Hard Links): Document linkat. + +2017-11-03 Joseph Myers + + * math/tgmath.h [__HAVE_DISTINCT_FLOAT16 + || __HAVE_DISTINCT_FLOAT32 || __HAVE_DISTINCT_FLOAT64 + || __HAVE_DISTINCT_FLOAT32X || __HAVE_DISTINCT_FLOAT64X + || __HAVE_DISTINCT_FLOAT128X]: Use #error. + [__HAVE_DISTINCT_FLOAT128 && __GLIBC_USE (IEC_60559_TYPES_EXT) + && __HAVE_FLOAT64X && !__HAVE_FLOAT64X_LONG_DOUBLE + && __HAVE_FLOATN_NOT_TYPEDEF] (__TGMATH_F128): Handle _Float64x + the same as _Float128. + [__HAVE_DISTINCT_FLOAT128 && __GLIBC_USE (IEC_60559_TYPES_EXT) + && __HAVE_FLOAT64X && !__HAVE_FLOAT64X_LONG_DOUBLE + && __HAVE_FLOATN_NOT_TYPEDEF] (__TGMATH_CF128): Likewise. + + * stdlib/stdlib.h + [__HAVE_FLOAT16 && __GLIBC_USE (IEC_60559_TYPES_EXT)] (strtof16): + Declare. + [__HAVE_FLOAT32 && __GLIBC_USE (IEC_60559_TYPES_EXT)] (strtof32): + Likewise. + [__HAVE_FLOAT64 && __GLIBC_USE (IEC_60559_TYPES_EXT)] (strtof64): + Likewise. + [__HAVE_FLOAT32X && __GLIBC_USE (IEC_60559_TYPES_EXT)] + (strtof32x): Likewise. + [__HAVE_FLOAT64X && __GLIBC_USE (IEC_60559_TYPES_EXT)] + (strtof64x): Likewise. + [__HAVE_FLOAT128X && __GLIBC_USE (IEC_60559_TYPES_EXT)] + (strtof128x): Likewise. + [__HAVE_FLOAT16 && __GLIBC_USE (IEC_60559_TYPES_EXT)] + (strfromf16): Likewise. + [__HAVE_FLOAT32 && __GLIBC_USE (IEC_60559_TYPES_EXT)] + (strfromf32): Likewise. + [__HAVE_FLOAT64 && __GLIBC_USE (IEC_60559_TYPES_EXT)] + (strfromf64): Likewise. + [__HAVE_FLOAT32X && __GLIBC_USE (IEC_60559_TYPES_EXT)] + (strfromf32x): Likewise. + [__HAVE_FLOAT64X && __GLIBC_USE (IEC_60559_TYPES_EXT)] + (strfromf64x): Likewise. + [__HAVE_FLOAT128X && __GLIBC_USE (IEC_60559_TYPES_EXT)] + (strfromf128x): Likewise. + [__USE_GNU && __HAVE_FLOAT16] (strtof16_l): Likewise. + [__USE_GNU && __HAVE_FLOAT32] (strtof32_l): Likewise. + [__USE_GNU && __HAVE_FLOAT64] (strtof64_l): Likewise. + [__USE_GNU && __HAVE_FLOAT32X] (strtof32x_l): Likewise. + [__USE_GNU && __HAVE_FLOAT64X] (strtof64x_l): Likewise. + [__USE_GNU && __HAVE_FLOAT128X] (strtof128x_l): Likewise. + +2017-11-03 Richard Henderson + + * sysdeps/unix/sysv/linux/aarch64/sysconf.c: New file. + +2017-11-03 Szabolcs Nagy + + * sysdeps/aarch64/dl-tlsdesc.S (_dl_tlsdesc_dynamic): Optimize. + +2017-11-03 Szabolcs Nagy + + * sysdeps/arm/dl-machine.h (elf_machine_runtime_setup): Remove + DT_TLSDESC_GOT initialization. + * sysdeps/arm/dl-tlsdesc.S (_dl_tlsdesc_lazy_resolver): Remove. + (_dl_tlsdesc_resolve_hold): Likewise. + * sysdeps/aarch64/dl-tlsdesc.h (_dl_tlsdesc_lazy_resolver): Remove. + (_dl_tlsdesc_resolve_hold): Likewise. + * sysdeps/aarch64/tlsdesc.c (_dl_tlsdesc_lazy_resolver_fixup): Remove. + (_dl_tlsdesc_resolve_hold_fixup): Likewise. + +2017-11-03 Szabolcs Nagy + + * sysdeps/arm/dl-machine.h (elf_machine_rel): Remove volatile. + +2017-11-03 Szabolcs Nagy + + [BZ #18572] + * sysdeps/arm/dl-machine.h (elf_machine_lazy_rel): Do symbol binding + non-lazily for R_ARM_TLS_DESC. + +2017-11-03 Szabolcs Nagy + + [BZ #17078] + * sysdeps/arm/dl-machine.h (elf_machine_rela): Remove the + R_ARM_TLS_DESC case. + (elf_machine_lazy_rel): Remove the prelink check. + +2017-11-03 Szabolcs Nagy + + * sysdeps/aarch64/dl-machine.h (elf_machine_runtime_setup): Remove + DT_TLSDESC_GOT initialization. + * sysdeps/aarch64/dl-tlsdesc.S (_dl_tlsdesc_return_lazy): Remove. + (_dl_tlsdesc_resolve_rela): Likewise. + (_dl_tlsdesc_resolve_hold): Likewise. + (_dl_tlsdesc_undefweak): Remove ldar. + (_dl_tlsdesc_dynamic): Likewise. + * sysdeps/aarch64/dl-tlsdesc.h (_dl_tlsdesc_return_lazy): Remove. + (_dl_tlsdesc_resolve_rela): Likewise. + (_dl_tlsdesc_resolve_hold): Likewise. + * sysdeps/aarch64/tlsdesc.c (_dl_tlsdesc_resolve_rela_fixup): Remove. + (_dl_tlsdesc_resolve_hold_fixup): Likewise. + (_dl_tlsdesc_resolve_rela): Likewise. + (_dl_tlsdesc_resolve_hold): Likewise. + +2017-11-03 Szabolcs Nagy + + * sysdeps/aarch64/dl-machine.h (elf_machine_lazy_rel): Do symbol + binding and initialization non-lazily for R_AARCH64_TLSDESC. + +2017-11-03 Szabolcs Nagy + + * elf/tlsdeschtab.h (_dl_tls_resolve_early_return_p): Mark unused. + (_dl_tlsdesc_wake_up_held_fixups): Likewise. + +2017-11-02 Joseph Myers + + * wcsmbs/wchar.h [__HAVE_FLOAT16 && __USE_GNU] (wcstof16): + Declare. + [__HAVE_FLOAT32 && __USE_GNU] (wcstof32): Likewise. + [__HAVE_FLOAT64 && __USE_GNU] (wcstof64): Likewise. + [__HAVE_FLOAT32X && __USE_GNU] (wcstof32x): Likewise. + [__HAVE_FLOAT64X && __USE_GNU] (wcstof64x): Likewise. + [__HAVE_FLOAT128X && __USE_GNU] (wcstof128x): Likewise. + [__HAVE_FLOAT16 && __USE_GNU] (wcstof16_l): Likewise. + [__HAVE_FLOAT32 && __USE_GNU] (wcstof32_l): Likewise. + [__HAVE_FLOAT64 && __USE_GNU] (wcstof64_l): Likewise. + [__HAVE_FLOAT32X && __USE_GNU] (wcstof32x_l): Likewise. + [__HAVE_FLOAT64X && __USE_GNU] (wcstof64x_l): Likewise. + [__HAVE_FLOAT128X && __USE_GNU] (wcstof128x_l): Likewise. + +2017-11-02 Mike FABIAN + + [BZ #22382] + * localedata/locales/tpi_PG (LC_TIME): Fix syntax error. + * localedata/locales/tpi_PG: Add standard header. + +2017-11-02 Florian Weimer + + test-errno-linux: quotactl can fail with EPERM in containers. + * sysdeps/unix/sysv/linux/test-errno-linux.c + (LIST, LIST_FORWARD): New macros. + (check_error_in_list): New function. + (test_wrp_rv): Accept list of permitted error codes. + (test_wrp_rv2): Remove. + (test_wrp): Call test_wrp_rv with list of error codes. + (test_wrp2): Accept list of error codes. + (do_test): Adjust. Allow EPERM for quotactl. + +2017-11-02 Florian Weimer + + * stdio-common/bug16.c (do_test): Use array_length. + * stdio-common/errlist.c (_sys_nerr): Likewise. + * stdio-common/printf_fp.c (PRINTF_FP_FETCH): Likewise. + * stdio-common/printf_fphex.c (__printf_fphex): Use array_end. + * stdio-common/psiginfo.c (psiginfo): Use array_length. + * stdio-common/test-vfprintf.c (nlocs): Remove definition. + (do_test): Use array_length. + * stdio-common/tst-fphex.c (do_test): Use array_end, array_length. + * stdio-common/tst-long-dbl-fphex.c (do_test): Use array_length. + * stdio-common/tst-printf-round.c (do_test): Likewise. + * stdio-common/tst-swprintf.c (nbuf): Remove definition. + (CHECK): Use array_length. + * stdio-common/tstdiomisc.c (t3, F): Likewise. + * stdio-common/tstscanf.c (main): Likewise. + * stdio-common/vfprintf.c (process_string_arg): Likewise. + +2017-11-02 Florian Weimer + + Add array_length and array_end macros. + * include/array_length.h: New file. + +2017-11-02 Florian Weimer + + [BZ #22332] + * posix/tst-glob-tilde.c (do_noescape): New variable. + (one_test): Process it. + (do_test): Set do_noescape. Add unescaping test case. + +2017-11-01 Joseph Myers + + * math/complex.h + [(__HAVE_DISTINCT_FLOAT16 || (__HAVE_FLOAT16 && !_LIBC)) + && __GLIBC_USE (IEC_60559_TYPES_EXT)]: Include + with appropriate macros defined and undefined. + [(__HAVE_DISTINCT_FLOAT32 || (__HAVE_FLOAT32 && !_LIBC)) + && __GLIBC_USE (IEC_60559_TYPES_EXT)]: Likewise. + [(__HAVE_DISTINCT_FLOAT64 || (__HAVE_FLOAT64 && !_LIBC)) + && __GLIBC_USE (IEC_60559_TYPES_EXT)]: Likewise. + [(__HAVE_DISTINCT_FLOAT32X || (__HAVE_FLOAT32X && !_LIBC)) + && __GLIBC_USE (IEC_60559_TYPES_EXT)]: Likewise. + [(__HAVE_DISTINCT_FLOAT64X || (__HAVE_FLOAT64X && !_LIBC)) + && __GLIBC_USE (IEC_60559_TYPES_EXT)]: Likewise. + [(__HAVE_DISTINCT_FLOAT128X || (__HAVE_FLOAT128X && !_LIBC)) + && __GLIBC_USE (IEC_60559_TYPES_EXT)]: Likewise. + + * math/complex.h + [(__HAVE_DISTINCT_FLOAT128 || (__HAVE_FLOAT128 && !LIBC)) + && __GLIBC_USE (IEC_60559_TYPES_EXT)]: Move conditional code after + that for long double. Do not condition define and undefine of + _Mdouble_complex_ on [__CFLOAT128]. + +2017-11-01 H.J. Lu + + * sysdeps/i386/sysdep.h: Include instead + of . + (ALIGNARG): Removed. + (ASM_SIZE_DIRECTIVE): Likewise. + (ENTRY): Likewise. + (END): Likewise. + (ENTRY_CHK): Likewise. + (END_CHK): Likewise. + (syscall_error): Likewise. + (mcount): Likewise. + (PSEUDO_END): Likewise. + (L): Likewise. + (atom_text_section): Likewise. + * sysdeps/x86/sysdep.h: New file. + * sysdeps/x86_64/sysdep.h: Include instead + of . + (ALIGNARG): Removed. + (ASM_SIZE_DIRECTIVE): Likewise. + (ENTRY): Likewise. + (END): Likewise. + (ENTRY_CHK): Likewise. + (END_CHK): Likewise. + (syscall_error): Likewise. + (mcount): Likewise. + (PSEUDO_END): Likewise. + (L): Likewise. + (atom_text_section): Likewise. + +2017-10-31 Rafał Lużyński + + * localedata/unicode-gen/gen_unicode_ctype.py (output_head): + category of LC_CTYPE set to "i18n:2012". + * localedata/locales/i18n_ctype: Regenerate. + +2017-10-31 Yury Norov + + * sysdeps/unix/sysv/linux/sigprocmask.c: Remove useless #ifdefs. + * sysdeps/unix/sysv/linux/sigtimedwait.c: Likewise. + * sysdeps/unix/sysv/linux/sigwait.c: Likewise. + * sysdeps/unix/sysv/linux/sigwaitinfo.c: Likewise. + + * sysdeps/unix/sysv/linux/ia64/sigpending.c: Remove file. + * sysdeps/unix/sysv/linux/s390/s390-64/sigpending.c: Likewise. + * sysdeps/unix/sysv/linux/sparc/sparc64/sigpending.c: Likewise. + * sysdeps/unix/sysv/linux/x86_64/sigpending.c: Likewise. + +2017-10-31 Joseph Myers + + * math/complex.h + [__HAVE_FLOAT16 && __GLIBC_USE (IEC_60559_TYPES_EXT)] (CMPLXF16): + New macro. + [__HAVE_FLOAT32 && __GLIBC_USE (IEC_60559_TYPES_EXT)] (CMPLXF32): + Likewise. + [__HAVE_FLOAT64 && __GLIBC_USE (IEC_60559_TYPES_EXT)] (CMPLXF64): + Likewise. + [__HAVE_FLOAT32X && __GLIBC_USE (IEC_60559_TYPES_EXT)] + (CMPLXF32X): Likewise. + [__HAVE_FLOAT64X && __GLIBC_USE (IEC_60559_TYPES_EXT)] + (CMPLXF64X): Likewise. + [__HAVE_FLOAT128X && __GLIBC_USE (IEC_60559_TYPES_EXT)] + (CMPLXF128X): Likewise. + + * math/math.h + [__FLT_EVAL_METHOD__ == 0 || __FLT_EVAL_METHOD__ == 32] + (__MATH_EVAL_FMT2): Define to add 0.0f. + +2017-10-31 Alan Modra + + * sysdeps/powerpc/powerpc64/fpu/multiarch/e_expf-power8.S: Don't + include sysdep.h. + * sysdeps/powerpc/powerpc64/fpu/multiarch/s_ceilf-power5+.S: Likewise. + * sysdeps/powerpc/powerpc64/fpu/multiarch/s_ceilf-ppc64.S: Likewise. + * sysdeps/powerpc/powerpc64/fpu/multiarch/s_cosf-power8.S: Likewise. + * sysdeps/powerpc/powerpc64/fpu/multiarch/s_cosf-ppc64.c: Likewise. + * sysdeps/powerpc/powerpc64/fpu/multiarch/s_finite-power7.S: Likewise. + * sysdeps/powerpc/powerpc64/fpu/multiarch/s_finite-power8.S: Likewise. + * sysdeps/powerpc/powerpc64/fpu/multiarch/s_floor-power5+.S: Likewise. + * sysdeps/powerpc/powerpc64/fpu/multiarch/s_floor-ppc64.S: Likewise. + * sysdeps/powerpc/powerpc64/fpu/multiarch/s_roundf-power5+.S: Likewise. + * sysdeps/powerpc/powerpc64/fpu/multiarch/s_roundf-ppc64.S: Likewise. + * sysdeps/powerpc/powerpc64/fpu/multiarch/s_sinf-power8.S: Likewise. + * sysdeps/powerpc/powerpc64/fpu/multiarch/s_sinf-ppc64.c: Likewise. + * sysdeps/powerpc/powerpc64/fpu/multiarch/s_truncf-power5+.S: Likewise. + * sysdeps/powerpc/powerpc64/fpu/multiarch/s_truncf-ppc64.S: Likewise. + * sysdeps/powerpc/powerpc64/multiarch/memchr-power7.S: Likewise. + * sysdeps/powerpc/powerpc64/multiarch/memchr-power8.S: Likewise. + * sysdeps/powerpc/powerpc64/multiarch/memcmp-power4.S: Likewise. + * sysdeps/powerpc/powerpc64/multiarch/memcmp-power7.S: Likewise. + * sysdeps/powerpc/powerpc64/multiarch/memcmp-power8.S: Likewise. + * sysdeps/powerpc/powerpc64/multiarch/memcpy-a2.S: Likewise. + * sysdeps/powerpc/powerpc64/multiarch/memcpy-cell.S: Likewise. + * sysdeps/powerpc/powerpc64/multiarch/memcpy-power4.S: Likewise. + * sysdeps/powerpc/powerpc64/multiarch/memcpy-power6.S: Likewise. + * sysdeps/powerpc/powerpc64/multiarch/memcpy-power7.S: Likewise. + * sysdeps/powerpc/powerpc64/multiarch/memcpy-ppc64.S: Likewise. + * sysdeps/powerpc/powerpc64/multiarch/memmove-power7.S: Likewise. + * sysdeps/powerpc/powerpc64/multiarch/mempcpy-power7.S: Likewise. + * sysdeps/powerpc/powerpc64/multiarch/memrchr-power7.S: Likewise. + * sysdeps/powerpc/powerpc64/multiarch/memrchr-power8.S: Likewise. + * sysdeps/powerpc/powerpc64/multiarch/memset-power4.S: Likewise. + * sysdeps/powerpc/powerpc64/multiarch/memset-power6.S: Likewise. + * sysdeps/powerpc/powerpc64/multiarch/memset-power7.S: Likewise. + * sysdeps/powerpc/powerpc64/multiarch/memset-power8.S: Likewise. + * sysdeps/powerpc/powerpc64/multiarch/rawmemchr-power7.S: Likewise. + * sysdeps/powerpc/powerpc64/multiarch/stpcpy-power8.S: Likewise. + * sysdeps/powerpc/powerpc64/multiarch/stpncpy-power7.S: Likewise. + * sysdeps/powerpc/powerpc64/multiarch/stpncpy-power8.S: Likewise. + * sysdeps/powerpc/powerpc64/multiarch/strcasecmp-power7.S: Likewise. + * sysdeps/powerpc/powerpc64/multiarch/strcasecmp-power8.S: Likewise. + * sysdeps/powerpc/powerpc64/multiarch/strcasecmp_l-power7.S: Likewise. + * sysdeps/powerpc/powerpc64/multiarch/strcasestr-power8.S: Likewise. + * sysdeps/powerpc/powerpc64/multiarch/strchr-power7.S: Likewise. + * sysdeps/powerpc/powerpc64/multiarch/strchr-power8.S: Likewise. + * sysdeps/powerpc/powerpc64/multiarch/strchr-ppc64.S: Likewise. + * sysdeps/powerpc/powerpc64/multiarch/strchrnul-power7.S: Likewise. + * sysdeps/powerpc/powerpc64/multiarch/strchrnul-power8.S: Likewise. + * sysdeps/powerpc/powerpc64/multiarch/strcmp-power7.S: Likewise. + * sysdeps/powerpc/powerpc64/multiarch/strcmp-power8.S: Likewise. + * sysdeps/powerpc/powerpc64/multiarch/strcmp-power9.S: Likewise. + * sysdeps/powerpc/powerpc64/multiarch/strcmp-ppc64.S: Likewise. + * sysdeps/powerpc/powerpc64/multiarch/strcpy-power8.S: Likewise. + * sysdeps/powerpc/powerpc64/multiarch/strcspn-power8.S: Likewise. + * sysdeps/powerpc/powerpc64/multiarch/strlen-power7.S: Likewise. + * sysdeps/powerpc/powerpc64/multiarch/strlen-power8.S: Likewise. + * sysdeps/powerpc/powerpc64/multiarch/strlen-ppc64.S: Likewise. + * sysdeps/powerpc/powerpc64/multiarch/strncase-power8.S: Likewise. + * sysdeps/powerpc/powerpc64/multiarch/strncmp-power4.S: Likewise. + * sysdeps/powerpc/powerpc64/multiarch/strncmp-power7.S: Likewise. + * sysdeps/powerpc/powerpc64/multiarch/strncmp-power8.S: Likewise. + * sysdeps/powerpc/powerpc64/multiarch/strncmp-power9.S: Likewise. + * sysdeps/powerpc/powerpc64/multiarch/strncmp-ppc64.S: Likewise. + * sysdeps/powerpc/powerpc64/multiarch/strncpy-power7.S: Likewise. + * sysdeps/powerpc/powerpc64/multiarch/strncpy-power8.S: Likewise. + * sysdeps/powerpc/powerpc64/multiarch/strnlen-power7.S: Likewise. + * sysdeps/powerpc/powerpc64/multiarch/strnlen-power8.S: Likewise. + * sysdeps/powerpc/powerpc64/multiarch/strrchr-power7.S: Likewise. + * sysdeps/powerpc/powerpc64/multiarch/strrchr-power8.S: Likewise. + * sysdeps/powerpc/powerpc64/multiarch/strspn-power8.S: Likewise. + * sysdeps/powerpc/powerpc64/multiarch/strstr-power7.S: Likewise. + + * sysdeps/powerpc/powerpc64/fpu/multiarch/s_floorf-ppc64.S: Don't + include sysdep.h and math_ldbl_opt.h. + + * sysdeps/powerpc/powerpc64/fpu/multiarch/s_ceil-power5+.S: Don't + include sysdep.h and math_ldbl_opt.h. Include shlib-compat.h. + * sysdeps/powerpc/powerpc64/fpu/multiarch/s_ceil-ppc64.S: Likewise. + * sysdeps/powerpc/powerpc64/fpu/multiarch/s_copysign-power6.S: Likewise. + * sysdeps/powerpc/powerpc64/fpu/multiarch/s_copysign-ppc64.S: Likewise. + * sysdeps/powerpc/powerpc64/fpu/multiarch/s_floorf-power5+.S: Likewise. + * sysdeps/powerpc/powerpc64/fpu/multiarch/s_isinf-power7.S: Likewise. + * sysdeps/powerpc/powerpc64/fpu/multiarch/s_isinf-power8.S: Likewise. + * sysdeps/powerpc/powerpc64/fpu/multiarch/s_isnan-power5.S: Likewise. + * sysdeps/powerpc/powerpc64/fpu/multiarch/s_isnan-power6.S: Likewise. + * sysdeps/powerpc/powerpc64/fpu/multiarch/s_isnan-power6x.S: Likewise. + * sysdeps/powerpc/powerpc64/fpu/multiarch/s_isnan-power7.S: Likewise. + * sysdeps/powerpc/powerpc64/fpu/multiarch/s_isnan-power8.S: Likewise. + * sysdeps/powerpc/powerpc64/fpu/multiarch/s_isnan-ppc64.S: Likewise. + * sysdeps/powerpc/powerpc64/fpu/multiarch/s_llrint-power6x.S: Likewise. + * sysdeps/powerpc/powerpc64/fpu/multiarch/s_llrint-power8.S: Likewise. + * sysdeps/powerpc/powerpc64/fpu/multiarch/s_llrint-ppc64.S: Likewise. + * sysdeps/powerpc/powerpc64/fpu/multiarch/s_llround-power5+.S: Likewise. + * sysdeps/powerpc/powerpc64/fpu/multiarch/s_llround-power6x.S: Likewise. + * sysdeps/powerpc/powerpc64/fpu/multiarch/s_llround-power8.S: Likewise. + * sysdeps/powerpc/powerpc64/fpu/multiarch/s_llround-ppc64.S: Likewise. + * sysdeps/powerpc/powerpc64/fpu/multiarch/s_llroundf-ppc64.S: Likewise. + * sysdeps/powerpc/powerpc64/fpu/multiarch/s_round-power5+.S: Likewise. + * sysdeps/powerpc/powerpc64/fpu/multiarch/s_round-ppc64.S: Likewise. + * sysdeps/powerpc/powerpc64/fpu/multiarch/s_trunc-power5+.S: Likewise. + * sysdeps/powerpc/powerpc64/fpu/multiarch/s_trunc-ppc64.S: Likewise. + +2017-10-31 Alan Modra + + * sysdeps/powerpc/powerpc64/multiarch/strncase_l-power7.c: Include + string/strncase_l.c, not string/strncase.c. + (USE_IN_EXTENDED_LOCALE_MODEL): Don't define. + (libc_hidden_def): Redefine. + +2017-10-31 Alan Modra + + * sysdeps/powerpc/powerpc64/multiarch/strcasecmp_l-power7.S: + (__STRCMP, STRCMP, __strcasecmp_l): Define. + (__strcasecmp): Don't define. + +2017-10-31 Alan Modra + + * sysdeps/powerpc/powerpc64/multiarch/strcmp-power8.S: Wrap in + IS_IN (libc). + * sysdeps/powerpc/powerpc64/multiarch/strcmp-power9.S: Likewise. + * sysdeps/powerpc/powerpc64/multiarch/strncmp-power8.S: Likewise. + * sysdeps/powerpc/powerpc64/multiarch/strncmp-power9.S: Likewise. + +2017-10-31 Alan Modra + + * sysdeps/powerpc/powerpc64/multiarch/stpncpy-power8.S: Don't define + USE_AS_STPNCPY. + +2017-10-31 Alan Modra + + * sysdeps/powerpc/powerpc64/fpu/multiarch/s_isnan-ppc64.S (hidden_def): + Redefine only when SHARED. + +2017-10-30 Joseph Myers + + * math/math.h [__HAVE_DISTINCT_FLOAT16 || (__HAVE_FLOAT16 && !_LIBC)]: + Include with appropriate macros defined and + undefined. + [__HAVE_DISTINCT_FLOAT32 || (__HAVE_FLOAT32 && !_LIBC)]: Likewise. + [__HAVE_DISTINCT_FLOAT64 || (__HAVE_FLOAT64 && !_LIBC)]: Likewise. + [__HAVE_DISTINCT_FLOAT32X || (__HAVE_FLOAT32X && !_LIBC)]: Likewise. + [__HAVE_DISTINCT_FLOAT64X || (__HAVE_FLOAT64X && !_LIBC)]: Likewise. + [__HAVE_DISTINCT_FLOAT128X || (__HAVE_FLOAT128X && !_LIBC)]: Likewise. + + * math/math.h [!_Mfloat_] (_Mfloat_): Do not define. + [!_Mlong_double_] (_Mlong_double_): Likewise. + [!_Mfloat16_] (_Mfloat16_): Likewise. + [!_Mfloat32_] (_Mfloat32_): Likewise. + [!_Mfloat64_] (_Mfloat64_): Likewise. + [!_Mfloat128_] (_Mfloat128_): Likewise. + [!_Mfloat32x_] (_Mfloat32x_): Likewise. + [!_Mfloat64x_] (_Mfloat64x_): Likewise. + [!_Mfloat128x_] (_Mfloat128x_): Likewise. + (_Mdouble_): Define without indirection through those macros. + * math/complex.h [!_Mfloat_] (_Mfloat_): Do not define. + [!_Mfloat128_] (_Mfloat128_): Likewise. + [_Mlong_double_] (_Mlong_double_): Likewise. + (_Mdouble_): Define without indirection through those macros. + * math/Makefile [$(long-double-fcts) != yes] (math-CPPFLAGS): Do + not add -D_Mlong_double_=double. + * include/math.h [_ISOMAC] (_Mlong_double_): Do not undefine. + * math/test-signgam-finite-c99.c (_Mlong_double_): Likewise. + +2017-10-30 H.J. Lu + + * sysdeps/x86/libc-start.c: Add /* !SHARED */. + +2017-10-30 H.J. Lu + + * sysdeps/x86/libc-start.c: Reformat. + +2017-10-30 H.J. Lu + + [BZ #22353] + * sysdeps/i386/i586/strcpy.S (STRCPY): Use conditional branches. + (1): Renamed to ... + (L(Src0)): This. + (L(Src1)): New. + (L(Src2)): Likewise. + (L(1)): Renamed to ... + (L(Src3)): This. + +2017-10-30 Joseph Myers + + * math/math.h [__HAVE_FLOAT16 && __USE_GNU] (M_Ef16): New macro. + [__HAVE_FLOAT16 && __USE_GNU] (M_LOG2Ef16): Likewise. + [__HAVE_FLOAT16 && __USE_GNU] (M_LOG10Ef16): Likewise. + [__HAVE_FLOAT16 && __USE_GNU] (M_LN2f16): Likewise. + [__HAVE_FLOAT16 && __USE_GNU] (M_LN10f16): Likewise. + [__HAVE_FLOAT16 && __USE_GNU] (M_PIf16): Likewise. + [__HAVE_FLOAT16 && __USE_GNU] (M_PI_2f16): Likewise. + [__HAVE_FLOAT16 && __USE_GNU] (M_PI_4f16): Likewise. + [__HAVE_FLOAT16 && __USE_GNU] (M_1_PIf16): Likewise. + [__HAVE_FLOAT16 && __USE_GNU] (M_2_PIf16): Likewise. + [__HAVE_FLOAT16 && __USE_GNU] (M_2_SQRTPIf16): Likewise. + [__HAVE_FLOAT16 && __USE_GNU] (M_SQRT2f16): Likewise. + [__HAVE_FLOAT16 && __USE_GNU] (M_SQRT1_2f16): Likewise. + [__HAVE_FLOAT32 && __USE_GNU] (M_Ef32): Likewise. + [__HAVE_FLOAT32 && __USE_GNU] (M_LOG2Ef32): Likewise. + [__HAVE_FLOAT32 && __USE_GNU] (M_LOG10Ef32): Likewise. + [__HAVE_FLOAT32 && __USE_GNU] (M_LN2f32): Likewise. + [__HAVE_FLOAT32 && __USE_GNU] (M_LN10f32): Likewise. + [__HAVE_FLOAT32 && __USE_GNU] (M_PIf32): Likewise. + [__HAVE_FLOAT32 && __USE_GNU] (M_PI_2f32): Likewise. + [__HAVE_FLOAT32 && __USE_GNU] (M_PI_4f32): Likewise. + [__HAVE_FLOAT32 && __USE_GNU] (M_1_PIf32): Likewise. + [__HAVE_FLOAT32 && __USE_GNU] (M_2_PIf32): Likewise. + [__HAVE_FLOAT32 && __USE_GNU] (M_2_SQRTPIf32): Likewise. + [__HAVE_FLOAT32 && __USE_GNU] (M_SQRT2f32): Likewise. + [__HAVE_FLOAT32 && __USE_GNU] (M_SQRT1_2f32): Likewise. + [__HAVE_FLOAT64 && __USE_GNU] (M_Ef64): Likewise. + [__HAVE_FLOAT64 && __USE_GNU] (M_LOG2Ef64): Likewise. + [__HAVE_FLOAT64 && __USE_GNU] (M_LOG10Ef64): Likewise. + [__HAVE_FLOAT64 && __USE_GNU] (M_LN2f64): Likewise. + [__HAVE_FLOAT64 && __USE_GNU] (M_LN10f64): Likewise. + [__HAVE_FLOAT64 && __USE_GNU] (M_PIf64): Likewise. + [__HAVE_FLOAT64 && __USE_GNU] (M_PI_2f64): Likewise. + [__HAVE_FLOAT64 && __USE_GNU] (M_PI_4f64): Likewise. + [__HAVE_FLOAT64 && __USE_GNU] (M_1_PIf64): Likewise. + [__HAVE_FLOAT64 && __USE_GNU] (M_2_PIf64): Likewise. + [__HAVE_FLOAT64 && __USE_GNU] (M_2_SQRTPIf64): Likewise. + [__HAVE_FLOAT64 && __USE_GNU] (M_SQRT2f64): Likewise. + [__HAVE_FLOAT64 && __USE_GNU] (M_SQRT1_2f64): Likewise. + [__HAVE_FLOAT32X && __USE_GNU] (M_Ef32x): Likewise. + [__HAVE_FLOAT32X && __USE_GNU] (M_LOG2Ef32x): Likewise. + [__HAVE_FLOAT32X && __USE_GNU] (M_LOG10Ef32x): Likewise. + [__HAVE_FLOAT32X && __USE_GNU] (M_LN2f32x): Likewise. + [__HAVE_FLOAT32X && __USE_GNU] (M_LN10f32x): Likewise. + [__HAVE_FLOAT32X && __USE_GNU] (M_PIf32x): Likewise. + [__HAVE_FLOAT32X && __USE_GNU] (M_PI_2f32x): Likewise. + [__HAVE_FLOAT32X && __USE_GNU] (M_PI_4f32x): Likewise. + [__HAVE_FLOAT32X && __USE_GNU] (M_1_PIf32x): Likewise. + [__HAVE_FLOAT32X && __USE_GNU] (M_2_PIf32x): Likewise. + [__HAVE_FLOAT32X && __USE_GNU] (M_2_SQRTPIf32x): Likewise. + [__HAVE_FLOAT32X && __USE_GNU] (M_SQRT2f32x): Likewise. + [__HAVE_FLOAT32X && __USE_GNU] (M_SQRT1_2f32x): Likewise. + [__HAVE_FLOAT64X && __USE_GNU] (M_Ef64x): Likewise. + [__HAVE_FLOAT64X && __USE_GNU] (M_LOG2Ef64x): Likewise. + [__HAVE_FLOAT64X && __USE_GNU] (M_LOG10Ef64x): Likewise. + [__HAVE_FLOAT64X && __USE_GNU] (M_LN2f64x): Likewise. + [__HAVE_FLOAT64X && __USE_GNU] (M_LN10f64x): Likewise. + [__HAVE_FLOAT64X && __USE_GNU] (M_PIf64x): Likewise. + [__HAVE_FLOAT64X && __USE_GNU] (M_PI_2f64x): Likewise. + [__HAVE_FLOAT64X && __USE_GNU] (M_PI_4f64x): Likewise. + [__HAVE_FLOAT64X && __USE_GNU] (M_1_PIf64x): Likewise. + [__HAVE_FLOAT64X && __USE_GNU] (M_2_PIf64x): Likewise. + [__HAVE_FLOAT64X && __USE_GNU] (M_2_SQRTPIf64x): Likewise. + [__HAVE_FLOAT64X && __USE_GNU] (M_SQRT2f64x): Likewise. + [__HAVE_FLOAT64X && __USE_GNU] (M_SQRT1_2f64x): Likewise. + [__HAVE_FLOAT128X && __USE_GNU]: Use #error. + +2017-10-30 Florian Weimer + + * elf/ldconfig.c (search_dir): Assume that _DIRENT_HAVE_D_TYPE is + always defined. + * io/tst-mkdirat.c (do_test): Likewise. + * io/tst-mkfifoat.c (do_test): Likewise. + * io/tst-mknodat.c (do_test): Likewise. + * locale/programs/charmap-dir.c (charmap_readdir): Likewise. + * locale/programs/locale.c (select_dirs): Likewise. + * locale/programs/locarchive.c (add_locales_to_archive): Likewise. + * posix/bug-glob2.c (my_readdir): Likewise. + * posix/tst-dir.c (main): Likewise. + * posix/tst-glob_lstat_compat.c (my_readdir): Likewise. + * posix/tst-gnuglob-skeleton.c (my_readdir): Likewise. + +2017-10-30 Florian Weimer + + * string/strings.h (ffsl, ffsll): Declare under __USE_MISC, not + just __USE_GNU. + +2017-10-30 Florian Weimer + + * posix/tst-gnuglob-skeleton.c: Renamed from tst-gnuglob.c. + Convert to support/test-driver.c. + (GLOB_FUNC, GLOB_TYPE, GLOBFREE_FUNC, DIRENT_STRUCT, STAT_STRUCT): + New macro parameters. + (PRINTF): Remove macro. Use test_verbose conditionals instead. + * posix/tst-gnuglob.c: New file. + * posix/tst-gnuglob64.c: Likewise. + * posix/Makefile (tests): Add tst-gnuglob64. + +2017-10-30 Michal Ostrowski + + [BZ #19485] + * localedata/locales/csb_PL (LC_TIME): Fix “abmon” for March + and use a better translation for March in “mon”. + * localedata/locales/csb_PL: Use more ASCII to improve the + readability of the source. + +2017-10-30 Mike FABIAN + + [BZ #13953] + * localedata/locales/km_KH: Use ASCII as much + as possible for better readability of the source and + remove useless comments. + * localedata/locales/km_KH (LC_TIME): Remove era stuff, it + was commented out and apparently wrong anyway because it was + using Lao characters. If Buddhist era should be used + for km_KH, a native speaker should write the correct formaat + for Khmer. + * localedata/locales/km_KH (LC_TIME): Add first_weekday 1 + (According to CLDR, the first weekday for Cambodia is Sunday). + * localedata/locales/km_KH (LC_NAME): Remove name_mr and name_mrs + (These were using Lao characters which must be wrong. If we get + the correct data from a native speaker, we could add it back, until + then it is better not to have name_mr and name_mrs at all than + having it wrong). + +2017-10-27 Rafał Lużyński + + * locale/loadlocale.c: Correct size of + _nl_value_type_LC_ arrays. + +2017-10-27 Joseph Myers + + * math/math.h [__HAVE_DISTINCT_FLOAT16 || (__HAVE_FLOAT16 && !_LIBC)]: + Include and + with appropriate macros defined and undefined. + [__HAVE_DISTINCT_FLOAT32 || (__HAVE_FLOAT32 && !_LIBC)]: Likewise. + [__HAVE_DISTINCT_FLOAT64 || (__HAVE_FLOAT64 && !_LIBC)]: Likewise. + [__HAVE_DISTINCT_FLOAT32X || (__HAVE_FLOAT32X && !_LIBC)]: Likewise. + [__HAVE_DISTINCT_FLOAT64X || (__HAVE_FLOAT64X && !_LIBC)]: Likewise. + [__HAVE_DISTINCT_FLOAT128X || (__HAVE_FLOAT128X && !_LIBC)]: Likewise. + +2017-10-27 H.J. Lu + + * sysdeps/i386/fpu/libm-test-ulps: Regenerated for GCC 7 with + "-O2 -march=i586". + +2017-10-27 Mike FABIAN + + * localedata/locales/tt_RU (LC_MESSAGES): Start yesstr and nostr + with lowercase letters to make it agree with CLDR. + +2017-10-27 Mike FABIAN + + [BZ #15260] + * localedata/locales/doi_IN (LC_MESSAGES): Match only for the + first letters of yesstr and nostr in yesexpr and noexpr, + not for the full words. + * localedata/locales/hne_IN (LC_MESSAGES): Likewise. + * localedata/locales/kok_IN (LC_MESSAGES): Likewise. + * localedata/locales/mr_IN (LC_MESSAGES): Likewise. + * localedata/locales/sat_IN (LC_MESSAGES): Likewise. + * localedata/locales/km_KH (LC_MESSAGES): Match also for the + first letters of yesstr and nostr in yesexpr and noexpr, + until now only English was matched in yesexpr and noexpr. + * localedata/locales/tl_PH (LC_MESSAGES): Use “copy "fil_PH"” + instead of “copy "en_US"”. CLDR has yesstr and nostr data for + fil but not for tl. As tl and fil are very similar, using fil + is probably better than using English. + +2017-10-27 Thierry Vignaud + + [BZ #21706] + * localedata/locales/br_FR (LC_MESSAGES): Use all lowercase + in yesstr and nostr. + +2017-10-26 Joseph Myers + + * math/math.h [__HAVE_FLOAT16 && __GLIBC_USE + (IEC_60559_TYPES_EXT)] (SNANF16): New macro. + [__HAVE_FLOAT32 && __GLIBC_USE (IEC_60559_TYPES_EXT)] (SNANF32): + Likewise. + [__HAVE_FLOAT64 && __GLIBC_USE (IEC_60559_TYPES_EXT)] (SNANF64): + Likewise. + [__HAVE_FLOAT32X && __GLIBC_USE (IEC_60559_TYPES_EXT)] (SNANF32X): + Likewise. + [__HAVE_FLOAT64X && __GLIBC_USE (IEC_60559_TYPES_EXT)] (SNANF64X): + Likewise. + [__HAVE_FLOAT128X && __GLIBC_USE (IEC_60559_TYPES_EXT)] + (SNANF128X): Likewise. + + * math/math.h [__HAVE_FLOAT16 && __GLIBC_USE + (IEC_60559_TYPES_EXT)] (HUGE_VAL_F16): New macro. + [__HAVE_FLOAT32 && __GLIBC_USE (IEC_60559_TYPES_EXT)] + (HUGE_VAL_F32): Likewise. + [__HAVE_FLOAT64 && __GLIBC_USE (IEC_60559_TYPES_EXT)] + (HUGE_VAL_F64): Likewise. + [__HAVE_FLOAT32X && __GLIBC_USE (IEC_60559_TYPES_EXT)] + (HUGE_VAL_F32X): Likewise. + [__HAVE_FLOAT64X && __GLIBC_USE (IEC_60559_TYPES_EXT)] + (HUGE_VAL_F64X): Likewise. + [__HAVE_FLOAT128X && __GLIBC_USE (IEC_60559_TYPES_EXT)] + (HUGE_VAL_F128X): Likewise. + +2017-10-26 Thierry Vignaud + + * localedata/locales/br_FR (LC_IDENTIFICATON): Add + Thierry Vignaud as the contact + for the br_FR locale. + +2017-10-26 Thierry Vignaud + + [BZ #21706] + * localedata/locales/br_FR (LC_MESSAGES): Fix nostr. + +2017-10-25 Carlos O'Donell + + * locale/programs/record-status.h: Define globals, and function + prototypes. Move function bodies... + * locale/programs/record-status.c: ... to here. New file. + * iconv/Makefile (iconv_prog-modules): Add record-status. + * locale/Makefile (lib-modules): Likewise. + * iconv/iconv_prog.c: Remove verbose. + * iconv/iconv_prog.h: Include record-status.h (defines verbose). + * locale/programs/charmap.c (charmap_read): If warn_ascii is true then + record a warning about ASCII compatibility. + * locale/programs/ld-monetary.c (monetary_finish): If + warn_int_curr_symbol is true then record a warning about the symbol + not being in our ISO 4217 list. + * locale/programs/locale.c: Include record-status.h. Remove verbose. + * locale/programs/localedef.c: Include ctype.h. Remove delcaration of + verbose, recorded_warning_count, recorded_error_count, and be_quiet. + (OPT_NO_WARN): Define. + (OPT_WARN): Define. + (options): Add entry for --no-warnings, and --warnings. + (set_warnings): New function to enable/disable warnings. + (parse_opt): Call set_warnings for OPT_NO_WARN and OPT_WARN. + * locale/programs/localedef.h: Remove warn_int_curr_symbol. + * localedata/gen-locale.sh: Default flags to `--quiet -c'. + Add `--no-warnings=ascii' to locales using SHIFT_JIS or SHIFT_JIXX0213. + Pass flags to generate_locale. + (generate_locale): Accept new flag argument and pass it to localedef + invocation. + * localedata/Makefile (INSTALL-SUPPORTED-LOCALES): Use + --no-warnings=ascii for SHIFT_JIS and SHIFT_JISX0213 charmaps. + + * localedata/Makefile (test-input-data): Use full file name. + * localedata/da_DK.in: Rename to... + * localedata/da_DK.ISO-8859-1.in: ...this. + * localedata/de_DE.in: Rename to... + * localedata/de_DE.ISO-8859-1.in: ...this. + * localedata/en_US.in: Rename to... + * localedata/en_US.ISO-8859-1.in: ...this. + * localedata/fr_FR.in: Rename to... + * localedata/fr_FR.UTF-8.in: ... this. + * localedata/hr_HR.in: Rename to... + * localedata/hr_HR.ISO-8859-2.in: ...this. + * localedata/hu_HU.in: Rename to... + * localedata/hu_HU.UTF-8.in: ...this. + * localedata/si_LK.in: Rename to... + * localedata/si_LK.UTF-8.in: ...this. + * localedata/sv_SE.in: Rename to... + * localedata/sv_SE.ISO-8859-1.in: ...this. + * localedata/tr_TR.in: Rename to... + * localedata/tr_TR.UTF-8.in: ...this. + * localedata/uk_UA.in: Rename to... + * localedata/uk_UA.UTF-8.in: ...this. + * localedata/sort-test.sh: Test file is locale name with the + suffix. + + * localedata/unicode-gen/Makefile (check_i18n): Rename to + check_i18n_ctype. Depend on i18n_ctype-report. Check i18n_ctype-report + file. + * localedata/locales/i18n_ctype: Regenerate. + * localedata/locales/tr_TR: Likewise. + * localedata/locales/translit_circle: Likewise. + * localedata/locales/translit_cjk_compat: Likewise. + * localedata/locales/translit_combining: Likewise. + * localedata/locales/translit_compat: Likewise. + * localedata/locales/translit_font: Likewise. + * localedata/locales/translit_fraction: Likewise. + +2017-10-25 Rajalakshmi Srinivasaraghavan + + * sysdeps/powerpc/powerpc64/power7/memcpy.S: Replace + lxvd2x/stxvd2x with lvx/stvx. + * sysdeps/powerpc/powerpc64/power7/memmove.S: Likewise. + +2017-10-25 H.J. Lu + + * include/alloc_buffer.h: Replace "if if " with "if " in + comments. + * sysdeps/mips/memcpy.S: Likkewise. + * sysdeps/mips/memset.S: Likewise. + * sysdeps/x86_64/fpu/multiarch/svml_s_sincosf16_core_avx512.S: + Likewise. + * sysdeps/x86_64/fpu/multiarch/svml_s_sincosf4_core_sse4.S: + Likewise. + * sysdeps/x86_64/fpu/multiarch/svml_s_sincosf8_core_avx2.S: + Likewise. + +2017-10-25 Mike FABIAN + + [BZ #15261] + * localedata/locales/cmn_TW (LC_MESSAGES): Add fullwidth yYnN to + yesexpr and noexpr. + * localedata/locales/hak_TW (LC_MESSAGES): Likewise. + * localedata/locales/ko_KR (LC_MESSAGES): Likewise. + * localedata/locales/lzh_TW (LC_MESSAGES): Likewise. + * localedata/locales/nan_TW (LC_MESSAGES): Likewise. + * localedata/locales/zh_CN (LC_MESSAGES): Likewise. + * localedata/locales/zh_HK (LC_MESSAGES): Likewise. + * localedata/locales/zh_TW (LC_MESSAGES): Likewise. + +2017-10-25 Mike FABIAN + + * localedata/locales/am_ET (LC_MESSAGES): Sync with CLDR. + * localedata/locales/az_AZ (LC_MESSAGES): Likewise. + * localedata/locales/el_GR (LC_MESSAGES): Likewise. + * localedata/locales/ha_NG (LC_MESSAGES): Likewise. + * localedata/locales/ln_CD (LC_MESSAGES): Likewise. + * localedata/locales/mfe_MU (LC_MESSAGES): Likewise. + * localedata/locales/ml_IN (LC_MESSAGES): Likewise. + * localedata/locales/mt_MT (LC_MESSAGES): Likewise. + * localedata/locales/os_RU (LC_MESSAGES): Likewise. + * localedata/locales/tg_TJ (LC_MESSAGES): Likewise. + * localedata/locales/tt_RU (LC_MESSAGES): Likewise. + * localedata/locales/wo_SN (LC_MESSAGES): Likewise. + +2017-10-25 Mike FABIAN + + * localedata/locales/aa_ET (LC_MESSAGES): Use ASCII as much + as possible for better readability of the source. + * localedata/locales/af_ZA (LC_MESSAGES): Likewise. + * localedata/locales/ak_GH (LC_MESSAGES): Likewise. + * localedata/locales/am_ET (LC_MESSAGES): Likewise. + * localedata/locales/anp_IN (LC_MESSAGES): Likewise. + * localedata/locales/ar_EG (LC_MESSAGES): Likewise. + * localedata/locales/as_IN (LC_MESSAGES): Likewise. + * localedata/locales/ast_ES (LC_MESSAGES): Likewise. + * localedata/locales/ayc_PE (LC_MESSAGES): Likewise. + * localedata/locales/az_AZ (LC_MESSAGES): Likewise. + * localedata/locales/az_IR (LC_MESSAGES): Likewise. + * localedata/locales/be_BY (LC_MESSAGES): Likewise. + * localedata/locales/be_BY@latin (LC_MESSAGES): Likewise. + * localedata/locales/bem_ZM (LC_MESSAGES): Likewise. + * localedata/locales/ber_MA (LC_MESSAGES): Likewise. + * localedata/locales/bg_BG (LC_MESSAGES): Likewise. + * localedata/locales/bhb_IN (LC_MESSAGES): Likewise. + * localedata/locales/bi_VU (LC_MESSAGES): Likewise. + * localedata/locales/bo_CN (LC_MESSAGES): Likewise. + * localedata/locales/br_FR (LC_MESSAGES): Likewise. + * localedata/locales/bs_BA (LC_MESSAGES): Likewise. + * localedata/locales/ca_ES (LC_MESSAGES): Likewise. + * localedata/locales/ce_RU (LC_MESSAGES): Likewise. + * localedata/locales/crh_UA (LC_MESSAGES): Likewise. + * localedata/locales/cs_CZ (LC_MESSAGES): Likewise. + * localedata/locales/csb_PL (LC_MESSAGES): Likewise. + * localedata/locales/cv_RU (LC_MESSAGES): Likewise. + * localedata/locales/cy_GB (LC_MESSAGES): Likewise. + * localedata/locales/da_DK (LC_MESSAGES): Likewise. + * localedata/locales/de_DE (LC_MESSAGES): Likewise. + * localedata/locales/dv_MV (LC_MESSAGES): Likewise. + * localedata/locales/dz_BT (LC_MESSAGES): Likewise. + * localedata/locales/el_GR (LC_MESSAGES): Likewise. + * localedata/locales/en_CA (LC_MESSAGES): Likewise. + * localedata/locales/en_US (LC_MESSAGES): Likewise. + * localedata/locales/es_ES (LC_MESSAGES): Likewise. + * localedata/locales/et_EE (LC_MESSAGES): Likewise. + * localedata/locales/eu_ES (LC_MESSAGES): Likewise. + * localedata/locales/fa_IR (LC_MESSAGES): Likewise. + * localedata/locales/ff_SN (LC_MESSAGES): Likewise. + * localedata/locales/fi_FI (LC_MESSAGES): Likewise. + * localedata/locales/fil_PH (LC_MESSAGES): Likewise. + * localedata/locales/fo_FO (LC_MESSAGES): Likewise. + * localedata/locales/fr_BE (LC_MESSAGES): Likewise. + * localedata/locales/fr_CH (LC_MESSAGES): Likewise. + * localedata/locales/fr_FR (LC_MESSAGES): Likewise. + * localedata/locales/fr_LU (LC_MESSAGES): Likewise. + * localedata/locales/fur_IT (LC_MESSAGES): Likewise. + * localedata/locales/fy_DE (LC_MESSAGES): Likewise. + * localedata/locales/ga_IE (LC_MESSAGES): Likewise. + * localedata/locales/gd_GB (LC_MESSAGES): Likewise. + * localedata/locales/gl_ES (LC_MESSAGES): Likewise. + * localedata/locales/gu_IN (LC_MESSAGES): Likewise. + * localedata/locales/gv_GB (LC_MESSAGES): Likewise. + * localedata/locales/ha_NG (LC_MESSAGES): Likewise. + * localedata/locales/hak_TW (LC_MESSAGES): Likewise. + * localedata/locales/he_IL (LC_MESSAGES): Likewise. + * localedata/locales/hif_FJ (LC_MESSAGES): Likewise. + * localedata/locales/hne_IN (LC_MESSAGES): Likewise. + * localedata/locales/hr_HR (LC_MESSAGES): Likewise. + * localedata/locales/hsb_DE (LC_MESSAGES): Likewise. + * localedata/locales/ht_HT (LC_MESSAGES): Likewise. + * localedata/locales/hu_HU (LC_MESSAGES): Likewise. + * localedata/locales/hy_AM (LC_MESSAGES): Likewise. + * localedata/locales/ia_FR (LC_MESSAGES): Likewise. + * localedata/locales/id_ID (LC_MESSAGES): Likewise. + * localedata/locales/ig_NG (LC_MESSAGES): Likewise. + * localedata/locales/ik_CA (LC_MESSAGES): Likewise. + * localedata/locales/is_IS (LC_MESSAGES): Likewise. + * localedata/locales/it_CH (LC_MESSAGES): Likewise. + * localedata/locales/it_IT (LC_MESSAGES): Likewise. + * localedata/locales/iu_CA (LC_MESSAGES): Likewise. + * localedata/locales/ja_JP (LC_MESSAGES): Likewise. + * localedata/locales/kk_KZ (LC_MESSAGES): Likewise. + * localedata/locales/kl_GL (LC_MESSAGES): Likewise. + * localedata/locales/ko_KR (LC_MESSAGES): Likewise. + * localedata/locales/ks_IN (LC_MESSAGES): Likewise. + * localedata/locales/ku_TR (LC_MESSAGES): Likewise. + * localedata/locales/kw_GB (LC_MESSAGES): Likewise. + * localedata/locales/ky_KG (LC_MESSAGES): Likewise. + * localedata/locales/lb_LU (LC_MESSAGES): Likewise. + * localedata/locales/lg_UG (LC_MESSAGES): Likewise. + * localedata/locales/li_NL (LC_MESSAGES): Likewise. + * localedata/locales/lij_IT (LC_MESSAGES): Likewise. + * localedata/locales/ln_CD (LC_MESSAGES): Likewise. + * localedata/locales/lo_LA (LC_MESSAGES): Likewise. + * localedata/locales/lt_LT (LC_MESSAGES): Likewise. + * localedata/locales/lv_LV (LC_MESSAGES): Likewise. + * localedata/locales/lzh_TW (LC_MESSAGES): Likewise. + * localedata/locales/mg_MG (LC_MESSAGES): Likewise. + * localedata/locales/mhr_RU (LC_MESSAGES): Likewise. + * localedata/locales/mi_NZ (LC_MESSAGES): Likewise. + * localedata/locales/mk_MK (LC_MESSAGES): Likewise. + * localedata/locales/ml_IN (LC_MESSAGES): Likewise. + * localedata/locales/mn_MN (LC_MESSAGES): Likewise. + * localedata/locales/ms_MY (LC_MESSAGES): Likewise. + * localedata/locales/mt_MT (LC_MESSAGES): Likewise. + * localedata/locales/my_MM (LC_MESSAGES): Likewise. + * localedata/locales/nan_TW (LC_MESSAGES): Likewise. + * localedata/locales/nan_TW@latin (LC_MESSAGES): Likewise. + * localedata/locales/nb_NO (LC_MESSAGES): Likewise. + * localedata/locales/nds_DE (LC_MESSAGES): Likewise. + * localedata/locales/nds_NL (LC_MESSAGES): Likewise. + * localedata/locales/ne_NP (LC_MESSAGES): Likewise. + * localedata/locales/nhn_MX (LC_MESSAGES): Likewise. + * localedata/locales/niu_NU (LC_MESSAGES): Likewise. + * localedata/locales/nl_NL (LC_MESSAGES): Likewise. + * localedata/locales/nn_NO (LC_MESSAGES): Likewise. + * localedata/locales/nr_ZA (LC_MESSAGES): Likewise. + * localedata/locales/nso_ZA (LC_MESSAGES): Likewise. + * localedata/locales/oc_FR (LC_MESSAGES): Likewise. + * localedata/locales/om_ET (LC_MESSAGES): Likewise. + * localedata/locales/or_IN (LC_MESSAGES): Likewise. + * localedata/locales/os_RU (LC_MESSAGES): Likewise. + * localedata/locales/pa_IN (LC_MESSAGES): Likewise. + * localedata/locales/pa_PK (LC_MESSAGES): Likewise. + * localedata/locales/pap_AW (LC_MESSAGES): Likewise. + * localedata/locales/pap_CW (LC_MESSAGES): Likewise. + * localedata/locales/pl_PL (LC_MESSAGES): Likewise. + * localedata/locales/ps_AF (LC_MESSAGES): Likewise. + * localedata/locales/pt_BR (LC_MESSAGES): Likewise. + * localedata/locales/quz_PE (LC_MESSAGES): Likewise. + * localedata/locales/raj_IN (LC_MESSAGES): Likewise. + * localedata/locales/ro_RO (LC_MESSAGES): Likewise. + * localedata/locales/ru_RU (LC_MESSAGES): Likewise. + * localedata/locales/ru_UA (LC_MESSAGES): Likewise. + * localedata/locales/rw_RW (LC_MESSAGES): Likewise. + * localedata/locales/sa_IN (LC_MESSAGES): Likewise. + * localedata/locales/sc_IT (LC_MESSAGES): Likewise. + * localedata/locales/sd_IN@devanagari (LC_MESSAGES): Likewise. + * localedata/locales/se_NO (LC_MESSAGES): Likewise. + * localedata/locales/sgs_LT (LC_MESSAGES): Likewise. + * localedata/locales/si_LK (LC_MESSAGES): Likewise. + * localedata/locales/sk_SK (LC_MESSAGES): Likewise. + * localedata/locales/sl_SI (LC_MESSAGES): Likewise. + * localedata/locales/sm_WS (LC_MESSAGES): Likewise. + * localedata/locales/so_DJ (LC_MESSAGES): Likewise. + * localedata/locales/sq_AL (LC_MESSAGES): Likewise. + * localedata/locales/sr_RS (LC_MESSAGES): Likewise. + * localedata/locales/sr_RS@latin (LC_MESSAGES): Likewise. + * localedata/locales/ss_ZA (LC_MESSAGES): Likewise. + * localedata/locales/st_ZA (LC_MESSAGES): Likewise. + * localedata/locales/sv_SE (LC_MESSAGES): Likewise. + * localedata/locales/sw_KE (LC_MESSAGES): Likewise. + * localedata/locales/szl_PL (LC_MESSAGES): Likewise. + * localedata/locales/tcy_IN (LC_MESSAGES): Likewise. + * localedata/locales/tg_TJ (LC_MESSAGES): Likewise. + * localedata/locales/th_TH (LC_MESSAGES): Likewise. + * localedata/locales/the_NP (LC_MESSAGES): Likewise. + * localedata/locales/ti_ER (LC_MESSAGES): Likewise. + * localedata/locales/tk_TM (LC_MESSAGES): Likewise. + * localedata/locales/tn_ZA (LC_MESSAGES): Likewise. + * localedata/locales/to_TO (LC_MESSAGES): Likewise. + * localedata/locales/tr_TR (LC_MESSAGES): Likewise. + * localedata/locales/ts_ZA (LC_MESSAGES): Likewise. + * localedata/locales/tt_RU (LC_MESSAGES): Likewise. + * localedata/locales/tt_RU@iqtelif (LC_MESSAGES): Likewise. + * localedata/locales/uk_UA (LC_MESSAGES): Likewise. + * localedata/locales/unm_US (LC_MESSAGES): Likewise. + * localedata/locales/ur_IN (LC_MESSAGES): Likewise. + * localedata/locales/ur_PK (LC_MESSAGES): Likewise. + * localedata/locales/uz_UZ (LC_MESSAGES): Likewise. + * localedata/locales/uz_UZ@cyrillic (LC_MESSAGES): Likewise. + * localedata/locales/ve_ZA (LC_MESSAGES): Likewise. + * localedata/locales/vi_VN (LC_MESSAGES): Likewise. + * localedata/locales/wa_BE (LC_MESSAGES): Likewise. + * localedata/locales/wo_SN (LC_MESSAGES): Likewise. + * localedata/locales/xh_ZA (LC_MESSAGES): Likewise. + * localedata/locales/yi_US (LC_MESSAGES): Likewise. + * localedata/locales/yo_NG (LC_MESSAGES): Likewise. + * localedata/locales/yue_HK (LC_MESSAGES): Likewise. + * localedata/locales/zh_CN (LC_MESSAGES): Likewise. + * localedata/locales/zh_HK (LC_MESSAGES): Likewise. + * localedata/locales/zh_TW (LC_MESSAGES): Likewise. + * localedata/locales/zu_ZA (LC_MESSAGES): Likewise. + +2017-10-25 Mike FABIAN + + * localedata/locales/brx_IN (LC_MESSAGES): Fix yesexpr and noexpr + (Use first letters of yesstr and nostr correctly instead of using + full words). + +2017-10-25 Mike FABIAN + + * localedata/locales/ta_IN (LC_MESSAGES): Fix yesexpr and noexpr + (Use first letters of yesstr and nostr correctly). + +2017-10-25 Mike FABIAN + + * localedata/locales/hi_IN (LC_MESSAGES): In yesexpr and noexpr, + also check for the first characters of yesstr and nostr. + * localedata/locales/kn_IN (LC_MESSAGES): Likewise. + * localedata/locales/ks_IN@devanagari (LC_MESSAGES): Likewise. + +2017-10-25 Mike FABIAN + + * localedata/locales/cmn_TW (LC_MESSAGES): In yesexpr and noexpr, + also check for Chinese characters. + +2017-10-25 Mike FABIAN + + * localedata/locales/chr_US (LC_MESSAGES): In yesexpr and noexpr, + match also for the contents of yesstr and nostr. As the first letter + of yesstr and nostr is equal, checking only for the first letter + is not enough. + +2017-10-25 Mike FABIAN + + * localedata/locales/ber_DZ (LC_MESSAGES): Use copy "kab_DZ", + it is the same according to Belkacem Mohammed . + +2017-10-25 Mike FABIAN + + * localedata/locales/kab_DZ (LC_IDENTIFICATION): Add e-mail + of main contributor. + +2017-10-25 Mike FABIAN + + * localedata/locales/zh_SG (LC_MESSAGES): Use copy "zh_CN" + instead of using English. + +2017-10-25 Mike FABIAN + + * localedata/locales/ug_CN (LC_MESSAGES): Fix noexpr and yesexpr + by including the first letters of nostr and yesexpr in the regexp. + Also make it more readable by using ASCII where possible. + +2017-10-25 Mike FABIAN + + * localedata/locales/te_IN (LC_MESSAGES): Fix noexpr by including + the first letter of nostr in the regexp. It agrees with CLDR now. + Also make it more readable by using ASCII where possible. + +2017-10-24 Mike FABIAN + + * localedata/locales/km_KH (LC_MESSAGES): Fix yestr and nostr. + The yesstr and nostr apparently came from CLDR. And CLDR has a bug there: + these strings contain a U+17D6 (which somewhat looks like a colon) + instead of a real colon to separate the full words for “yes” + and “no” from the single letter responses. + +2017-10-24 Mike FABIAN + + * localedata/locales/ka_GE (LC_MESSAGES): Fix yesexp to make + it agree with CLDR (include the first letter of yesstr). + Also make it more readable by using ASCII where possible. + +2017-10-24 Mike FABIAN + + * localedata/locales/mr_IN (LC_MESSAGES): Fix yesstr and nostr + and improve yesexpr and noexpr. The yesstr and nostr apparently + came from CLDR. And CLDR has a bug there: these strings contain + a U+0903 (which looks like a colon) instead of a real colon + to separate the full words for “yes” and “no” from the single + letter responses. + +2017-10-24 Mike FABIAN + + * localedata/locales/bn_BD (LC_MESSAGES): Use only the first + letters of the full yesstr and nostr in yesexpr and noexpr. + +2017-10-24 Mike FABIAN + + * localedata/locales/an_ES (LC_MESSAGES): Add yesstr and nostr. + * localedata/locales/an_ES (LC_ADDRESS): Add lang_term and lang_lib. + * localedata/locales/an_ES: Make source more readable by using ASCII + where possible. + +2017-10-24 Mike FABIAN + + [BZ #20952] + * localedata/locales/yuw_PG: New file. + * localedata/SUPPORTED: Add yuw_PG/UTF-8. + * locale/iso-639.def: Add Yau (Uruwa). + +2017-10-23 Wilco Dijkstra + + * malloc/malloc.c (_int_malloc): Add SINGLE_THREAD_P path. + +2017-10-23 Wilco Dijkstra + + * malloc/malloc.c (__libc_malloc): Add SINGLE_THREAD_P path. + (__libc_realloc): Likewise. + (_mid_memalign): Likewise. + (__libc_calloc): Likewise. + +2017-10-23 Mike FABIAN + + * localedata/locales/tpi_PG (LC_MESSAGES): Fix yesexpr and noexpr + by adding the generic +1 and -0 as in all other locales. + * localedata/locales/tpi_PG (LC_TIME): Fix some typos in the month and + day names and make it more readable by using ASCII where possible. + +2017-10-24 Joseph Myers + + * sysdeps/x86/fpu/fix-fp-int-compare-invalid.h + (FIX_COMPARE_INVALID): Define to 0 if [__GNUC_PREREQ (8, 0)]. + +2017-10-23 Adhemerval Zanella + + * sysdeps/unix/sysv/linux/spawni.c (__spawnix): Use 0 instead of + WNOHANG in waitpid call. + +2017-10-23 Siddhesh Poyarekar + + * manual/conf.texi (_SC_LEVEL1_DCACHE_LINESIZE, + _SC_LEVEL1_ICACHE_LINESIZE): Document aarch64 caveat. + + * manual/conf.texi (_SC_LEVEL1_ICACHE_SIZE, + _SC_LEVEL1_ICACHE_ASSOC, _SC_LEVEL1_ICACHE_LINESIZE, + _SC_LEVEL1_DCACHE_SIZE, _SC_LEVEL1_DCACHE_ASSOC, + _SC_LEVEL1_DCACHE_LINESIZE, _SC_LEVEL2_CACHE_SIZE, + _SC_LEVEL2_CACHE_ASSOC, _SC_LEVEL2_CACHE_LINESIZE, + _SC_LEVEL3_CACHE_SIZE, _SC_LEVEL3_CACHE_ASSOC, + _SC_LEVEL3_CACHE_LINESIZE, _SC_LEVEL4_CACHE_SIZE, + _SC_LEVEL4_CACHE_ASSOC, _SC_LEVEL4_CACHE_LINESIZE): New + variables. + +2017-10-23 Michael Collison + + * sysdeps/aarch64/fpu/e_sqrt.c (ieee754_sqrt): Replace asm statements + with __builtin_sqrt. + * sysdeps/aarch64/fpu/e_sqrtf.c (ieee754_sqrtf): Replace asm statements + with __builtin_sqrtf. + * sysdeps/aarch64/fpu/s_ceil.c (__ceil): Replace asm statements + with __builtin_ceil. + * sysdeps/aarch64/fpu/s_ceilf.c (__ceilf): Replace asm statements + with __builtin_ceilf. + * sysdeps/aarch64/fpu/s_floor.c (__floor): Replace asm statements + with __builtin_floor. + * sysdeps/aarch64/fpu/s_floorf.c (__floorf): Replace asm statements + with __builtin_floorf. + * sysdeps/aarch64/fpu/s_fma.c (__fma): Replace asm statements + with __builtin_fma. + * sysdeps/aarch64/fpu/s_fmaf.c (__fmaf): Replace asm statements + with __builtin_fmaf. + * sysdeps/aarch64/fpu/s_fmax.c (__fmax): Replace asm statements + with __builtin_fmax. + * sysdeps/aarch64/fpu/s_fmaxf.c (__fmaxf): Replace asm statements + with __builtin_fmaxf. + * sysdeps/aarch64/fpu/s_fmin.c (__fmin): Replace asm statements + with __builtin_fmin. + * sysdeps/aarch64/fpu/s_fminf.c (__fminf): Replace asm statements + with __builtin_fminf. + * sysdeps/aarch64/fpu/s_frint.c: Delete file. + * sysdeps/aarch64/fpu/s_frintf.c: Delete file. + * sysdeps/aarch64/fpu/s_llrint.c (__llrint): Replace asm statements + with builtin_rint and conversion to int. + * sysdeps/aarch64/fpu/s_llrintf.c (__llrintf): Likewise. + * sysdeps/aarch64/fpu/s_llround.c (__llround): Replace asm statements + with builtin_llround. + * sysdeps/aarch64/fpu/s_llroundf.c (__llroundf): Likewise. + * sysdeps/aarch64/fpu/s_lrint.c (__lrint): Replace asm statements + with builtin_rint and conversion to long int. + * sysdeps/aarch64/fpu/s_lrintf.c (__lrintf): Likewise. + * sysdeps/aarch64/fpu/s_lround.c (__lround): Replace asm statements + with builtin_lround. + * sysdeps/aarch64/fpu/s_lroundf.c (__lroundf): Replace asm statements + with builtin_lroundf. + * sysdeps/aarch64/fpu/s_nearbyint.c (__nearbyint): Replace asm + statements with __builtin_nearbyint. + * sysdeps/aarch64/fpu/s_nearbyintf.c (__nearbyintf): Replace asm + statements with __builtin_nearbyintf. + * sysdeps/aarch64/fpu/s_rint.c (__rint): Replace asm statements + with __builtin_rint. + * sysdeps/aarch64/fpu/s_rintf.c (__rintf): Replace asm statements + with __builtin_rintf. + * sysdeps/aarch64/fpu/s_round.c (__round): Replace asm statements + with __builtin_round. + * sysdeps/aarch64/fpu/s_roundf.c (__roundf): Replace asm statements + with __builtin_roundf. + * sysdeps/aarch64/fpu/s_trunc.c (__trunc): Replace asm statements + with __builtin_trunc. + * sysdeps/aarch64/fpu/s_truncf.c (__truncf): Replace asm statements + with __builtin_truncf. + * sysdeps/aarch64/fpu/Makefile: Build e_sqrt[f].c with -fno-math-errno, + and s_l[l]round[f].c too. + +2017-10-23 Alan Modra + + * sysdeps/powerpc/powerpc64/power8/strncpy.S: Move LR cfi. + Adjust stack after restoring regs. Add missing LR cfi_restore. + +2017-10-23 Alan Modra + + * sysdeps/powerpc/powerpc64/power7/strncpy.S: Decrease FRAMESIZE. + Move LR save and frame setup/teardown and LR restore to + immediately around memset call. Provide cfi. + +2017-10-22 H.J. Lu + + * sysdeps/i386/fpu/e_powf.S: Removed. + * sysdeps/i386/fpu/e_powf_log2_data.c: Likewise. + * sysdeps/i386/fpu/w_powf.c: Likewise. + * sysdeps/i386/fpu/libm-test-ulps: Updated for generic e_powf.c. + * sysdeps/i386/i686/fpu/multiarch/libm-test-ulps: Likewise. + * sysdeps/i386/i686/fpu/multiarch/Makefile (libm-sysdep_routines): + Add e_powf-sse2. + (CFLAGS-e_powf-sse2.c): New. + * sysdeps/i386/i686/fpu/multiarch/e_powf-sse2.c: New file. + * sysdeps/i386/i686/fpu/multiarch/e_powf.c: Likewise. + +2017-10-22 H.J. Lu + + * sysdeps/i386/fpu/e_log2f.S: Removed. + * sysdeps/i386/fpu/e_log2f_data.c: Likewise. + * sysdeps/i386/fpu/w_log2f.c: Likewise. + * sysdeps/i386/fpu/libm-test-ulps: Updated for generic e_log2f.c. + * sysdeps/i386/i686/fpu/multiarch/libm-test-ulps: Likewise. + * sysdeps/i386/i686/fpu/multiarch/Makefile (libm-sysdep_routines): + Add e_log2f-sse2. + (CFLAGS-e_log2f-sse2.c): New. + * sysdeps/i386/i686/fpu/multiarch/e_log2f-sse2.c: New file. + * sysdeps/i386/i686/fpu/multiarch/e_log2f.c: Likewise. + +2017-10-22 H.J. Lu + + * sysdeps/x86_64/fpu/multiarch/Makefile (libm-sysdep_routines): + Add e_powf-fma. + (CFLAGS-e_powf-fma.c): New. + * sysdeps/x86_64/fpu/multiarch/e_powf-fma.c: New file. + * sysdeps/x86_64/fpu/multiarch/e_powf.c: Likewise. + +2017-10-22 H.J. Lu + + * sysdeps/x86_64/fpu/multiarch/Makefile (libm-sysdep_routines): + Add e_log2f-fma. + (CFLAGS-e_log2f-fma.c): New. + * sysdeps/x86_64/fpu/multiarch/e_log2f-fma.c: New file. + * sysdeps/x86_64/fpu/multiarch/e_log2f.c: Likewise. + +2017-10-22 H.J. Lu + + * sysdeps/x86_64/fpu/multiarch/Makefile (libm-sysdep_routines): + Add e_logf-fma. + (CFLAGS-e_logf-fma.c): New. + * sysdeps/x86_64/fpu/multiarch/e_logf-fma.c: New file. + * sysdeps/x86_64/fpu/multiarch/e_logf.c: Likewise. + +2017-10-22 H.J. Lu + + * sysdeps/i386/fpu/e_logf.S: Removed. + * sysdeps/i386/fpu/e_logf_data.c: Likewise. + * sysdeps/i386/fpu/w_logf.c: Likewise. + * sysdeps/i386/i686/fpu/e_logf.S: Likewise. + * sysdeps/i386/fpu/libm-test-ulps: Updated for generic e_logf.c. + * sysdeps/i386/i686/fpu/multiarch/libm-test-ulps: Likewise. + * sysdeps/i386/i686/fpu/multiarch/Makefile (libm-sysdep_routines): + Add e_logf-sse2. + (CFLAGS-e_logf-sse2.c): New. + * sysdeps/i386/i686/fpu/multiarch/e_logf-sse2.c: New file. + * sysdeps/i386/i686/fpu/multiarch/e_logf.c: Likewise. + +2017-10-22 H.J. Lu + + * sysdeps/i386/fpu/e_exp2f.S: Removed. + * sysdeps/i386/fpu/w_exp2f.c: Likewise. + * sysdeps/i386/fpu/libm-test-ulps: Updated for generic e_exp2f.c. + * sysdeps/i386/i686/fpu/multiarch/libm-test-ulps: Likewise. + * sysdeps/i386/i686/fpu/multiarch/Makefile (libm-sysdep_routines): + Add e_exp2f-sse2. + (CFLAGS-e_exp2f-sse2.c): New. + * sysdeps/i386/i686/fpu/multiarch/e_exp2f-sse2.c: New file. + * sysdeps/i386/i686/fpu/multiarch/e_exp2f.c: Likewise. + +2017-10-22 H.J. Lu + + * sysdeps/x86_64/fpu/multiarch/Makefile (libm-sysdep_routines): + Add e_exp2f-fma. + (CFLAGS-e_exp2f-fma.c): New. + * sysdeps/x86_64/fpu/multiarch/e_exp2f-fma.c: New file. + * sysdeps/x86_64/fpu/multiarch/e_exp2f.c: Likewise. + +2017-10-22 H.J. Lu + + * sysdeps/i386/fpu/e_exp2f_data.c: Removed. + * sysdeps/i386/fpu/e_expf.S: Likewise. + * sysdeps/i386/fpu/math_errf.c: Likewise. + * sysdeps/i386/fpu/w_expf.c: Likewise. + * sysdeps/i386/i686/fpu/multiarch/e_expf-ia32.S: Likewise. + * sysdeps/i386/i686/fpu/multiarch/e_expf-sse2.S: Likewise. + * sysdeps/i386/i686/fpu/multiarch/w_expf.c: Likewise. + * sysdeps/i386/fpu/libm-test-ulps: Updated for generic e_expf.c. + * sysdeps/i386/i686/fpu/multiarch/libm-test-ulps: Likewise. + * sysdeps/i386/i686/fpu/multiarch/Makefile (libm-sysdep_routines): + Remove e_expf-ia32. + (CFLAGS-e_expf-sse2.c): New. + * sysdeps/i386/i686/fpu/multiarch/e_expf-sse2.c: New file. + * sysdeps/i386/i686/fpu/multiarch/e_expf.c: Rewritten. + +2017-10-22 H.J. Lu + + * sysdeps/x86_64/fpu/e_expf.S: Removed. + * sysdeps/x86_64/fpu/multiarch/e_expf-fma.S: Likewise. + * sysdeps/x86_64/fpu/w_expf.c: Likewise. + * sysdeps/x86_64/fpu/libm-test-ulps: Updated for generic + e_expf.c. + * sysdeps/x86_64/fpu/multiarch/Makefile (CFLAGS-e_expf-fma.c): + New. + * sysdeps/x86_64/fpu/multiarch/e_expf-fma.c: New file. + * sysdeps/x86_64/fpu/multiarch/e_expf.c (__redirect_ieee754_expf): + Renamed to ... + (__redirect_expf): This. + (SYMBOL_NAME): Changed to expf. + (__ieee754_expf): Renamed to ... + (__expf): This. + (__GI___expf): This. + (__ieee754_expf): Add strong_alias. + (__expf_finite): Likewise. + (__expf): New. + Include . + +2017-10-22 Paul Eggert + + [BZ #22332] + * posix/glob.c (__glob): Fix buffer overflow during GLOB_TILDE + unescaping. + +2017-10-21 Florian Weimer + + * posix/Makefile (tests): Add tst-glob-tilde. + (tests-special): Add tst-glob-tilde-mem.out + (tst-glob-tilde-ENV): Set MALLOC_TRACE. + (tst-glob-tilde-mem.out): Add mtrace check. + * posix/tst-glob-tilde.c: New file. + +2017-10-20 Joseph Myers + + * bits/floatn-common.h: New file. + * math/Makefile (headers): Add bits/floatn-common.h. + * bits/floatn.h: Include . + * sysdeps/ia64/bits/floatn.h: Likewise. + * sysdeps/ieee754/ldbl-128/bits/floatn.h: Likewise. + * sysdeps/mips/ieee754/bits/floatn.h: Likewise. + * sysdeps/powerpc/bits/floatn.h: Likewise. + * sysdeps/x86/bits/floatn.h: Likewise. + +2017-10-20 Adhemerval Zanella + + * configure.ac (libc_cv_gcc_incompatbile_alias): New define: + indicates whether compiler emits an warning for alias for + functions with incompatible types. + + [BZ #22273] + * sysdeps/unix/sysv/linux/spawni.c (__spawnix): Handle the case where + the auxiliary process is terminated by a signal before calling _exit + or execve. + +2017-10-20 H.J. Lu + + [BZ #21265] + * sysdeps/x86/cpu-features-offsets.sym (XSAVE_STATE_SIZE_OFFSET): + New. + * sysdeps/x86/cpu-features.c: Include . + (get_common_indeces): Set xsave_state_size, xsave_state_full_size + and bit_arch_XSAVEC_Usable if needed. + (init_cpu_features): Remove bit_arch_Use_dl_runtime_resolve_slow + and bit_arch_Use_dl_runtime_resolve_opt. + * sysdeps/x86/cpu-features.h (bit_arch_Use_dl_runtime_resolve_opt): + Removed. + (bit_arch_Use_dl_runtime_resolve_slow): Likewise. + (bit_arch_Prefer_No_AVX512): Updated. + (bit_arch_MathVec_Prefer_No_AVX512): Likewise. + (bit_arch_XSAVEC_Usable): New. + (STATE_SAVE_OFFSET): Likewise. + (STATE_SAVE_MASK): Likewise. + [__ASSEMBLER__]: Include . + (cpu_features): Add xsave_state_size and xsave_state_full_size. + (index_arch_Use_dl_runtime_resolve_opt): Removed. + (index_arch_Use_dl_runtime_resolve_slow): Likewise. + (index_arch_XSAVEC_Usable): New. + * sysdeps/x86/cpu-tunables.c (TUNABLE_CALLBACK (set_hwcaps)): + Support XSAVEC_Usable. Remove Use_dl_runtime_resolve_slow. + * sysdeps/x86_64/Makefile (tst-x86_64-1-ENV): New if tunables + is enabled. + * sysdeps/x86_64/dl-machine.h (elf_machine_runtime_setup): + Replace _dl_runtime_resolve_sse, _dl_runtime_resolve_avx, + _dl_runtime_resolve_avx_slow, _dl_runtime_resolve_avx_opt, + _dl_runtime_resolve_avx512 and _dl_runtime_resolve_avx512_opt + with _dl_runtime_resolve_fxsave, _dl_runtime_resolve_xsave and + _dl_runtime_resolve_xsavec. + * sysdeps/x86_64/dl-trampoline.S (DL_RUNTIME_UNALIGNED_VEC_SIZE): + Removed. + (DL_RUNTIME_RESOLVE_REALIGN_STACK): Check STATE_SAVE_ALIGNMENT + instead of VEC_SIZE. + (REGISTER_SAVE_BND0): Removed. + (REGISTER_SAVE_BND1): Likewise. + (REGISTER_SAVE_BND3): Likewise. + (REGISTER_SAVE_RAX): Always defined to 0. + (VMOV): Removed. + (_dl_runtime_resolve_avx): Likewise. + (_dl_runtime_resolve_avx_slow): Likewise. + (_dl_runtime_resolve_avx_opt): Likewise. + (_dl_runtime_resolve_avx512): Likewise. + (_dl_runtime_resolve_avx512_opt): Likewise. + (_dl_runtime_resolve_sse): Likewise. + (_dl_runtime_resolve_sse_vex): Likewise. + (USE_FXSAVE): New. + (_dl_runtime_resolve_fxsave): Likewise. + (USE_XSAVE): Likewise. + (_dl_runtime_resolve_xsave): Likewise. + (USE_XSAVEC): Likewise. + (_dl_runtime_resolve_xsavec): Likewise. + * sysdeps/x86_64/dl-trampoline.h (_dl_runtime_resolve_avx512): + Removed. + (_dl_runtime_resolve_avx512_opt): Likewise. + (_dl_runtime_resolve_avx): Likewise. + (_dl_runtime_resolve_avx_opt): Likewise. + (_dl_runtime_resolve_sse): Likewise. + (_dl_runtime_resolve_sse_vex): Likewise. + (_dl_runtime_resolve_fxsave): New. + (_dl_runtime_resolve_xsave): Likewise. + (_dl_runtime_resolve_xsavec): Likewise. + +2017-10-20 Paul Eggert + + [BZ #22320] + CVE-2017-15670 + * posix/glob.c (__glob): Fix one-byte overflow. + +2017-10-20 Wilco Dijkstra + + * malloc/malloc.c (sysdep-cancel.h): Add include. + +2017-10-20 Wilco Dijkstra + + * malloc/malloc.c (_int_free): Add SINGLE_THREAD_P fast paths. + +2017-10-20 Will Hawkins + + * resolv/Makefile [$(build-shared)$(have-thread-library) == yesyes] + (tests): Remove $(objpfx)ga_test depdendency. + * resolv/ga_test.c: Remove file. + +2017-10-20 Mike FABIAN + + [BZ #18812] + * localedata/SUPPORTED: Add kab_DZ/UTF-8. + * localedata/locales/kab_DZ: New file. + +2017-10-20 H.J. Lu + + * sysdeps/m68k/dl-machine.h (elf_machine_load_address): Use + _dl_relocate_static_pie instead of _dl_start to compute load + address in static PIE. + +2017-10-20 H.J. Lu + + * sysdeps/m68k/start.S (_start): Check PIC instead of SHARED. + +2017-10-20 Mike FABIAN + + [BZ #13605] + * localedata/SUPPORTED: Add shn_MM/UTF-8. + * localedata/locales/shn_MM: New file. + +2017-10-20 Florian Weimer + + [BZ #22321] + sysconf: Fix missing definition of UIO_MAXIOV on Linux. + * sysdeps/posix/sysconf.c: Include . + * sysdeps/unix/sysv/linux/Makefile (tests): Add tst-sysconf-iov_max. + (tst-sysconf-iov_max): Link with tst-sysconf-iov_max-uapi.o. + * sysdeps/unix/sysv/linux/tst-sysconf-iov_max.c: New file. + * sysdeps/unix/sysv/linux/tst-sysconf-iov_max-uapi.c: Likewise. + +2017-10-19 H.J. Lu + + * sysdeps/i386/fpu/libm-test-ulps: Regenerated. + +2017-10-19 Joseph Myers + + * sysdeps/mips/ieee754/bits/floatn.h: New file. + + [BZ #22322] + * sysdeps/mips/bits/long-double.h: Move to .... + * sysdeps/mips/ieee754/bits/long-double.h: ... here. + +2017-10-19 Wilco Dijkstra + + * malloc/malloc.c (_int_free): Fix deadlock bug in consistency check. + +2017-10-19 Valery Reznic + H.J. Lu + + [BZ #22299] + * sysdeps/x86/cpu-features.c (init_cpu_features): Don't set + GLRO(dl_platform) to NULL. + * sysdeps/x86_64/Makefile (tests): Add tst-platform-1. + (modules-names): Add tst-platformmod-1 and + x86_64/tst-platformmod-2. + (CFLAGS-tst-platform-1.c): New. + (CFLAGS-tst-platformmod-1.c): Likewise. + (CFLAGS-tst-platformmod-2.c): Likewise. + (LDFLAGS-tst-platformmod-2.so): Likewise. + ($(objpfx)tst-platform-1): Likewise. + ($(objpfx)tst-platform-1.out): Likewise. + (tst-platform-1-ENV): Likewise. + ($(objpfx)x86_64/tst-platformmod-2.os): Likewise. + * sysdeps/x86_64/tst-platform-1.c: New file. + * sysdeps/x86_64/tst-platformmod-1.c: Likewise. + * sysdeps/x86_64/tst-platformmod-2.c: Likewise. + +2017-10-19 Mike FABIAN + + [BZ #13994] + * locale/iso-639.def: Add Karbi. + * localedata/SUPPORTED: Add mjw_IN/UTF-8. + * localedata/locales/mjw_IN: New file. + +2017-10-18 Joseph Myers + + * sysdeps/ieee754/ldbl-128/Makeconfig: New file. + * sysdeps/ieee754/ldbl-128/bits/floatn.h: Likewise. + * sysdeps/ieee754/ldbl-128/float128-abi.h: Likewise. + * sysdeps/generic/libm-alias-ldouble.h: Include . + [__HAVE_FLOAT128 && !__HAVE_DISTINCT_FLOAT128] + (libm_alias_ldouble_other_r): Also create _Float128 alias. + * sysdeps/ieee754/ldbl-opt/libm-alias-ldouble.h: Include + . + [__HAVE_FLOAT128 && !__HAVE_DISTINCT_FLOAT128] + (libm_alias_ldouble_other_r): Also create _Float128 alias. + * manual/math.texi (Mathematics): Document additional architecture + support for _Float128. + * sysdeps/unix/sysv/linux/aarch64/libc.abilist: Update. + * sysdeps/unix/sysv/linux/aarch64/libm.abilist: Likewise. + * sysdeps/unix/sysv/linux/alpha/libc.abilist: Likewise. + * sysdeps/unix/sysv/linux/alpha/libm.abilist: Likewise. + * sysdeps/unix/sysv/linux/mips/mips64/libm.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/s390/s390-32/libc.abilist: Likewise. + * sysdeps/unix/sysv/linux/s390/s390-32/libm.abilist: Likewise. + * sysdeps/unix/sysv/linux/s390/s390-64/libc.abilist: Likewise. + * sysdeps/unix/sysv/linux/s390/s390-64/libm.abilist: Likewise. + * sysdeps/unix/sysv/linux/sparc/sparc32/libc.abilist: Likewise. + * sysdeps/unix/sysv/linux/sparc/sparc32/libm.abilist: Likewise. + * sysdeps/unix/sysv/linux/sparc/sparc64/libc.abilist: Likewise. + * sysdeps/unix/sysv/linux/sparc/sparc64/libm.abilist: Likewise. + +2017-10-18 Renlin Li + + * sysdeps/aarch64/dl-machine.h (elf_machine_load_address): Use + _DYNAMIC symbol to calculate load address. + +2017-10-18 Paul A. Clarke + + * sysdeps/powerpc/fpu/fenv_private.h (_FPU_MASK_TRAPS_RN): + (_FPU_MASK_FRAC_INEX_RET_CC): Fix masks to more properly handle + summary bits. + (_FPU_MASK_RN): Expand _FPU_MASK_RN to 64bit hex. + (_FPU_MASK_NOT_RN_NI): Treat bit 52 (left-to-right) as reserved. + +2017-10-18 Mike FABIAN + + [BZ #16777] + * localedata/locales/pl_PL (LC_MONETARY): Use U+202F as mon_thousands_sep + and improve readability by using more ASCII. + * localedata/locales/pl_PL (LC_NUMERIC): Use U+202F as thousands_sep + and improve readability by using more ASCII. + +2017-10-18 Wilco Dijkstra + + * malloc/malloc.c (malloc_state): Use int for have_fastchunks since + not all targets support atomics on bool. + +2017-10-17 Joseph Myers + + * include/float.h [!__GNUC_PREREQ (7, 0) && __HAVE_FLOAT128 && + __GLIBC_USE (IEC_60559_TYPES_EXT)] (FLT128_MAX): Define using + __f128. + [!__GNUC_PREREQ (7, 0) && __HAVE_FLOAT128 && __GLIBC_USE + (IEC_60559_TYPES_EXT)] (FLT128_EPSILON): Likewise. + [!__GNUC_PREREQ (7, 0) && __HAVE_FLOAT128 && __GLIBC_USE + (IEC_60559_TYPES_EXT)] (FLT128_MIN): Likewise. + [!__GNUC_PREREQ (7, 0) && __HAVE_FLOAT128 && __GLIBC_USE + (IEC_60559_TYPES_EXT)] (FLT128_TRUE_MIN): Likewise. + +2017-10-17 Adhemerval Zanella + + * bits/uio-ext.h (RWF_HIPRI, RWF_DSYNC, RWF_SYNC, RWF_NOWAIT): New + defines. + +2017-10-17 Wilco Dijkstra + + [BZ #22159] + * malloc/arena.c (ptmalloc_init): Call malloc_init_state. + * malloc/malloc.c (do_check_free_chunk): Fix build bug. + (do_check_remalloced_chunk): Fix build bug. + (do_check_malloc_state): Add assert that checks arena->top. + (malloc_consolidate): Remove initialization. + (int_mallinfo): Remove call to malloc_consolidate. + (__libc_mallopt): Clarify why malloc_consolidate is needed. + +2017-10-17 Wilco Dijkstra + + * malloc/malloc.c (FASTCHUNKS_BIT): Remove. + (have_fastchunks): Remove. + (clear_fastchunks): Remove. + (set_fastchunks): Remove. + (malloc_state): Add have_fastchunks. + (malloc_init_state): Use have_fastchunks. + (do_check_malloc_state): Remove incorrect invariant checks. + (_int_malloc): Use have_fastchunks. + (_int_free): Likewise. + (malloc_consolidate): Likewise. + +2017-10-17 Wilco Dijkstra + + * malloc/malloc.c (tcache_put): Inline. + (tcache_get): Inline. + +2017-10-17 Jordi Mallach + + Aurelien Jarno + [BZ #2522] + * localedata/locales/ca_ES@valencia: New file. + * localedata/SUPPORTED: Add ca_ES@valencia/UTF-8. + +2017-10-17 Romain Naour (tiny change) + + [BZ #22296] + * math/math.h: Let signbit use the builtin in C++ mode with gcc + < 6.x + +2017-10-17 Adhemerval Zanella + + * scripts/build-many-glibcs.py (Context.add_all_configs): + Add arm-linux-gnueabihf multiarch extra_glibcs. + + * sysdeps/generic/ifunc-init.h: New file. + * sysdeps/x86/init-arch.h: Use generic ifunc-init.h. + +2017-10-17 Mike FABIAN + + [BZ #22019] + * localedata/locales/el_GR: Set n_cs_precedes to 0. + * localedata/locales/el_CY: copy "el_GR" because it is identical. + * stdlib/tst-strfmon_l.c: adapt test case. + +2017-10-16 Joseph Myers + + * sysdeps/generic/float128-abi.h: New file. + * sysdeps/ieee754/float128/Versions (FLOAT128_VERSION): Move + non-__prefixed symbols to .... + * math/Versions: ... here. Include . + * stdlib/Versions ... and here. Include + +2017-10-16 Florian Weimer + + * version.h (VERSION): Switch to ".9000" as the development + version suffix. + +2017-10-16 Florian Weimer + + [BZ #22050] + * malloc/mcheck-init.c (__malloc_initialize_hook): Use + compat_symbol_reference to access non-default version. + +2017-10-16 Florian Weimer + + * malloc/Makefile (others-extras): Set to mcheck-init.o. + +2017-10-16 Carlos O'Donell + + * include/shlib-compat.h (compat_symbol_reference): Update + comment. + +2017-10-16 Joseph Myers + + * math/Makefile (test-types): Add + $(type-float128-$(float128-alias-fcts)). + * math/test-float128.h (TYPE_STR): Define conditional on + [FLT128_MANT_DIG == LDBL_MANT_DIG]. + (ULP_IDX): Likewise. + (ULP_I_IDX): Likewise. + + * stdlib/strtold.c: Include + [__HAVE_FLOAT128 && !__HAVE_DISTINCT_FLOAT128] (strtof128): Define + and later undefine as macro. Define as weak alias if + [!USE_WIDE_CHAR]. + [__HAVE_FLOAT128 && !__HAVE_DISTINCT_FLOAT128] (wcstof128): Define + and later undefine as macro. Define as weak alias if + [USE_WIDE_CHAR]. + * sysdeps/ieee754/ldbl-128/strtold_l.c [__HAVE_FLOAT128 && + !__HAVE_DISTINCT_FLOAT128] (strtof128_l): Define and later + undefine as macro. Define as weak alias if [!USE_WIDE_CHAR]. + [__HAVE_FLOAT128 && !__HAVE_DISTINCT_FLOAT128] (wcstof128_l): + Define and later undefine as macro. Define as weak alias if + [USE_WIDE_CHAR]. + * sysdeps/ieee754/ldbl-64-128/strtold_l.c: Include + . + [__HAVE_FLOAT128 && !__HAVE_DISTINCT_FLOAT128] (strtof128_l): + Define and later undefine as macro. Define as weak alias if + [!USE_WIDE_CHAR]. + [__HAVE_FLOAT128 && !__HAVE_DISTINCT_FLOAT128] (wcstof128_l): + Define and later undefine as macro. Define as weak alias if + [USE_WIDE_CHAR]. + +2017-10-15 Carlos O'Donell + + * localedata/collate-test.c (allocate_arrays): Don't use \n in + record_verbose messages. + +2017-10-15 H.J. Lu + + [BZ #22052] + * malloc/hooks.c (realloc_check): Use DIAG_IGNORE_NEEDS_COMMENT + to silence -O3 -Wall warning with GCC 7. + +2017-10-14 H.J. Lu + + * Makeconfig (+link-static-before-libc): Use the first of + $(CRT-$(@F)) and $(csu-objpfx)$(static-start-installed-name). + * gmon/Makefile (tests): Add tst-gmon-static. + (tests-static): Likewise. + (CFLAGS-tst-gmon-static.c): New. + (CRT-tst-gmon-static): Likewise. + (DEFAULT-LDFLAGS-tst-gmon-static): Likewise. + (tst-gmon-static-ENV): Likewise. + (tests-special): Likewise. + ($(objpfx)tst-gmon-static.out): Likewise. + (clean-tst-gmon-static-data): Likewise. + ($(objpfx)tst-gmon-static-gprof.out): Likewise. + * gmon/tst-gmon-static-gprof.sh: New file. + * gmon/tst-gmon-static.c: Likewise. + +2017-10-13 Carlos O'Donell + + [BZ #22295] + * locale/programs/linereader.c (get_string): Don't warn on + non-symbolic character. + + [BZ #22294] + * locale/programs/ld-monetary.c (monetary_finish): Allow "" + int_curr_symbol. + + [BZ #22292] + * locale/programs/record-status.h: New file + * locale/programs/locale.c: Add comment. + * locale/programs/charmap-dir.c: Don't include error.h. + (charmap_opendir): Use record_error. + * locale/programs/charmap.c: Don't include error.h. + (charmap_read): Use record_error, and record_warning. + (parse_charmap): Likewise. + * locale/programs/ld-address.c: Don't include error.h. + (address_finish): Use record_error, and record_warning. + * locale/programs/ld-collate.c: Don't include error.h. + (collate_finish): Use record_error, and record_error_at_line. + * locale/programs/ld-ctype.c (ctype_finish): Use record_error. + (ctype_class_new): Likewise. + (ctype_map_new): Likewise. + (set_one_default): Likewise. + (set_class_defaults): Likewise. + (translit_flatten): Likewise. + (allocate_arrays): Use record_error, and record_verbose. + * locale/programs/ld-identification.c: Don't include error.h. + (indentation_finish): Use record_error and record_warning. + * locale/programs/ld-measurement.c: Don't include error.h. + (measurement_finish): Use record_error. + * locale/programs/ld-messages.c + (message_finish): Likewise. + * locale/programs/ld-monetary.c + (monetary_finish): Likewise. + * locale/programs/ld-name.c (name_finish): Use record_error + and record_warning. + * locale/programs/ld-numeric.c + (numeric_finish): Use record_error. + * locale/programs/ld-paper.c: Don't include error.h. + (paper_finish): Use record_error. + * locale/programs/ld-telephone.c: Don't include error.h. + (telephone_finish): Use record_error. + * locale/programs/ld-time.c (time_finish): Likewise. + * locale/programs/linereader.h (lr_error): Make inline func. + * locale/programs/localedef.c: Define recorded_warning_count, + and recorded_error_count. + (main): Use record_error. Use recorded_error_count and + recorded_warning_count to issue correct error returns. + (add_to_readlist): Use record_error. + (find_locale): Likewise. + (load_locale): Likewise. + * locale/programs/localedef.h: Remove be_quiet + and WITH_CUR_LOCALE. + * locale/programs/locarchive.c (compare_from_file): Use + record_error. + * locale/programs/locfile.c (write_locale_data): Use + record_error. + * locale/programs/repertoire.c: Dont include error.h. + (repertoire_complain): Use record_error. + * localedata/tst-fmon.sh: Expect failures from localedef. + * localedata/tst-locale.sh: Likewise. + * localedata/gen-locale.sh: Expect failures from SHIFT_JIS. + + * localedata/unicode-gen/Makefile (GENERATED): Use i18n_ctype. + (REPORTS): Likewise. + (check): Likewise. + (i18n): Rename to... + (i18n_ctype): ...this. + (i18n-report): Rename to... + (i18n_ctype-report): ...this. + * localedata/locales/i18n_ctype: Regenerate. + * localedata/locales/i18n: copy i18n_ctype. + +2017-10-13 Joseph Myers + + * stdlib/strfroml.c: Include . + [__HAVE_FLOAT128 && !__HAVE_DISTINCT_FLOAT128] (strfromf128): + Define before include of and undefine afterwards, then + define as weak alias. + + * sysdeps/ieee754/ldbl-64-128/s_nextafterl.c (weak_alias): + Undefine and restore default definition. Use + libm_alias_ldouble_other. + +2017-10-13 Peter Zelezny + + [BZ #22153] + * nptl/allocatestack.c (__nptl_setxid_error): Preserve error code + in coredumps. + +2017-10-13 James Clarke + + * sysdeps/powerpc/powerpc32/dl-machine.h (elf_machine_rela): + Assign sym_map to be map for local symbols, as TLS relocations + use sym_map to determine whether the symbol is defined and to + extract the TLS information. + * sysdeps/sparc/sparc32/dl-machine.h (elf_machine_rela): Likewise. + * sysdeps/sparc/sparc64/dl-machine.h (elf_machine_rela): Likewise. + +2017-10-13 Tulio Magno Quites Machado Filho + + [BZ #22189] + * sysdeps/powerpc/fpu/math_private.h (math_opt_barrier): + (math_force_eval): Add powerpc version. + + [BZ #22142] + * stdio-common/tst-printf.c (fp_test): Add tests for DBL_MAX and + -DBL_MAX. + (do_test): Likewise. + * stdio-common/tst-printf.sh: Likewise. + * sysdeps/powerpc/powerpc64/power7/add_n.S: Invert the initial + ifdef clause in order to set the carry bit right. Replace r0 by + 0 without changing the behavior. + +2017-10-13 Joseph Myers + + * sysdeps/sparc/sparc32/fpu/s_fabsl.c: Include + . + (fabsl): Define using libm_alias_ldouble. + * sysdeps/sparc/sparc64/fpu/s_fabsl.c: Include + . + (fabsl): Define using libm_alias_ldouble. + + * sysdeps/ieee754/ldbl-opt/w_lgamma_compatl.c [BUILD_LGAMMA]: + Remove conditional code. + + * sysdeps/ieee754/ldbl-opt/s_clog10l.c (__clog10l__internal): + Rename to __clog10_internal_l. + (__clog10_internal_l): Define aliases using + libm_alias_ldouble_other instead of using libm_alias_ldouble_other + with __clog10. + +2017-10-13 Rajalakshmi Srinivasaraghavan + + * benchtests/Makefile (bench-math): Add sinf, cosf and sincosf. + * benchtests/sincosf-inputs: New file. + * benchtests/cosf-inputs: New file. + * benchtests/sinf-inputs: New file. + +2017-10-12 Szabolcs Nagy + + * posix/tst-spawn.c (do_test): Wait for both children. + +2017-10-12 H.J. Lu + + [BZ #22284] + * gmon/Makefile [$(have-fpie)$(build-shared) == yesyes] (tests, + tests-pie): Add tst-gmon-pie. + (CFLAGS-tst-gmon-pie.c): New. + (CRT-tst-gmon-pie): Likewise. + (tst-gmon-pie-ENV): Likewise. + [$(have-fpie)$(build-shared) == yesyes] (tests-special): Likewise. + ($(objpfx)tst-gmon-pie.out): Likewise. + (clean-tst-gmon-pie-data): Likewise. + ($(objpfx)tst-gmon-pie-gprof.out): Likewise. + * gmon/gmon.c [PIC]: Include . + [PIC] (callback): New function. + (write_hist): Add an argument for load address. Subtract load + address from PCs. + (write_call_graph): Likewise. + (write_gmon): Call __dl_iterate_phdr to get load address, pass + it to write_hist and write_call_graph. + * gmon/tst-gmon-pie.c: New file. + +2017-10-11 Joseph Myers + + * math/Makefile (test-types-basic): New variable. + (test-types): Likewise. + (libm-test-support): Use $(test-types) instead of $(types). + (libm-tests-base-normal): Likewise. + (libm-tests-base-finite): Likewise. + (libm-tests-base-inline): Likewise. + (generated): Likewise. + ($(objpfx)libm-test-support-$(t).c): Likewise. + (libm-tests-for-type iterator): Likewise. + (libm-test-support iterator): Likewise. + * math/libm-test-support.c (ulp_i_idx): Use ULP_I_IDX. + (ulp_idx): Use ULP_IDX. + * math/test-ldouble.h: Include . + (TYPE_STR): Define conditional on [LDBL_MANT_DIG == DBL_MANT_DIG]. + (ULP_IDX): New macro. + (ULP_I_IDX): Likewise. + * math/test-double.h (ULP_IDX): Likewise. + (ULP_I_IDX): Likewise. + * math/test-float.h (ULP_IDX): Likewise. + (ULP_I_IDX): Likewise. + * math/test-float128.h (ULP_IDX): Likewise. + (ULP_I_IDX): Likewise. + +2017-10-11 Adhemerval Zanella + + * sysdeps/unix/sysv/linux/aarch64/sysdep-cancel.h: Remove file. + * sysdeps/unix/sysv/linux/alpha/sysdep-cancel.h: Likewise. + * sysdeps/unix/sysv/linux/arm/sysdep-cancel.h: Likewise. + * sysdeps/unix/sysv/linux/hppa/sysdep-cancel.h: Likewise. + * sysdeps/unix/sysv/linux/mips/sysdep-cancel.h: Likewise. + * sysdeps/unix/sysv/linux/nios2/sysdep-cancel.h: Likewise. + * sysdeps/unix/sysv/linux/powerpc/sysdep-cancel.h: Likewise. + * sysdeps/unix/sysv/linux/s390/s390-32/sysdep-cancel.h: Likewise. + * sysdeps/unix/sysv/linux/s390/s390-64/sysdep-cancel.h: Likewise. + * sysdeps/unix/sysv/linux/sh/sysdep-cancel.h: Likewise. + * sysdeps/unix/sysv/linux/sparc/sysdep-cancel.h: Likewise. + * sysdeps/unix/sysv/linux/tile/sysdep-cancel.h: Likewise. + * sysdeps/unix/sysv/linux/x86_64/sysdep-cancel.h: Likewise. + * sysdeps/unix/sysv/linux/s390/s390-64/sysdep.h + (SINGLE_THREAD_BY_GLOBAL): Define. + * sysdeps/unix/sysv/linux/aarch64/sysdep.h (SINGLE_THREAD_BY_GLOBAL): + Likewise. + * sysdeps/unix/sysv/linux/alpha/sysdep.h (SINGLE_THREAD_BY_GLOBAL): + Likewise. + * sysdeps/unix/sysv/linux/arm/sysdep.h (SINGLE_THREAD_BY_GLOBAL): + Likewise. + * sysdeps/unix/sysv/linux/hppa/sysdep.h (SINGLE_THREAD_BY_GLOBAL): + Likewise. + * sysdeps/unix/sysv/linux/microblaze/sysdep.h + (SINGLE_THREAD_BY_GLOBAL): Likewise. + * sysdeps/unix/sysv/linux/x86_64/sysdep.h (SINGLE_THREAD_BY_GLOBAL): + Likewise. + +2017-10-11 Andreas Schwab + + * nis/Makefile (aux): Remove. + * nscd/Makefile (aux): Add nscd_hash. + (nscd-modules): Likewise. + ($(objpfx)nscd): Don't depend on libnsl. + * nscd/nscd_hash.c: New file. + * nscd/nscd_hash.h: Likewise. + * nscd/cache.c: Include "nscd_hash.h" instead of . + (cache_search, cache_add): Use __nscd_hash instead of __nis_hash. + * nscd/nscd_helper.c: Include and "nscd_hash.h" + instead of . + (__nscd_cache_search): Use __nscd_hash instead of __nis_hash. + +2017-10-11 Florian Weimer + + [BZ #22078] + Avoid large NSS buffers with many addresses, aliases. + * nss/nss_files/files-hosts.c (gethostbyname3_multi): Rewrite + using dynarrays and struct alloc_buffer. + * nss/Makefile (tests): Add tst-nss-files-hosts-multi. + (tst-nss-files-hosts-multi): Link with -ldl. + * nss/tst-nss-files-hosts-multi.c: New file. + +2017-10-11 Florian Weimer + + [BZ #18023] + * nss/nss_files/files-hosts.c (gethostbyname3_multi): Use struct + scratch_buffer. Eliminate gotos. + +2017-10-11 Joseph Myers + + * sysdeps/ieee754/ldbl-opt/s_clog10l.c: Use + libm_alias_ldouble_other. + * sysdeps/ieee754/ldbl-opt/w_exp10l_compat.c (weak_alias): Do not + undefine and redefine. + [LIBM_SVID_COMPAT && !LONG_DOUBLE_COMPAT (libm, GLIBC_2_1)] + (exp10l): Do not define here. + * sysdeps/ieee754/ldbl-opt/w_lgamma_compatl.c [BUILD_LGAMMA] + (weak_alias): Undefine and redefine. + [BUILD_LGAMMA]: Use libm_alias_ldouble_other. + * sysdeps/ieee754/ldbl-opt/w_remainderl_compat.c + [LIBM_SVID_COMPAT] (weak_alias): Undefine and redefine here. + [LIBM_SVID_COMPAT]: Use libm_alias_ldouble_other. + + * soft-fp/fmadf4.c: Include . + [!__fma] (fma): Define using libm_alias_double. + * soft-fp/fmasf4.c: Include . + [!__fmaf] (fmaf): Define using libm_alias_float. + * soft-fp/fmatf4.c: Include . + (fmal): Define using libm_alias_ldouble. + +2017-10-10 Joseph Myers + + * sysdeps/generic/libm-alias-double.h (libm_alias_double_other_r): + New macro. + (libm_alias_double_other): Likewise. + (libm_alias_double_r): Use libm_alias_double_other_r. + * sysdeps/generic/libm-alias-float.h (libm_alias_float_other_r): + New macro. + (libm_alias_float_other): Likewise. + (libm_alias_float_r): Use libm_alias_float_other_r. + * sysdeps/generic/libm-alias-float128.h + (libm_alias_float128_other_r): New macro. + (libm_alias_float128_other): Likewise. + (libm_alias_float128_r): Use libm_alias_float128_other_r. + * sysdeps/generic/libm-alias-ldouble.h + (libm_alias_ldouble_other_r): New macro. + (libm_alias_ldouble_other): Likewise. + (libm_alias_ldouble_r): Use libm_alias_ldouble_other_r. + * sysdeps/ieee754/ldbl-opt/libm-alias-double.h + (libm_alias_double_other_r): New macro. + (libm_alias_double_other): Likewise. + (libm_alias_double_r): Use libm_alias_double_other_r. + * sysdeps/ieee754/ldbl-opt/libm-alias-ldouble.h + (libm_alias_ldouble_other_r): New macro. + (libm_alias_ldouble_other): Likewise. + (libm_alias_ldouble_r): Use libm_alias_ldouble_other_r. + * math/w_lgamma_main.c: Include . + [!USE_AS_COMPAT]: Use libm_alias_double_other. + * math/w_lgammaf_main.c: Include . + [!USE_AS_COMPAT]: Use libm_alias_float_other. + * math/w_lgammal_main.c: Include . + [!USE_AS_COMPAT]: Use libm_alias_ldouble_other. + * math/w_exp2f.c: Use libm_alias_float_other. + * math/w_expf.c: Likewise. + * math/w_log2f.c: Likewise. + * math/w_logf.c: Likewise. + * math/w_powf.c: Likewise. + * sysdeps/ieee754/flt-32/e_exp2f.c: Include . + [!__exp2f]: Use libm_alias_float_other. + * sysdeps/ieee754/flt-32/e_expf.c: Include . + [!__expf]: Use libm_alias_float_other. + * sysdeps/ieee754/flt-32/e_log2f.c: Include . + [!__log2f]: Use libm_alias_float_other. + * sysdeps/ieee754/flt-32/e_logf.c: Include . + [!__logf]: Use libm_alias_float_other. + * sysdeps/ieee754/flt-32/e_powf.c: Include . + [!__powf]: Use libm_alias_float_other. + +2017-10-10 Florian Weimer + + * nss/nss_files/files-hosts.c (gethostbyname3_multi): New + function. + (_nss_files_gethostbyname3_r): Call it. + +2017-10-09 Joseph Myers + + * sysdeps/generic/math-type-macros.h [!declare_mgen_alias]: Give + error. Remove default definition of declare_mgen_alias. + [!declare_mgen_alias_r]: Likewise. + * sysdeps/generic/math-type-macros-double.h + [!declare_mgen_alias_r] (declare_mgen_alias_r): New macro. + * sysdeps/generic/math-type-macros-float.h [!declare_mgen_alias_r] + (declare_mgen_alias_r): Likewise. + * sysdeps/generic/math-type-macros-float128.h + [!declare_mgen_alias_r] (declare_mgen_alias_r): Likewise. + * sysdeps/generic/math-type-macros-ldouble.h + [!declare_mgen_alias_r] (declare_mgen_alias_r): Likewise. + * math/w_lgamma_r_template.c (declare_mgen_alias_r_x): Remove + macro. + (declare_mgen_alias_r_s): Likewise. + (declare_mgen_alias_r): Likewise. + * math/w_lgamma_r_compat.c: Include . + (lgamma_r): Define using libm_alias_double_r. + * math/w_lgammaf_r_compat.c: Include . + (lgammaf_r): Define using libm_alias_float_r. + * math/w_lgammal_r_compat.c: Include . + (lgammal_r): Define using libm_alias_ldouble_r. + * sysdeps/ieee754/ldbl-opt/w_lgamma_r_compat.c: Remove file. + * sysdeps/ieee754/ldbl-opt/w_lgammal_r_compat.c: Likewise. + +2017-10-09 Adhemerval Zanella + + * lib/glob.c (__glob_pattern_type): Remove now-spurious + extern declaration. + +2017-10-09 Joseph Myers + + * sysdeps/ieee754/ldbl-opt/w_scalbln.c: Remove file. + +2017-10-09 Jonathan Wakely + + [BZ #21326] + * include/features.h [__cplusplus >= 201703] (__USE_ISOC11): Define. + [__cplusplus >= 201103] (__USE_ISOC99): Define. + * math/Makefile (test-math-cxx11): New test. + * math/test-math-cxx11.cc: New file. + +2017-10-08 Christian Brauner + + * login/openpty.c (openpty): Close slave pty file descriptor on error. + + * login/openpty.c (openpty): If defined, use the TIOCGPTPEER ioctl() + call to allocate the slave pty file descriptor. + +2017-10-06 Joseph Myers + + * sysdeps/ieee754/ldbl-128/s_fma.c: Include . + [!__fma] (fma): Define using libm_alias_double. + * sysdeps/ieee754/ldbl-96/s_fma.c: Include . + [!__fma] (fma): Define using libm_alias_double. + + * sysdeps/ieee754/float128/float128_private.h: Include + and . + (libm_alias_ldouble_r): Undefine and redefine. + * sysdeps/ieee754/ldbl-128/s_asinhl.c: Include + . + (asinhl): Define using libm_alias_ldouble. + * sysdeps/ieee754/ldbl-128/s_atanl.c: Include + . + (atanl): Define using libm_alias_ldouble. + * sysdeps/ieee754/ldbl-128/s_cbrtl.c: Include + . + (cbrtl): Define using libm_alias_ldouble. + * sysdeps/ieee754/ldbl-128/s_ceill.c: Include + . + (ceill): Define using libm_alias_ldouble. + * sysdeps/ieee754/ldbl-128/s_copysignl.c: Include + . + (copysignl): Define using libm_alias_ldouble. + * sysdeps/ieee754/ldbl-128/s_cosl.c: Include + . + (cosl): Define using libm_alias_ldouble. + * sysdeps/ieee754/ldbl-128/s_erfl.c: Include + . + (erfl): Define using libm_alias_ldouble. + (erfcl): Likewise. + * sysdeps/ieee754/ldbl-128/s_expm1l.c: Include + . + (expm1l): Define using libm_alias_ldouble. + * sysdeps/ieee754/ldbl-128/s_fabsl.c: Include + . + (fabsl): Define using libm_alias_ldouble. + * sysdeps/ieee754/ldbl-128/s_floorl.c: Include + . + (floorl): Define using libm_alias_ldouble. + * sysdeps/ieee754/ldbl-128/s_fmal.c: Include + . + (fmal): Define using libm_alias_ldouble. + * sysdeps/ieee754/ldbl-128/s_frexpl.c: Include + . + (frexpl): Define using libm_alias_ldouble. + * sysdeps/ieee754/ldbl-128/s_fromfpl.c (fromfpl): Define using + libm_alias_ldouble. + * sysdeps/ieee754/ldbl-128/s_fromfpl_main.c: Include + . + * sysdeps/ieee754/ldbl-128/s_fromfpxl.c (fromfpxl): Define using + libm_alias_ldouble. + * sysdeps/ieee754/ldbl-128/s_getpayloadl.c: Include + . + (getpayloadl): Define using libm_alias_ldouble. + * sysdeps/ieee754/ldbl-128/s_llrintl.c: Include + . + (llrintl): Define using libm_alias_ldouble. + * sysdeps/ieee754/ldbl-128/s_llroundl.c: Include + . + (llroundl): Define using libm_alias_ldouble. + * sysdeps/ieee754/ldbl-128/s_logbl.c: Include + . + (logbl): Define using libm_alias_ldouble. + * sysdeps/ieee754/ldbl-128/s_lrintl.c: Include + . + (lrintl): Define using libm_alias_ldouble. + * sysdeps/ieee754/ldbl-128/s_lroundl.c: Include + . + (lroundl): Define using libm_alias_ldouble. + * sysdeps/ieee754/ldbl-128/s_modfl.c: Include + . + (modfl): Define using libm_alias_ldouble. + * sysdeps/ieee754/ldbl-128/s_nearbyintl.c: Include + . + (nearbyintl): Define using libm_alias_ldouble. + * sysdeps/ieee754/ldbl-128/s_nextafterl.c: Include + . + (nextafterl): Define using libm_alias_ldouble. + * sysdeps/ieee754/ldbl-128/s_nextupl.c: Include + . + (nextupl): Define using libm_alias_ldouble. + * sysdeps/ieee754/ldbl-128/s_remquol.c: Include + . + (remquol): Define using libm_alias_ldouble. + * sysdeps/ieee754/ldbl-128/s_rintl.c: Include + . + (rintl): Define using libm_alias_ldouble. + * sysdeps/ieee754/ldbl-128/s_roundevenl.c: Include + . + (roundevenl): Define using libm_alias_ldouble. + * sysdeps/ieee754/ldbl-128/s_roundl.c: Include + . + (roundl): Define using libm_alias_ldouble. + * sysdeps/ieee754/ldbl-128/s_setpayloadl.c (setpayloadl): Define + using libm_alias_ldouble. + * sysdeps/ieee754/ldbl-128/s_setpayloadl_main.c: Include + . + * sysdeps/ieee754/ldbl-128/s_setpayloadsigl.c (setpayloadsigl): + Define using libm_alias_ldouble. + * sysdeps/ieee754/ldbl-128/s_sincosl.c: Include + . + (sincosl): Define using libm_alias_ldouble. + * sysdeps/ieee754/ldbl-128/s_sinl.c: Include + . + (sinl): Define using libm_alias_ldouble. + * sysdeps/ieee754/ldbl-128/s_tanhl.c: Include + . + (tanhl): Define using libm_alias_ldouble. + * sysdeps/ieee754/ldbl-128/s_tanl.c: Include + . + (tanl): Define using libm_alias_ldouble. + * sysdeps/ieee754/ldbl-128/s_totalorderl.c: Include + . + (totalorderl): Define using libm_alias_ldouble. + * sysdeps/ieee754/ldbl-128/s_totalordermagl.c: Include + . + (totalordermagl): Define using libm_alias_ldouble. + * sysdeps/ieee754/ldbl-128/s_truncl.c: Include + . + (truncl): Define using libm_alias_ldouble. + * sysdeps/ieee754/ldbl-128/s_ufromfpl.c (ufromfpl): Define using + libm_alias_ldouble. + * sysdeps/ieee754/ldbl-128/s_ufromfpxl.c (ufromfpxl): Define using + libm_alias_ldouble. + * sysdeps/ieee754/ldbl-64-128/s_copysignl.c: Include + . + (weak_alias): Do not undefine and redefine. + [IS_IN (libc)] (libm_alias_ldouble): Undefine and redefine. + (copysignl): Define with long_double_symbol only if [IS_IN + (libc)]. + * sysdeps/ieee754/ldbl-64-128/s_frexpl.c: Include + . + (weak_alias): Do not undefine and redefine. + [IS_IN (libc)] (libm_alias_ldouble): Undefine and redefine. + (frexpl): Define with long_double_symbol only if [IS_IN (libc)]. + * sysdeps/ieee754/ldbl-64-128/s_modfl.c: Include + . + (weak_alias): Do not undefine and redefine. + [IS_IN (libc)] (libm_alias_ldouble): Undefine and redefine. + (modfl): Define with long_double_symbol only if [IS_IN (libc)]. + * sysdeps/ieee754/ldbl-64-128/s_asinhl.c: Remove file. + * sysdeps/ieee754/ldbl-64-128/s_atanl.c: Likewise. + * sysdeps/ieee754/ldbl-64-128/s_cbrtl.c: Likewise. + * sysdeps/ieee754/ldbl-64-128/s_ceill.c: Likewise. + * sysdeps/ieee754/ldbl-64-128/s_cosl.c: Likewise. + * sysdeps/ieee754/ldbl-64-128/s_erfl.c: Likewise. + * sysdeps/ieee754/ldbl-64-128/s_expm1l.c: Likewise. + * sysdeps/ieee754/ldbl-64-128/s_fabsl.c: Likewise. + * sysdeps/ieee754/ldbl-64-128/s_floorl.c: Likewise. + * sysdeps/ieee754/ldbl-64-128/s_fmal.c: Likewise. + * sysdeps/ieee754/ldbl-64-128/s_llrintl.c: Likewise. + * sysdeps/ieee754/ldbl-64-128/s_llroundl.c: Likewise. + * sysdeps/ieee754/ldbl-64-128/s_logbl.c: Likewise. + * sysdeps/ieee754/ldbl-64-128/s_lrintl.c: Likewise. + * sysdeps/ieee754/ldbl-64-128/s_lroundl.c: Likewise. + * sysdeps/ieee754/ldbl-64-128/s_nearbyintl.c: Likewise. + * sysdeps/ieee754/ldbl-64-128/s_remquol.c: Likewise. + * sysdeps/ieee754/ldbl-64-128/s_rintl.c: Likewise. + * sysdeps/ieee754/ldbl-64-128/s_roundl.c: Likewise. + * sysdeps/ieee754/ldbl-64-128/s_sincosl.c: Likewise. + * sysdeps/ieee754/ldbl-64-128/s_sinl.c: Likewise. + * sysdeps/ieee754/ldbl-64-128/s_tanhl.c: Likewise. + * sysdeps/ieee754/ldbl-64-128/s_tanl.c: Likewise. + * sysdeps/ieee754/ldbl-64-128/s_truncl.c: Likewise. + +2017-10-06 Carlos O'Donell + + [BZ #22111] + * malloc/malloc.c (tcache_shutting_down): Use bool type. + (tcache_thread_freeres): Set tcache_shutting_down before + freeing the tcache. + * malloc/Makefile (tests): Add tst-malloc-tcache-leak. + * malloc/tst-malloc-tcache-leak.c: New file. + +2017-10-06 Rajalakshmi Srinivasaraghavan + + * sysdeps/powerpc/powerpc64/multiarch/memrchr-ppc64.c: Revert + back to powerpc32 file. + * sysdeps/powerpc/powerpc64/multiarch/memrchr.c + (memrchr): Add __memrchr_power8 to ifunc list. + * sysdeps/powerpc/powerpc64/power8/memrchr.S: Mask + extra bytes for unaligned inputs. + +2017-10-06 Joseph Myers + + * sysdeps/ieee754/ldbl-64-128/e_ilogbl.c: Remove file. + * sysdeps/ieee754/ldbl-64-128/s_log1pl.c: Likewise. + * sysdeps/ieee754/ldbl-64-128/s_scalblnl.c: Likewise. + * sysdeps/ieee754/ldbl-64-128/s_scalbnl.c: Likewise. + * sysdeps/ieee754/ldbl-64-128/w_scalblnl.c: Likewise. + +2017-10-05 Joseph Myers + + * sysdeps/arm/libm-test-ulps: Update. + + * sysdeps/ieee754/ldbl-96/s_asinhl.c: Include + . + (asinhl): Define using libm_alias_ldouble. + * sysdeps/ieee754/ldbl-96/s_cbrtl.c: Include + . + (cbrtl): Define using libm_alias_ldouble. + * sysdeps/ieee754/ldbl-96/s_copysignl.c: Include + . + (copysignl): Define using libm_alias_ldouble. + * sysdeps/ieee754/ldbl-96/s_cosl.c: Include + . + (cosl): Define using libm_alias_ldouble. + * sysdeps/ieee754/ldbl-96/s_erfl.c: Include + . + (erfl): Define using libm_alias_ldouble. + (erfcl): Likewise. + * sysdeps/ieee754/ldbl-96/s_fmal.c: Include + . + (fmal): Define using libm_alias_ldouble. + * sysdeps/ieee754/ldbl-96/s_frexpl.c: Include + . + (frexpl): Define using libm_alias_ldouble. + * sysdeps/ieee754/ldbl-96/s_fromfpl.c (fromfpl): Define using + libm_alias_ldouble. + * sysdeps/ieee754/ldbl-96/s_fromfpl_main.c: Include + . + * sysdeps/ieee754/ldbl-96/s_fromfpxl.c (fromfpxl): Define using + libm_alias_ldouble. + * sysdeps/ieee754/ldbl-96/s_getpayloadl.c: Include + . + (getpayloadl): Define using libm_alias_ldouble. + * sysdeps/ieee754/ldbl-96/s_llrintl.c: Include + . + (llrintl): Define using libm_alias_ldouble. + * sysdeps/ieee754/ldbl-96/s_llroundl.c: Include + . + (llroundl): Define using libm_alias_ldouble. + * sysdeps/ieee754/ldbl-96/s_lrintl.c: Include + . + (lrintl): Define using libm_alias_ldouble. + * sysdeps/ieee754/ldbl-96/s_lroundl.c: Include + . + (lroundl): Define using libm_alias_ldouble. + * sysdeps/ieee754/ldbl-96/s_modfl.c: Include + . + (modfl): Define using libm_alias_ldouble. + * sysdeps/ieee754/ldbl-96/s_nextupl.c: Include + . + (nextupl): Define using libm_alias_ldouble. + * sysdeps/ieee754/ldbl-96/s_remquol.c: Include + . + (remquol): Define using libm_alias_ldouble. + * sysdeps/ieee754/ldbl-96/s_roundevenl.c: Include + . + (roundevenl): Define using libm_alias_ldouble. + * sysdeps/ieee754/ldbl-96/s_roundl.c: Include + . + (roundl): Define using libm_alias_ldouble. + * sysdeps/ieee754/ldbl-96/s_setpayloadl.c (setpayloadl): Define + using libm_alias_ldouble. + * sysdeps/ieee754/ldbl-96/s_setpayloadl_main.c: Include + . + * sysdeps/ieee754/ldbl-96/s_setpayloadsigl.c: Include + . + (setpayloadsigl): Define using libm_alias_ldouble. + * sysdeps/ieee754/ldbl-96/s_sincosl.c: Include + . + (sincosl): Define using libm_alias_ldouble. + * sysdeps/ieee754/ldbl-96/s_sinl.c: Include + . + (sinl): Define using libm_alias_ldouble. + * sysdeps/ieee754/ldbl-96/s_tanhl.c: Include + . + (tanhl): Define using libm_alias_ldouble. + * sysdeps/ieee754/ldbl-96/s_tanl.c: Include + . + (tanl): Define using libm_alias_ldouble. + * sysdeps/ieee754/ldbl-96/s_totalorderl.c: Include + . + (totalorderl): Define using libm_alias_ldouble. + * sysdeps/ieee754/ldbl-96/s_totalordermagl.c: Include + . + (totalordermagl): Define using libm_alias_ldouble. + * sysdeps/ieee754/ldbl-96/s_ufromfpl.c (ufromfpl): Define using + libm_alias_ldouble. + * sysdeps/ieee754/ldbl-96/s_ufromfpxl.c (ufromfpxl): Define using + libm_alias_ldouble. + +2017-10-05 Siddhesh Poyarekar + + * sysdeps/aarch64/multiarch/Makefile (sysdep_routines): Add + memmove_falkor. + * sysdeps/aarch64/multiarch/ifunc-impl-list.c + (__libc_ifunc_impl_list): Likewise. + * sysdeps/aarch64/multiarch/memmove.c: Likewise. + * sysdeps/aarch64/multiarch/memmove_falkor.S: New file. + + * benchtests/bench-memmove-walk.c: New file. + * benchtests/Makefile (string-benchset): Add it. + + * benchtests/bench-memset-walk.c: New file. + * benchtests/Makefile (string-benchset): Add it. + + * benchtests/bench-memcpy-walk.c: New file. + * benchtests/Makefile (string-benchset): Add it. + +2017-10-05 Florian Weimer + + nscd: Eliminate compilation time dependency in the build output. + * nscd/nscd_stat.c (STATDATA_VERSION) + (STATDATA_VERSION_SELINUX_FLAG, STATDATA_VERSION_FLAGS) + (STATDATA_VERSION_FULL): New macro definitions. + (compilation): Remove. + (struct statdata): Adjust version member. + (send_stats): Set version from STATDATA_VERSION_FULL. + (receive_print_stats): Verify version against STATDATA_VERSION_FULL. + +2017-10-05 Joseph Myers + + * configure.ac (--enable-add-ons): Remove option. + (machine): Do not mention add-ons in comment. + (LIBC_PRECONFIGURE): Likewise. + (add_ons): Remove variable and sanity checks and logic to locate + add-ons. + (add_ons_automatic): Remove variable. + (configured_add_ons): Likewise. + (add_ons_sfx): Likewise. + (add_ons_pfx): Likewise. + (add_on_subdirs): Likewise. + (sysnames_add_ons): Likewise. Remove loop over add-ons and + consideration of add-ons in Implies handling. + (sysdeps_add_ons): Likewise. + * configure: Regenerated. + * libidn/configure.ac: Remove. + * libidn/configure: Likewise. + * sysdeps/unix/inet/configure.ac: New file. + * sysdeps/unix/inet/configure: New generated file. + * sysdeps/unix/inet/Subdirs: Add libidn. + * Makeconfig (sysdeps-srcdirs): Remove variable. + (+sysdep_dirs): Do not include $(sysdeps-srcdirs). + ($(common-objpfx)config.status): Do not depend on add-on files. + ($(common-objpfx)shlib-versions.v.i): Do not mention add-ons in + comment. + (all-subdirs): Do not include $(add-on-subdirs). + * Makefile (dist-prepare): Do not use $(sysdeps-add-ons). + * config.make.in (add-ons): Remove variable. + (add-on-subdirs): Likewise. + (sysdeps-add-ons): Likewise. + * manual/Makefile (add-chapters): Remove. + ($(objpfx)texis): Do not depend on $(add-chapters). + (nonexamples): Do not handle $(add-chapters). + (examples): Do not handle $(add-ons). + (chapters.% top-menu.%): Do not pass '$(add-chapters)' to + libc-texinfo.sh. + * manual/install.texi (Installation): Do not mention add-ons. + (--enable-add-ons): Do not document configure option. + * INSTALL: Regenerated. + * manual/libc-texinfo.sh: Do not handle $2 add-ons argument. + * manual/maint.texi (Hierarchy Conventions): Do not mention + add-ons. + * scripts/build-many-glibcs.py (Glibc.build_glibc): Do not use + --enable-add-ons. + * scripts/gen-sorted.awk: Do not handle Subdirs files from + add-ons. + * scripts/test-installation.pl: Do not handle glibc-compat add-on. + * sysdeps/nptl/Makeconfig: Do not mention add-ons in comment. + +2017-10-05 Andreas Schwab + + [BZ #15142] + * libio/genops.c (_IO_list_all_stamp): Delete. All uses removed. + (_IO_flush_all_lockp): Always lock list_all_lock. + (_IO_flush_all_linebuffered): Likewise. + (_IO_unbuffer_all): Likewise. + +2017-10-05 Florian Weimer + + [BZ #15436] + Do not flush stdio streams on abort. + * stdlib/abort.c (fflush): Remove macro definition. + (abort): Remove stages related to stdio flushing. + +2017-10-05 Florian Weimer + + * gmon/Makefile (CFLAGS-tst-gmon.c): Add -fno-omit-frame-pointer. + +2017-10-05 Stefan Liebler + + * sysdeps/s390/fpu/libm-test-ulps: Regenerated. + +2017-10-05 Florian Weimer + + * support/support_format_hostent.c (support_format_hostent): Add + more error information for NETDB_INTERNAL. + +2017-10-04 H.J. Lu + + * config.h.in (NO_HIDDEN_EXTERN_FUNC_IN_PIE): New. + * include/libc-symbols.h (__hidden_proto_hiddenattr): Add check + for PIC and NO_HIDDEN_EXTERN_FUNC_IN_PIE. + * sysdeps/i386/configure.ac (NO_HIDDEN_EXTERN_FUNC_IN_PIE): New + AC_DEFINE if multi-arch is enabled. + * sysdeps/i386/configure: Regenerated. + +2017-10-04 H.J. Lu + + * Makeconfig (+link-static-before-libc): Use + $(DEFAULT-LDFLAGS-$(@F)). + * elf/Makefile (CRT-tst-tls1-static-non-pie): New. + (LDFLAGS-tst-tls1-static-non-pie): Renamed to ... + (DEFAULT-LDFLAGS-tst-tls1-static-non-pie): This. + +2017-10-04 H.J. Lu + + * elf/Makefile (tests): Add tst-main1. + (modules-names): Add tst-main1mod. + ($(objpfx)tst-main1): New. + (CRT-tst-main1): Likewise. + (LDFLAGS-tst-main1): Likewise. + (LDLIBS-tst-main1): Likewise. + (tst-main1mod.so-no-z-defs): Likewise. + * elf/tst-main1.c: New file. + * elf/tst-main1mod.c: Likewise. + +2017-10-04 H.J. Lu + + * math/test-math-iscanonical.cc (do_test): Return errors != 0. + +2017-10-04 Joseph Myers + + * sysdeps/ieee754/dbl-64/s_fma.c: Include . + (fma): Define using libm_alias_double. + * sysdeps/ieee754/ldbl-opt/s_fma.c: Remove file. + * sysdeps/sparc/sparc32/fpu/s_fma.c: Do not include + . + (fmal): Do not define as compat symbol here. + * sysdeps/alpha/fpu/s_fma.c: New file. + +2017-10-04 Szabolcs Nagy + + * sysdeps/aarch64/dl-machine.h (elf_machine_rela): Expand MIN. + +2017-10-04 Joseph Myers + + [BZ #22229] + * sysdeps/sparc/sparc32/fpu/s_copysign.S: Include + + (copysignl): Define as compat symbol at version GLIBC_2_0 for libm + and libc. + * sysdeps/sparc/sparc32/fpu/s_fabs.S: Include . + (fabsl): Define as compat symbol at version GLIBC_2_0 for libm. + * sysdeps/sparc/sparc32/fpu/s_fma.c: Include . + (fmal): Define as compat symbol at version GLIBC_2_1 for libm. + * sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/s_copysign.S: + Include + (copysignl): Define as compat symbol at version GLIBC_2_0 for libm + and libc. + (compat_symbol): Undefine and redefine. + * sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/s_fabs.S: Include + + (fabsl): Define as compat symbol at version GLIBC_2_0 for libm. + (compat_symbol): Undefine and redefine. + * sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/s_fma.c + [HAVE_AS_VIS3_SUPPORT]: Include . + [HAVE_AS_VIS3_SUPPORT] (fmal): Define as compat symbol at version + GLIBC_2_1 for libm. + * sysdeps/unix/sysv/linux/sparc/sparc32/libc.abilist: Add + GLIBC_2.0 copysignl symbol. + * sysdeps/unix/sysv/linux/sparc/sparc32/libm.abilist: Add + GLIBC_2.0 copysignl and fabsl and GLIBC_2.1 fmal symbols. + + * sysdeps/alpha/fpu/s_nearbyint.c: Remove file. + +2017-10-04 Florian Weimer + + * scripts/check-local-headers.sh: Ignore nspr4 header file + directory in addition to nspr. + +2017-10-04 Guido Trentalancia + + [BZ #17956] + * configure.ac (--enable-nss-crypt): Use NSPR include directory. + * configure: Regenerate. + * crypt/Makefile (nss-cpp-flags): New variable. + (CPPFLAGS-sha256-crypt.c, CPPFLAGS-sha512-crypt.c) + (CPPFLAGS-md5-crypt.c): Use it. + * scripts/check-local-headers.sh: Ignore nspr header file + directory. + +2017-10-04 Andreas Schwab + + * nis/Makefile (services): Remove compat. + (libnss_compat-routines, libnss_compat-inhibit-o): Don't define. + ($(objpfx)libnss_compat.so): Remove rule. + * nis/Versions (libnss_compat): Remove. + * nss/Makefile (services): Add compat. + (libnss_compat-routines, libnss_compat-inhibit-o): Define. + * nss/Versions (libnss_compat): Define. + * nss/nss_compat/compat-grp.c: Moved here from nis/nss_compat. + Don't include . Replace bool_t by bool. + * nss/nss_compat/compat-initgroups.c: Likewise. + * nss/nss_compat/compat-pwd.c: Likewise. Include "nisdomain.h" + instead of . + (getpwent_next_nss_netgr): Use __nss_get_default_domain instead of + yp_get_default_domain. + * nss/nss_compat/compat-pwd.c: Likewise. + (getspent_next_nss_netgr): Use __nss_get_default_domain instead of + yp_get_default_domain. + * nss/nss_compat/nisdomain.c: New file. + * nss/nss_compat/nisdomain.h: Likewise. + +2017-10-04 Szabolcs Nagy + + [BZ #22244] + * sysdeps/ieee754/dbl-64/e_jn.c (__ieee754_yn): Fix x == 0 case. + * sysdeps/ieee754/flt-32/e_jnf.c (__ieee754_ynf): Likewise. + +2017-10-04 Szabolcs Nagy + + [BZ #22243] + * sysdeps/ieee754/dbl-64/wordsize-64/e_log10.c (__ieee754_log10): Use fabs. + * sysdeps/ieee754/dbl-64/wordsize-64/e_log2.c (__ieee754_log2): Likewise. + +2017-10-03 H.J. Lu + + * sysdeps/i386/start.S: Replace "leal main@GOT(%ebx), %eax" with + "movl main@GOTOFF(%ebx), %eax". + +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] + CVE-2017-15671 + * 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 + + [BZ #20532] + * 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_IBT): 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. -- cgit 1.4.1