]> git.eshelyaron.com Git - emacs.git/commitdiff
Speed up `=` on fixnums in bytecode
authorMattias Engdegård <mattiase@acm.org>
Thu, 3 Feb 2022 09:26:27 +0000 (10:26 +0100)
committerMattias Engdegård <mattiase@acm.org>
Sat, 12 Feb 2022 19:27:31 +0000 (20:27 +0100)
Now that EQ has become expensive, use BASE_EQ where possible.

* src/bytecode.c (exec_byte_code): Use cheaper operation for Beqlsign.

src/bytecode.c

index 1018e81d24c298a838909aaf7a65850591b0d824..bda9a39b7f3e6ac8c3be1d0b303349a9da640ede 100644 (file)
@@ -1060,7 +1060,7 @@ exec_byte_code (Lisp_Object bytestr, Lisp_Object vector, Lisp_Object maxdepth,
            Lisp_Object v2 = POP;
            Lisp_Object v1 = TOP;
            if (FIXNUMP (v1) && FIXNUMP (v2))
-             TOP = EQ (v1, v2) ? Qt : Qnil;
+             TOP = BASE_EQ(v1, v2) ? Qt : Qnil;
            else
              TOP = arithcompare (v1, v2, ARITH_EQUAL);
            NEXT;