Load pointers into R*_LP in strcmp.S

This commit is contained in:
H.J. Lu 2012-05-15 09:54:05 -07:00
parent 54e2ed8105
commit 3cb845617b
2 changed files with 10 additions and 6 deletions

View File

@ -1,3 +1,7 @@
2012-05-15 H.J. Lu <hongjiu.lu@intel.com>
* sysdeps/x86_64/strcmp.S: Load pointers into R*_LP.
2012-05-15 H.J. Lu <hongjiu.lu@intel.com>
* sysdeps/x86_64/memcpy.S: Load __x86_64_data_cache_size_half

View File

@ -96,7 +96,7 @@
ENTRY2 (__strcasecmp)
movq __libc_tsd_LOCALE@gottpoff(%rip),%rax
movq %fs:(%rax),%rdx
mov %fs:(%rax),%RDX_LP
// XXX 5 byte should be before the function
/* 5-byte NOP. */
@ -115,7 +115,7 @@ libc_hidden_def (__strcasecmp)
ENTRY2 (__strncasecmp)
movq __libc_tsd_LOCALE@gottpoff(%rip),%rax
movq %fs:(%rax),%rcx
mov %fs:(%rax),%RCX_LP
// XXX 5 byte should be before the function
/* 5-byte NOP. */
@ -152,9 +152,9 @@ END (BP_SYM (STRCMP))
/* We have to fall back on the C implementation for locales
with encodings not matching ASCII for single bytes. */
# if LOCALE_T___LOCALES != 0 || LC_CTYPE != 0
movq LOCALE_T___LOCALES+LC_CTYPE*8(%rdx), %rax
mov LOCALE_T___LOCALES+LC_CTYPE*LP_SIZE(%rdx), %RAX_LP
# else
movq (%rdx), %rax
mov (%rdx), %RAX_LP
# endif
testl $1, LOCALE_DATA_VALUES+_NL_CTYPE_NONASCII_CASE*SIZEOF_VALUES(%rax)
jne __strcasecmp_l_nonascii
@ -162,9 +162,9 @@ END (BP_SYM (STRCMP))
/* We have to fall back on the C implementation for locales
with encodings not matching ASCII for single bytes. */
# if LOCALE_T___LOCALES != 0 || LC_CTYPE != 0
movq LOCALE_T___LOCALES+LC_CTYPE*8(%rcx), %rax
mov LOCALE_T___LOCALES+LC_CTYPE*LP_SIZE(%rcx), %RAX_LP
# else
movq (%rcx), %rax
mov (%rcx), %RAX_LP
# endif
testl $1, LOCALE_DATA_VALUES+_NL_CTYPE_NONASCII_CASE*SIZEOF_VALUES(%rax)
jne __strncasecmp_l_nonascii