[squeak-dev] Squeak 4.1 on Cog (Re: Teleplace Cog VMs are now available)

Levente Uzonyi leves at elte.hu
Mon Jun 21 13:25:56 UTC 2010


On Sun, 20 Jun 2010, Andreas Raab wrote:

> Folks -
>
> I've prepared a version of Squeak 4.1 for those of you who are not into 
> recompiling VMs yourself. You can download it from:
>
> 	http://squeakvm.org/win32/experimental/CogSqueak4.1.zip
>
> The package contains a freshly compiled Cog VM for Windows and an updated 
> Squeak4.1 image. Some things to note:
>
> * Once you save the image with Cog, you can only run it with Cog. So load 
> your benchmarks into the image *before* you launch it with Cog (i.e., to 
> ensure you're comparing apples with apples you should use the same image)
>
> * There are some changes that are required in the image. Most importantly, 
> some LargeInt primitives need to be removed:
> 	#(= bitAnd: bitOr: bitShift: bitXor: ~=) do:[:sel|
> 		LargePositiveInteger removeSelector: sel.
> 	].
>
> This will be necessary for any images you want to run with Cog. There are 
> also some other changes but they are not critical (i.e., don't crash the VM).

Thanks. I tried some basic things with this image and crashed the VM a few 
times. For example updating from trunk crashes while the image is 
recompiling classes. An updated trunk image gives much better results. A 
few things are different or were not adopted to the VM:
- Juan's BitBlt fixes seem to be missing
- primitive 71 has an overflow bug (probably the same older Squeak VMs 
had). Allocating an array with 1073741824 elements gives an empty array, 
with 1073741825 elements results in an array with one slot.
- TestObjectsAsMethods crashes the VM
- Some VM parameters (Smalltalk vmParameters) are not integers but nil. 
This causes problems with MessageTally.

And some good news: evaluating [Morph methodDict valuesDo: 1] works as it 
should (http://bugs.squeak.org/view.php?id=7453 ).


Levente

>
> Enjoy,
>  - Andreas
>
>



More information about the Squeak-dev mailing list