aboutsummaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorAndrea Corallo2024-11-27 14:18:24 +0100
committerAndrea Corallo2024-11-28 11:33:14 +0100
commitb0ba0d42b0fdf70a20cd7a070128db8abe4a0826 (patch)
tree01e46330ea04a871afefcd82f93bdc1ab25f6e59 /src
parent8184f64ab0025afb0b901b9cae3917e6f722974b (diff)
downloademacs-b0ba0d42b0fdf70a20cd7a070128db8abe4a0826.tar.gz
emacs-b0ba0d42b0fdf70a20cd7a070128db8abe4a0826.zip
* 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.
Diffstat (limited to 'src')
-rw-r--r--src/lisp.h8
1 files changed, 4 insertions, 4 deletions
diff --git a/src/lisp.h b/src/lisp.h
index 5ef97047f76..832a1755c04 100644
--- a/src/lisp.h
+++ b/src/lisp.h
@@ -1353,10 +1353,10 @@ INLINE bool
1353INLINE bool 1353INLINE bool
1354EQ (Lisp_Object x, Lisp_Object y) 1354EQ (Lisp_Object x, Lisp_Object y)
1355{ 1355{
1356 return BASE_EQ ((symbols_with_pos_enabled && SYMBOL_WITH_POS_P (x) 1356 return BASE_EQ ((__builtin_expect (symbols_with_pos_enabled, false)
1357 ? XSYMBOL_WITH_POS_SYM (x) : x), 1357 && SYMBOL_WITH_POS_P (x) ? XSYMBOL_WITH_POS_SYM (x) : x),
1358 (symbols_with_pos_enabled && SYMBOL_WITH_POS_P (y) 1358 (__builtin_expect (symbols_with_pos_enabled, false)
1359 ? XSYMBOL_WITH_POS_SYM (y) : y)); 1359 && SYMBOL_WITH_POS_P (y) ? XSYMBOL_WITH_POS_SYM (y) : y));
1360} 1360}
1361 1361
1362INLINE intmax_t 1362INLINE intmax_t