Skip to content

Commit

Permalink
Fix up new x86 string functions.
Browse files Browse the repository at this point in the history
  • Loading branch information
Ulrich Drepper committed Feb 15, 2010
1 parent 904057b commit 6bb74d9
Show file tree
Hide file tree
Showing 5 changed files with 161 additions and 38 deletions.
10 changes: 10 additions & 0 deletions ChangeLog
Original file line number Diff line number Diff line change
@@ -1,3 +1,13 @@
2010-02-15 Ulrich Drepper <drepper@redhat.com>

* sysdeps/i386/i686/multiarch/memcmp-sse4.S: Fix unwind info.
* sysdeps/i386/i686/multiarch/memcmp-ssse3.S: Likewise.
* sysdeps/i386/i686/multiarch/strcmp-sse4.S: Likewise.
* sysdeps/i386/i686/multiarch/strcmp-ssse3.S: Likewise.

* sysdeps/i386/i686/multiarch/strcmp-sse4.S: Don't fall through to
undefined code.

2010-02-12 H.J. Lu <hongjiu.lu@intel.com>

* sysdeps/i386/i686/multiarch/Makefile (sysdep_routines): Add
Expand Down
36 changes: 18 additions & 18 deletions sysdeps/i386/i686/multiarch/memcmp-sse4.S
Original file line number Diff line number Diff line change
Expand Up @@ -105,43 +105,43 @@ L(less8bytes):
mov 1(%eax), %bl
cmpb 1(%edx), %bl
jne L(nonzero)
cmp $2, %ecx

cmp $2, %ecx
jz L(0bytes)

mov 2(%eax), %bl
cmpb 2(%edx), %bl
jne L(nonzero)
cmp $3, %ecx

cmp $3, %ecx
jz L(0bytes)

mov 3(%eax), %bl
cmpb 3(%edx), %bl
jne L(nonzero)
cmp $4, %ecx

cmp $4, %ecx
jz L(0bytes)

mov 4(%eax), %bl
cmpb 4(%edx), %bl
jne L(nonzero)

cmp $5, %ecx
cmp $5, %ecx
jz L(0bytes)

mov 5(%eax), %bl
cmpb 5(%edx), %bl
jne L(nonzero)

cmp $6, %ecx
cmp $6, %ecx
jz L(0bytes)

mov 6(%eax), %bl
cmpb 6(%edx), %bl
je L(0bytes)
L(nonzero):
POP (%ebx)
POP (%ebx)
mov $1, %eax
ja L(above)
neg %eax
Expand All @@ -151,11 +151,11 @@ L(above):

ALIGN (4)
L(0bytes):
POP (%ebx)
POP (%ebx)
xor %eax, %eax
ret
CFI_PUSH (%ebx)

ALIGN (4)
L(less1bytes):
jb L(0bytesend)
Expand Down Expand Up @@ -609,7 +609,7 @@ L(26bytes):
mov -6(%edx), %ebx
cmp %ebx, %ecx
jne L(find_diff)

movzwl -2(%eax), %ecx
movzwl -2(%edx), %ebx
cmp %bl, %cl
Expand Down Expand Up @@ -873,7 +873,7 @@ L(32bytes):
L(less16bytes):
add %ebx, %eax
add %ebx, %edx

mov (%eax), %ecx
mov (%edx), %ebx
cmp %ebx, %ecx
Expand Down Expand Up @@ -908,7 +908,7 @@ L(find_diff):
jne L(end)
cmp %bx, %cx
L(end):
POP (%ebx)
POP (%ebx)
mov $1, %eax
ja L(bigger)
neg %eax
Expand Down
Loading

0 comments on commit 6bb74d9

Please sign in to comment.