summaryrefslogtreecommitdiff
path: root/sysdeps
diff options
context:
space:
mode:
authorUlrich Drepper <drepper@gmail.com>2010-10-03 22:10:30 -0400
committerAndreas Schwab <schwab@redhat.com>2010-10-08 12:12:29 +0200
commitb422509e58a21f1343e49f6f52e224520fab98a1 (patch)
tree41a0cef742349b406dc73a70867983eb6f21e240 /sysdeps
parentfdae8096fe71e65f7c13575c990eb2652a328122 (diff)
Fix handling of tail bytes of buffer in SSE2/SSSE3 x86-64 version strncmp
(cherry picked from commit 45db99c7d03e497a3320907e722270fb7ee852f3)
Diffstat (limited to 'sysdeps')
-rw-r--r--sysdeps/x86_64/strcmp.S32
1 files changed, 16 insertions, 16 deletions
diff --git a/sysdeps/x86_64/strcmp.S b/sysdeps/x86_64/strcmp.S
index ac3fe14679..9ce20a6b05 100644
--- a/sysdeps/x86_64/strcmp.S
+++ b/sysdeps/x86_64/strcmp.S
@@ -320,7 +320,7 @@ LABEL(nibble_ashr_1):
jnz LABEL(ashr_1_exittail) /* find null char*/
# ifdef USE_AS_STRNCMP
- cmp $14, %r11
+ cmp $15, %r11
jbe LABEL(ashr_1_exittail)
# endif
@@ -445,7 +445,7 @@ LABEL(nibble_ashr_2):
jnz LABEL(ashr_2_exittail)
# ifdef USE_AS_STRNCMP
- cmp $13, %r11
+ cmp $14, %r11
jbe LABEL(ashr_2_exittail)
# endif
@@ -567,7 +567,7 @@ LABEL(nibble_ashr_3):
jnz LABEL(ashr_3_exittail)
# ifdef USE_AS_STRNCMP
- cmp $12, %r11
+ cmp $13, %r11
jbe LABEL(ashr_3_exittail)
# endif
@@ -689,7 +689,7 @@ LABEL(nibble_ashr_4):
jnz LABEL(ashr_4_exittail)
# ifdef USE_AS_STRNCMP
- cmp $11, %r11
+ cmp $12, %r11
jbe LABEL(ashr_4_exittail)
# endif
@@ -811,7 +811,7 @@ LABEL(nibble_ashr_5):
jnz LABEL(ashr_5_exittail)
# ifdef USE_AS_STRNCMP
- cmp $10, %r11
+ cmp $11, %r11
jbe LABEL(ashr_5_exittail)
# endif
@@ -933,7 +933,7 @@ LABEL(nibble_ashr_6):
jnz LABEL(ashr_6_exittail)
# ifdef USE_AS_STRNCMP
- cmp $9, %r11
+ cmp $10, %r11
jbe LABEL(ashr_6_exittail)
# endif
@@ -1055,7 +1055,7 @@ LABEL(nibble_ashr_7):
jnz LABEL(ashr_7_exittail)
# ifdef USE_AS_STRNCMP
- cmp $8, %r11
+ cmp $9, %r11
jbe LABEL(ashr_7_exittail)
# endif
@@ -1177,7 +1177,7 @@ LABEL(nibble_ashr_8):
jnz LABEL(ashr_8_exittail)
# ifdef USE_AS_STRNCMP
- cmp $7, %r11
+ cmp $8, %r11
jbe LABEL(ashr_8_exittail)
# endif
@@ -1299,7 +1299,7 @@ LABEL(nibble_ashr_9):
jnz LABEL(ashr_9_exittail)
# ifdef USE_AS_STRNCMP
- cmp $6, %r11
+ cmp $7, %r11
jbe LABEL(ashr_9_exittail)
# endif
@@ -1421,7 +1421,7 @@ LABEL(nibble_ashr_10):
jnz LABEL(ashr_10_exittail)
# ifdef USE_AS_STRNCMP
- cmp $5, %r11
+ cmp $6, %r11
jbe LABEL(ashr_10_exittail)
# endif
@@ -1543,7 +1543,7 @@ LABEL(nibble_ashr_11):
jnz LABEL(ashr_11_exittail)
# ifdef USE_AS_STRNCMP
- cmp $4, %r11
+ cmp $5, %r11
jbe LABEL(ashr_11_exittail)
# endif
@@ -1665,7 +1665,7 @@ LABEL(nibble_ashr_12):
jnz LABEL(ashr_12_exittail)
# ifdef USE_AS_STRNCMP
- cmp $3, %r11
+ cmp $4, %r11
jbe LABEL(ashr_12_exittail)
# endif
@@ -1787,7 +1787,7 @@ LABEL(nibble_ashr_13):
jnz LABEL(ashr_13_exittail)
# ifdef USE_AS_STRNCMP
- cmp $2, %r11
+ cmp $3, %r11
jbe LABEL(ashr_13_exittail)
# endif
@@ -1909,7 +1909,7 @@ LABEL(nibble_ashr_14):
jnz LABEL(ashr_14_exittail)
# ifdef USE_AS_STRNCMP
- cmp $1, %r11
+ cmp $2, %r11
jbe LABEL(ashr_14_exittail)
# endif
@@ -2033,8 +2033,8 @@ LABEL(nibble_ashr_15):
jnz LABEL(ashr_15_exittail)
# ifdef USE_AS_STRNCMP
- test %r11, %r11
- je LABEL(ashr_15_exittail)
+ cmpq $1, %r11
+ jbe LABEL(ashr_15_exittail)
# endif
pxor %xmm0, %xmm0