aboutsummaryrefslogtreecommitdiff
path: root/sysdeps
diff options
context:
space:
mode:
authorUlrich Drepper <drepper@gmail.com>2011-11-01 16:46:23 -0400
committerUlrich Drepper <drepper@gmail.com>2011-11-01 16:46:23 -0400
commit34372fc6d3e7bb8870905a6ac124bb2217e3800a (patch)
treed3c72b43b1edd7a32a137e7c0ae2a0f66074b85e /sysdeps
parentfadb59f8d322e5c7ec3c2dd2cbf5d44baf5eddd9 (diff)
downloadglibc-34372fc6d3e7bb8870905a6ac124bb2217e3800a.tar
glibc-34372fc6d3e7bb8870905a6ac124bb2217e3800a.tar.gz
glibc-34372fc6d3e7bb8870905a6ac124bb2217e3800a.tar.bz2
glibc-34372fc6d3e7bb8870905a6ac124bb2217e3800a.zip
Fix test of non-ASCII locales in x86-64 strcasecmp et.al.
Diffstat (limited to 'sysdeps')
-rw-r--r--sysdeps/x86_64/multiarch/strcmp-sse42.S4
-rw-r--r--sysdeps/x86_64/strcmp.S6
2 files changed, 5 insertions, 5 deletions
diff --git a/sysdeps/x86_64/multiarch/strcmp-sse42.S b/sysdeps/x86_64/multiarch/strcmp-sse42.S
index b93eda13b4..7a50ff05db 100644
--- a/sysdeps/x86_64/multiarch/strcmp-sse42.S
+++ b/sysdeps/x86_64/multiarch/strcmp-sse42.S
@@ -104,7 +104,7 @@ STRCMP_SSE42:
# else
movq (%rdx), %rax
# endif
- testl $0, LOCALE_DATA_VALUES+_NL_CTYPE_NONASCII_CASE*SIZEOF_VALUES(%rax)
+ testl $1, LOCALE_DATA_VALUES+_NL_CTYPE_NONASCII_CASE*SIZEOF_VALUES(%rax)
jne __strcasecmp_l_nonascii
#endif
#ifdef USE_AS_STRNCASECMP_L
@@ -115,7 +115,7 @@ STRCMP_SSE42:
# else
movq (%rcx), %rax
# endif
- testl $0, LOCALE_DATA_VALUES+_NL_CTYPE_NONASCII_CASE*SIZEOF_VALUES(%rax)
+ testl $1, LOCALE_DATA_VALUES+_NL_CTYPE_NONASCII_CASE*SIZEOF_VALUES(%rax)
jne __strncasecmp_l_nonascii
#endif
diff --git a/sysdeps/x86_64/strcmp.S b/sysdeps/x86_64/strcmp.S
index 165073e907..6e5bdaaf2e 100644
--- a/sysdeps/x86_64/strcmp.S
+++ b/sysdeps/x86_64/strcmp.S
@@ -1,5 +1,5 @@
/* Highly optimized version for x86-64.
- Copyright (C) 1999, 2000, 2002, 2003, 2005, 2009, 2010
+ Copyright (C) 1999, 2000, 2002, 2003, 2005, 2009, 2010, 2011
Free Software Foundation, Inc.
This file is part of the GNU C Library.
Based on i686 version contributed by Ulrich Drepper
@@ -157,7 +157,7 @@ END (BP_SYM (STRCMP))
# else
movq (%rdx), %rax
# endif
- testl $0, LOCALE_DATA_VALUES+_NL_CTYPE_NONASCII_CASE*SIZEOF_VALUES(%rax)
+ testl $1, LOCALE_DATA_VALUES+_NL_CTYPE_NONASCII_CASE*SIZEOF_VALUES(%rax)
jne __strcasecmp_l_nonascii
# elif defined USE_AS_STRNCASECMP_L
/* We have to fall back on the C implementation for locales
@@ -167,7 +167,7 @@ END (BP_SYM (STRCMP))
# else
movq (%rcx), %rax
# endif
- testl $0, LOCALE_DATA_VALUES+_NL_CTYPE_NONASCII_CASE*SIZEOF_VALUES(%rax)
+ testl $1, LOCALE_DATA_VALUES+_NL_CTYPE_NONASCII_CASE*SIZEOF_VALUES(%rax)
jne __strncasecmp_l_nonascii
# endif