diff options
author | Paul Eggert <eggert@cs.ucla.edu> | 2011-07-07 17:51:25 -0700 |
---|---|---|
committer | Paul Eggert <eggert@cs.ucla.edu> | 2011-07-07 17:51:25 -0700 |
commit | 3cc5a5328c43317b12a7163c4e1c0a56d85b93ce (patch) | |
tree | 880e8f775ca3d34e357f1fda7ab2df57acd744aa /src/lisp.h | |
parent | b312a4929d4ed7bc900a54f506905801f860ce7c (diff) | |
download | emacs-3cc5a5328c43317b12a7163c4e1c0a56d85b93ce.tar.gz emacs-3cc5a5328c43317b12a7163c4e1c0a56d85b93ce.tar.bz2 emacs-3cc5a5328c43317b12a7163c4e1c0a56d85b93ce.zip |
Improve hashing quality when configured --with-wide-int.
* fns.c (hash_string): New function, taken from sxhash_string.
Do not discard information about ASCII character case; this
discarding is no longer needed.
(sxhash-string): Use it. Change sig to match it. Caller changed.
* lisp.h: Declare it.
* lread.c (hash_string): Remove, since we now use fns.c's version.
The fns.c version returns a wider integer if --with-wide-int is
specified, so this should help the quality of the hashing a bit.
Diffstat (limited to 'src/lisp.h')
-rw-r--r-- | src/lisp.h | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/src/lisp.h b/src/lisp.h index 257c204e3b0..1e141dbb5d0 100644 --- a/src/lisp.h +++ b/src/lisp.h @@ -2557,6 +2557,7 @@ extern void sweep_weak_hash_tables (void); extern Lisp_Object Qcursor_in_echo_area; extern Lisp_Object Qstring_lessp; extern Lisp_Object QCsize, QCtest, QCweakness, Qequal, Qeq, Qeql; +EMACS_UINT hash_string (char const *, ptrdiff_t); EMACS_UINT sxhash (Lisp_Object, int); Lisp_Object make_hash_table (Lisp_Object, Lisp_Object, Lisp_Object, Lisp_Object, Lisp_Object, Lisp_Object, |