--- a/ByteArray.st Sun Sep 03 17:06:58 1995 +0200
+++ b/ByteArray.st Thu Sep 07 13:59:50 1995 +0200
@@ -21,7 +21,7 @@
COPYRIGHT (c) 1989 by Claus Gittinger
All Rights Reserved
-$Header: /cvs/stx/stx/libbasic/ByteArray.st,v 1.32 1995-08-16 12:48:06 claus Exp $
+$Header: /cvs/stx/stx/libbasic/ByteArray.st,v 1.33 1995-09-07 11:57:52 claus Exp $
'!
!ByteArray class methodsFor:'documentation'!
@@ -42,7 +42,7 @@
version
"
-$Header: /cvs/stx/stx/libbasic/ByteArray.st,v 1.32 1995-08-16 12:48:06 claus Exp $
+$Header: /cvs/stx/stx/libbasic/ByteArray.st,v 1.33 1995-09-07 11:57:52 claus Exp $
"
!
@@ -1508,7 +1508,7 @@
}
value = _intVal(aNumber);
- if ((value >= 0) && (value <= 255)
+ if (((value & ~0xFF) == 0) /* i.e. (value >= 0) && (value <= 255) */
&& (index1 <= index2)
&& (index1 > 0)) {
if (index2 <= len) {
@@ -1516,6 +1516,14 @@
#ifdef FAST_MEMSET
memset(dstp, count, value);
#else
+# ifdef UNROLL_LOOPS
+ while (count >= 8) {
+ dstp[0] = dstp[1] = dstp[2] = dstp[3] =
+ dstp[4] = dstp[5] = dstp[6] = dstp[7] = value;
+ dstp += 8;
+ count -= 8;
+ }
+# endif
while (count--) {
*dstp++ = value;
}