summaryrefslogtreecommitdiff
path: root/src/lisp.h
diff options
context:
space:
mode:
authorPaul Eggert <eggert@cs.ucla.edu>2011-07-07 17:51:25 -0700
committerPaul Eggert <eggert@cs.ucla.edu>2011-07-07 17:51:25 -0700
commit3cc5a5328c43317b12a7163c4e1c0a56d85b93ce (patch)
tree880e8f775ca3d34e357f1fda7ab2df57acd744aa /src/lisp.h
parentb312a4929d4ed7bc900a54f506905801f860ce7c (diff)
downloademacs-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.h1
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,