• Paul Eggert's avatar
    Simplify hashfn/cmpfn calling convention · b6f194a0
    Paul Eggert authored
    * src/fns.c (cmpfn_eql, cmpfn_equal, cmpfn_user_defined)
    (hashfn_eq, hashfn_equal, hashfn_eql, hashfn_user_defined):
    * src/profiler.c (cmpfn_profiler, hashfn_profiler):
    Use new calling convention where the return value is a fixnum
    instead of EMACS_UINT.  While we’re at it, put the hash table
    at the end, since that’s a bit simpler and generates better
    code (at least on the x86-64).  All callers changed.
    * src/fns.c (hash_lookup): Store fixnum rather than EMACS_UINT.
    All callers changed.
    (hash_put): Take a fixnum rather than an EMACS_UINT.
    All callers changed.  Remove unnecessary eassert (XUFIXNUM does it).
    * src/lisp.h (struct hash_table_test):
    Adjust signatures of cmpfn and hashfn.
    b6f194a0
profiler.c 18.3 KB