emacs-devel
[Top][All Lists]
Advanced

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

Re: Native compilation on MPS branch


From: Gerd Möllmann
Subject: Re: Native compilation on MPS branch
Date: Tue, 23 Apr 2024 05:11:31 +0200
User-agent: Gnus/5.13 (Gnus v5.13)

Andrea Corallo <acorallo@gnu.org> writes:

> I'm not sure the pdumper plays a role here, IIUC the string is the name
> of a native compiled function that was recently loaded.

Right.

> AFAIR the names of functions being registered are keep in
> 'data_ephemeral_vec' referenced inside 'load_comp_unit'.  The comment in
> comp.c says:
>
>    /* Note: data_ephemeral_vec is not GC protected except than by
>       this function frame.  After this functions will be
>       deactivated GC will be free to collect it, but it MUST
>       survive till 'top_level_run' has finished his job.  We store
>       into the ephemeral allocation class only objects that we know
>       are necessary exclusively during the first load.  Once these
>       are collected we don't have to maintain them in the heap
>       forever.  */
>
> Is MPS scanning the stack for Lisp like objects like our current GC?

Yes, it is.

> Also other immediate objects kept in the eln are reachable by the GC
> through the compilation unit object (see Lisp_Native_Comp_Unit).
> some
> I guess this string belongs to one of the two cases.

Thanks Andrea! Maybe I have overlooked that.

(Could take a bit because I get a new MBPro soon, and then I have to
play with it first, of course ;-). And I have to make transfering stuff
from/to the branch in my fork easier somehow.)



reply via email to

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