[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