X-Git-Url: http://repo.macrolet.net/gitweb/?a=blobdiff_plain;f=src%2Fpcl%2Fdlisp.lisp;h=b7448838c5e9059504176ae4f70d890ee8922315;hb=9be48f2a73ca5f4cc0848b8c0adad7127de10373;hp=e0d23e75cf1faa9fbb312aaa0ec5fccced1cbb29;hpb=fe91df69dbf65c4a4c011bf1a7ee33100a50e711;p=sbcl.git diff --git a/src/pcl/dlisp.lisp b/src/pcl/dlisp.lisp index e0d23e7..b744883 100644 --- a/src/pcl/dlisp.lisp +++ b/src/pcl/dlisp.lisp @@ -173,7 +173,7 @@ (fsc-instance-wrapper ,instance))))) (block access (when (and wrapper - (/= (wrapper-cache-number-vector-ref wrapper ,field) 0) + (/= (layout-clos-hash wrapper ,field) 0) ,@(if (eql 1 1-or-2-class) `((eq wrapper wrapper-0)) `((or (eq wrapper wrapper-0) @@ -420,7 +420,7 @@ (go ,miss-label))))))) (defun emit-1-wrapper-compute-primary-cache-location (wrapper miss-label) - `(let ((wrapper-cache-no (wrapper-cache-number-vector-ref ,wrapper field))) + `(let ((wrapper-cache-no (layout-clos-hash ,wrapper field))) (declare (fixnum wrapper-cache-no)) (when (zerop wrapper-cache-no) (go ,miss-label)) ,(let ((form `(logand mask wrapper-cache-no))) @@ -433,8 +433,7 @@ ,@(let ((adds 0) (len (length wrappers))) (declare (fixnum adds len)) (mapcar (lambda (wrapper) - `(let ((wrapper-cache-no (wrapper-cache-number-vector-ref - ,wrapper field))) + `(let ((wrapper-cache-no (layout-clos-hash ,wrapper field))) (declare (fixnum wrapper-cache-no)) (when (zerop wrapper-cache-no) (go ,miss-label)) (setq primary (the fixnum (+ primary wrapper-cache-no)))