Welcome to mirror list, hosted at ThFree Co, Russian Federation.

cygwin.com/git/newlib-cygwin.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
path: root/newlib
diff options
context:
space:
mode:
authorEric Blake <eblake@redhat.com>2008-05-28 18:00:39 +0400
committerEric Blake <eblake@redhat.com>2008-05-28 18:00:39 +0400
commit2dd1fb6ff5995c53dee2aaa51919d3338b1f05a6 (patch)
tree6eb78663b25d97e4c0d31892241e4281965017ee /newlib
parent676ae29038b2f0585f75a74d2ba2a1acc559aa7b (diff)
Fix bug in previous patch.
* libc/machine/i386/memset.S (memset): Mask second arg correctly.
Diffstat (limited to 'newlib')
-rw-r--r--newlib/ChangeLog11
-rw-r--r--newlib/libc/machine/i386/memset.S3
2 files changed, 9 insertions, 5 deletions
diff --git a/newlib/ChangeLog b/newlib/ChangeLog
index 2e9ecc471..b46b1093c 100644
--- a/newlib/ChangeLog
+++ b/newlib/ChangeLog
@@ -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>
* libc/string/memset.c: Fix documented prototype to remove
@@ -10,16 +15,16 @@
Pre-align pointer so unaligned searches aren't penalized.
* libc/machine/i386/memchr.S (memchr) [!__OPTIMIZE_SIZE__]: Word
operations are faster than repnz byte searches.
-
+
2008-05-26 Eric Blake <ebb9@byu.net>
Optimize the generic and x86 memset.
* libc/string/memset.c (memset) [!__OPTIMIZE_SIZE__]:
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
8-byte over 4-byte alignment. Reduce register pressure.
-
+
2008-05-26 Eric Blake <ebb9@byu.net>
Optimize the generic and x86 strlen.
diff --git a/newlib/libc/machine/i386/memset.S b/newlib/libc/machine/i386/memset.S
index 36637fc21..6eb2cd6da 100644
--- a/newlib/libc/machine/i386/memset.S
+++ b/newlib/libc/machine/i386/memset.S
@@ -19,7 +19,7 @@ SYM (memset):
movl esp,ebp
pushl edi
movl 8(ebp),edi
- movl 12(ebp),eax
+ movzbl 12(ebp),eax
movl 16(ebp),ecx
cld
@@ -27,7 +27,6 @@ SYM (memset):
/* Less than 16 bytes won't benefit from the 'rep stosl' loop. */
cmpl $16,ecx
jbe .L19
- cbw
testl $7,edi
je .L10