about summary refs log tree commit diff
path: root/sysdeps/x86_64/strcmp.S
diff options
context:
space:
mode:
authorUlrich Drepper <drepper@redhat.com>2010-07-31 21:41:09 -0700
committerUlrich Drepper <drepper@redhat.com>2010-07-31 21:41:09 -0700
commit73507d3ae077c2dcf0da857a5a244deff3d4d223 (patch)
tree0a6b1d0c944ded9e269b8c47f802d0a920186a7e /sysdeps/x86_64/strcmp.S
parent66f6765a472452937fa821d6c30e2396e113bd60 (diff)
downloadglibc-73507d3ae077c2dcf0da857a5a244deff3d4d223.tar.gz
glibc-73507d3ae077c2dcf0da857a5a244deff3d4d223.tar.xz
glibc-73507d3ae077c2dcf0da857a5a244deff3d4d223.zip
Add support for SSSE3 and SSE4.2 versions of strcasecmp on x86-64.
Diffstat (limited to 'sysdeps/x86_64/strcmp.S')
-rw-r--r--sysdeps/x86_64/strcmp.S13
1 files changed, 11 insertions, 2 deletions
diff --git a/sysdeps/x86_64/strcmp.S b/sysdeps/x86_64/strcmp.S
index 7b2b246866..d36fef225b 100644
--- a/sysdeps/x86_64/strcmp.S
+++ b/sysdeps/x86_64/strcmp.S
@@ -74,15 +74,24 @@
 #endif
 
 #ifdef USE_AS_STRCASECMP_L
-ENTRY (__strcasecmp)
+# ifndef ENTRY2
+#  define ENTRY2(name) ENTRY (name)
+#  define END2(name) END (name)
+#  define NO_NOLOCALE_ALIAS
+# endif
+
+	ENTRY2 (__strcasecmp)
 	movq	__libc_tsd_LOCALE@gottpoff(%rip),%rax
 	movq	%fs:(%rax),%rdx
 
+	// XXX 5 byte should be before the function
 	/* 5-byte NOP.  */
 	.byte	0x0f,0x1f,0x44,0x00,0x00
-END (__strcasecmp)
+END2 (__strcasecmp)
+# ifndef NO_NOLOCALE_ALIAS
 weak_alias (__strcasecmp, strcasecmp)
 libc_hidden_def (__strcasecmp)
+# endif
 	/* FALLTHROUGH to strcasecmp_l.  */
 #endif