[Openmcl-cvs-notifications] r10156 - /trunk/source/level-0/l0-hash.lisp

rme at clozure.com rme at clozure.com
Sat Jul 19 18:34:56 EDT 2008


Author: rme
Date: Sat Jul 19 18:34:56 2008
New Revision: 10156

Log:
NEED-USE-EQL for x8632.

%%equalphash-structure, %%equalphash-array, %equalphash-aux: don't use
the #.(mixup-hash-code xx).  (It messes up cross-compilation).

IMMEDIATE-P for x8632.

Modified:
    trunk/source/level-0/l0-hash.lisp

Modified: trunk/source/level-0/l0-hash.lisp
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D
--- trunk/source/level-0/l0-hash.lisp (original)
+++ trunk/source/level-0/l0-hash.lisp Sat Jul 19 18:34:56 2008
@@ -225,9 +225,9 @@
   (let* ((typecode (typecode key)))
     (declare (fixnum typecode))
     (or (=3D typecode target::subtag-macptr)
-        #+ppc32-target
-        (and (>=3D typecode ppc32::min-numeric-subtag)
-             (<=3D typecode ppc32::max-numeric-subtag))
+        #+(or ppc32-target x8632-target)
+        (and (>=3D typecode target::min-numeric-subtag)
+             (<=3D typecode target::max-numeric-subtag))
         #+64-bit-target
         (or (=3D typecode target::subtag-bignum)
             (=3D typecode target::subtag-double-float)
@@ -1525,7 +1525,7 @@
         (if ap (setq addressp t)))
       (when (<=3D (decf limit) 0)
         (setq hash (the fixnum (+ (the fixnum (rotate-hash-code hash))
-                                  #.(mixup-hash-code 11))))
+                                  (the fixnum (mixup-hash-code 11)))))
         (return)))
     (values hash addressp)))
 =

@@ -1557,15 +1557,15 @@
           (if ap (setq addressp t)))
         (when (<=3D (decf limit) 0)
           (setq hash (the fixnum (+ (the fixnum (rotate-hash-code hash))
-                                    #.(mixup-hash-code 11))))
+                                    (the fixnum (mixup-hash-code 11)))))
           (return))
         (incf offset))
       (values hash addressp))))
 =

 (defun %%equalphash-aux (limit key)
   (if (<=3D limit 0) =

-    #.(mixup-hash-code 11)
-    (if (null key) #.(mixup-hash-code 17)
+    (mixup-hash-code 11)
+    (if (null key) (mixup-hash-code 17)
         (cond ((consp key)
                (let ((hash 0)
                      address-p)
@@ -1616,7 +1616,7 @@
 =

 (defun sxhash (s-expr)
   "Computes a hash code for S-EXPR and returns it as an integer."
-  (logand (sxhash-aux s-expr 7 17) most-positive-fixnum))
+  (logand (sxhash-aux s-expr 7 17) target::target-most-positive-fixnum))
 =

 (defun sxhash-aux (expr counter key)
   (declare (fixnum counter))
@@ -1637,12 +1637,12 @@
 =

 =

 =

-#+ppc32-target
+#+(or ppc32-target x8632-target)
 (defun immediate-p (thing)
   (let* ((tag (lisptag thing)))
     (declare (fixnum tag))
-    (or (=3D tag ppc32::tag-fixnum)
-        (=3D tag ppc32::tag-imm))))
+    (or (=3D tag target::tag-fixnum)
+        (=3D tag target::tag-imm))))
 =

 #+ppc64-target
 (defun immediate-p (thing)



More information about the Openmcl-cvs-notifications mailing list