emacs-devel
[Top][All Lists]
Advanced

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

Re: pdumper on Solaris 10


From: Gerd Möllmann
Subject: Re: pdumper on Solaris 10
Date: Tue, 10 Dec 2024 21:34:58 +0100
User-agent: Gnus/5.13 (Gnus v5.13)

Pip Cet <pipcet@protonmail.com> writes:

>> Hm, interesting idea. One would have to try it out of course to know,
>> but from a gut feeling, would you say one would notice a difference?
>> I don't have an "educated" gut feeling wrt EQ.
>
> My gut feeling is that EQ happens so often that it's worth
> micro-optimizing. Andrea has started doing that by using
> __builtin_expect, but the assembler code we produce still looks very
> inefficient. In particular, we don't even perform a quick exit if the
> arguments are BASE_EQ, or attempt to move the cold code into its own
> function, which shouldn't be inlined (there are about 2000 locations GDB
> thinks correspond to EQ calls in my current Emacs, so that's a lot of
> duplicated code).
>
> I was going to suggest a patch to change that...
>
> Of course it's entirely possible that EQ just doesn't matter for
> performance.

The proof is in the pudding, I guess.

> My entire post-MPS proposal is to have bignums, floats and
> symbols-with-position as the "exotic" tags that (may) need special handling in
> EQ. That leaves four tags for fixnums, strings, vectorlikes, symbols,
> and cons cells, which doesn't work out.
>
> I _think_ the least painful option is to give strings the "treat
> specially in EQ" bit, since comparing strings with EQ, while legal, is
> rare.
>
> (and, yes, this approach would use Lisp_Type_Unused0 and reduce fixnum
> range by one bit).

Oops :-).




reply via email to

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