[Vm-dev] New Cog VMs available
karlramberg at gmail.com
Tue Oct 14 07:13:15 UTC 2014
Do you have a prefered way to build a image or a link to a current image in
a good state ?
On Mon, Oct 13, 2014 at 8:48 PM, Eliot Miranda <eliot.miranda at gmail.com>
> Hi Karl,
> I've been looking at a bug that Stéphane Rollandin uncovered in the V3
> GC. I've just fixed it and suspect it might be the same bug that is biting
> you. I wonder if you can do me a favour. Can you try and construct a
> version of your bug that crashes without user intervention? i.e. in e.g. a
> workspace evaluate
> Smalltalk snapshot: true andQuit: true.
> 1 to: 50 do:[: i | Browser open]
> and then verify that the image crashes on startup? And then save that
> image (or mail me a copy)? The reason is that the bug is very sensitive to
> allocation order and so won't crash reliably if started from a menu pick,
> where the exact timing, movement of the mouse etc can all change object
> allocation. With the saved snapshot, however, everything is unchanged
> except code determined by the date the image is started in, the directory
> it is started in, etc. But it is much moire predictable. Once there's a
> reliably crashing image it is easy to check whether a new VM fixes the bug
> or not.
> On Sun, Oct 12, 2014 at 7:32 AM, karl ramberg <karlramberg at gmail.com>
>> The cogspurwin-14.39.3095
>> <http://www.mirandabanda.org/files/Cog/VM/VM.r3095/cogspurwin-14.39.3095.zip> vm
>> crashes when I run
>> 1 to: 50 do:[: i | Browser open]
>> Crash dump attached.
>> On Sat, Oct 4, 2014 at 2:17 AM, Eliot Miranda <eliot.miranda at gmail.com>
>>> ...at http://www.mirandabanda.org/files/Cog/VM/VM.r3095/.
>>> CogVM binaries as per VMMaker.oscog-eem.890/r3095
>>> Fix line-buffered input in sqFilePluginBasicPrims.c when buffer size > 1.
>>> fread cannot be relied upon to answer lines.
>>> Fix bug in Cogit>>lookup:for:methodAndErrorSelectorInto: which if
>>> cogging a
>>> method found through an MNU would set the cog method's selector to the
>>> selector that was not understood instead of #doesNotUnderstand:.
>>> Fix the description of the blockonwarn flag (not blockonwarning).
>>> Fix one-way become for classes with and without copyHash, primarily by
>>> allInstances. One-way become for classes causes duplicates in the class
>>> (either that or an allInstances scan would be needed as part of the
>>> become to
>>> change instances referring to the deleted class index, which would be
>>> So allInstances must be able to cope with duplicates. Hence split it
>>> into a
>>> fast path common case when the class in question is not duplicated, and
>>> a slower
>>> path when it is. Make both the marking phase of GC and allInstances
>>> check for
>>> and eliminate refereces to duplicate entries at wrong/obsolete class
>>> Fix markAndShouldScan: to not scan the pun classes of non-objects on the
>>> such as implicit receiver caches and Sista counters.
>>> Eliminate the classTableBitmap premature optimization. All the
>>> information we
>>> need is in the cassTable and the class's hashes therein.
>>> Change pinObject: to answer 0 on failure and the (possibly moved) object
>>> success. Much easier than having to check and follow forwarding pointer.
>>> The changes to
>>> in r3092 in a Spur MT VM depend on this.
> thanks in advance,
-------------- next part --------------
An HTML attachment was scrubbed...
More information about the Vm-dev