Fix x86 strcasecmp_l (bug 13786).
authorJoseph Myers <joseph@codesourcery.com>
Wed, 29 Feb 2012 22:37:38 +0000 (22:37 +0000)
committerJoseph Myers <joseph@codesourcery.com>
Wed, 29 Feb 2012 22:37:38 +0000 (22:37 +0000)
ChangeLog
sysdeps/i386/i686/multiarch/strcasecmp_l-c.c
sysdeps/i386/i686/multiarch/strcmp.S
sysdeps/i386/i686/multiarch/strncase_l-c.c

index 59fc3c0..e2bc926 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,15 @@
 2012-02-29  Joseph Myers  <joseph@codesourcery.com>
 
+       [BZ #13786]
+       * sysdeps/i386/i686/multiarch/strcmp.S [USE_AS_STRCASECMP_L]: Do
+       not include ../strcmp.S.
+       [USE_AS_STRNCASECMP_L]: Likewise.
+       * sysdeps/i386/i686/multiarch/strcasecmp_l-c.c
+       (__strcasecmp_l_ia32): Define as alias to __strcasecmp_l_nonascii.
+       * sysdeps/i386/i686/multiarch/strncase_l-c.c
+       (__strncasecmp_l_ia32): Define as alias to
+       __strncasecmp_l_nonascii.
+
        [BZ #5794]
        * math/libm-test.inc (expm1_test): Add test for bug 5794.
        * sysdeps/i386/fpu/libm-test-ulps: Update.
index d10e872..d4fcd2b 100644 (file)
@@ -6,6 +6,8 @@ extern __typeof (strcasecmp_l) __strcasecmp_l_nonascii;
 #define USE_IN_EXTENDED_LOCALE_MODEL    1
 #include <string/strcasecmp.c>
 
+strong_alias (__strcasecmp_l_nonascii, __strcasecmp_l_ia32)
+
 /* The needs of strcasecmp in libc are minimal, no need to go through
    the IFUNC.  */
 strong_alias (__strcasecmp_l_nonascii, __GI___strcasecmp_l)
index 5410d17..b3b9eb8 100644 (file)
@@ -111,6 +111,7 @@ END(STRCMP)
 # endif
 #endif
 
-#ifndef USE_AS_STRNCMP
+#if !defined USE_AS_STRNCMP && !defined USE_AS_STRCASECMP_L \
+    && !defined USE_AS_STRNCASECMP_L
 # include "../strcmp.S"
 #endif
index 0c68b8d..7e601af 100644 (file)
@@ -6,6 +6,8 @@ extern __typeof (strncasecmp_l) __strncasecmp_l_nonascii;
 #define USE_IN_EXTENDED_LOCALE_MODEL    1
 #include <string/strncase.c>
 
+strong_alias (__strncasecmp_l_nonascii, __strncasecmp_l_ia32)
+
 /* The needs of strcasecmp in libc are minimal, no need to go through
    the IFUNC.  */
 strong_alias (__strncasecmp_l_nonascii, __GI___strncasecmp_l)