[Vm-dev] off-topic garbage

Eliot Miranda eliot.miranda at gmail.com
Sun Dec 14 17:55:28 UTC 2014


Hi Ben,

On Dec 13, 2014, at 8:32 PM, Ben Coman <btc at openInWorld.com> wrote:

> David T. Lewis wrote:
>> On Sat, Dec 13, 2014 at 12:00:43PM -0800, Eliot Miranda wrote:
>>> Hi All,
>>> 
>>>    I'm debugging the 64-bit variant of the Spur GC, having got the real
>>> 64-bit Spur Stack VM to start-up and progress to the first GC (albeit with
>>> the border of a window displayed in the wrong colour).
>> Congratulations!
>>> In doing so I
>>> looked at the list of to-be-collected objects at the first full GC in the
>>> simulator.  I'll list them here.  What are they you wonder?  These are the
>>> objects that are unreachable in a snapshotted image that has been converted
>>> to 64-bits.  So they're objects that I suspect are always reclaimed on the
>>> first GC.  They're the objects comprising the screen menu that was opened
>>> to save and quit the image.  Here's ones I printed out to investigate:
>> Interesting catch. It makes sense when you think about it, but I never would
>> have thought about it.
>> Dave
> 
> So we should be doing a garbage collect in #snapshot:andQuit:
> right before the call to #snapshotPrimitive ?

Not at all.  The primitive dies a FC anyway.  My takeaway was that menus are now a lot more complicated than in Smalltalk-80 where they were carefully cached and comprised just a bitmap, an array of selectors and an array of separator indices.  Now they have submorphs, targets, blocks etc, and are created in the fly.  that was interesting.

> 
> cheers -ben


More information about the Vm-dev mailing list