[m-dev.] for design review: accurate GC for MLDS back-end

Zoltan Somogyi zs at cs.mu.OZ.AU
Fri Oct 26 19:17:52 AEST 2001


On 26-Oct-2001, Fergus Henderson <fjh at cs.mu.OZ.AU> wrote:
> My idea was that these typeinfos would only need to be materialized
> in the foo_traverse() function, not in foo() itself.  So this cost
> would then only be paid at GC time, not during ordinary forward execution.

I figured that. However, this means that one must decide how to embed the
information about how to materialize those type_infos in the foo_traverse
function.

> Note that the typeinfos also get materialized at GC time in the current
> LLDS-based accurate GC design.  The only difference is that rather than
> generating layout structures and pseudotypeinfos which the GC then
> interprets at GC-time, I'm planning to partially evaluate that a bit
> by having frame-specific routines to traverse each stack frame.

Yes, Ben Zorn's approach. I think the approach of the LLDS back end
(recording static data in a static data structure which is then interpreted)
is better for Unix systems, but partially evaluating the interpreter(s)
is practically required by .NET.

Zoltan.
--------------------------------------------------------------------------
mercury-developers mailing list
Post messages to:       mercury-developers at cs.mu.oz.au
Administrative Queries: owner-mercury-developers at cs.mu.oz.au
Subscriptions:          mercury-developers-request at cs.mu.oz.au
--------------------------------------------------------------------------



More information about the developers mailing list