64-bit VMs

Andreas Raab andreas.raab at gmx.de
Fri Apr 1 08:21:41 UTC 2005

Thanks Ian! This is wonderful progress.

   - Andreas

Ian Piumarta wrote:
> Folks,
> I've just released 64-bit compatible sources for 3.8, and checked-in
> both Unix and Cross changes to the TRUNK of the repository.
> To build a Unix VM from the repository, first check out the trunk as
> usual, then:
>   mkdir bld
>   cd bld
>   ../platforms/unix/config/configure --with-src=src32
>   make
> will build a 32-bit VM.  If you say
>   ../platforms/unix/config/configure --with-src=src64
> instead then it will build you a 64-bit VM.
> I have tested both 32- and 64-bit VMs on PowerPC (32-bit native),
> Intel Pentium and Intel Itanium 2.  All appears to work.
> Note that I have made some changes to the platforms/Cross part of the
> repository.  While I tried hard to keep things as backwardly
> compatible as possible (e.g., the Unix tree happily compiles pre-3.8
> sources as-is) this might have temporarily broken the build for other
> platforms.  My apologies if this is the case, OTOH it's a wonderful
> forcing function to have the maintainer of your favorite platform get
> a 64-bit VM out the door Real Soon Now.
> I've not had chance to update my usual download page to reflect the
> new 32/64 duality in the distribution, but I did have time to make
> some archives of source code, 32- and 64-bit images, and 32- and
> 64-bit VMs for the three architectures mentioned above.  You can pick
> them up here:
>   http://squeak.hpl.hp.com/squeak64/dist3/
> wherein:
>   Squeak-3.8a-2.src.tar.gz
>     contains the source code, and a handy one-stop top-levelMakefile
>     at which you can type 'make WIDTH=32' and 'make width=64'.
>   Squeak32-3.8g-6548.image.tar.gz
>   Squeak64-3.8g-6548.image.tar.gz
>     contain 32- and 64-bit images, respectively.  (Note that I had
>     to condense the changes in the base 3.8g-6548 image because
>     of reaching the limit on source position stamp.)
>   Squeak32-3.8a-2.i686-pc-linux-gnu.tar.gz
>   Squeak32-3.8a-2.ia64-linux-gnu.tar.gz
>   Squeak32-3.8a-2.powerpc-apple-darwin7.8.0.tar.gz
>     contain 32-bit VMs precompiled for Pentium, Itanium 2 and PowerPC.
>   Squeak64-3.8a-2.i686-pc-linux-gnu.tar.gz
>   Squeak64-3.8a-2.ia64-linux-gnu.tar.gz
>   Squeak64-3.8a-2.powerpc-apple-darwin7.8.0.tar.gz
>     contain 64-bit VMs precompiled for Pentium, Itanium 2 and PowerPC.
> Finally...
>   ChangeSets
> is a directory containing everything that was used to create the
> above, relative to the base 3.8g-6548 image:
>   VMMaker-tpr.14.mcz
>     is Tim's latest VMMaker.
>   VMM38b4-64bit-vm1-ikp.1.cs
>     are Dan and my 64-bit changes, plus various changes Tim made to VMM
>     since 3.7-5, all spiffed up and including a final couple of (nasty)
>     new bugs (one original bug, and a few that crept in which merging
>     VMM with the 64-bit changes) thoroughly fixed.  This gets you
>     enough to generate interp.c plus the three essential plugins:
>     BitBlt, Ballon and File.
>   VMM38b4-64bit-vm2-ikp.2.cs
>     is new 64-bit support for plugins using the SmartSyntax thing.
>     I made SocketPlugin (which uses it) 64-bit clean to make
>     sure it was working reasonably.
> With both of the above loaded you should be able to regenerate the
> src32 and src64 trees included in the source tarball (and included in
> the unix part of the repository).
>   System-Tracing.2.cs
>     is the new SystemTracer from Anthony and Stephen, subclassed
>     by Dan to make 64-bit images.  This ONLY works on big-endian
>     machines for now.  (We know about this.  Don't yell at us.)
>   VMM38b4-64bit-image1-ikp.1.cs
>   VMM38b4-64bit-image2-ikp.1.cs
>     contain various changes to the class library that you probably
>     need to have a healthy image running with 64-bit oops.
> (Tim, especially, will want to take the vm1 and vm2 changesets and file
> them into VMMaker _immediately_, before it becomes a 'moved target'
> [again].  No need to read these files: they are the changes Dan and I
> sent you, that you sent back last week with your recent VMM additions
> filed-in over the top, in which I then fixed some subtle 'merge' bugs
> that crept in during the process along with the WeakArray problem in
> primStringReplace posted to squeak-dev a couple of days ago.  Trust
> me.  Just hit 'install'.  It's one huge chunk of goodness.)
> Enjoy!
> Ian (totally exhausted, and declaring the weekend already arrived ;-)

More information about the Vm-dev mailing list