1.0.29.12: nicer DX capability conditionalization
[sbcl.git] / tests / dynamic-extent.impure.lisp
index 167acf8..521e0a4 100644 (file)
 
 (defvar *a-cons* (cons nil nil))
 
-#+(or x86 x86-64 alpha ppc sparc mips hppa)
 (progn
+  #+stack-allocatable-closures
   (assert-no-consing (dxclosure 42))
-  (assert-no-consing (dxlength 1 2 3))
-  (assert-no-consing (dxlength t t t t t t))
-  (assert-no-consing (dxlength))
-  (assert-no-consing (dxcaller 1 2 3 4 5 6 7))
-  (assert-no-consing (test-nip-values))
-  (assert-no-consing (test-let-var-subst1 17))
-  (assert-no-consing (test-let-var-subst2 17))
-  (assert-no-consing (test-lvar-subst 11))
+  #+stack-allocatable-lists
+  (progn
+    (assert-no-consing (dxlength 1 2 3))
+    (assert-no-consing (dxlength t t t t t t))
+    (assert-no-consing (dxlength))
+    (assert-no-consing (dxcaller 1 2 3 4 5 6 7))
+    (assert-no-consing (test-nip-values))
+    (assert-no-consing (test-let-var-subst1 17))
+    (assert-no-consing (test-let-var-subst2 17))
+    (assert-no-consing (test-lvar-subst 11))
+    (assert-no-consing (nested-dx-lists))
+    (assert-consing (nested-dx-not-used *a-cons*))
+    (assert-no-consing (nested-evil-dx-used *a-cons*))
+    (assert-no-consing (multiple-dx-uses)))
   (assert-no-consing (dx-value-cell 13))
-  ;; Only for platforms with DX FIXED-ALLOC
-  #+(or hppa mips x86 x86-64)
+  #+stack-allocatable-fixed-objects
   (progn
     (assert-no-consing (cons-on-stack 42))
     (assert-no-consing (make-foo1-on-stack 123))
     (assert-no-consing (nested-dx-conses))
     (assert-no-consing (dx-handler-bind 2))
     (assert-no-consing (dx-handler-case 2)))
-  ;; Only for platforms with DX ALLOCATE-VECTOR
-  #+(or hppa mips x86 x86-64)
+  #+stack-allocatable-vectors
   (progn
     (assert-no-consing (force-make-array-on-stack 128))
     (assert-no-consing (make-array-on-stack-1))
   (#+raw-instance-init-vops assert-no-consing
    #-raw-instance-init-vops progn
    (make-foo3-on-stack))
-  (assert-no-consing (nested-dx-lists))
-  (assert-consing (nested-dx-not-used *a-cons*))
-  (assert-no-consing (nested-evil-dx-used *a-cons*))
-  (assert-no-consing (multiple-dx-uses))
   ;; Not strictly DX..
   (assert-no-consing (test-hash-table))
   #+sb-thread