In aliencomp.c #+(and ppc darwin) should be #!+(and ppc darwin), which
[sbcl.git] / tests / bit-vector.impure-cload.lisp
index 470bf57..2b22e32 100644 (file)
     (assert (= (aref a 0) 1))
     (inform :aref-2)
     (assert (= (aref a (- array-dimension-limit 2)) 1))
-    #-darwin
-    (progn
-      (inform :bit-and)
-      (bit-and a b a)
-      (inform :aref-3)
-      (assert (= (aref a 0) 0))
-      (inform :aref-4)
-      (assert (= (aref a (- array-dimension-limit 2)) 0)))))
+    (inform :bit-and)
+    (bit-and a b a)
+    (inform :aref-3)
+    (assert (= (aref a 0) 0))
+    (inform :aref-4)
+    (assert (= (aref a (- array-dimension-limit 2)) 0))))
 
 (test-small-bit-vectors)
 
-#-x86-64
-;; except on machines where addressable space is likely to be
-;; much bigger than physical memory
+(eval-when (:compile-toplevel :load-toplevel :execute)
+  (defun dynamic-space-size ()
+    #+gencgc
+    (- sb-vm:dynamic-space-end sb-vm:dynamic-space-start)
+    #-gencgc
+    (- sb-vm:dynamic-space-0-end sb-vm:dynamic-space-0-start)))
+
+;; except on machines where the arrays won't fit into the dynamic space.
+#+#.(cl:if (cl:> (cl-user::dynamic-space-size)
+                 (cl:truncate (cl:1- cl:array-dimension-limit)
+                              sb-vm:n-word-bits))
+           '(and)
+           '(or))
 (test-big-bit-vectors)