From f3058a5bd36e56cd7b1140053f2afc5080b86fff Mon Sep 17 00:00:00 2001 From: dtc <dtc> Date: Fri, 14 Jan 2000 19:48:43 +0000 Subject: [PATCH] Modify the sxhash-bits-byte to be 29 bits wide rather than just 23 bits. It is typically better not the throw away bits of the key, and the hash may be a 29 bit unsigned fixnum. Similarly modify sxmash to use all 29 bits rather than just 26 bits. --- code/hash-new.lisp | 8 ++++---- code/hash.lisp | 8 ++++---- compiler/generic/vm-tran.lisp | 8 ++++---- 3 files changed, 12 insertions(+), 12 deletions(-) diff --git a/code/hash-new.lisp b/code/hash-new.lisp index b40a5c154..b97dec342 100644 --- a/code/hash-new.lisp +++ b/code/hash-new.lisp @@ -5,7 +5,7 @@ ;;; Carnegie Mellon University, and has been placed in the public domain. ;;; (ext:file-comment - "$Header: /Volumes/share2/src/cmucl/cvs2git/cvsroot/src/code/hash-new.lisp,v 1.9 2000/01/14 19:47:19 dtc Exp $") + "$Header: /Volumes/share2/src/cmucl/cvs2git/cvsroot/src/code/hash-new.lisp,v 1.10 2000/01/14 19:48:36 dtc Exp $") ;;; ;;; ********************************************************************** ;;; @@ -838,9 +838,9 @@ (eval-when (compile eval) -(defconstant sxhash-bits-byte (byte 23 0)) -(defconstant sxmash-total-bits 26) -(defconstant sxmash-rotate-bits 7) +(defconstant sxhash-bits-byte (byte 29 0)) +(defconstant sxmash-total-bits 29) +(defconstant sxmash-rotate-bits 9) (defmacro sxmash (place with) `(setf ,place diff --git a/code/hash.lisp b/code/hash.lisp index befee36f9..703c2a514 100644 --- a/code/hash.lisp +++ b/code/hash.lisp @@ -5,7 +5,7 @@ ;;; Carnegie Mellon University, and has been placed in the public domain. ;;; (ext:file-comment - "$Header: /Volumes/share2/src/cmucl/cvs2git/cvsroot/src/code/hash.lisp,v 1.33 2000/01/14 19:47:20 dtc Exp $") + "$Header: /Volumes/share2/src/cmucl/cvs2git/cvsroot/src/code/hash.lisp,v 1.34 2000/01/14 19:48:37 dtc Exp $") ;;; ;;; ********************************************************************** ;;; @@ -807,9 +807,9 @@ (eval-when (compile eval) -(defconstant sxhash-bits-byte (byte 23 0)) -(defconstant sxmash-total-bits 26) -(defconstant sxmash-rotate-bits 7) +(defconstant sxhash-bits-byte (byte 29 0)) +(defconstant sxmash-total-bits 29) +(defconstant sxmash-rotate-bits 9) (defmacro sxmash (place with) `(setf ,place diff --git a/compiler/generic/vm-tran.lisp b/compiler/generic/vm-tran.lisp index 2c15eba38..c93773ec4 100644 --- a/compiler/generic/vm-tran.lisp +++ b/compiler/generic/vm-tran.lisp @@ -5,7 +5,7 @@ ;;; Carnegie Mellon University, and has been placed in the public domain. ;;; (ext:file-comment - "$Header: /Volumes/share2/src/cmucl/cvs2git/cvsroot/src/compiler/generic/vm-tran.lisp,v 1.38 2000/01/13 16:53:33 dtc Exp $") + "$Header: /Volumes/share2/src/cmucl/cvs2git/cvsroot/src/compiler/generic/vm-tran.lisp,v 1.39 2000/01/14 19:48:43 dtc Exp $") ;;; ;;; ********************************************************************** ;;; @@ -315,9 +315,9 @@ ;;; Should be in VM: -(defconstant sxhash-bits-byte (byte 23 0)) -(defconstant sxmash-total-bits 26) -(defconstant sxmash-rotate-bits 7) +(defconstant sxhash-bits-byte (byte 29 0)) +(defconstant sxmash-total-bits 29) +(defconstant sxmash-rotate-bits 9) (deftransform sxhash ((s-expr) (integer)) '(ldb sxhash-bits-byte s-expr)) -- GitLab