Skip to content

Commit

Permalink
Add support for SSSE3 and SSE4.2 versions of strcasecmp on x86-64.
Browse files Browse the repository at this point in the history
  • Loading branch information
Ulrich Drepper committed Aug 1, 2010
1 parent 66f6765 commit 73507d3
Show file tree
Hide file tree
Showing 6 changed files with 394 additions and 22 deletions.
10 changes: 10 additions & 0 deletions ChangeLog
Original file line number Diff line number Diff line change
@@ -1,3 +1,13 @@
2010-07-31 Ulrich Drepper <drepper@redhat.com>

* sysdeps/x86_64/multiarch/Makefile [subdir=string] (sysdep_routines):
Add strcasecmp_l-ssse3.
* sysdeps/x86_64/multiarch/strcmp.S: Add support to compile for
strcasecmp.
* sysdeps/x86_64/strcmp.S: Allow more flexible compiling of strcasecmp.
* sysdeps/x86_64/multiarch/strcasecmp_l.S: New file.
* sysdeps/x86_64/multiarch/strcasecmp_l-ssse3.S: New file.

2010-07-30 Ulrich Drepper <drepper@redhat.com>

* sysdeps/x86_64/multiarch/strcmp.S: Pretty printing.
Expand Down
2 changes: 1 addition & 1 deletion sysdeps/x86_64/multiarch/Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@ ifeq ($(subdir),string)
sysdep_routines += stpncpy-c strncpy-c strcmp-ssse3 strncmp-ssse3 \
strend-sse4 memcmp-sse4 memcpy-ssse3 mempcpy-ssse3 \
memmove-ssse3 memcpy-ssse3-back mempcpy-ssse3-back \
memmove-ssse3-back strcasestr-nonascii
memmove-ssse3-back strcasestr-nonascii strcasecmp_l-ssse3
ifeq (yes,$(config-cflags-sse4))
sysdep_routines += strcspn-c strpbrk-c strspn-c strstr-c strcasestr-c
CFLAGS-strcspn-c.c += -msse4
Expand Down
5 changes: 5 additions & 0 deletions sysdeps/x86_64/multiarch/strcasecmp_l-ssse3.S
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
#define USE_SSSE3 1
#define USE_AS_STRCASECMP_L
#define STRCMP __strcasecmp_l_ssse3
#define __strcasecmp __strcasecmp_ssse3
#include "../strcmp.S"
6 changes: 6 additions & 0 deletions sysdeps/x86_64/multiarch/strcasecmp_l.S
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
#define STRCMP __strcasecmp_l
#define USE_AS_STRCASECMP_L
#include "strcmp.S"

weak_alias (__strcasecmp_l, strcasecmp_l)
libc_hidden_def (strcasecmp_l)
Loading

0 comments on commit 73507d3

Please sign in to comment.