[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: MPS: staticpro everything
From: |
Eli Zaretskii |
Subject: |
Re: MPS: staticpro everything |
Date: |
Thu, 02 May 2024 15:10:14 +0300 |
> From: Gerd Möllmann <gerd.moellmann@gmail.com>
> Cc: eller.helmut@gmail.com, emacs-devel@gnu.org
> Date: Thu, 02 May 2024 14:01:18 +0200
>
> Eli Zaretskii <eliz@gnu.org> writes:
>
> >> I would propose to use igc_xzalloc_ambig + igc_free in the MPS case
> >> instead of xmalloc/xfree. There are also realloc, and palloc variants,
> >> if you use that.
> >>
> >> This is the same as the normal malloc/free, but it also adds an ambig
> >> root, so that anything references from the malloc'd memory becomes
> >> immovable / doesn't die. It's the same as if that memory would be part
> >> of the control stack.
> >
> > But doesn't that mean MPS will need to trace too much?
>
> Yes, admitted :-). We could optimize that later...
It also means (AFAIU) that every cache slot that is "freed" by moving
bidi_cache_idx back will need to have the 'struct window *' member be
set to NULL, to prevent MPS from tracing garbage. Right? I'd like to
avoid these complications, if only for performance reasons.
> > Also, does the above mean my idea of making the window unmovable is
> > not good? If so, can you explain why not?
>
> I'm sorry, I don't remember. What was the idea again?
Make it so the window being processed by redisplay_window is
unmovable. That is the window whose pointer bidi_it uses. But I also
think doing this will be useful for other reasons, since the display
code manipulates the it->w pointer quite liberally, and who knows what
we do with it? If the window cannot move while it is being
redisplayed, we can stop bothering about all those uses of its
pointer.
- Re: MPS: staticpro everything, (continued)
- Re: MPS: staticpro everything, Helmut Eller, 2024/05/01
- Re: MPS: staticpro everything, Gerd Möllmann, 2024/05/01
- Re: MPS: staticpro everything, Eli Zaretskii, 2024/05/01
- Re: MPS: staticpro everything, Helmut Eller, 2024/05/01
- Re: MPS: staticpro everything, Eli Zaretskii, 2024/05/02
- Re: MPS: staticpro everything, Gerd Möllmann, 2024/05/02
- Re: MPS: staticpro everything, Eli Zaretskii, 2024/05/02
- Re: MPS: staticpro everything, Gerd Möllmann, 2024/05/02
- Re: MPS: staticpro everything,
Eli Zaretskii <=
- Re: MPS: staticpro everything, Gerd Möllmann, 2024/05/02
- Re: MPS: staticpro everything, Po Lu, 2024/05/02
- Re: MPS: staticpro everything, Gerd Möllmann, 2024/05/02
- Re: MPS: staticpro everything, Eli Zaretskii, 2024/05/02
- Re: MPS: staticpro everything, Gerd Möllmann, 2024/05/02
- Re: MPS: staticpro everything, Eli Zaretskii, 2024/05/02
- Re: MPS: staticpro everything, Gerd Möllmann, 2024/05/02
- Re: MPS: staticpro everything, Eli Zaretskii, 2024/05/03
- Re: MPS: staticpro everything, Gerd Möllmann, 2024/05/03
- Re: MPS: staticpro everything, Helmut Eller, 2024/05/03