This is an automated email from the git hooks/post-receive script.
unknown user pushed a change to branch master in repository glibc.
from 2e274cd8c1 Linux: Add ppoll fortify symbol for 64 bit time_t (BZ# 29746) new ca7d181b62 string: Add len=0 to {w}memcmp{eq} tests and benchtests new 419c832aba x86: Use VMM API in memcmp-evex-movbe.S and minor changes new 2d2493a644 x86: Use VMM API in memcmpeq-evex.S and minor changes new d44e116428 benchtests: Make str{n}{cat|cpy} benchmarks output json new f049f52dfe x86: Optimize and shrink st{r|p}{n}{cat|cpy}-evex functions new 642933158e x86: Optimize and shrink st{r|p}{n}{cat|cpy}-avx2 functions new 64b8b6516b x86: Add evex optimized functions for the wchar_t strcpy family new 52cf11004e x86: Add avx2 optimized functions for the wchar_t strcpy family
The 8 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: benchtests/bench-memcmp.c | 18 +- benchtests/bench-strcat.c | 106 +- benchtests/bench-strcpy.c | 118 +- benchtests/bench-strncat.c | 94 +- benchtests/bench-strncpy.c | 94 +- string/test-memcmp.c | 16 +- sysdeps/x86_64/Makefile | 5 + sysdeps/x86_64/multiarch/Makefile | 20 +- sysdeps/x86_64/multiarch/ifunc-impl-list.c | 87 +- sysdeps/x86_64/multiarch/ifunc-wcs.h | 55 + sysdeps/x86_64/multiarch/memcmp-evex-movbe.S | 308 +++-- sysdeps/x86_64/multiarch/memcmpeq-evex.S | 255 ++-- sysdeps/x86_64/multiarch/stpcpy-avx2-rtm.S | 6 +- sysdeps/x86_64/multiarch/stpncpy-avx2-rtm.S | 7 +- sysdeps/x86_64/multiarch/stpncpy-avx2.S | 5 +- sysdeps/x86_64/multiarch/stpncpy-evex.S | 5 +- sysdeps/x86_64/multiarch/strcat-avx2-rtm.S | 13 +- sysdeps/x86_64/multiarch/strcat-avx2.S | 268 +--- sysdeps/x86_64/multiarch/strcat-evex.S | 291 +---- sysdeps/x86_64/multiarch/strcat-strlen-avx2.h.S | 101 ++ sysdeps/x86_64/multiarch/strcat-strlen-evex.h.S | 110 ++ sysdeps/x86_64/multiarch/strcpy-avx2-rtm.S | 13 +- sysdeps/x86_64/multiarch/strcpy-avx2.S | 1236 +++++-------------- sysdeps/x86_64/multiarch/strcpy-evex.S | 1282 +++++++------------- sysdeps/x86_64/multiarch/strncat-avx2-rtm.S | 6 +- sysdeps/x86_64/multiarch/strncat-avx2.S | 424 ++++++- sysdeps/x86_64/multiarch/strncat-evex.S | 525 +++++++- sysdeps/x86_64/multiarch/strncpy-avx2-rtm.S | 6 +- sysdeps/x86_64/multiarch/strncpy-avx2.S | 740 ++++++++++- sysdeps/x86_64/multiarch/strncpy-evex.S | 995 ++++++++++++++- .../x86_64/multiarch/strncpy-or-cat-overflow-def.h | 80 ++ sysdeps/x86_64/multiarch/wcpcpy-avx2.S | 8 + sysdeps/x86_64/multiarch/wcpcpy-evex.S | 8 + .../{wcscpy-generic.c => wcpcpy-generic.c} | 12 +- .../x86_64/multiarch/{x86-avx-vecs.h => wcpcpy.c} | 40 +- sysdeps/x86_64/multiarch/wcpncpy-avx2.S | 8 + sysdeps/x86_64/multiarch/wcpncpy-evex.S | 8 + .../{wcscpy-generic.c => wcpncpy-generic.c} | 12 +- .../x86_64/multiarch/{x86-avx-vecs.h => wcpncpy.c} | 40 +- sysdeps/x86_64/multiarch/wcscat-avx2.S | 10 + sysdeps/x86_64/multiarch/wcscat-evex.S | 9 + .../{wcscpy-generic.c => wcscat-generic.c} | 12 +- .../x86_64/multiarch/{x86-avx-vecs.h => wcscat.c} | 40 +- sysdeps/x86_64/multiarch/wcscpy-avx2.S | 7 + sysdeps/x86_64/multiarch/wcscpy-evex.S | 7 + sysdeps/x86_64/multiarch/wcscpy-generic.c | 3 +- sysdeps/x86_64/multiarch/wcscpy.c | 16 + sysdeps/x86_64/multiarch/wcsncat-avx2.S | 9 + sysdeps/x86_64/multiarch/wcsncat-evex.S | 9 + .../{wcscpy-generic.c => wcsncat-generic.c} | 12 +- .../multiarch/{wcscpy-generic.c => wcsncat.c} | 21 +- sysdeps/x86_64/multiarch/wcsncpy-avx2.S | 7 + sysdeps/x86_64/multiarch/wcsncpy-evex.S | 7 + .../{wcscpy-generic.c => wcsncpy-generic.c} | 12 +- .../x86_64/multiarch/{x86-avx-vecs.h => wcsncpy.c} | 40 +- sysdeps/x86_64/multiarch/x86-avx-vecs.h | 3 +- .../wcscpy-generic.c => wcpcpy-generic.c} | 12 +- sysdeps/x86_64/{wcscpy.S => wcpcpy.S} | 23 +- .../wcscpy-generic.c => wcpncpy-generic.c} | 12 +- sysdeps/x86_64/{wcscpy.S => wcpncpy.S} | 23 +- .../wcscpy-generic.c => wcscat-generic.c} | 12 +- sysdeps/x86_64/{wcscpy.S => wcscat.S} | 23 +- sysdeps/x86_64/wcscpy.S | 4 +- .../wcscpy-generic.c => wcsncat-generic.c} | 12 +- sysdeps/x86_64/{wcscpy.S => wcsncat.S} | 21 +- .../wcscpy-generic.c => wcsncpy-generic.c} | 12 +- sysdeps/x86_64/{wcscpy.S => wcsncpy.S} | 23 +- 67 files changed, 4837 insertions(+), 2989 deletions(-) create mode 100644 sysdeps/x86_64/multiarch/ifunc-wcs.h create mode 100644 sysdeps/x86_64/multiarch/strcat-strlen-avx2.h.S create mode 100644 sysdeps/x86_64/multiarch/strcat-strlen-evex.h.S create mode 100644 sysdeps/x86_64/multiarch/strncpy-or-cat-overflow-def.h create mode 100644 sysdeps/x86_64/multiarch/wcpcpy-avx2.S create mode 100644 sysdeps/x86_64/multiarch/wcpcpy-evex.S copy sysdeps/x86_64/multiarch/{wcscpy-generic.c => wcpcpy-generic.c} (80%) copy sysdeps/x86_64/multiarch/{x86-avx-vecs.h => wcpcpy.c} (59%) create mode 100644 sysdeps/x86_64/multiarch/wcpncpy-avx2.S create mode 100644 sysdeps/x86_64/multiarch/wcpncpy-evex.S copy sysdeps/x86_64/multiarch/{wcscpy-generic.c => wcpncpy-generic.c} (79%) copy sysdeps/x86_64/multiarch/{x86-avx-vecs.h => wcpncpy.c} (59%) create mode 100644 sysdeps/x86_64/multiarch/wcscat-avx2.S create mode 100644 sysdeps/x86_64/multiarch/wcscat-evex.S copy sysdeps/x86_64/multiarch/{wcscpy-generic.c => wcscat-generic.c} (80%) copy sysdeps/x86_64/multiarch/{x86-avx-vecs.h => wcscat.c} (59%) create mode 100644 sysdeps/x86_64/multiarch/wcscpy-avx2.S create mode 100644 sysdeps/x86_64/multiarch/wcscpy-evex.S create mode 100644 sysdeps/x86_64/multiarch/wcsncat-avx2.S create mode 100644 sysdeps/x86_64/multiarch/wcsncat-evex.S copy sysdeps/x86_64/multiarch/{wcscpy-generic.c => wcsncat-generic.c} (79%) copy sysdeps/x86_64/multiarch/{wcscpy-generic.c => wcsncat.c} (60%) create mode 100644 sysdeps/x86_64/multiarch/wcsncpy-avx2.S create mode 100644 sysdeps/x86_64/multiarch/wcsncpy-evex.S copy sysdeps/x86_64/multiarch/{wcscpy-generic.c => wcsncpy-generic.c} (79%) copy sysdeps/x86_64/multiarch/{x86-avx-vecs.h => wcsncpy.c} (59%) copy sysdeps/x86_64/{multiarch/wcscpy-generic.c => wcpcpy-generic.c} (67%) copy sysdeps/x86_64/{wcscpy.S => wcpcpy.S} (64%) copy sysdeps/x86_64/{multiarch/wcscpy-generic.c => wcpncpy-generic.c} (66%) copy sysdeps/x86_64/{wcscpy.S => wcpncpy.S} (64%) copy sysdeps/x86_64/{multiarch/wcscpy-generic.c => wcscat-generic.c} (67%) copy sysdeps/x86_64/{wcscpy.S => wcscat.S} (64%) copy sysdeps/x86_64/{multiarch/wcscpy-generic.c => wcsncat-generic.c} (66%) copy sysdeps/x86_64/{wcscpy.S => wcsncat.S} (65%) copy sysdeps/x86_64/{multiarch/wcscpy-generic.c => wcsncpy-generic.c} (66%) copy sysdeps/x86_64/{wcscpy.S => wcsncpy.S} (64%)