64 bit images (was Re: [squeak-dev] The Trunk:
John M McIntosh
johnmci at smalltalkconsulting.com
Fri Jan 1 21:08:24 UTC 2010
So in order to use a 64bit image on a 32bit machine running a 32bit VM you
need to build a VM that is for 32bit machines but is configured to use 64bit image.
In order to build that with the isqueak.org VM tree you have to change the SQ_VI_BYTES_PER_WORD to 8
#define SQ_VI_BYTES_PER_WORD 8
Then compile for 32bit powerpc using the SqueakPureObjc64*64.
Normally that is configured for 64 bit intel only, so you'll have to fiddle a bit.
I've done that and put it as
experimental/64bit/64bitImage*32bitVMPowerPC/Squeak 32/64 5.1b1 PowerPC.app.zip
in the regular places via
I note there is a fair amount of
warning: implicit conversion shortens 64-bit value into a 32-bit value
technically those should be cross checked and changed to cast the sqInt aka (long long) to the target (long/NSInteger)
The issue here is that a sqInt value which is a long long and typically a 32bit integer value is being assigned to a NSInteger (long).
Other places are where a long long is passed as a void* pointer, so it's being converted from 64bit to a 32bits void *
But I'll leave those fixes & cross checks as an exercise for the user...
The VM doesn't have any plugins. I think the only plugin that you could compile is for FreeType. Existing plugins will not work
because they are being passed long long values from squeak where they are expecting a long value.
On 2010-01-01, at 10:32 AM, Edgar J. De Cleene wrote:
> On 1/1/10 2:43 PM, "David T. Lewis" <lewis at mail.msen.com> wrote:
>> The original 64-bit image that Dan and Ian created is this:
>> but unfortunately this image can no longer be run on current Squeak VMs.
>> The reason is that some changes were made to the VM that broke backward
>> There is another version of the same image here:
> Sure it's the same ?
> I could run this image with a Unix powerpc-apple-darwin7.8.0 and not with
> John , suppose is the http://squeakvm.org, but noty sure.
> sq64-dtl. image. Not run
> My trouble is my old G4 QuickSilver only runs Tiger (10.4), not Leopard
> (10.5) or Snow Leopard (10.6).
> For the rest, I try to follow your advice, many thanks.
> For the record, I put again the bike photos in
> I remember you like it....
> Be patient, cable modem is sloooow
John M. McIntosh <johnmci at smalltalkconsulting.com> Twitter: squeaker68882
Corporate Smalltalk Consulting Ltd. http://www.smalltalkconsulting.com
More information about the Squeak-dev