From 0bab47b6b255e77bd69206ab0dcfa97331fefa50 Mon Sep 17 00:00:00 2001 From: Joseph Myers Date: Wed, 29 Feb 2012 22:37:38 +0000 Subject: Fix x86 strcasecmp_l (bug 13786). --- sysdeps/i386/i686/multiarch/strcasecmp_l-c.c | 2 ++ sysdeps/i386/i686/multiarch/strcmp.S | 3 ++- sysdeps/i386/i686/multiarch/strncase_l-c.c | 2 ++ 3 files changed, 6 insertions(+), 1 deletion(-) (limited to 'sysdeps/i386') diff --git a/sysdeps/i386/i686/multiarch/strcasecmp_l-c.c b/sysdeps/i386/i686/multiarch/strcasecmp_l-c.c index d10e872568..d4fcd2b4a1 100644 --- a/sysdeps/i386/i686/multiarch/strcasecmp_l-c.c +++ b/sysdeps/i386/i686/multiarch/strcasecmp_l-c.c @@ -6,6 +6,8 @@ extern __typeof (strcasecmp_l) __strcasecmp_l_nonascii; #define USE_IN_EXTENDED_LOCALE_MODEL 1 #include +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) diff --git a/sysdeps/i386/i686/multiarch/strcmp.S b/sysdeps/i386/i686/multiarch/strcmp.S index 5410d17e09..b3b9eb87bc 100644 --- a/sysdeps/i386/i686/multiarch/strcmp.S +++ b/sysdeps/i386/i686/multiarch/strcmp.S @@ -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 diff --git a/sysdeps/i386/i686/multiarch/strncase_l-c.c b/sysdeps/i386/i686/multiarch/strncase_l-c.c index 0c68b8d1cb..7e601af271 100644 --- a/sysdeps/i386/i686/multiarch/strncase_l-c.c +++ b/sysdeps/i386/i686/multiarch/strncase_l-c.c @@ -6,6 +6,8 @@ extern __typeof (strncasecmp_l) __strncasecmp_l_nonascii; #define USE_IN_EXTENDED_LOCALE_MODEL 1 #include +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) -- cgit 1.4.1