X-Git-Url: http://repo.macrolet.net/gitweb/?a=blobdiff_plain;f=src%2Fpcl%2Fvector.lisp;h=2fa4b85e40f1f00b2543420f2926375b249a79c6;hb=44fa19275c08a17b9d80d95102c1a8bc0da7a17e;hp=f703f945b29274ffa908eae08c89b9af7e162b10;hpb=0223f43d5f199914ebceff12b6f4c60448369edd;p=sbcl.git diff --git a/src/pcl/vector.lisp b/src/pcl/vector.lisp index f703f94..2fa4b85 100644 --- a/src/pcl/vector.lisp +++ b/src/pcl/vector.lisp @@ -55,11 +55,11 @@ ;;; used. (defvar *pv-tables* (make-hash-table :test 'equal)) -;;; ...and one lock to rule them. Spinlock because for certain (rare) +;;; ...and one lock to rule them. Lock because for certain (rare) ;;; cases this lock might be grabbed in the course of method dispatch ;;; -- and mostly this is already under the *world-lock* (defvar *pv-lock* - (sb-thread::make-spinlock :name "pv table index lock")) + (sb-thread:make-mutex :name "pv table index lock")) (defun intern-pv-table (&key slot-name-lists) (flet ((intern-slot-names (slot-names) @@ -77,7 +77,7 @@ :pv-size (* 2 (reduce #'+ snl :key (lambda (slots) (length (cdr slots)))))))))) - (sb-thread::with-spinlock (*pv-lock*) + (sb-thread:with-mutex (*pv-lock*) (%intern-pv-table (mapcar #'intern-slot-names slot-name-lists))))) (defun use-standard-slot-access-p (class slot-name type) @@ -198,7 +198,7 @@ ;;; Check whether the binding of the named variable is modified in the ;;; method body. (defun parameter-modified-p (parameter-name env) - (let ((modified-variables (macroexpand '%parameter-binding-modified env))) + (let ((modified-variables (%macroexpand '%parameter-binding-modified env))) (memq parameter-name modified-variables))) (defun optimize-slot-value (form slots required-parameters env) @@ -663,7 +663,9 @@ ;; args when a next-method is involved, to ;; prevent compiler warnings about ignored ;; args being read. - (unless (and (eq 'ignore name) (member var req-args :test #'eq) (or cnm-p (member var parameters-setqd))) + (unless (and (eq 'ignore name) + (member var req-args :test #'eq) + (or cnm-p (member var parameters-setqd))) (push var outers)) (push var inners))) (when outers