Win Tims Money! a.k.a. find my sockets bug!

John M McIntosh johnmci at smalltalkconsulting.com
Fri Apr 21 21:45:36 UTC 2000


> All -
> Duane wrote
> I'll raise the ante another US$75 (that's nearly 8000 yen!)


Duane, sorry I think it's a $1.00 from Tim, and $75 from you.

PS
address = ((unsigned char *)
(interpreterProxy->firstIndexableField(interpreterProxy->stackValue(1))));
(Ensure you get the signage right closer to the value

For the curious where we had char *

 return (((ptrToByteArray[3]) + ((ptrToByteArray[2]) << 8)) +
((ptrToByteArray[1]) << 16)) + ((ptrToByteArray[0]) << 24);
00000054: 881F0000  lbz        r0,0(r31)
00000058: 7C000774  extsb      r0,r0
0000005C: 5405C00E  slwi       r5,r0,24
00000060: 881F0001  lbz        r0,1(r31)
00000064: 7C000774  extsb      r0,r0
00000068: 5403801E  slwi       r3,r0,16
0000006C: 881F0003  lbz        r0,3(r31)
00000070: 7C040774  extsb      r4,r0
00000074: 881F0002  lbz        r0,2(r31)
00000078: 7C000774  extsb      r0,r0
0000007C: 5400402E  slwi       r0,r0,8
00000080: 7C001A14  add        r0,r0,r3
00000084: 7C602A14  add        r3,r0,r5
00000088: 7C641A14  add        r3,r4,r3
0000008C: 80010048  lwz        r0,72(SP)
00000090: 38210040  addi       SP,SP,64
00000094: 7C0803A6  mtlr       r0
00000098: 83E1FFFC  lwz        r31,-4(SP)
0000009C: 83C1FFF8  lwz        r30,-8(SP)
000000A0: 4E800020  blr

Note the compiler use of extsb

for unsigned char *

 return (((ptrToByteArray[3]) + ((ptrToByteArray[2]) << 8)) +
((ptrToByteArray[1]) << 16)) + ((ptrToByteArray[0]) << 24);
00000054: 881F0000  lbz        r0,0(r31)
00000058: 5405C00E  slwi       r5,r0,24
0000005C: 881F0001  lbz        r0,1(r31)
00000060: 5403801E  slwi       r3,r0,16
00000064: 889F0003  lbz        r4,3(r31)
00000068: 881F0002  lbz        r0,2(r31)
0000006C: 5400402E  slwi       r0,r0,8
00000070: 7C001A14  add        r0,r0,r3
00000074: 7C602A14  add        r3,r0,r5
00000078: 7C641A14  add        r3,r4,r3
0000007C: 80010048  lwz        r0,72(SP)
00000080: 38210040  addi       SP,SP,64
00000084: 7C0803A6  mtlr       r0
00000088: 83E1FFFC  lwz        r31,-4(SP)
0000008C: 83C1FFF8  lwz        r30,-8(SP)
00000090: 4E800020  blr



--
===========================================================================
John M. McIntosh <johnmci at smalltalkconsulting.com> 1-800-477-2659
Corporate Smalltalk Consulting Ltd.  http://www.smalltalkconsulting.com
===========================================================================
Custom Macintosh programming & various Smalltalk dialects
PGP Key: DSS/Diff/46FC3BE6
Fingerprint=B22F 7D67 92B7 5D52 72D7  E94A EE69 2D21 46FC 3BE6
===========================================================================





More information about the Squeak-dev mailing list