X-Git-Url: http://repo.macrolet.net/gitweb/?a=blobdiff_plain;f=tests%2Fcompare-and-swap.impure.lisp;h=b368f8c48292cd67707d7fc06a662182e1362a00;hb=9304704f68a18894fa8eb985b387465e5d25e1d5;hp=1bbecf9d5b9709f196ab738f11a9bbbbba75e4c9;hpb=af3fdb98f2b8718dbb69eba5db56dee369b142c7;p=sbcl.git diff --git a/tests/compare-and-swap.impure.lisp b/tests/compare-and-swap.impure.lisp index 1bbecf9..b368f8c 100644 --- a/tests/compare-and-swap.impure.lisp +++ b/tests/compare-and-swap.impure.lisp @@ -120,6 +120,10 @@ (defstruct box (word 0 :type sb-vm:word)) +;; Have the following tests check that CAS access to the superclass +;; works in the presence of a subclass sharing the conc-name. +(defstruct (subbox (:include box) (:conc-name "BOX-"))) + (defun inc-box (box n) (declare (fixnum n) (box box)) (loop repeat n @@ -436,7 +440,7 @@ (dotimes (i n) (push i y)) (mapc #'sb-thread:join-thread - (loop repeat 1000 + (loop repeat (ecase sb-vm:n-word-bits (32 100) (64 1000)) collect (sb-thread:make-thread (lambda () (loop for z = (atomic-pop y)