]> git.eshelyaron.com Git - emacs.git/commitdiff
Remove BASE2_EQ
authorPaul Eggert <eggert@cs.ucla.edu>
Tue, 13 Feb 2024 17:54:51 +0000 (09:54 -0800)
committerEshel Yaron <me@eshelyaron.com>
Wed, 14 Feb 2024 08:15:29 +0000 (09:15 +0100)
* src/lisp.h (lisp_h_BASE2_EQ, BASE2_EQ): Remove.  All uses
removed.  BASE2_EQ was present only for minor optimization and
with current gcc -O2, BASE2_EQ does not affect performance, so
it’s not worth the hassle.

(cherry picked from commit efdcd7b8f78ef22c0213ea770a552fb69b789381)

src/lisp.h
src/lread.c
src/timefns.c

index b609bef990c535ca4b1fa25d98aaf5522da7ed5c..0b676a027eb2e56e8d025695977160ee386b08ad 100644 (file)
@@ -384,14 +384,11 @@ typedef EMACS_INT Lisp_Word;
    ((ok) ? (void) 0 : wrong_type_argument (predicate, x))
 #define lisp_h_CONSP(x) TAGGEDP (x, Lisp_Cons)
 #define lisp_h_BASE_EQ(x, y) (XLI (x) == XLI (y))
-#define lisp_h_BASE2_EQ(x, y) \
+#define lisp_h_EQ(x, y) \
   BASE_EQ ((symbols_with_pos_enabled && SYMBOL_WITH_POS_P (x) \
            ? XSYMBOL_WITH_POS (x)->sym : (x)), \
-          y)
-#define lisp_h_EQ(x, y) \
-  BASE2_EQ (x, \
-           (symbols_with_pos_enabled && SYMBOL_WITH_POS_P (y) \
-            ? XSYMBOL_WITH_POS (y)->sym : (y)))
+          (symbols_with_pos_enabled && SYMBOL_WITH_POS_P (y) \
+           ? XSYMBOL_WITH_POS (y)->sym : (y)))
 
 #define lisp_h_FIXNUMP(x) \
    (! (((unsigned) (XLI (x) >> (USE_LSB_TAG ? 0 : FIXNUM_BITS)) \
@@ -461,7 +458,6 @@ typedef EMACS_INT Lisp_Word;
 # define CHECK_TYPE(ok, predicate, x) lisp_h_CHECK_TYPE (ok, predicate, x)
 # define CONSP(x) lisp_h_CONSP (x)
 # define BASE_EQ(x, y) lisp_h_BASE_EQ (x, y)
-# define BASE2_EQ(x, y) lisp_h_BASE2_EQ (x, y)
 # define FLOATP(x) lisp_h_FLOATP (x)
 # define FIXNUMP(x) lisp_h_FIXNUMP (x)
 # define NILP(x) lisp_h_NILP (x)
@@ -1339,14 +1335,6 @@ INLINE bool
   return lisp_h_BASE_EQ (x, y);
 }
 
-/* Return true if X and Y are the same object, reckoning X to be the
-   same as a bare symbol Y if X is Y with position.  */
-INLINE bool
-(BASE2_EQ) (Lisp_Object x, Lisp_Object y)
-{
-  return lisp_h_BASE2_EQ (x, y);
-}
-
 /* Return true if X and Y are the same object, reckoning a symbol with
    position as being the same as the bare symbol.  */
 INLINE bool
index d339b2f15ae4781f66fe44a6411631aaf761e349..551bfd735a25f46f9b0102e9e3e5b7e6f611b21b 100644 (file)
@@ -5063,10 +5063,12 @@ it defaults to the value of `obarray'.  */)
     {
       /* If already a symbol, we don't do shorthand-longhand translation,
         as promised in the docstring.  */
+      Lisp_Object sym = (symbols_with_pos_enabled && SYMBOL_WITH_POS_P (name)
+                        ? XSYMBOL_WITH_POS (name)->sym : name);
       string = XSYMBOL (name)->u.s.name;
       tem
        = oblookup (obarray, SSDATA (string), SCHARS (string), SBYTES (string));
-      return BASE2_EQ (name, tem) ? name : Qnil;
+      return BASE_EQ (sym, tem) ? name : Qnil;
     }
 }
 \f
index 1541583b485c473af3fccf743a192dcbda08633a..fc1edf136cbee7d42892b618a1fffc65bb77f677 100644 (file)
@@ -225,7 +225,7 @@ tzlookup (Lisp_Object zone, bool settz)
 
   if (NILP (zone))
     return local_tz;
-  else if (BASE_EQ (zone, make_fixnum (0)) || BASE2_EQ (zone, Qt))
+  else if (BASE_EQ (zone, make_fixnum (0)) || EQ (zone, Qt))
     {
       zone_string = "UTC0";
       new_tz = utc_tz;
@@ -234,7 +234,7 @@ tzlookup (Lisp_Object zone, bool settz)
     {
       bool plain_integer = FIXNUMP (zone);
 
-      if (BASE2_EQ (zone, Qwall))
+      if (EQ (zone, Qwall))
        zone_string = 0;
       else if (STRINGP (zone))
        zone_string = SSDATA (ENCODE_SYSTEM (zone));
@@ -1548,7 +1548,7 @@ usage: (decode-time &optional TIME ZONE FORM)  */)
 
   /* Compute SEC from LOCAL_TM.tm_sec and HZ.  */
   Lisp_Object hz = lt.hz, sec;
-  if (BASE_EQ (hz, make_fixnum (1)) || !BASE2_EQ (form, Qt))
+  if (BASE_EQ (hz, make_fixnum (1)) || !EQ (form, Qt))
     sec = make_fixnum (local_tm.tm_sec);
   else
     {