Login  Register

Re: Squeak 4.1 on Cog (Re: Teleplace Cog VMs are now available)

Posted by Levente Uzonyi-2 on Jun 21, 2010; 1:25pm
URL: https://forum.world.st/Teleplace-Cog-VMs-are-now-available-tp2261896p2262629.html

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
>
>