diff -r a0807a38319d -r 63600ce8c7cc ByteArray.st --- 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; }