glibc/sysdeps/x86_64/multiarch
Noah Goldstein 104c7b1967 x86: Add EVEX optimized memchr family not safe for RTM
No bug.

This commit adds a new implementation for EVEX memchr that is not safe
for RTM because it uses vzeroupper. The benefit is that by using
ymm0-ymm15 it can use vpcmpeq and vpternlogd in the 4x loop which is
faster than the RTM safe version which cannot use vpcmpeq because
there is no EVEX encoding for the instruction. All parts of the
implementation aside from the 4x loop are the same for the two
versions and the optimization is only relevant for large sizes.

Tigerlake:
size  , algn  , Pos   , Cur T , New T , Win     , Dif
512   , 6     , 192   , 9.2   , 9.04  , no-RTM  , 0.16
512   , 7     , 224   , 9.19  , 8.98  , no-RTM  , 0.21
2048  , 0     , 256   , 10.74 , 10.54 , no-RTM  , 0.2
2048  , 0     , 512   , 14.81 , 14.87 , RTM     , 0.06
2048  , 0     , 1024  , 22.97 , 22.57 , no-RTM  , 0.4
2048  , 0     , 2048  , 37.49 , 34.51 , no-RTM  , 2.98   <--

Icelake:
size  , algn  , Pos   , Cur T , New T , Win     , Dif
512   , 6     , 192   , 7.6   , 7.3   , no-RTM  , 0.3
512   , 7     , 224   , 7.63  , 7.27  , no-RTM  , 0.36
2048  , 0     , 256   , 8.48  , 8.38  , no-RTM  , 0.1
2048  , 0     , 512   , 11.57 , 11.42 , no-RTM  , 0.15
2048  , 0     , 1024  , 17.92 , 17.38 , no-RTM  , 0.54
2048  , 0     , 2048  , 30.37 , 27.34 , no-RTM  , 3.03   <--

test-memchr, test-wmemchr, and test-rawmemchr are all passing.

Signed-off-by: Noah Goldstein <goldstein.w.n@gmail.com>
Reviewed-by: H.J. Lu <hjl.tools@gmail.com>
2021-05-08 16:26:30 -04:00
..
bcopy.S Use IFUNC memmove/memset in x86-64 bcopy/bzero 2012-10-11 13:58:16 -07:00
ifunc-avx2.h x86-64: Require BMI2 for strchr-avx2.S 2021-04-19 11:01:45 -07:00
ifunc-evex.h x86: Add EVEX optimized memchr family not safe for RTM 2021-05-08 16:26:30 -04:00
ifunc-impl-list.c x86: Add EVEX optimized memchr family not safe for RTM 2021-05-08 16:26:30 -04:00
ifunc-memcmp.h x86-64: Add AVX optimized string/memory functions for RTM 2021-03-29 07:40:17 -07:00
ifunc-memmove.h x86-64: Use ZMM16-ZMM31 in AVX512 memmove family functions 2021-03-29 07:40:17 -07:00
ifunc-memset.h x86: Optimize less_vec evex and avx512 memset-vec-unaligned-erms.S 2021-04-19 15:08:04 -07:00
ifunc-sse4_2.h Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
ifunc-strcasecmp.h Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
ifunc-strcpy.h x86-64: Add AVX optimized string/memory functions for RTM 2021-03-29 07:40:17 -07:00
ifunc-wmemset.h x86-64: Use ZMM16-ZMM31 in AVX512 memset family functions 2021-03-29 07:40:17 -07:00
Makefile x86: Add EVEX optimized memchr family not safe for RTM 2021-05-08 16:26:30 -04:00
memchr-avx2-rtm.S x86-64: Add AVX optimized string/memory functions for RTM 2021-03-29 07:40:17 -07:00
memchr-avx2.S x86: Optimize memchr-avx2.S 2021-05-03 21:17:21 -04: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 x86: Add EVEX optimized memchr family not safe for RTM 2021-05-08 16:26:30 -04:00
memchr-sse2.S Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
memchr.c x86: Add EVEX optimized memchr family not safe for RTM 2021-05-08 16:26:30 -04: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 x86-64: Add AVX optimized string/memory functions for RTM 2021-03-29 07:40:17 -07:00
memcmp-evex-movbe.S x86-64: Add memcmp family functions with 256-bit EVEX 2021-03-29 07:40:17 -07:00
memcmp-sse2.S Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
memcmp-sse4.S Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
memcmp-ssse3.S Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
memcmp.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
memcpy_chk-nonshared.S Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
memcpy_chk.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
memcpy-ssse3-back.S Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
memcpy-ssse3.S Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
memcpy.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
memmove_chk-nonshared.S Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
memmove_chk.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
memmove-avx512-no-vzeroupper.S Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
memmove-avx512-unaligned-erms.S x86-64: Use ZMM16-ZMM31 in AVX512 memmove family functions 2021-03-29 07:40:17 -07:00
memmove-avx-unaligned-erms-rtm.S x86-64: Add AVX optimized string/memory functions for RTM 2021-03-29 07:40:17 -07:00
memmove-avx-unaligned-erms.S X86-64: Use non-temporal store in memcpy on large data 2016-04-12 08:10:47 -07:00
memmove-evex-unaligned-erms.S x86-64: Add memmove family functions with 256-bit EVEX 2021-03-29 07:40:17 -07:00
memmove-sse2-unaligned-erms.S Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
memmove-ssse3-back.S Improve 64bit memcpy/memmove for Atom, Core 2 and Core i7 2010-06-30 08:26:11 -07:00
memmove-ssse3.S Improve 64bit memcpy/memmove for Atom, Core 2 and Core i7 2010-06-30 08:26:11 -07:00
memmove-vec-unaligned-erms.S x86: Update large memcpy case in memmove-vec-unaligned-erms.S 2021-04-16 10:06:56 -07:00
memmove.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
mempcpy_chk-nonshared.S Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
mempcpy_chk.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
mempcpy.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
memrchr-avx2-rtm.S x86-64: Add AVX optimized string/memory functions for RTM 2021-03-29 07:40:17 -07:00
memrchr-avx2.S x86-64: Add AVX optimized string/memory functions for RTM 2021-03-29 07:40:17 -07:00
memrchr-evex.S x86-64: Add ifunc-avx2.h functions with 256-bit EVEX 2021-03-29 07:40:17 -07:00
memrchr-sse2.S Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
memrchr.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
memset_chk-nonshared.S Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
memset_chk.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
memset-avx2-unaligned-erms-rtm.S x86-64: Add AVX optimized string/memory functions for RTM 2021-03-29 07:40:17 -07:00
memset-avx2-unaligned-erms.S x86-64: Add AVX optimized string/memory functions for RTM 2021-03-29 07:40:17 -07:00
memset-avx512-no-vzeroupper.S Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
memset-avx512-unaligned-erms.S x86: Optimize less_vec evex and avx512 memset-vec-unaligned-erms.S 2021-04-19 15:08:04 -07:00
memset-evex-unaligned-erms.S x86: Optimize less_vec evex and avx512 memset-vec-unaligned-erms.S 2021-04-19 15:08:04 -07:00
memset-sse2-unaligned-erms.S Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
memset-vec-unaligned-erms.S x86: Optimize less_vec evex and avx512 memset-vec-unaligned-erms.S 2021-04-19 15:08:04 -07:00
memset.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -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-64: Optimize memchr/rawmemchr/wmemchr with SSE2/AVX2 2017-06-09 05:13:31 -07:00
rawmemchr-evex-rtm.S x86: Add EVEX optimized memchr family not safe for RTM 2021-05-08 16:26:30 -04:00
rawmemchr-evex.S x86-64: Add ifunc-avx2.h functions with 256-bit EVEX 2021-03-29 07:40:17 -07:00
rawmemchr-sse2.S Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
rawmemchr.c x86: Add EVEX optimized memchr family not safe for RTM 2021-05-08 16:26:30 -04:00
stpcpy-avx2-rtm.S x86-64: Add AVX optimized string/memory functions for RTM 2021-03-29 07:40:17 -07:00
stpcpy-avx2.S x86-64: Optimize strcat/strncat, strcpy/strncpy and stpcpy/stpncpy with AVX2 2019-01-14 09:43:38 -06:00
stpcpy-evex.S x86-64: Add strcpy family functions with 256-bit EVEX 2021-03-29 07:40:17 -07:00
stpcpy-sse2-unaligned.S Improved st{r,p}{,n}cpy for SSE2 and SSSE3 on x86-64 2011-06-24 15:14:22 -04:00
stpcpy-sse2.S Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
stpcpy-ssse3.S Improved st{r,p}{,n}cpy for SSE2 and SSSE3 on x86-64 2011-06-24 15:14:22 -04:00
stpcpy.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
stpncpy-avx2-rtm.S x86-64: Add AVX optimized string/memory functions for RTM 2021-03-29 07:40:17 -07:00
stpncpy-avx2.S x86-64: Optimize strcat/strncat, strcpy/strncpy and stpcpy/stpncpy with AVX2 2019-01-14 09:43:38 -06:00
stpncpy-c.c x86-64: Implement strcpy family IFUNC selectors in C 2017-06-12 09:06:09 -07:00
stpncpy-evex.S x86-64: Add strcpy family functions with 256-bit EVEX 2021-03-29 07:40:17 -07:00
stpncpy-sse2-unaligned.S Improved st{r,p}{,n}cpy for SSE2 and SSSE3 on x86-64 2011-06-24 15:14:22 -04:00
stpncpy-ssse3.S Improved st{r,p}{,n}cpy for SSE2 and SSSE3 on x86-64 2011-06-24 15:14:22 -04:00
stpncpy.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
strcasecmp_l-avx.S Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
strcasecmp_l-sse2.S Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
strcasecmp_l-sse4_2.S Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
strcasecmp_l-ssse3.S Fix x86-64 build without multiarch. 2010-08-14 14:56:32 -07:00
strcasecmp_l.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
strcasecmp.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
strcat-avx2-rtm.S x86-64: Add AVX optimized string/memory functions for RTM 2021-03-29 07:40:17 -07:00
strcat-avx2.S x86-64: Add AVX optimized string/memory functions for RTM 2021-03-29 07:40:17 -07:00
strcat-evex.S x86-64: Add strcpy family functions with 256-bit EVEX 2021-03-29 07:40:17 -07:00
strcat-sse2-unaligned.S Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
strcat-sse2.S Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
strcat-ssse3.S Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
strcat.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -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 x86: Optimize strchr-avx2.S 2021-04-25 10:04:31 -07:00
strchr-evex.S x86: Optimize strchr-evex.S 2021-04-25 10:04:39 -07:00
strchr-sse2-no-bsf.S Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
strchr-sse2.S Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
strchr.c x86-64: Add AVX optimized string/memory functions for RTM 2021-03-29 07:40:17 -07: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-64: Optimize strchr/strchrnul/wcschr with AVX2 2017-06-09 05:42:29 -07:00
strchrnul-evex.S x86-64: Add ifunc-avx2.h functions with 256-bit EVEX 2021-03-29 07:40:17 -07:00
strchrnul-sse2.S Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
strchrnul.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
strcmp-avx2-rtm.S x86-64: Add AVX optimized string/memory functions for RTM 2021-03-29 07:40:17 -07:00
strcmp-avx2.S x86-64: Add AVX optimized string/memory functions for RTM 2021-03-29 07:40:17 -07:00
strcmp-evex.S x86-64: Add ifunc-avx2.h functions with 256-bit EVEX 2021-03-29 07:40:17 -07:00
strcmp-sse2-unaligned.S Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
strcmp-sse2.S Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
strcmp-sse4_2.S Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
strcmp-sse42.S Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
strcmp-ssse3.S Remove NOT_IN_libc 2014-11-24 15:03:45 +05:30
strcmp.c x86-64: Add AVX optimized string/memory functions for RTM 2021-03-29 07:40:17 -07:00
strcpy-avx2-rtm.S x86-64: Add AVX optimized string/memory functions for RTM 2021-03-29 07:40:17 -07:00
strcpy-avx2.S x86-64: Add AVX optimized string/memory functions for RTM 2021-03-29 07:40:17 -07:00
strcpy-evex.S x86-64: Add strcpy family functions with 256-bit EVEX 2021-03-29 07:40:17 -07:00
strcpy-sse2-unaligned.S Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
strcpy-sse2.S Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
strcpy-ssse3.S Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
strcpy.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
strcspn-c.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
strcspn-sse2.S Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
strcspn.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -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 x86: Optimize strlen-avx2.S 2021-04-19 18:03:49 -07:00
strlen-evex.S x86: Optimize strlen-evex.S 2021-04-19 18:03:49 -07:00
strlen-sse2.S Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
strlen.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
strncase_l-avx.S Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
strncase_l-sse2.S Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
strncase_l-sse4_2.S Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
strncase_l-ssse3.S Add optimized strncasecmp versions for x86-64. 2010-08-14 22:04:01 -07:00
strncase_l.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
strncase.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
strncat-avx2-rtm.S x86-64: Add AVX optimized string/memory functions for RTM 2021-03-29 07:40:17 -07:00
strncat-avx2.S x86-64: Optimize strcat/strncat, strcpy/strncpy and stpcpy/stpncpy with AVX2 2019-01-14 09:43:38 -06:00
strncat-c.c x86-64: Use IFUNC strncat inside libc.so 2018-05-16 09:04:35 -07:00
strncat-evex.S x86-64: Add strcpy family functions with 256-bit EVEX 2021-03-29 07:40:17 -07:00
strncat-sse2-unaligned.S Improve 64 bit strcat functions with SSE2/SSSE3 2011-07-19 17:11:54 -04:00
strncat-ssse3.S Improve 64 bit strcat functions with SSE2/SSSE3 2011-07-19 17:11:54 -04:00
strncat.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
strncmp-avx2-rtm.S x86-64: Add AVX optimized string/memory functions for RTM 2021-03-29 07:40:17 -07:00
strncmp-avx2.S x86-64: Optimize strcmp/wcscmp and strncmp/wcsncmp with AVX2 2018-06-01 16:32:43 -05:00
strncmp-evex.S x86-64: Add ifunc-avx2.h functions with 256-bit EVEX 2021-03-29 07:40:17 -07:00
strncmp-sse2.S Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
strncmp-sse4_2.S Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
strncmp-ssse3.S Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
strncmp.c x86-64: Add AVX optimized string/memory functions for RTM 2021-03-29 07:40:17 -07:00
strncpy-avx2-rtm.S x86-64: Add AVX optimized string/memory functions for RTM 2021-03-29 07:40:17 -07:00
strncpy-avx2.S x86-64: Optimize strcat/strncat, strcpy/strncpy and stpcpy/stpncpy with AVX2 2019-01-14 09:43:38 -06:00
strncpy-c.c x86-64: Implement strcpy family IFUNC selectors in C 2017-06-12 09:06:09 -07:00
strncpy-evex.S x86-64: Add strcpy family functions with 256-bit EVEX 2021-03-29 07:40:17 -07:00
strncpy-sse2-unaligned.S Improved st{r,p}{,n}cpy for SSE2 and SSSE3 on x86-64 2011-06-24 15:14:22 -04:00
strncpy-ssse3.S Improved st{r,p}{,n}cpy for SSE2 and SSSE3 on x86-64 2011-06-24 15:14:22 -04:00
strncpy.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -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-64: Optimize strlen/strnlen/wcslen/wcsnlen with AVX2 2017-06-09 05:18:18 -07:00
strnlen-evex.S x86-64: Add ifunc-avx2.h functions with 256-bit EVEX 2021-03-29 07:40:17 -07:00
strnlen-sse2.S Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
strnlen.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
strpbrk-c.c x86-64: Implement strcspn/strpbrk/strspn IFUNC selectors in C 2017-06-15 08:59:05 -07:00
strpbrk-sse2.S Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
strpbrk.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -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 x86-64: Add AVX optimized string/memory functions for RTM 2021-03-29 07:40:17 -07:00
strrchr-evex.S x86-64: Add ifunc-avx2.h functions with 256-bit EVEX 2021-03-29 07:40:17 -07:00
strrchr-sse2.S Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
strrchr.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
strspn-c.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
strspn-sse2.S Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
strspn.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
strstr-sse2-unaligned.S Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
strstr.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
varshift.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
varshift.h Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -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-64: Optimize strchr/strchrnul/wcschr with AVX2 2017-06-09 05:42:29 -07:00
wcschr-evex.S x86-64: Add ifunc-avx2.h functions with 256-bit EVEX 2021-03-29 07:40:17 -07:00
wcschr-sse2.S Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
wcschr.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
wcscmp-avx2-rtm.S x86-64: Add AVX optimized string/memory functions for RTM 2021-03-29 07:40:17 -07:00
wcscmp-avx2.S x86-64: Optimize strcmp/wcscmp and strncmp/wcsncmp with AVX2 2018-06-01 16:32:43 -05:00
wcscmp-evex.S x86-64: Add ifunc-avx2.h functions with 256-bit EVEX 2021-03-29 07:40:17 -07:00
wcscmp-sse2.S Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
wcscmp.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
wcscpy-c.c wcsmbs: optimize wcscat 2019-02-27 10:00:37 -03:00
wcscpy-ssse3.S Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
wcscpy.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -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-64: Optimize strlen/strnlen/wcslen/wcsnlen with AVX2 2017-06-09 05:18:18 -07:00
wcslen-evex.S x86-64: Add ifunc-avx2.h functions with 256-bit EVEX 2021-03-29 07:40:17 -07:00
wcslen-sse2.S Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
wcslen.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
wcsncmp-avx2-rtm.S x86-64: Add AVX optimized string/memory functions for RTM 2021-03-29 07:40:17 -07:00
wcsncmp-avx2.S x86-64: Optimize strcmp/wcscmp and strncmp/wcsncmp with AVX2 2018-06-01 16:32:43 -05:00
wcsncmp-evex.S x86-64: Add ifunc-avx2.h functions with 256-bit EVEX 2021-03-29 07:40:17 -07:00
wcsncmp-sse2.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
wcsncmp.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -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-64: Optimize strlen/strnlen/wcslen/wcsnlen with AVX2 2017-06-09 05:18:18 -07:00
wcsnlen-c.c x86-64: Move wcsnlen.S to multiarch/wcsnlen-sse4_1.S 2017-06-06 06:12:32 -07:00
wcsnlen-evex.S x86-64: Add ifunc-avx2.h functions with 256-bit EVEX 2021-03-29 07:40:17 -07:00
wcsnlen-sse4_1.S x86-64: Move wcsnlen.S to multiarch/wcsnlen-sse4_1.S 2017-06-06 06:12:32 -07:00
wcsnlen.c x86-64: Add AVX optimized string/memory functions for RTM 2021-03-29 07:40:17 -07: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-64: Optimize strrchr/wcsrchr with AVX2 2017-06-09 05:45:52 -07:00
wcsrchr-evex.S x86-64: Add ifunc-avx2.h functions with 256-bit EVEX 2021-03-29 07:40:17 -07:00
wcsrchr-sse2.S Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
wcsrchr.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -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-64: Optimize memchr/rawmemchr/wmemchr with SSE2/AVX2 2017-06-09 05:13:31 -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-64: Add ifunc-avx2.h functions with 256-bit EVEX 2021-03-29 07:40:17 -07:00
wmemchr-sse2.S x86-64: Optimize memchr/rawmemchr/wmemchr with SSE2/AVX2 2017-06-09 05:13:31 -07:00
wmemchr.c x86: Add EVEX optimized memchr family not safe for RTM 2021-05-08 16:26:30 -04: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-64: Optimize memcmp/wmemcmp with AVX2 and MOVBE 2017-06-05 12:52:55 -07:00
wmemcmp-c.c Remove NOT_IN_libc 2014-11-24 15:03:45 +05:30
wmemcmp-evex-movbe.S x86-64: Add memcmp family functions with 256-bit EVEX 2021-03-29 07:40:17 -07:00
wmemcmp-sse4.S Optimized memcmp and wmemcmp for x86-64 and x86-32 2011-10-15 11:10:08 -04:00
wmemcmp-ssse3.S Optimized memcmp and wmemcmp for x86-64 and x86-32 2011-10-15 11:10:08 -04:00
wmemcmp.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
wmemset_chk-nonshared.S Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
wmemset_chk.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
wmemset.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00