[Vm-dev] Re: New Cog VMs available

Chris Muller asqueaker at gmail.com
Fri Jul 11 15:40:53 UTC 2014

Hi Eliot, it definitely seems better than 3018.  Magma's test suite is now
getting about 2/3'rds the way through before the trolley leaves the tracks.
 I guess you may have seen that with the image I sent you.

I spent some more time yesterday trying to narrow the problem down but, as
before, the crash is not always in the same place.  One time it *didn't*
crash but instead got a Smalltalk DNU error which I was able to look at in
the debugger.  It was weird because one of the inst-var references of an
object was pointing to a Block, which is impossible based on the code.  The
block it referred to was in one of its own class' (or, related class')
methods, and had a non-local return in it.  Oh, and this class has weak
index references (and two, strong, named slots).

The issue is very remniscient of the early Cog's, deja vu..

On Wed, Jul 9, 2014 at 5:17 PM, Eliot Miranda <eliot.miranda at gmail.com>

> Oops.  That should of course have read
> ... at http://www.mirandabanda.org/files/Cog/VM/VM.r3039/.
> On Wed, Jul 9, 2014 at 2:01 PM, Eliot Miranda <eliot.miranda at gmail.com>
> wrote:
>> ... at http://www.mirandabanda.org/files/Cog/VM/VM.r3034/.
>> The Squeak Spur VMs will now run Pharo images that have been bootstrapped
>> (SpurBootstrap bootstrapPharoImage: 'myimage'), but be aware that the
>> bootstrap does not yet update the modified packages in a Pharo 4 image, and
>> hence sources for the modified methods is unavailable.
>> CogVM binaries as per VMMaker.oscog-eem.812/r3039
>> Spur:
>> Fix bug in old space GC processing of weaklings.  Old code didn't trace
>> strong
>> references in weaklings to weaklings in
>> markWeaklingsAndMarkAndFireEphemerons.
>> Make sure nilUnmarkedWeaklingSlotsIn: can be inlined.  Bug shows up as
>> crashes
>> in Pharo Spur, Pharo making much more use of weakness than Squeak or
>> Newspeak.
>> Fix bug in nilUnmarkedWeaklingSlotsIn: which was not guarding the
>> isForwarded: check with an isFreeObject: not check.
>> Move the scanning for young references in scavenger processing of
>> weaklings
>> into processWeakSurvivor:.
>> Fix minor slips in allObjects & allInstancesOf: which should only empty
>> weaklingStack if marking.
>> Fix a couple of storePointer:ofObject:'s being applied to objStacks.
>> Rename isReallyForwarded: to isUnambiguouslyForwarder: and add an assert
>> to
>> isForwarded: to catch accidental applications to free objects.
>> Fix longPrintOop: for free referents.
>> V3 Cogit: Fix bogus assert fail due to signedness.
>> Slang:
>> Assign complex expressions to loop variables in value: expansions.  Old
>> code
>> would replace variable with expansion of actual parameter everywhere.
>> --
>> best,
>> Eliot
> --
> best,
> Eliot
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.squeakfoundation.org/pipermail/vm-dev/attachments/20140711/0334386d/attachment-0001.htm

More information about the Vm-dev mailing list