glibc/sysdeps/x86_64/multiarch
Adhemerval Zanella 721314c980 x86_64: Remove avx512 strstr implementation
As indicated in a recent thread, this it is a simple brute-force
algorithm that checks the whole needle at a matching character pair
(and does so 1 byte at a time after the first 64 bytes of a needle).
Also it never skips ahead and thus can match at every haystack
position after trying to match all of the needle, which generic
implementation avoids.

As indicated by Wilco, a 4x larger needle and 16x larger haystack gives
a clear 65x slowdown both basic_strstr and __strstr_avx512:

  "ifuncs": ["basic_strstr", "twoway_strstr", "__strstr_avx512",
"__strstr_sse2_unaligned", "__strstr_generic"],

    {
     "len_haystack": 65536,
     "len_needle": 1024,
     "align_haystack": 0,
     "align_needle": 0,
     "fail": 1,
     "desc": "Difficult bruteforce needle",
     "timings": [4.0948e+07, 15094.5, 3.20818e+07, 108558, 10839.2]
    },
    {
     "len_haystack": 1048576,
     "len_needle": 4096,
     "align_haystack": 0,
     "align_needle": 0,
     "fail": 1,
     "desc": "Difficult bruteforce needle",
     "timings": [2.69767e+09, 100797, 2.08535e+09, 495706, 82666.9]
    }

PS: I don't have an AVX512 capable machine to verify this issues, but
    skimming through the code it does seems to follow what Wilco has
    described.
Reviewed-by: Noah Goldstein <goldstein.w.n@gmail.com>
2024-03-27 13:48:16 -03:00
..
scripts Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
dl-symbol-redir-ifunc.h Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
ifunc-avx2.h Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
ifunc-evex.h Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
ifunc-impl-list.c x86_64: Remove avx512 strstr implementation 2024-03-27 13:48:16 -03:00
ifunc-memcmp.h Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
ifunc-memcmpeq.h Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
ifunc-memmove.h Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
ifunc-memset.h Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
ifunc-sse4_2.h Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
ifunc-strcasecmp.h Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
ifunc-strcpy.h Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
ifunc-strncpy.h Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
ifunc-wcs.h Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
ifunc-wcslen.h Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
ifunc-wmemset.h Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
Makefile x86_64: Remove avx512 strstr implementation 2024-03-27 13:48:16 -03:00
memchr-avx2-rtm.S x86: Shrink code size of memchr-avx2.S 2022-06-07 13:10:31 -07:00
memchr-avx2.S Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
memchr-evex512.S x86_64: Implement evex512 version of memchr, rawmemchr and wmemchr 2022-10-18 13:26:33 -07:00
memchr-evex-base.S Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
memchr-evex-rtm.S x86: Add EVEX optimized memchr family not safe for RTM 2021-05-08 16:26:30 -04:00
memchr-evex.S Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
memchr-sse2.S Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
memchr.c Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
memcmp-avx2-movbe-rtm.S x86-64: Add AVX optimized string/memory functions for RTM 2021-03-29 07:40:17 -07:00
memcmp-avx2-movbe.S Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
memcmp-evex-movbe.S Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
memcmp-sse2.S Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
memcmp.c Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
memcmpeq-avx2-rtm.S x86_64: Add avx2 optimized __memcmpeq in memcmpeq-avx2.S 2021-10-27 13:03:46 -05:00
memcmpeq-avx2.S Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
memcmpeq-evex.S Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
memcmpeq-sse2.S Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
memcmpeq.c Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
memcpy_chk-nonshared.S Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
memcpy_chk.c Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
memcpy.c Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
memmove_chk-nonshared.S Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
memmove_chk.c Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
memmove-avx512-no-vzeroupper.S Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
memmove-avx512-unaligned-erms.S x86: Update memmove to use new VEC macros 2022-10-14 21:21:58 -07:00
memmove-avx-unaligned-erms-rtm.S x86: Update memmove to use new VEC macros 2022-10-14 21:21:58 -07:00
memmove-avx-unaligned-erms.S x86: Update memmove to use new VEC macros 2022-10-14 21:21:58 -07:00
memmove-erms.S Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
memmove-evex-unaligned-erms.S x86: Update memmove to use new VEC macros 2022-10-14 21:21:58 -07:00
memmove-shlib-compat.h Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
memmove-sse2-unaligned-erms.S Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
memmove-ssse3.S Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
memmove-vec-unaligned-erms.S Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
memmove.c Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
mempcpy_chk-nonshared.S Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
mempcpy_chk.c Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
mempcpy.c Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
memrchr-avx2-rtm.S x86: Optimize memrchr-avx2.S 2022-06-07 13:10:27 -07:00
memrchr-avx2.S Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
memrchr-evex.S Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
memrchr-sse2.S Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
memrchr.c Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
memset_chk-nonshared.S Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
memset_chk.c Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
memset-avx2-unaligned-erms-rtm.S x86: Update memset to use new VEC macros 2022-10-14 21:21:58 -07:00
memset-avx2-unaligned-erms.S x86: Update memset to use new VEC macros 2022-10-14 21:21:58 -07:00
memset-avx512-no-vzeroupper.S Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
memset-avx512-unaligned-erms.S x86: Update memset to use new VEC macros 2022-10-14 21:21:58 -07:00
memset-erms.S Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
memset-evex-unaligned-erms.S x86: Update memset to use new VEC macros 2022-10-14 21:21:58 -07:00
memset-sse2-unaligned-erms.S Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
memset-vec-unaligned-erms.S x86: Expand the comment on when REP STOSB is used on memset 2024-02-13 08:49:43 -08:00
memset.c Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
rawmemchr-avx2-rtm.S x86-64: Add AVX optimized string/memory functions for RTM 2021-03-29 07:40:17 -07:00
rawmemchr-avx2.S x86: Add support for compiling {raw|w}memchr with high ISA level 2022-06-22 19:41:35 -07:00
rawmemchr-evex512.S x86_64: Implement evex512 version of memchr, rawmemchr and wmemchr 2022-10-18 13:26:33 -07:00
rawmemchr-evex-rtm.S x86: Optimize memchr-evex.S and implement with VMM headers 2022-10-19 17:31:03 -07:00
rawmemchr-evex.S Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
rawmemchr-sse2.S Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
rawmemchr.c Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
reg-macros.h Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
rtld-memchr.S Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
rtld-memcmp.S Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
rtld-memcmpeq.S Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
rtld-memmove.S Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
rtld-memset.S Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
rtld-rawmemchr.S Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
rtld-stpcpy.S Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
rtld-stpncpy.S Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
rtld-strchr.S Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
rtld-strchrnul.S Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
rtld-strcmp.S Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
rtld-strcpy.S Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
rtld-strcspn.c Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
rtld-strlen.S Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
rtld-strncmp.S Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
rtld-strncpy.S Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
rtld-strnlen.S Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
stpcpy-avx2-rtm.S x86: Optimize and shrink st{r|p}{n}{cat|cpy}-avx2 functions 2022-11-08 19:22:33 -08:00
stpcpy-avx2.S x86: Add support to build st{p|r}{n}{cpy|cat} with explicit ISA level 2022-07-16 03:07:59 -07:00
stpcpy-evex.S x86: Add support to build st{p|r}{n}{cpy|cat} with explicit ISA level 2022-07-16 03:07:59 -07:00
stpcpy-sse2-unaligned.S x86: Add support to build st{p|r}{n}{cpy|cat} with explicit ISA level 2022-07-16 03:07:59 -07:00
stpcpy-sse2.S x86: Add support to build st{p|r}{n}{cpy|cat} with explicit ISA level 2022-07-16 03:07:59 -07:00
stpcpy.c Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
stpncpy-avx2-rtm.S x86: Optimize and shrink st{r|p}{n}{cat|cpy}-avx2 functions 2022-11-08 19:22:33 -08:00
stpncpy-avx2.S x86: Optimize and shrink st{r|p}{n}{cat|cpy}-avx2 functions 2022-11-08 19:22:33 -08:00
stpncpy-evex.S x86: Optimize and shrink st{r|p}{n}{cat|cpy}-evex functions 2022-11-08 19:22:33 -08:00
stpncpy-sse2-unaligned.S x86: Add support to build st{p|r}{n}{cpy|cat} with explicit ISA level 2022-07-16 03:07:59 -07:00
stpncpy.c Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
strcasecmp_l-avx2-rtm.S x86: Add support to build strcmp/strlen/strchr with explicit ISA level 2022-07-16 03:07:59 -07:00
strcasecmp_l-avx2.S Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
strcasecmp_l-evex.S Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
strcasecmp_l-sse2.S Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
strcasecmp_l-sse4_2.S Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
strcasecmp_l.c Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
strcasecmp.c Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
strcat-avx2-rtm.S x86: Optimize and shrink st{r|p}{n}{cat|cpy}-avx2 functions 2022-11-08 19:22:33 -08:00
strcat-avx2.S Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
strcat-evex.S x86: Optimize and shrink st{r|p}{n}{cat|cpy}-evex functions 2022-11-08 19:22:33 -08:00
strcat-sse2-unaligned.S Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
strcat-sse2.S Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
strcat-strlen-avx2.h.S Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
strcat-strlen-evex.h.S Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
strcat.c Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
strchr-avx2-rtm.S x86-64: Add AVX optimized string/memory functions for RTM 2021-03-29 07:40:17 -07:00
strchr-avx2.S Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
strchr-evex512.S x86_64: Implement evex512 version of strchrnul, strchr and wcschr 2022-10-25 22:39:35 -07:00
strchr-evex-base.S Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
strchr-evex.S Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
strchr-sse2-no-bsf.S Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
strchr-sse2.S Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
strchr.c Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
strchrnul-avx2-rtm.S x86-64: Add AVX optimized string/memory functions for RTM 2021-03-29 07:40:17 -07:00
strchrnul-avx2.S x86: Add support to build strcmp/strlen/strchr with explicit ISA level 2022-07-16 03:07:59 -07:00
strchrnul-evex512.S x86_64: Implement evex512 version of strchrnul, strchr and wcschr 2022-10-25 22:39:35 -07:00
strchrnul-evex.S x86: Add support to build strcmp/strlen/strchr with explicit ISA level 2022-07-16 03:07:59 -07:00
strchrnul-sse2.S Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
strchrnul.c Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
strcmp-avx2-rtm.S x86: Add support to build strcmp/strlen/strchr with explicit ISA level 2022-07-16 03:07:59 -07:00
strcmp-avx2.S Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
strcmp-evex.S Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
strcmp-naming.h x86: Move strcmp SSE2 implementation to multiarch/strcmp-sse2.S 2022-07-13 14:55:31 -07:00
strcmp-sse2-unaligned.S Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
strcmp-sse2.S Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
strcmp-sse4_2.S Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
strcmp.c Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
strcpy-avx2-rtm.S x86: Optimize and shrink st{r|p}{n}{cat|cpy}-avx2 functions 2022-11-08 19:22:33 -08:00
strcpy-avx2.S Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
strcpy-evex.S Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
strcpy-sse2-unaligned.S Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
strcpy-sse2.S Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
strcpy.c Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
strcspn-generic.c Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
strcspn-sse4.c Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
strcspn.c Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
strlen-avx2-rtm.S x86-64: Add AVX optimized string/memory functions for RTM 2021-03-29 07:40:17 -07:00
strlen-avx2.S Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
strlen-evex512.S x86: Update strlen-evex-base to use new reg/vec macros. 2022-10-14 21:21:58 -07:00
strlen-evex-base.S Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
strlen-evex.S x86: Unifies 'strlen-evex' and 'strlen-evex512' implementations. 2023-12-18 12:38:01 -06:00
strlen-sse2.S Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
strlen.c Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
strncase_l-avx2-rtm.S x86: Add support to build strcmp/strlen/strchr with explicit ISA level 2022-07-16 03:07:59 -07:00
strncase_l-avx2.S Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
strncase_l-evex.S Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
strncase_l-sse2.S Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
strncase_l-sse4_2.S Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
strncase_l.c Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
strncase.c Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
strncat-avx2-rtm.S x86: Optimize and shrink st{r|p}{n}{cat|cpy}-avx2 functions 2022-11-08 19:22:33 -08:00
strncat-avx2.S Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
strncat-evex.S Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
strncat-sse2-unaligned.S x86: Add support to build st{p|r}{n}{cpy|cat} with explicit ISA level 2022-07-16 03:07:59 -07:00
strncat.c Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
strncmp-avx2-rtm.S x86: Add support to build strcmp/strlen/strchr with explicit ISA level 2022-07-16 03:07:59 -07:00
strncmp-avx2.S x86: Add support to build strcmp/strlen/strchr with explicit ISA level 2022-07-16 03:07:59 -07:00
strncmp-evex.S x86: Add support to build strcmp/strlen/strchr with explicit ISA level 2022-07-16 03:07:59 -07:00
strncmp-sse2.S Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
strncmp-sse4_2.S Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
strncmp.c Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
strncpy-avx2-rtm.S x86: Optimize and shrink st{r|p}{n}{cat|cpy}-avx2 functions 2022-11-08 19:22:33 -08:00
strncpy-avx2.S Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
strncpy-evex.S Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
strncpy-or-cat-overflow-def.h Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
strncpy-sse2-unaligned.S x86: Add support to build st{p|r}{n}{cpy|cat} with explicit ISA level 2022-07-16 03:07:59 -07:00
strncpy.c Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
strnlen-avx2-rtm.S x86-64: Add AVX optimized string/memory functions for RTM 2021-03-29 07:40:17 -07:00
strnlen-avx2.S x86: Add support to build strcmp/strlen/strchr with explicit ISA level 2022-07-16 03:07:59 -07:00
strnlen-evex512.S Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
strnlen-evex.S Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
strnlen-sse2.S Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
strnlen.c Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
strpbrk-generic.c Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
strpbrk-sse4.c Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
strpbrk.c Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
strrchr-avx2-rtm.S x86-64: Add AVX optimized string/memory functions for RTM 2021-03-29 07:40:17 -07:00
strrchr-avx2.S Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
strrchr-evex512.S x86_64: Implement evex512 version of strrchr and wcsrchr 2022-11-03 15:51:52 -07:00
strrchr-evex-base.S Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
strrchr-evex.S x86: Prepare strrchr-evex and strrchr-evex512 for AVX10 2023-10-06 00:18:55 -05:00
strrchr-sse2.S Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
strrchr.c Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
strspn-generic.c Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
strspn-sse4.c Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
strspn.c Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
strstr-sse2-unaligned.S Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
strstr.c x86_64: Remove avx512 strstr implementation 2024-03-27 13:48:16 -03:00
varshift.c Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
varshift.h Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
wcpcpy-avx2.S x86: Add avx2 optimized functions for the wchar_t strcpy family 2022-11-08 19:22:33 -08:00
wcpcpy-evex.S x86: Add evex optimized functions for the wchar_t strcpy family 2022-11-08 19:22:33 -08:00
wcpcpy-generic.c Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
wcpcpy.c Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
wcpncpy-avx2.S x86: Add avx2 optimized functions for the wchar_t strcpy family 2022-11-08 19:22:33 -08:00
wcpncpy-evex.S x86: Add evex optimized functions for the wchar_t strcpy family 2022-11-08 19:22:33 -08:00
wcpncpy-generic.c Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
wcpncpy.c Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
wcscat-avx2.S x86: Add avx2 optimized functions for the wchar_t strcpy family 2022-11-08 19:22:33 -08:00
wcscat-evex.S x86: Add evex optimized functions for the wchar_t strcpy family 2022-11-08 19:22:33 -08:00
wcscat-generic.c Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
wcscat.c Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
wcschr-avx2-rtm.S x86-64: Add AVX optimized string/memory functions for RTM 2021-03-29 07:40:17 -07:00
wcschr-avx2.S x86: Add support to build strcmp/strlen/strchr with explicit ISA level 2022-07-16 03:07:59 -07:00
wcschr-evex512.S x86_64: Implement evex512 version of strchrnul, strchr and wcschr 2022-10-25 22:39:35 -07:00
wcschr-evex.S x86: Add support to build strcmp/strlen/strchr with explicit ISA level 2022-07-16 03:07:59 -07:00
wcschr-sse2.S Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
wcschr.c Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
wcscmp-avx2-rtm.S x86: Add support to build strcmp/strlen/strchr with explicit ISA level 2022-07-16 03:07:59 -07:00
wcscmp-avx2.S x86: Add support to build strcmp/strlen/strchr with explicit ISA level 2022-07-16 03:07:59 -07:00
wcscmp-evex.S x86: Add support to build strcmp/strlen/strchr with explicit ISA level 2022-07-16 03:07:59 -07:00
wcscmp-sse2.S Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
wcscmp.c Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
wcscpy-avx2.S x86: Add avx2 optimized functions for the wchar_t strcpy family 2022-11-08 19:22:33 -08:00
wcscpy-evex.S x86: Add evex optimized functions for the wchar_t strcpy family 2022-11-08 19:22:33 -08:00
wcscpy-generic.c Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
wcscpy-ssse3.S Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
wcscpy.c Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
wcslen-avx2-rtm.S x86-64: Add AVX optimized string/memory functions for RTM 2021-03-29 07:40:17 -07:00
wcslen-avx2.S x86: Add support to build strcmp/strlen/strchr with explicit ISA level 2022-07-16 03:07:59 -07:00
wcslen-evex512.S x86: Unifies 'strlen-evex' and 'strlen-evex512' implementations. 2023-12-18 12:38:01 -06:00
wcslen-evex.S x86: Add support to build strcmp/strlen/strchr with explicit ISA level 2022-07-16 03:07:59 -07:00
wcslen-sse2.S Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
wcslen-sse4_1.S x86: Add support to build strcmp/strlen/strchr with explicit ISA level 2022-07-16 03:07:59 -07:00
wcslen.c Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
wcsncat-avx2.S x86: Add avx2 optimized functions for the wchar_t strcpy family 2022-11-08 19:22:33 -08:00
wcsncat-evex.S x86: Add evex optimized functions for the wchar_t strcpy family 2022-11-08 19:22:33 -08:00
wcsncat-generic.c Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
wcsncat.c Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
wcsncmp-avx2-rtm.S x86: Add support to build strcmp/strlen/strchr with explicit ISA level 2022-07-16 03:07:59 -07:00
wcsncmp-avx2.S x86: Add support to build strcmp/strlen/strchr with explicit ISA level 2022-07-16 03:07:59 -07:00
wcsncmp-evex.S x86: Add support to build strcmp/strlen/strchr with explicit ISA level 2022-07-16 03:07:59 -07:00
wcsncmp-generic.c Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
wcsncmp.c Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
wcsncpy-avx2.S x86: Add avx2 optimized functions for the wchar_t strcpy family 2022-11-08 19:22:33 -08:00
wcsncpy-evex.S x86: Add evex optimized functions for the wchar_t strcpy family 2022-11-08 19:22:33 -08:00
wcsncpy-generic.c Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
wcsncpy.c Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
wcsnlen-avx2-rtm.S x86-64: Add AVX optimized string/memory functions for RTM 2021-03-29 07:40:17 -07:00
wcsnlen-avx2.S x86: Add support to build strcmp/strlen/strchr with explicit ISA level 2022-07-16 03:07:59 -07:00
wcsnlen-evex512.S x86: Unifies 'strlen-evex' and 'strlen-evex512' implementations. 2023-12-18 12:38:01 -06:00
wcsnlen-evex.S x86: Optimize strnlen-evex.S and implement with VMM headers 2022-10-19 17:31:03 -07:00
wcsnlen-generic.c Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
wcsnlen-sse4_1.S x86: Add support to build strcmp/strlen/strchr with explicit ISA level 2022-07-16 03:07:59 -07:00
wcsnlen.c Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
wcsrchr-avx2-rtm.S x86-64: Add AVX optimized string/memory functions for RTM 2021-03-29 07:40:17 -07:00
wcsrchr-avx2.S x86: Add support to build strcmp/strlen/strchr with explicit ISA level 2022-07-16 03:07:59 -07:00
wcsrchr-evex512.S x86_64: Implement evex512 version of strrchr and wcsrchr 2022-11-03 15:51:52 -07:00
wcsrchr-evex.S x86: Prepare strrchr-evex and strrchr-evex512 for AVX10 2023-10-06 00:18:55 -05:00
wcsrchr-sse2.S Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
wcsrchr.c Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
wmemchr-avx2-rtm.S x86-64: Add AVX optimized string/memory functions for RTM 2021-03-29 07:40:17 -07:00
wmemchr-avx2.S x86: Add support for compiling {raw|w}memchr with high ISA level 2022-06-22 19:41:35 -07:00
wmemchr-evex512.S x86_64: Implement evex512 version of memchr, rawmemchr and wmemchr 2022-10-18 13:26:33 -07:00
wmemchr-evex-rtm.S x86: Add EVEX optimized memchr family not safe for RTM 2021-05-08 16:26:30 -04:00
wmemchr-evex.S x86: Add support for compiling {raw|w}memchr with high ISA level 2022-06-22 19:41:35 -07:00
wmemchr-sse2.S x86: Add support for compiling {raw|w}memchr with high ISA level 2022-06-22 19:41:35 -07:00
wmemchr.c Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
wmemcmp-avx2-movbe-rtm.S x86-64: Add AVX optimized string/memory functions for RTM 2021-03-29 07:40:17 -07:00
wmemcmp-avx2-movbe.S x86: Add support for building {w}memcmp{eq} with explicit ISA level 2022-07-05 16:42:42 -07:00
wmemcmp-evex-movbe.S x86: Add support for building {w}memcmp{eq} with explicit ISA level 2022-07-05 16:42:42 -07:00
wmemcmp-sse2.S Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
wmemcmp.c Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
wmemset_chk-nonshared.S Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
wmemset_chk.c Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
wmemset.c Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
x86-avx-rtm-vecs.h Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
x86-avx-vecs.h Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
x86-evex256-vecs.h Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
x86-evex512-vecs.h Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
x86-evex-vecs-common.h Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
x86-sse2-vecs.h Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
x86-vec-macros.h Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00