This is an automated email from the git hooks/post-receive script.
tcwg-buildslave pushed a change to branch linaro-local/ci/tcwg_gnu_cross_check_gcc/release-aarch64 in repository toolchain/ci/glibc.
from 5abb1c32c2 gconv: Do not emit spurious NUL character in ISO-2022-JP-3 ( [...] adds 3a5f4c4010 x86: Fix __wcsncmp_avx2 in strcmp-avx2.S [BZ# 28755] adds 40eebb02cc NEWS: Add a bug fix entry for BZ #28755 adds 3bb13e9149 x86: Set Prefer_No_VZEROUPPER and add Prefer_AVX2_STRCMP adds a1999f6ad9 x86-64: Add ifunc-avx2.h functions with 256-bit EVEX adds 6b5d4f31ed x86-64: Add strcpy family functions with 256-bit EVEX adds 0b5c3ed5e3 x86-64: Add memmove family functions with 256-bit EVEX adds 04e991f22e x86-64: Add memset family functions with 256-bit EVEX adds 43e3ba09ec x86-64: Add memcmp family functions with 256-bit EVEX adds 2a7cef79d5 x86-64: Add AVX optimized string/memory functions for RTM adds c42821ec05 x86: Add string/memory function tests in RTM region adds 90496a2f5d x86-64: Use ZMM16-ZMM31 in AVX512 memset family functions adds f82385fcce x86-64: Use ZMM16-ZMM31 in AVX512 memmove family functions adds 6479c904df x86-64: Fix ifdef indentation in strlen-evex.S adds 05751d1c5c NEWS: Add a bug fix entry for BZ #27457 adds e218418d49 test-strnlen.c: Initialize wchar_t string with wmemset [BZ #27655] adds 33046deb96 test-strnlen.c: Check that strnlen won't go beyond the maxim [...] adds ca7d6c8d7f x86: Optimize memchr-avx2.S adds 30b429c2bf x86: Fix overflow bug with wmemchr-sse2 and wmemchr-avx2 [BZ [...] adds 72c0787561 x86: Optimize strlen-avx2.S adds ae98c17a1d x86: Optimize memchr-evex.S adds f73bf74102 x86-64: Fix an unknown vector operation in memchr-evex.S adds 5d8687bfb7 x86-64: Move strlen.S to multiarch/strlen-vec.S adds ad711f9eee x86-64: Add wcslen optimize for sse4.1 adds 04b9cc156d x86: Fix overflow bug in wcsnlen-sse4_1 and wcsnlen-avx2 [BZ [...] adds 7dbd7af692 x86: Optimize strlen-evex.S adds 63c84a82a3 String: Add overflow tests for strnlen, memchr, and strncat [...] adds bee0b69a58 NEWS: Add a bug fix entry for BZ #27974 adds f996f678b9 x86-64: Require BMI2 for __strlen_evex and __strnlen_evex new 77317b3b0d x86: Check RTM_ALWAYS_ABORT for RTM [BZ #28033] new b1fcaf14fe x86: Black list more Intel CPUs for TSX [BZ #27398] new d528cb5165 x86: Remove wcsnlen-sse4_1 from wcslen ifunc-impl-list [BZ #28064] new 9d1cd8bd7a x86-64: Test strlen and wcslen with 0 in the RSI register [B [...]
The 4 revisions listed above as "new" are entirely new to this repository and will be described in separate emails. The revisions listed as "adds" were already present in the repository and have only been added to this reference.
Summary of changes: NEWS | 3 + string/test-memchr.c | 39 +- string/test-strncat.c | 61 ++ string/test-strnlen.c | 67 ++- sysdeps/x86/Makefile | 23 + sysdeps/x86/cpu-features.c | 58 +- sysdeps/x86/cpu-features.h | 8 +- sysdeps/x86/cpu-tunables.c | 2 + sysdeps/x86/tst-get-cpu-features.c | 2 + sysdeps/x86/tst-memchr-rtm.c | 54 ++ .../ifunc-avx2.h => x86/tst-memcmp-rtm.c} | 44 +- sysdeps/x86/tst-memmove-rtm.c | 53 ++ sysdeps/x86/tst-memrchr-rtm.c | 54 ++ .../multiarch/wcslen.c => x86/tst-memset-rtm.c} | 40 +- sysdeps/x86/tst-strchr-rtm.c | 54 ++ sysdeps/x86/tst-strcpy-rtm.c | 53 ++ sysdeps/x86/tst-string-rtm.h | 72 +++ .../ifunc-avx2.h => x86/tst-strlen-rtm.c} | 45 +- sysdeps/x86/tst-strncmp-rtm.c | 52 ++ sysdeps/x86/tst-strrchr-rtm.c | 53 ++ sysdeps/x86_64/Makefile | 7 + sysdeps/x86_64/memchr.S | 77 ++- sysdeps/x86_64/multiarch/Makefile | 60 +- sysdeps/x86_64/multiarch/ifunc-avx2.h | 18 +- sysdeps/x86_64/multiarch/ifunc-impl-list.c | 402 +++++++++++++- sysdeps/x86_64/multiarch/ifunc-memcmp.h | 17 +- sysdeps/x86_64/multiarch/ifunc-memmove.h | 45 +- sysdeps/x86_64/multiarch/ifunc-memset.h | 49 +- sysdeps/x86_64/multiarch/ifunc-strcpy.h | 17 +- .../x86_64/multiarch/{wcsnlen.c => ifunc-wcslen.h} | 35 +- sysdeps/x86_64/multiarch/ifunc-wmemset.h | 22 +- sysdeps/x86_64/multiarch/memchr-avx2-rtm.S | 12 + sysdeps/x86_64/multiarch/memchr-avx2.S | 494 ++++++++++------- sysdeps/x86_64/multiarch/memchr-evex.S | 478 ++++++++++++++++ sysdeps/x86_64/multiarch/memcmp-avx2-movbe-rtm.S | 12 + sysdeps/x86_64/multiarch/memcmp-avx2-movbe.S | 28 +- .../{memcmp-avx2-movbe.S => memcmp-evex-movbe.S} | 226 ++++---- .../multiarch/memmove-avx-unaligned-erms-rtm.S | 17 + .../multiarch/memmove-avx512-unaligned-erms.S | 25 +- .../x86_64/multiarch/memmove-evex-unaligned-erms.S | 33 ++ .../x86_64/multiarch/memmove-vec-unaligned-erms.S | 57 +- sysdeps/x86_64/multiarch/memrchr-avx2-rtm.S | 12 + sysdeps/x86_64/multiarch/memrchr-avx2.S | 53 +- .../multiarch/{memrchr-avx2.S => memrchr-evex.S} | 126 ++--- .../multiarch/memset-avx2-unaligned-erms-rtm.S | 10 + .../x86_64/multiarch/memset-avx2-unaligned-erms.S | 12 +- .../multiarch/memset-avx512-unaligned-erms.S | 16 +- .../x86_64/multiarch/memset-evex-unaligned-erms.S | 24 + .../x86_64/multiarch/memset-vec-unaligned-erms.S | 61 +- sysdeps/x86_64/multiarch/rawmemchr-avx2-rtm.S | 4 + sysdeps/x86_64/multiarch/rawmemchr-evex.S | 4 + sysdeps/x86_64/multiarch/stpcpy-avx2-rtm.S | 3 + sysdeps/x86_64/multiarch/stpcpy-evex.S | 3 + sysdeps/x86_64/multiarch/stpncpy-avx2-rtm.S | 4 + sysdeps/x86_64/multiarch/stpncpy-evex.S | 4 + sysdeps/x86_64/multiarch/strcat-avx2-rtm.S | 12 + sysdeps/x86_64/multiarch/strcat-avx2.S | 6 +- .../multiarch/{strcat-avx2.S => strcat-evex.S} | 146 ++--- sysdeps/x86_64/multiarch/strchr-avx2-rtm.S | 12 + sysdeps/x86_64/multiarch/strchr-avx2.S | 22 +- sysdeps/x86_64/multiarch/strchr-evex.S | 335 +++++++++++ sysdeps/x86_64/multiarch/strchr.c | 18 +- sysdeps/x86_64/multiarch/strchrnul-avx2-rtm.S | 3 + sysdeps/x86_64/multiarch/strchrnul-evex.S | 3 + sysdeps/x86_64/multiarch/strcmp-avx2-rtm.S | 12 + sysdeps/x86_64/multiarch/strcmp-avx2.S | 65 ++- .../multiarch/{strcmp-avx2.S => strcmp-evex.S} | 469 +++++++++++----- sysdeps/x86_64/multiarch/strcmp.c | 19 +- sysdeps/x86_64/multiarch/strcpy-avx2-rtm.S | 12 + sysdeps/x86_64/multiarch/strcpy-avx2.S | 85 ++- .../multiarch/{strcpy-avx2.S => strcpy-evex.S} | 325 +++++------ sysdeps/x86_64/multiarch/strlen-avx2-rtm.S | 12 + sysdeps/x86_64/multiarch/strlen-avx2.S | 613 +++++++++++++-------- sysdeps/x86_64/multiarch/strlen-evex.S | 489 ++++++++++++++++ sysdeps/x86_64/multiarch/strlen-sse2.S | 2 +- .../x86_64/{strlen.S => multiarch/strlen-vec.S} | 20 +- sysdeps/x86_64/multiarch/strncat-avx2-rtm.S | 3 + sysdeps/x86_64/multiarch/strncat-evex.S | 3 + sysdeps/x86_64/multiarch/strncmp-avx2-rtm.S | 3 + sysdeps/x86_64/multiarch/strncmp-evex.S | 3 + sysdeps/x86_64/multiarch/strncmp.c | 19 +- sysdeps/x86_64/multiarch/strncpy-avx2-rtm.S | 3 + sysdeps/x86_64/multiarch/strncpy-evex.S | 3 + sysdeps/x86_64/multiarch/strnlen-avx2-rtm.S | 4 + sysdeps/x86_64/multiarch/strnlen-evex.S | 4 + sysdeps/x86_64/multiarch/strrchr-avx2-rtm.S | 12 + sysdeps/x86_64/multiarch/strrchr-avx2.S | 19 +- .../multiarch/{strrchr-avx2.S => strrchr-evex.S} | 174 +++--- sysdeps/x86_64/multiarch/wcschr-avx2-rtm.S | 3 + sysdeps/x86_64/multiarch/wcschr-evex.S | 3 + sysdeps/x86_64/multiarch/wcscmp-avx2-rtm.S | 4 + sysdeps/x86_64/multiarch/wcscmp-evex.S | 4 + sysdeps/x86_64/multiarch/wcslen-avx2-rtm.S | 4 + sysdeps/x86_64/multiarch/wcslen-evex.S | 4 + sysdeps/x86_64/multiarch/wcslen-sse4_1.S | 4 + sysdeps/x86_64/multiarch/wcslen.c | 2 +- sysdeps/x86_64/multiarch/wcsncmp-avx2-rtm.S | 5 + sysdeps/x86_64/multiarch/wcsncmp-evex.S | 5 + sysdeps/x86_64/multiarch/wcsnlen-avx2-rtm.S | 5 + sysdeps/x86_64/multiarch/wcsnlen-evex.S | 5 + sysdeps/x86_64/multiarch/wcsnlen-sse4_1.S | 2 +- sysdeps/x86_64/multiarch/wcsnlen.c | 22 +- sysdeps/x86_64/multiarch/wcsrchr-avx2-rtm.S | 3 + sysdeps/x86_64/multiarch/wcsrchr-evex.S | 3 + sysdeps/x86_64/multiarch/wmemchr-avx2-rtm.S | 4 + sysdeps/x86_64/multiarch/wmemchr-evex.S | 4 + sysdeps/x86_64/multiarch/wmemcmp-avx2-movbe-rtm.S | 4 + sysdeps/x86_64/multiarch/wmemcmp-evex-movbe.S | 4 + sysdeps/x86_64/strlen.S | 243 +------- sysdeps/x86_64/sysdep.h | 22 + sysdeps/x86_64/tst-rsi-strlen.c | 81 +++ .../{multiarch/strlen-sse2.S => tst-rsi-wcslen.c} | 11 +- 112 files changed, 4967 insertions(+), 1718 deletions(-) create mode 100644 sysdeps/x86/tst-memchr-rtm.c copy sysdeps/{x86_64/multiarch/ifunc-avx2.h => x86/tst-memcmp-rtm.c} (50%) create mode 100644 sysdeps/x86/tst-memmove-rtm.c create mode 100644 sysdeps/x86/tst-memrchr-rtm.c copy sysdeps/{x86_64/multiarch/wcslen.c => x86/tst-memset-rtm.c} (57%) create mode 100644 sysdeps/x86/tst-strchr-rtm.c create mode 100644 sysdeps/x86/tst-strcpy-rtm.c create mode 100644 sysdeps/x86/tst-string-rtm.h copy sysdeps/{x86_64/multiarch/ifunc-avx2.h => x86/tst-strlen-rtm.c} (50%) create mode 100644 sysdeps/x86/tst-strncmp-rtm.c create mode 100644 sysdeps/x86/tst-strrchr-rtm.c copy sysdeps/x86_64/multiarch/{wcsnlen.c => ifunc-wcslen.h} (64%) create mode 100644 sysdeps/x86_64/multiarch/memchr-avx2-rtm.S create mode 100644 sysdeps/x86_64/multiarch/memchr-evex.S create mode 100644 sysdeps/x86_64/multiarch/memcmp-avx2-movbe-rtm.S copy sysdeps/x86_64/multiarch/{memcmp-avx2-movbe.S => memcmp-evex-movbe.S} (69%) create mode 100644 sysdeps/x86_64/multiarch/memmove-avx-unaligned-erms-rtm.S create mode 100644 sysdeps/x86_64/multiarch/memmove-evex-unaligned-erms.S create mode 100644 sysdeps/x86_64/multiarch/memrchr-avx2-rtm.S copy sysdeps/x86_64/multiarch/{memrchr-avx2.S => memrchr-evex.S} (72%) create mode 100644 sysdeps/x86_64/multiarch/memset-avx2-unaligned-erms-rtm.S create mode 100644 sysdeps/x86_64/multiarch/memset-evex-unaligned-erms.S create mode 100644 sysdeps/x86_64/multiarch/rawmemchr-avx2-rtm.S create mode 100644 sysdeps/x86_64/multiarch/rawmemchr-evex.S create mode 100644 sysdeps/x86_64/multiarch/stpcpy-avx2-rtm.S create mode 100644 sysdeps/x86_64/multiarch/stpcpy-evex.S create mode 100644 sysdeps/x86_64/multiarch/stpncpy-avx2-rtm.S create mode 100644 sysdeps/x86_64/multiarch/stpncpy-evex.S create mode 100644 sysdeps/x86_64/multiarch/strcat-avx2-rtm.S copy sysdeps/x86_64/multiarch/{strcat-avx2.S => strcat-evex.S} (62%) create mode 100644 sysdeps/x86_64/multiarch/strchr-avx2-rtm.S create mode 100644 sysdeps/x86_64/multiarch/strchr-evex.S create mode 100644 sysdeps/x86_64/multiarch/strchrnul-avx2-rtm.S create mode 100644 sysdeps/x86_64/multiarch/strchrnul-evex.S create mode 100644 sysdeps/x86_64/multiarch/strcmp-avx2-rtm.S copy sysdeps/x86_64/multiarch/{strcmp-avx2.S => strcmp-evex.S} (63%) create mode 100644 sysdeps/x86_64/multiarch/strcpy-avx2-rtm.S copy sysdeps/x86_64/multiarch/{strcpy-avx2.S => strcpy-evex.S} (78%) create mode 100644 sysdeps/x86_64/multiarch/strlen-avx2-rtm.S create mode 100644 sysdeps/x86_64/multiarch/strlen-evex.S copy sysdeps/x86_64/{strlen.S => multiarch/strlen-vec.S} (89%) create mode 100644 sysdeps/x86_64/multiarch/strncat-avx2-rtm.S create mode 100644 sysdeps/x86_64/multiarch/strncat-evex.S create mode 100644 sysdeps/x86_64/multiarch/strncmp-avx2-rtm.S create mode 100644 sysdeps/x86_64/multiarch/strncmp-evex.S create mode 100644 sysdeps/x86_64/multiarch/strncpy-avx2-rtm.S create mode 100644 sysdeps/x86_64/multiarch/strncpy-evex.S create mode 100644 sysdeps/x86_64/multiarch/strnlen-avx2-rtm.S create mode 100644 sysdeps/x86_64/multiarch/strnlen-evex.S create mode 100644 sysdeps/x86_64/multiarch/strrchr-avx2-rtm.S copy sysdeps/x86_64/multiarch/{strrchr-avx2.S => strrchr-evex.S} (53%) create mode 100644 sysdeps/x86_64/multiarch/wcschr-avx2-rtm.S create mode 100644 sysdeps/x86_64/multiarch/wcschr-evex.S create mode 100644 sysdeps/x86_64/multiarch/wcscmp-avx2-rtm.S create mode 100644 sysdeps/x86_64/multiarch/wcscmp-evex.S create mode 100644 sysdeps/x86_64/multiarch/wcslen-avx2-rtm.S create mode 100644 sysdeps/x86_64/multiarch/wcslen-evex.S create mode 100644 sysdeps/x86_64/multiarch/wcslen-sse4_1.S create mode 100644 sysdeps/x86_64/multiarch/wcsncmp-avx2-rtm.S create mode 100644 sysdeps/x86_64/multiarch/wcsncmp-evex.S create mode 100644 sysdeps/x86_64/multiarch/wcsnlen-avx2-rtm.S create mode 100644 sysdeps/x86_64/multiarch/wcsnlen-evex.S create mode 100644 sysdeps/x86_64/multiarch/wcsrchr-avx2-rtm.S create mode 100644 sysdeps/x86_64/multiarch/wcsrchr-evex.S create mode 100644 sysdeps/x86_64/multiarch/wmemchr-avx2-rtm.S create mode 100644 sysdeps/x86_64/multiarch/wmemchr-evex.S create mode 100644 sysdeps/x86_64/multiarch/wmemcmp-avx2-movbe-rtm.S create mode 100644 sysdeps/x86_64/multiarch/wmemcmp-evex-movbe.S create mode 100644 sysdeps/x86_64/tst-rsi-strlen.c copy sysdeps/x86_64/{multiarch/strlen-sse2.S => tst-rsi-wcslen.c} (81%)