[Vm-dev] Status of LargeIntegersPlugin
tim Rowledge
tim at rowledge.org
Wed Jul 23 05:33:37 UTC 2014
Wholly khao. That would have to be eighteen years ago. That would originally have run on a 40MHz ARM 7 machine with maybe 4Mb ram. As I recall I was sharing an office - actually a tiny fraction of an office cubicle - with John Maloney's wife Roxie at the time. How time flies.
/tim
{insert witticism here}
> On Jul 22, 2014, at 21:59, "David T. Lewis" <lewis at mail.msen.com> wrote:
>
>
>> On Tue, Jul 22, 2014 at 08:55:49PM -0700, tim Rowledge wrote:
>>
>>> my assumption is that
>>> since Squeak began on big endian machines and moved to little endian
>>> later, and since the LargeIntegersPlugin has been around for a long time,
>>> and since images migrated across big and little endian platforms without
>>> any apparent problem, then we probably do not have any endianness problems
>>> with the existing plugin.
>>
>> There is, or at least was, code to byteswap byte objects at image load time. Not in a good spot to check right now. I think it went
>> Check endian is as was
>> Swap all words if needed.
>> Swap back contents of byte objects.
>>
>> Or something like that.
>>
>> /tim
>
> Judging by the author credited in the method comment, I suspect that you are probably right ;)
>
> Interpreter>>reverseBytesInImage
> "Byte-swap all words in memory after reading in the entire image file with bulk read.
> Contributed by Tim Rowledge."
>
> "First, byte-swap every word in the image. This fixes objects headers."
> objectMemory reverseBytesFrom: objectMemory startOfMemory to: objectMemory getEndOfMemory.
>
> "Second, return the bytes of bytes-type objects to their orginal order."
> self byteSwapByteObjects.
>
>
More information about the Vm-dev
mailing list