emacs-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Merging scratch/no-purespace to remove unexec and purespace


From: Stefan Monnier
Subject: Re: Merging scratch/no-purespace to remove unexec and purespace
Date: Sun, 22 Dec 2024 10:51:39 -0500
User-agent: Gnus/5.13 (Gnus v5.13)

> My idea is this: we add an extra mark bit area to the pdumper file for
> objects which we know to be "tenured": i.e. objects that we'll treat as
> immortal, but for which we also know that all referenced objects will
> also be "tenured", or static.

IIUC this sounds like a kind of generational GC, except that promotion
to the "tenured" set is made somewhat visible instead of being 100% internal.

> If we write to such an object, we clear the bit, and put it on a special
> set to maintain its tenure (it'd be nicer to simply set another bit, but
> non-MPS pdumper cannot do so).  This should happen rarely, but it's
> better than the current CHECK_IMPURE thing.

If my understanding above is correct, then the
`CHECK_IMPURE/check_writable` is what we usually call "write barrier",
and the "special set" above is what we usually call the "remembered set".


        Stefan




reply via email to

[Prev in Thread] Current Thread [Next in Thread]