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