Fixnum and unsigned-fixnum array cleanups.
[sbcl.git] / src / compiler / generic / vm-typetran.lisp
index ae7d8e6..fbf1736 100644 (file)
                        (simple-array (unsigned-byte 15) (*)))
 (define-type-predicate simple-array-unsigned-byte-16-p
                        (simple-array (unsigned-byte 16) (*)))
-#!+#.(cl:if (cl:= 32 sb!vm:n-word-bits) '(and) '(or))
-(define-type-predicate simple-array-unsigned-byte-29-p
-                       (simple-array (unsigned-byte 29) (*)))
+
+(define-type-predicate simple-array-unsigned-fixnum-p
+    (simple-array
+     (unsigned-byte #.sb!vm:n-positive-fixnum-bits) (*)))
+
 (define-type-predicate simple-array-unsigned-byte-31-p
-                       (simple-array (unsigned-byte 31) (*)))
+    (simple-array (unsigned-byte 31) (*)))
 (define-type-predicate simple-array-unsigned-byte-32-p
                        (simple-array (unsigned-byte 32) (*)))
-#!+#.(cl:if (cl:= 64 sb!vm:n-word-bits) '(and) '(or))
-(define-type-predicate simple-array-unsigned-byte-60-p
-                       (simple-array (unsigned-byte 60) (*)))
+
 #!+#.(cl:if (cl:= 64 sb!vm:n-word-bits) '(and) '(or))
 (define-type-predicate simple-array-unsigned-byte-63-p
                        (simple-array (unsigned-byte 63) (*)))
                        (simple-array (signed-byte 8) (*)))
 (define-type-predicate simple-array-signed-byte-16-p
                        (simple-array (signed-byte 16) (*)))
-#!+#.(cl:if (cl:= 32 sb!vm:n-word-bits) '(and) '(or))
-(define-type-predicate simple-array-signed-byte-30-p
-                       (simple-array (signed-byte 30) (*)))
+
+(define-type-predicate simple-array-fixnum-p
+    (simple-array (signed-byte #.sb!vm:n-fixnum-bits)
+                  (*)))
+
 (define-type-predicate simple-array-signed-byte-32-p
-                       (simple-array (signed-byte 32) (*)))
-#!+#.(cl:if (cl:= 64 sb!vm:n-word-bits) '(and) '(or))
-(define-type-predicate simple-array-signed-byte-61-p
-                       (simple-array (signed-byte 61) (*)))
+    (simple-array (signed-byte 32) (*)))
+
 #!+#.(cl:if (cl:= 64 sb!vm:n-word-bits) '(and) '(or))
 (define-type-predicate simple-array-signed-byte-64-p
                        (simple-array (signed-byte 64) (*)))