This is the mail archive of the glibc-cvs@sourceware.org mailing list for the glibc project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

GNU C Library master sources branch hjl/ifunc/c updated. glibc-2.25-459-g04ff139


This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "GNU C Library master sources".

The branch, hjl/ifunc/c has been updated
       via  04ff139985118631eea7669d1bb595186cadbc24 (commit)
      from  d97e4b704165343b33c2e1fa929346b35c144168 (commit)

Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.

- Log -----------------------------------------------------------------
http://sourceware.org/git/gitweb.cgi?p=glibc.git;a=commitdiff;h=04ff139985118631eea7669d1bb595186cadbc24

commit 04ff139985118631eea7669d1bb595186cadbc24
Author: H.J. Lu <hjl.tools@gmail.com>
Date:   Mon Jun 12 21:45:44 2017 -0700

    Fix strcmp SSE4

diff --git a/sysdeps/x86_64/multiarch/Makefile b/sysdeps/x86_64/multiarch/Makefile
index e74e1d4..08b61ec 100644
--- a/sysdeps/x86_64/multiarch/Makefile
+++ b/sysdeps/x86_64/multiarch/Makefile
@@ -6,7 +6,7 @@ ifeq ($(subdir),string)
 
 sysdep_routines += strncat-c stpncpy-c strncpy-c \
 		   strcmp-sse2 strcmp-sse2-unaligned strcmp-ssse3  \
-		   strcmp-sse42 \
+		   strcmp-sse4_2 \
 		   strncmp-sse2 strncmp-ssse3 strncmp-sse42 \
 		   memchr-sse2 rawmemchr-sse2 memchr-avx2 rawmemchr-avx2 \
 		   memrchr-sse2 memrchr-avx2 \
diff --git a/sysdeps/x86_64/multiarch/strncase_l-sse42.S b/sysdeps/x86_64/multiarch/strcmp-sse4_2.S
similarity index 73%
copy from sysdeps/x86_64/multiarch/strncase_l-sse42.S
copy to sysdeps/x86_64/multiarch/strcmp-sse4_2.S
index 56e0fcd..acf0079 100644
--- a/sysdeps/x86_64/multiarch/strncase_l-sse42.S
+++ b/sysdeps/x86_64/multiarch/strcmp-sse4_2.S
@@ -1,4 +1,4 @@
-/* strncasecmp_l optimized with SSE4.2.
+/* strcmp optimized with SSE4.2.
    Copyright (C) 2017 Free Software Foundation, Inc.
    This file is part of the GNU C Library.
 
@@ -16,11 +16,6 @@
    License along with the GNU C Library; if not, see
    <http://www.gnu.org/licenses/>.  */
 
-#define SECTION			sse4.2
-#define GLABEL(l)		l##_sse42
-#define UPDATE_STRNCMP_COUNTER
-#define STRCMP_SSE42		__strncasecmp_l_sse42
-#define USE_AS_STRNCASECMP_L
-#define NO_NOLOCALE_ALIAS
-#include "locale-defines.h"
-#include "strcmp-sse42.S"
+#if IS_IN (libc)
+# include "strcmp-sse42.S"
+#endif
diff --git a/sysdeps/x86_64/multiarch/strncase_l-sse42.S b/sysdeps/x86_64/multiarch/strncase_l-sse42.S
index 56e0fcd..a13a7d6 100644
--- a/sysdeps/x86_64/multiarch/strncase_l-sse42.S
+++ b/sysdeps/x86_64/multiarch/strncase_l-sse42.S
@@ -16,11 +16,13 @@
    License along with the GNU C Library; if not, see
    <http://www.gnu.org/licenses/>.  */
 
-#define SECTION			sse4.2
-#define GLABEL(l)		l##_sse42
-#define UPDATE_STRNCMP_COUNTER
-#define STRCMP_SSE42		__strncasecmp_l_sse42
-#define USE_AS_STRNCASECMP_L
-#define NO_NOLOCALE_ALIAS
-#include "locale-defines.h"
-#include "strcmp-sse42.S"
+#if IS_IN (libc)
+# define SECTION			sse4.2
+# define GLABEL(l)		l##_sse42
+# define UPDATE_STRNCMP_COUNTER
+# define STRCMP_SSE42		__strncasecmp_l_sse42
+# define USE_AS_STRNCASECMP_L
+# define NO_NOLOCALE_ALIAS
+# include "locale-defines.h"
+# include "strcmp-sse42.S"
+#endif
diff --git a/sysdeps/x86_64/multiarch/strncmp-sse42.S b/sysdeps/x86_64/multiarch/strncmp-sse42.S
index 8d2747f..47ef460 100644
--- a/sysdeps/x86_64/multiarch/strncmp-sse42.S
+++ b/sysdeps/x86_64/multiarch/strncmp-sse42.S
@@ -16,9 +16,10 @@
    License along with the GNU C Library; if not, see
    <http://www.gnu.org/licenses/>.  */
 
+#if IS_IN (libc)
 /* Since the counter, %r11, is unsigned, we branch to strcmp_exitz
    if the new counter > the old one or is 0.  */
-#define UPDATE_STRNCMP_COUNTER				\
+# define UPDATE_STRNCMP_COUNTER				\
 	/* calculate left number to compare */		\
 	lea	-16(%rcx, %r11), %r9;			\
 	cmp	%r9, %r11;				\
@@ -27,6 +28,7 @@
 	je	LABEL(strcmp_exitz);			\
 	mov	%r9, %r11
 
-#define STRCMP_SSE42	__strncmp_sse42
-#define USE_AS_STRNCMP
-#include "strcmp-sse42.S"
+# define STRCMP_SSE42	__strncmp_sse42
+# define USE_AS_STRNCMP
+# include "strcmp-sse42.S"
+#endif

-----------------------------------------------------------------------

Summary of changes:
 sysdeps/x86_64/multiarch/Makefile                  |    2 +-
 .../multiarch/{strlen-sse2.S => strcmp-sse4_2.S}   |    6 ++----
 sysdeps/x86_64/multiarch/strncase_l-sse42.S        |   18 ++++++++++--------
 sysdeps/x86_64/multiarch/strncmp-sse42.S           |   10 ++++++----
 4 files changed, 19 insertions(+), 17 deletions(-)
 copy sysdeps/x86_64/multiarch/{strlen-sse2.S => strcmp-sse4_2.S} (90%)


hooks/post-receive
-- 
GNU C Library master sources


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]