emacs-diffs
[Top][All Lists]
Advanced

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

master d202f1b9e74 7/8: XSYMBOL eassume speedups


From: Paul Eggert
Subject: master d202f1b9e74 7/8: XSYMBOL eassume speedups
Date: Tue, 13 Feb 2024 14:20:43 -0500 (EST)

branch: master
commit d202f1b9e74107c0e51c5d2fdbe094cbe1baaadb
Author: Paul Eggert <eggert@cs.ucla.edu>
Commit: Paul Eggert <eggert@cs.ucla.edu>

    XSYMBOL eassume speedups
    
    * src/lisp.h (XSYMBOL_WITH_POS_SYM, XSYMBOL): Help the compiler by using
    eassume instead of eassert for XSYMBOL postconditions likely to be
    useful for optimization later.  With gcc 13.2 -O2 x86-64 this improved
    speed on my usual “compile all .el files” benchmark by 0.7% and shrank
    the text size of Emacs by 0.09%.
---
 src/lisp.h | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/src/lisp.h b/src/lisp.h
index e9b0bd522af..bf96bfd39f7 100644
--- a/src/lisp.h
+++ b/src/lisp.h
@@ -1117,7 +1117,7 @@ INLINE Lisp_Object
 XSYMBOL_WITH_POS_SYM (Lisp_Object a)
 {
   Lisp_Object sym = XSYMBOL_WITH_POS (a)->sym;
-  eassert (BARE_SYMBOL_P (sym));
+  eassume (BARE_SYMBOL_P (sym));
   return sym;
 }
 
@@ -1148,7 +1148,7 @@ XSYMBOL (Lisp_Object a)
 {
   if (!BARE_SYMBOL_P (a))
     {
-      eassert (symbols_with_pos_enabled);
+      eassume (symbols_with_pos_enabled);
       a = XSYMBOL_WITH_POS_SYM (a);
     }
   return XBARE_SYMBOL (a);



reply via email to

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