Fix bug in previous patch.
* libc/machine/i386/memset.S (memset): Mask second arg correctly.
This commit is contained in:
parent
676ae29038
commit
2dd1fb6ff5
@ -1,3 +1,8 @@
|
|||||||
|
2008-05-28 Eric Blake <ebb9@byu.net>
|
||||||
|
|
||||||
|
Fix bug in previous patch.
|
||||||
|
* libc/machine/i386/memset.S (memset): Mask second arg correctly.
|
||||||
|
|
||||||
2008-05-27 Jeff Johnston <jjohnstn@redhat.com>
|
2008-05-27 Jeff Johnston <jjohnstn@redhat.com>
|
||||||
|
|
||||||
* libc/string/memset.c: Fix documented prototype to remove
|
* libc/string/memset.c: Fix documented prototype to remove
|
||||||
@ -16,7 +21,7 @@
|
|||||||
Optimize the generic and x86 memset.
|
Optimize the generic and x86 memset.
|
||||||
* libc/string/memset.c (memset) [!__OPTIMIZE_SIZE__]:
|
* libc/string/memset.c (memset) [!__OPTIMIZE_SIZE__]:
|
||||||
Pre-align pointer so unaligned stores aren't penalized.
|
Pre-align pointer so unaligned stores aren't penalized.
|
||||||
* libc/machine/i386/memset.S (memset): [!__OPTIMIZE_SIZE__]:
|
* libc/machine/i386/memset.S (memset) [!__OPTIMIZE_SIZE__]:
|
||||||
Pre-align pointer so unaligned stores aren't penalized. Prefer
|
Pre-align pointer so unaligned stores aren't penalized. Prefer
|
||||||
8-byte over 4-byte alignment. Reduce register pressure.
|
8-byte over 4-byte alignment. Reduce register pressure.
|
||||||
|
|
||||||
|
@ -19,7 +19,7 @@ SYM (memset):
|
|||||||
movl esp,ebp
|
movl esp,ebp
|
||||||
pushl edi
|
pushl edi
|
||||||
movl 8(ebp),edi
|
movl 8(ebp),edi
|
||||||
movl 12(ebp),eax
|
movzbl 12(ebp),eax
|
||||||
movl 16(ebp),ecx
|
movl 16(ebp),ecx
|
||||||
cld
|
cld
|
||||||
|
|
||||||
@ -27,7 +27,6 @@ SYM (memset):
|
|||||||
/* Less than 16 bytes won't benefit from the 'rep stosl' loop. */
|
/* Less than 16 bytes won't benefit from the 'rep stosl' loop. */
|
||||||
cmpl $16,ecx
|
cmpl $16,ecx
|
||||||
jbe .L19
|
jbe .L19
|
||||||
cbw
|
|
||||||
testl $7,edi
|
testl $7,edi
|
||||||
je .L10
|
je .L10
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user