emacs-devel
[Top][All Lists]
Advanced

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

Re: scratch/accurate-warning-pos: Solid progress: the branch now bootstr


From: Alan Mackenzie
Subject: Re: scratch/accurate-warning-pos: Solid progress: the branch now bootstraps.
Date: Sun, 25 Nov 2018 15:42:03 +0000
User-agent: Mutt/1.10.1 (2018-07-13)

Hello, Andreas.

On Sun, Nov 25, 2018 at 16:12:57 +0100, Andreas Schwab wrote:
> On Nov 25 2018, Alan Mackenzie <address@hidden> wrote:

> > diff --git a/src/lisp.h b/src/lisp.h
> > index 4dfd065629..802c9e4259 100644
> > --- a/src/lisp.h
> > +++ b/src/lisp.h
> > @@ -395,7 +395,7 @@ typedef EMACS_INT Lisp_Word;
> >  
> >  /* verify (NIL_IS_ZERO) */
> >  #define lisp_h_EQ(x, y) ((XLI ((x)) == XLI ((y)))       \
> > -  || (Vsymbols_with_pos_enabled  \
> > +  || (XLI (Vsymbols_with_pos_enabled)    \

> You should make that a DEFVAR_BOOL.

I'm not sure.  If I understand correctly, DEFVAR_BOOLS are bitfields in
integers, and they are slow to unpack and test.  Or am I wrong, here?
Even if it's not the case now, it might be in the future.

The idea behind symbols-with-pos-enabled is that it will be a 32/64 bit
integer permanently in cache, hence can be tested for zero/non-zero
rapidly.

Even so, the mechanism has slowed Emacs down by seven or eight per cent.

> Andreas.

> -- 
> Andreas Schwab, address@hidden
> GPG Key fingerprint = 7578 EB47 D4E5 4D69 2510  2552 DF73 E780 A9DA AEC1
> "And now for something completely different."

-- 
Alan Mackenzie (Nuremberg, Germany).



reply via email to

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