--- 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