glibc/sysdeps/x86_64/multiarch
Noah Goldstein b6a02c3606 x86: Add support for building {w}memmove{_chk} with explicit ISA level
1. Refactor files so that all implementations are in the multiarch
   directory
    - Moved the implementation portion of memmove sse2 from memmove.S
      to multiarch/memmove-sse2.S

    - The non-multiarch file now only includes one of the
      implementations in the multiarch directory based on the compiled
      ISA level (only used for non-multiarch builds.  Otherwise we go
      through the ifunc selector).

2. Add ISA level build guards to different implementations.
    - I.e memmove-avx2-unaligned-erms.S which is ISA level 3 will only
      build if compiled ISA level <= 3. Otherwise there is no reason
      to include it as we will always use one of the ISA level 4
      implementations (memmove-evex-unaligned-erms.S).

3. Add new multiarch/rtld-memmove.S that just include the
   non-multiarch memmove.S which will in turn select the best
   implementation based on the compiled ISA level.

4. Refactor the ifunc selector and ifunc implementation list to use
   the ISA level aware wrapper macros that allow functions below the
   compiled ISA level (with a guranteed replacement) to be skipped.

Tested with and without multiarch on x86_64 for ISA levels:
{generic, x86-64-v2, x86-64-v3, x86-64-v4}

And m32 with and without multiarch.
isa raising memmove
2022-07-05 16:42:42 -07:00
..
avx-rtm-vecs.h x86: Add COND_VZEROUPPER that can replace vzeroupper if no ret 2022-06-07 13:08:28 -07:00
avx-vecs.h x86: Create header for VEC classes in x86 strings library 2022-06-07 13:08:28 -07:00
evex256-vecs.h x86: Create header for VEC classes in x86 strings library 2022-06-07 13:08:28 -07:00
evex512-vecs.h x86: Create header for VEC classes in x86 strings library 2022-06-07 13:08:28 -07:00
evex-vecs-common.h x86: Create header for VEC classes in x86 strings library 2022-06-07 13:08:28 -07:00
ifunc-avx2.h x86: Rename generic functions with unique postfix for clarity 2022-06-16 20:17:45 -07:00
ifunc-evex.h x86: Fix backwards Prefer_No_VZEROUPPER check in ifunc-evex.h 2022-06-27 08:35:51 -07:00
ifunc-impl-list.c x86: Add support for building {w}memmove{_chk} with explicit ISA level 2022-07-05 16:42:42 -07:00
ifunc-memcmp.h x86: Remove memcmp-sse4.S 2022-04-15 13:08:42 -05:00
ifunc-memcmpeq.h Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
ifunc-memmove.h x86: Add support for building {w}memmove{_chk} with explicit ISA level 2022-07-05 16:42:42 -07:00
ifunc-memset.h Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
ifunc-sse4_2.h x86: Add support for building str{c|p}{brk|spn} with explicit ISA level 2022-07-05 16:42:42 -07:00
ifunc-strcasecmp.h x86: Remove str{n}{case}cmp-ssse3 2022-04-14 23:21:41 -05:00
ifunc-strcpy.h x86: Rename generic functions with unique postfix for clarity 2022-06-16 20:17:45 -07:00
ifunc-wcslen.h x86: Rename generic functions with unique postfix for clarity 2022-06-16 20:17:45 -07:00
ifunc-wmemset.h Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
Makefile x86: Move mem{p}{mov|cpy}_{chk_}erms to its own file 2022-06-29 19:47:52 -07:00
memchr-avx2-rtm.S x86: Shrink code size of memchr-avx2.S 2022-06-07 13:10:31 -07:00
memchr-avx2.S x86: Add support for compiling {raw|w}memchr with high ISA level 2022-06-22 19:41:35 -07: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 support for compiling {raw|w}memchr with high ISA level 2022-06-22 19:41:35 -07:00
memchr-sse2.S x86: Add support for compiling {raw|w}memchr with high ISA level 2022-06-22 19:41:35 -07:00
memchr.c Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -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 x86: Cleanup page cross code in memcmp-avx2-movbe.S 2022-04-15 13:08:52 -05:00
memcmp-evex-movbe.S Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
memcmp-sse2.S x86: Optimize memcmp SSE2 in memcmp.S 2022-04-15 13:08:35 -05:00
memcmp.c Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -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 2022-01-01 11:40:24 -08:00
memcmpeq-evex.S Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
memcmpeq-sse2.S x86: Optimize memcmp SSE2 in memcmp.S 2022-04-15 13:08:35 -05:00
memcmpeq.c Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
memcpy_chk-nonshared.S Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
memcpy_chk.c Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
memcpy.c Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
memmove_chk-nonshared.S Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
memmove_chk.c Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
memmove-avx512-no-vzeroupper.S x86: Add support for building {w}memmove{_chk} with explicit ISA level 2022-07-05 16:42:42 -07:00
memmove-avx512-unaligned-erms.S x86: Add support for building {w}memmove{_chk} with explicit ISA level 2022-07-05 16:42:42 -07:00
memmove-avx-unaligned-erms-rtm.S x86: Optimize memmove-vec-unaligned-erms.S 2021-11-06 16:18:03 -05:00
memmove-avx-unaligned-erms.S x86: Add support for building {w}memmove{_chk} with explicit ISA level 2022-07-05 16:42:42 -07:00
memmove-erms.S x86: Move mem{p}{mov|cpy}_{chk_}erms to its own file 2022-06-29 19:47:52 -07:00
memmove-evex-unaligned-erms.S x86: Add support for building {w}memmove{_chk} with explicit ISA level 2022-07-05 16:42:42 -07:00
memmove-shlib-compat.h x86: Add support for building {w}memmove{_chk} with explicit ISA level 2022-07-05 16:42:42 -07:00
memmove-sse2-unaligned-erms.S x86: Add support for building {w}memmove{_chk} with explicit ISA level 2022-07-05 16:42:42 -07:00
memmove-ssse3.S x86: Add support for building {w}memmove{_chk} with explicit ISA level 2022-07-05 16:42:42 -07:00
memmove-vec-unaligned-erms.S x86: Move mem{p}{mov|cpy}_{chk_}erms to its own file 2022-06-29 19:47:52 -07:00
memmove.c Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
mempcpy_chk-nonshared.S Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
mempcpy_chk.c Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
mempcpy.c Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
memrchr-avx2-rtm.S x86: Optimize memrchr-avx2.S 2022-06-07 13:10:27 -07:00
memrchr-avx2.S x86: Align entry for memrchr to 64-bytes. 2022-06-27 08:35:51 -07:00
memrchr-evex.S x86: Optimize memrchr-evex.S 2022-06-07 13:10:24 -07:00
memrchr-sse2.S Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
memrchr.c Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
memset_chk-nonshared.S Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
memset_chk.c Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
memset-avx2-unaligned-erms-rtm.S x86_64: Remove bzero optimization 2022-05-16 09:36:06 -03:00
memset-avx2-unaligned-erms.S x86_64: Remove bzero optimization 2022-05-16 09:36:06 -03:00
memset-avx512-no-vzeroupper.S Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
memset-avx512-unaligned-erms.S x86_64: Remove bzero optimization 2022-05-16 09:36:06 -03:00
memset-erms.S x86: Move and slightly improve memset_erms 2022-06-29 19:47:52 -07:00
memset-evex-unaligned-erms.S x86_64: Remove bzero optimization 2022-05-16 09:36:06 -03:00
memset-sse2-unaligned-erms.S x86_64: Remove bzero optimization 2022-05-16 09:36:06 -03:00
memset-vec-unaligned-erms.S x86: Move and slightly improve memset_erms 2022-06-29 19:47:52 -07:00
memset.c Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -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-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: Add support for compiling {raw|w}memchr with high ISA level 2022-06-22 19:41:35 -07:00
rawmemchr-sse2.S x86: Add support for compiling {raw|w}memchr with high ISA level 2022-06-22 19:41:35 -07:00
rawmemchr.c Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
rtld-memchr.S x86: Add support for compiling {raw|w}memchr with high ISA level 2022-06-22 19:41:35 -07:00
rtld-memmove.S x86: Add support for building {w}memmove{_chk} with explicit ISA level 2022-07-05 16:42:42 -07:00
rtld-rawmemchr.S x86: Add support for compiling {raw|w}memchr with high ISA level 2022-06-22 19:41:35 -07:00
rtld-strcspn.c x86: Add support for building str{c|p}{brk|spn} with explicit ISA level 2022-07-05 16:42:42 -07:00
sse2-vecs.h x86: Create header for VEC classes in x86 strings library 2022-06-07 13:08:28 -07: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 2022-01-01 11:40:24 -08:00
stpcpy.c Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -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-evex.S x86-64: Add strcpy family functions with 256-bit EVEX 2021-03-29 07:40:17 -07:00
stpncpy-generic.c x86: Rename generic functions with unique postfix for clarity 2022-06-16 20:17:45 -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.c x86: Rename generic functions with unique postfix for clarity 2022-06-16 20:17:45 -07:00
strcasecmp_l-avx2-rtm.S x86: Add AVX2 optimized str{n}casecmp 2022-03-25 13:16:43 -05:00
strcasecmp_l-avx2.S x86: Add AVX2 optimized str{n}casecmp 2022-03-25 13:16:43 -05:00
strcasecmp_l-evex.S x86: Add EVEX optimized str{n}casecmp 2022-03-25 13:16:50 -05:00
strcasecmp_l-sse2.S Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
strcasecmp_l-sse4_2.S Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
strcasecmp_l.c Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
strcasecmp.c Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -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 Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
strcat-evex.S Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
strcat-sse2-unaligned.S Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
strcat-sse2.S Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
strcat.c Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -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: Code cleanup in strchr-avx2 and comment justifying branch 2022-03-25 11:46:13 -05:00
strchr-evex.S x86: Code cleanup in strchr-evex and comment justifying branch 2022-03-25 11:46:13 -05:00
strchr-sse2-no-bsf.S Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
strchr-sse2.S Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
strchr.c Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -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-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 2022-01-01 11:40:24 -08:00
strchrnul.c Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -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: Add AVX2 optimized str{n}casecmp 2022-03-25 13:16:43 -05:00
strcmp-evex.S x86: Add EVEX optimized str{n}casecmp 2022-03-25 13:16:50 -05:00
strcmp-sse2-unaligned.S Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
strcmp-sse2.S Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
strcmp-sse4_2.S Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
strcmp-sse42.S x86: Remove AVX str{n}casecmp 2022-03-25 13:16:51 -05:00
strcmp.c x86: Add sse42 implementation to strcmp's ifunc 2022-06-14 20:58:09 -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 Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
strcpy-evex.S Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
strcpy-sse2-unaligned.S Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
strcpy-sse2.S Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
strcpy.c Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
strcspn-generic.c x86: Add support for building str{c|p}{brk|spn} with explicit ISA level 2022-07-05 16:42:42 -07:00
strcspn-sse4.c x86: Add support for building str{c|p}{brk|spn} with explicit ISA level 2022-07-05 16:42:42 -07:00
strcspn.c Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -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 2022-01-01 11:40:24 -08:00
strlen-evex512.S x86_64: Implement evex512 version of strlen, strnlen, wcslen and wcsnlen 2022-05-26 13:11:36 -07:00
strlen-evex-base.S x86_64: Implement evex512 version of strlen, strnlen, wcslen and wcsnlen 2022-05-26 13:11:36 -07:00
strlen-evex.S Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
strlen-sse2.S Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
strlen-vec.S x86: Put wcs{n}len-sse4.1 in the sse4.1 text section 2022-06-27 08:35:51 -07:00
strlen.c Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
strncase_l-avx2-rtm.S x86: Add AVX2 optimized str{n}casecmp 2022-03-25 13:16:43 -05:00
strncase_l-avx2.S x86: Add AVX2 optimized str{n}casecmp 2022-03-25 13:16:43 -05:00
strncase_l-evex.S x86: Add EVEX optimized str{n}casecmp 2022-03-25 13:16:50 -05:00
strncase_l-sse2.S Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
strncase_l-sse4_2.S Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
strncase_l.c Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
strncase.c Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -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-evex.S x86-64: Add strcpy family functions with 256-bit EVEX 2021-03-29 07:40:17 -07:00
strncat-generic.c x86: Rename generic functions with unique postfix for clarity 2022-06-16 20:17:45 -07:00
strncat-sse2-unaligned.S Improve 64 bit strcat functions with SSE2/SSSE3 2011-07-19 17:11:54 -04:00
strncat.c x86: Rename generic functions with unique postfix for clarity 2022-06-16 20:17:45 -07:00
strncmp-avx2-rtm.S x86: Fallback {str|wcs}cmp RTM in the ncmp overflow case [BZ #28896] 2022-02-17 15:43:05 -06:00
strncmp-avx2.S x86: Fallback {str|wcs}cmp RTM in the ncmp overflow case [BZ #28896] 2022-02-17 15:43:05 -06: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 2022-01-01 11:40:24 -08:00
strncmp-sse4_2.S x86: Add missing IS_IN (libc) check to strncmp-sse4_2.S 2022-06-29 19:47:52 -07:00
strncmp.c x86: Remove str{n}{case}cmp-ssse3 2022-04-14 23:21:41 -05: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-evex.S x86-64: Add strcpy family functions with 256-bit EVEX 2021-03-29 07:40:17 -07:00
strncpy-generic.c x86: Rename generic functions with unique postfix for clarity 2022-06-16 20:17:45 -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.c x86: Rename generic functions with unique postfix for clarity 2022-06-16 20:17:45 -07: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-evex512.S x86_64: Implement evex512 version of strlen, strnlen, wcslen and wcsnlen 2022-05-26 13:11:36 -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 2022-01-01 11:40:24 -08:00
strnlen.c Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
strpbrk-generic.c x86: Add support for building str{c|p}{brk|spn} with explicit ISA level 2022-07-05 16:42:42 -07:00
strpbrk-sse4.c x86: Add support for building str{c|p}{brk|spn} with explicit ISA level 2022-07-05 16:42:42 -07:00
strpbrk.c Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -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: Replace all sse instructions with vex equivilent in avx+ files 2022-06-22 19:42:17 -07:00
strrchr-evex.S x86: Optimize {str|wcs}rchr-evex 2022-04-22 23:08:43 -05:00
strrchr-sse2.S x86: Optimize {str|wcs}rchr-sse2 2022-04-22 23:08:36 -05:00
strrchr.c Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
strspn-generic.c x86: Add support for building str{c|p}{brk|spn} with explicit ISA level 2022-07-05 16:42:42 -07:00
strspn-sse4.c x86: Add support for building str{c|p}{brk|spn} with explicit ISA level 2022-07-05 16:42:42 -07:00
strspn.c Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
strstr-avx512.c x86_64: Add strstr function with 512-bit EVEX 2022-06-06 19:46:55 -07:00
strstr-sse2-unaligned.S x86: Rename strstr_sse2 to strstr_generic as it uses string/strstr.c 2022-06-27 08:35:51 -07:00
strstr.c x86: Rename strstr_sse2 to strstr_generic as it uses string/strstr.c 2022-06-27 08:35:51 -07:00
varshift.c x86: Add support for building str{c|p}{brk|spn} with explicit ISA level 2022-07-05 16:42:42 -07:00
varshift.h x86: Align varshift table to 32-bytes 2022-06-09 12:50:26 -07:00
vec-macros.h x86: Create header for VEC classes in x86 strings library 2022-06-07 13:08:28 -07: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 2022-01-01 11:40:24 -08:00
wcschr.c Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -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 2022-01-01 11:40:24 -08:00
wcscmp.c Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
wcscpy-generic.c x86: Rename generic functions with unique postfix for clarity 2022-06-16 20:17:45 -07:00
wcscpy-ssse3.S x86: Small improvements for wcscpy-ssse3 2022-03-28 15:00:03 -05:00
wcscpy.c x86: Rename generic functions with unique postfix for clarity 2022-06-16 20:17:45 -07: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-evex512.S x86_64: Implement evex512 version of strlen, strnlen, wcslen and wcsnlen 2022-05-26 13:11:36 -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 2022-01-01 11:40:24 -08:00
wcslen-sse4_1.S x86: Put wcs{n}len-sse4.1 in the sse4.1 text section 2022-06-27 08:35:51 -07:00
wcslen.c Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
wcsncmp-avx2-rtm.S x86: Fallback {str|wcs}cmp RTM in the ncmp overflow case [BZ #28896] 2022-02-17 15:43:05 -06:00
wcsncmp-avx2.S x86: Fallback {str|wcs}cmp RTM in the ncmp overflow case [BZ #28896] 2022-02-17 15:43:05 -06:00
wcsncmp-evex.S x86-64: Add ifunc-avx2.h functions with 256-bit EVEX 2021-03-29 07:40:17 -07:00
wcsncmp-generic.c x86: Rename generic functions with unique postfix for clarity 2022-06-16 20:17:45 -07:00
wcsncmp.c x86: Rename generic functions with unique postfix for clarity 2022-06-16 20:17:45 -07: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-evex512.S x86_64: Implement evex512 version of strlen, strnlen, wcslen and wcsnlen 2022-05-26 13:11:36 -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-generic.c x86: Rename generic functions with unique postfix for clarity 2022-06-16 20:17:45 -07:00
wcsnlen-sse4_1.S x86: Put wcs{n}len-sse4.1 in the sse4.1 text section 2022-06-27 08:35:51 -07:00
wcsnlen.c x86: Rename generic functions with unique postfix for clarity 2022-06-16 20:17:45 -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 x86: Optimize {str|wcs}rchr-sse2 2022-04-22 23:08:36 -05:00
wcsrchr.c Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -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-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 2022-01-01 11:40:24 -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-64: Optimize memcmp/wmemcmp with AVX2 and MOVBE 2017-06-05 12:52:55 -07:00
wmemcmp-evex-movbe.S x86-64: Add memcmp family functions with 256-bit EVEX 2021-03-29 07:40:17 -07:00
wmemcmp-sse2.S x86: Fix missing __wmemcmp def for disable-multiarch build 2022-04-19 20:18:57 -05:00
wmemcmp.c Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
wmemset_chk-nonshared.S Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
wmemset_chk.c Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
wmemset.c Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00