diff -r 758a004cb8c0 -r 035b338ef201 UninterpretedBytes.st --- a/UninterpretedBytes.st Tue Jan 19 17:25:59 2016 +0100 +++ b/UninterpretedBytes.st Tue Jan 19 18:57:38 2016 +0100 @@ -1326,63 +1326,63 @@ * handle the most common cases fast ... */ if (__isSmallInteger(index)) { - unsigned char *cp; - INT sz; - - __fetchBytePointerAndSize__(self, &cp, &sz); - if (cp) { - unsigned INT idx = ((unsigned INT)__intVal(index)) - 1; - unsigned int iVal; - - if ((idx+(sizeof(int)-1)) < sz) { - cp += idx; - - if (msb == true) { + unsigned char *cp; + INT sz; + + __fetchBytePointerAndSize__(self, &cp, &sz); + if (cp) { + unsigned INT idx = ((unsigned INT)__intVal(index)) - 1; + unsigned int iVal; + + if ((idx+(sizeof(int)-1)) < sz) { + cp += idx; + + if (msb == true) { #if defined(__MSBFIRST__) - if (((INT)cp & (sizeof(int)-1))== 0) { - /* - * aligned - */ - iVal = ((unsigned int *)cp)[0]; - } else + if (((INT)cp & (sizeof(int)-1))== 0) { + /* + * aligned + */ + iVal = ((unsigned int *)cp)[0]; + } else #endif - { - iVal = cp[0]; - iVal = (iVal << 8) | cp[1]; - iVal = (iVal << 8) | cp[2]; - iVal = (iVal << 8) | cp[3]; - } - } else { + { + iVal = cp[0]; + iVal = (iVal << 8) | cp[1]; + iVal = (iVal << 8) | cp[2]; + iVal = (iVal << 8) | cp[3]; + } + } else { #if defined(__i386__) || (defined(UNALIGNED_FETCH_OK) && defined(__LSBFIRST__)) - /* - * aligned or not - we dont care - * (i386 can fetch unaligned) - */ - iVal = ((unsigned int *)cp)[0]; + /* + * aligned or not - we dont care + * (i386 can fetch unaligned) + */ + iVal = ((unsigned int *)cp)[0]; #else # if defined(__LSBFIRST__) - if (((INT)cp & (sizeof(int)-1))== 0) { - /* - * aligned - */ - iVal = ((unsigned int *)cp)[0]; - } else + if (((INT)cp & (sizeof(int)-1))== 0) { + /* + * aligned + */ + iVal = ((unsigned int *)cp)[0]; + } else # endif - { - iVal = cp[3]; - iVal = (iVal << 8) | cp[2]; - iVal = (iVal << 8) | cp[1]; - iVal = (iVal << 8) | cp[0]; - } + { + iVal = cp[3]; + iVal = (iVal << 8) | cp[2]; + iVal = (iVal << 8) | cp[1]; + iVal = (iVal << 8) | cp[0]; + } #endif - } + } #if __POINTER_SIZE__ == 8 - RETURN (__mkSmallInteger(iVal)); + RETURN (__mkSmallInteger(iVal)); #else - RETURN (__MKUINT(iVal)); + RETURN (__MKUINT(iVal)); #endif - } - } + } + } } %}. @@ -1390,14 +1390,14 @@ "/ or funny index i := index. - b1 := self at:i. - b2 := self at:(i+1). - b3 := self at:(i+2). - b4 := self at:(i+3). + b1 := self byteAt:i. + b2 := self byteAt:(i+1). + b3 := self byteAt:(i+2). + b4 := self byteAt:(i+3). msb ifFalse:[ - t := b4. b4 := b1. b1 := t. - t := b3. b3 := b2. b2 := t. + t := b4. b4 := b1. b1 := t. + t := b3. b3 := b2. b2 := t. ]. ival := b1. ival := (ival bitShift:8) + b2. @@ -1412,7 +1412,6 @@ (b doubleWordAt:1 MSB:true) printStringRadix:16. (b doubleWordAt:1 MSB:false) printStringRadix:16 " - ! doubleWordAt:index put:value @@ -1443,20 +1442,20 @@ |i "{ Class: SmallInteger }" | ((aNumber < 0) or:[aNumber > 16rFFFFFFFF]) ifTrue:[ - ^ self elementBoundsError:aNumber + ^ self elementBoundsError:aNumber ]. i := index. msb ifTrue:[ - self at:i put:(aNumber digitAt:4). - self at:(i+1) put:(aNumber digitAt:3). - self at:(i+2) put:(aNumber digitAt:2). - self at:(i+3) put:(aNumber digitAt:1). + self byteAt:i put:(aNumber digitAt:4). + self byteAt:(i+1) put:(aNumber digitAt:3). + self byteAt:(i+2) put:(aNumber digitAt:2). + self byteAt:(i+3) put:(aNumber digitAt:1). ] ifFalse:[ - self at:i put:(aNumber digitAt:1). - self at:(i+1) put:(aNumber digitAt:2). - self at:(i+2) put:(aNumber digitAt:3). - self at:(i+3) put:(aNumber digitAt:4). + self byteAt:i put:(aNumber digitAt:1). + self byteAt:(i+1) put:(aNumber digitAt:2). + self byteAt:(i+2) put:(aNumber digitAt:3). + self byteAt:(i+3) put:(aNumber digitAt:4). ]. ^ aNumber @@ -1974,63 +1973,63 @@ * handle the most common cases fast ... */ if (__isSmallInteger(index)) { - unsigned char *cp; - INT sz; - - __fetchBytePointerAndSize__(self, &cp, &sz); - if (cp) { - unsigned INT idx = ((unsigned INT)__intVal(index)) - 1; - int iVal; - - if ((idx+(sizeof(int)-1)) < sz) { - cp += idx; - - if (msb == true) { + unsigned char *cp; + INT sz; + + __fetchBytePointerAndSize__(self, &cp, &sz); + if (cp) { + unsigned INT idx = ((unsigned INT)__intVal(index)) - 1; + int iVal; + + if ((idx+(sizeof(int)-1)) < sz) { + cp += idx; + + if (msb == true) { #if defined(__MSBFIRST__) - if (((INT)cp & (sizeof(int)-1))== 0) { - /* - * aligned - */ - iVal = ((int *)cp)[0]; - } else + if (((INT)cp & (sizeof(int)-1))== 0) { + /* + * aligned + */ + iVal = ((int *)cp)[0]; + } else #endif - { - iVal = cp[0]; - iVal = (iVal << 8) | cp[1]; - iVal = (iVal << 8) | cp[2]; - iVal = (iVal << 8) | cp[3]; - } - } else { + { + iVal = cp[0]; + iVal = (iVal << 8) | cp[1]; + iVal = (iVal << 8) | cp[2]; + iVal = (iVal << 8) | cp[3]; + } + } else { #if defined(__i386__) || (defined(UNALIGNED_FETCH_OK) && defined(__LSBFIRST__)) - /* - * aligned or not - we dont care - * (i386 can fetch unaligned) - */ - iVal = ((int *)cp)[0]; + /* + * aligned or not - we dont care + * (i386 can fetch unaligned) + */ + iVal = ((int *)cp)[0]; #else # if defined(__LSBFIRST__) - if (((INT)cp & (sizeof(int)-1))== 0) { - /* - * aligned - */ - iVal = ((int *)cp)[0]; - } else + if (((INT)cp & (sizeof(int)-1))== 0) { + /* + * aligned + */ + iVal = ((int *)cp)[0]; + } else # endif - { - iVal = cp[3]; - iVal = (iVal << 8) | cp[2]; - iVal = (iVal << 8) | cp[1]; - iVal = (iVal << 8) | cp[0]; - } + { + iVal = cp[3]; + iVal = (iVal << 8) | cp[2]; + iVal = (iVal << 8) | cp[1]; + iVal = (iVal << 8) | cp[0]; + } #endif - } + } #if __POINTER_SIZE__ == 8 - RETURN (__mkSmallInteger(iVal)); + RETURN (__mkSmallInteger(iVal)); #else - RETURN (__MKINT(iVal)); + RETURN (__MKINT(iVal)); #endif - } - } + } + } } %}. @@ -2038,14 +2037,14 @@ "/ or funny index i := index. - b1 := self at:i. - b2 := self at:(i+1). - b3 := self at:(i+2). - b4 := self at:(i+3). + b1 := self byteAt:i. + b2 := self byteAt:(i+1). + b3 := self byteAt:(i+2). + b4 := self byteAt:(i+3). msb ifFalse:[ - t := b4. b4 := b1. b1 := t. - t := b3. b3 := b2. b2 := t. + t := b4. b4 := b1. b1 := t. + t := b3. b3 := b2. b2 := t. ]. ival := b1. ival := (ival bitShift:8) + b2. @@ -2053,7 +2052,7 @@ val := (ival bitShift:8) + b4. (val > (16r7FFFFFFF)) ifTrue:[ - ^ val - (16r100000000) + ^ val - (16r100000000) ]. ^ val @@ -2064,7 +2063,6 @@ (b signedDoubleWordAt:1 MSB:true) printStringRadix:16. (b signedDoubleWordAt:1 MSB:false) printStringRadix:16 " - ! signedDoubleWordAt:index put:value