mirror of
				https://sourceware.org/git/glibc.git
				synced 2025-10-31 22:10:34 +03:00 
			
		
		
		
	Pretty printing x86-64 SSE4.3 strcmp.
This commit is contained in:
		| @@ -1,5 +1,7 @@ | ||||
| 2010-07-30  Ulrich Drepper  <drepper@redhat.com> | ||||
|  | ||||
| 	* sysdeps/x86_64/multiarch/strcmp.S: Pretty printing. | ||||
|  | ||||
| 	* string/Makefile (strop-tests): Add strcasecmp. | ||||
| 	* sysdeps/x86_64/Makefile [subdir=string] (sysdep_routines): Add | ||||
| 	strcasecmp_l-nonascii. | ||||
|   | ||||
| @@ -1,5 +1,5 @@ | ||||
| /* strcmp with SSE4.2 | ||||
|    Copyright (C) 2009 Free Software Foundation, Inc. | ||||
|    Copyright (C) 2009, 2010 Free Software Foundation, Inc. | ||||
|    Contributed by Intel Corporation. | ||||
|    This file is part of the GNU C Library. | ||||
|  | ||||
| @@ -24,7 +24,7 @@ | ||||
| #ifdef USE_AS_STRNCMP | ||||
| /* 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;				\ | ||||
| @@ -33,23 +33,23 @@ | ||||
| 	je	LABEL(strcmp_exitz_sse4_2);		\ | ||||
| 	mov	%r9, %r11 | ||||
|  | ||||
| #define STRCMP_SSE42	__strncmp_sse42 | ||||
| #define STRCMP_SSSE3	__strncmp_ssse3 | ||||
| #define STRCMP_SSE2	__strncmp_sse2 | ||||
| #define __GI_STRCMP	__GI_strncmp | ||||
| # define STRCMP_SSE42	__strncmp_sse42 | ||||
| # define STRCMP_SSSE3	__strncmp_ssse3 | ||||
| # define STRCMP_SSE2	__strncmp_sse2 | ||||
| # define __GI_STRCMP	__GI_strncmp | ||||
| #else | ||||
| #define UPDATE_STRNCMP_COUNTER | ||||
| #ifndef STRCMP | ||||
| #define STRCMP		strcmp | ||||
| #define STRCMP_SSE42	__strcmp_sse42 | ||||
| #define STRCMP_SSSE3	__strcmp_ssse3 | ||||
| #define STRCMP_SSE2	__strcmp_sse2 | ||||
| #define __GI_STRCMP	__GI_strcmp | ||||
| #endif | ||||
| # define UPDATE_STRNCMP_COUNTER | ||||
| # ifndef STRCMP | ||||
| #  define STRCMP	strcmp | ||||
| #  define STRCMP_SSE42	__strcmp_sse42 | ||||
| #  define STRCMP_SSSE3	__strcmp_ssse3 | ||||
| #  define STRCMP_SSE2	__strcmp_sse2 | ||||
| #  define __GI_STRCMP	__GI_strcmp | ||||
| # endif | ||||
| #endif | ||||
|  | ||||
| #ifndef LABEL | ||||
| #define LABEL(l) L(l) | ||||
| # define LABEL(l) L(l) | ||||
| #endif | ||||
|  | ||||
| /* Define multiple versions only for the definition in libc.  Don't | ||||
|   | ||||
		Reference in New Issue
	
	Block a user