1
Fork 0
mirror of git://git.sv.gnu.org/emacs.git synced 2025-12-24 14:30:43 -08:00

* src/lisp.h (EQ): Improve generated code.

Outside compilation 'symbols_with_pos_enabled' is always false, so ask
the compiler to organize the most likely execution path in a sequential
fashion in order to favor run-time performance.
This commit is contained in:
Andrea Corallo 2024-11-27 14:18:24 +01:00
parent 8184f64ab0
commit b0ba0d42b0

View file

@ -1353,10 +1353,10 @@ INLINE bool
INLINE bool
EQ (Lisp_Object x, Lisp_Object y)
{
return BASE_EQ ((symbols_with_pos_enabled && SYMBOL_WITH_POS_P (x)
? XSYMBOL_WITH_POS_SYM (x) : x),
(symbols_with_pos_enabled && SYMBOL_WITH_POS_P (y)
? XSYMBOL_WITH_POS_SYM (y) : y));
return BASE_EQ ((__builtin_expect (symbols_with_pos_enabled, false)
&& SYMBOL_WITH_POS_P (x) ? XSYMBOL_WITH_POS_SYM (x) : x),
(__builtin_expect (symbols_with_pos_enabled, false)
&& SYMBOL_WITH_POS_P (y) ? XSYMBOL_WITH_POS_SYM (y) : y));
}
INLINE intmax_t