aboutsummaryrefslogtreecommitdiff
path: root/sysdeps/x86_64/strncmp.S
AgeCommit message (Collapse)Author
2015-08-28Make strcmp with unaligned load/store the defaulthjl/unalignedH.J. Lu
Since strcmp_sse2_unaligned performs better on current Intel and AMD processors, this patch makes it the default. * sysdeps/x86_64/strcmp.S: Moved to ... * sysdeps/x86_64/multiarch/strcmp-sse2.S: Here. Remove "#if !IS_IN (libc)". Remove libc_hidden_builtin_def (STRCMP). (STRCMP): Defined to __strcmp_sse2 if not defined. * sysdeps/x86_64/multiarch/strcmp-sse2-unaligned.S: Moved to ... * sysdeps/x86_64/strcmp.S: Here. Remove "#if IS_IN (libc)". Add .text. Add libc_hidden_builtin_def (strcmp). (__strcmp_sse2_unaligned): Renamed to ... (strcmp): This. * sysdeps/x86_64/multiarch/Makefile (sysdep_routines): Add strcmp-sse2. * sysdeps/x86_64/multiarch/strcasecmp_l-ssse3.S: Include strcmp-sse2.S instead of ../strcmp.S. * sysdeps/x86_64/multiarch/strcmp-ssse3.S: Likewise. * sysdeps/x86_64/multiarch/strncase_l-ssse3.S: Likewise. * sysdeps/x86_64/multiarch/strncmp-ssse3.S: Likewise. * sysdeps/x86_64/multiarch/strcmp.S [USE_AS_STRCMP] (STRCMP_SSE2): Set to __strcmp_sse2_unaligned. [USE_AS_STRCMP] (STRCMP): Load __strcmp_sse2 instead of STRCMP_SSE2. [USE_AS_STRCMP] (strcmp): Defined __strcmp_sse2_unaligned if in libc. [!USE_AS_STRCMP]: Include strcmp-sse2S instead of ../strcmp.S. * sysdeps/x86_64/strcasecmp_l.S: Include multiarch/strcmp-sse2.S instead of strcmp.S. Add libc_hidden_builtin_def (STRCMP). * sysdeps/x86_64/strncase_l.S: Likewise. * sysdeps/x86_64/strncmp.S: Likewise.
2009-07-26Add SSE2 support to str{,n}cmp for x86-64.H.J. Lu