X-Git-Url: http://repo.macrolet.net/gitweb/?a=blobdiff_plain;f=src%2Fcompiler%2Fgeneric%2Fvm-typetran.lisp;h=f80e41fb84c29ccced3c737290e66b6fd7227cc6;hb=5dcf5905dc38232b3cc5ec6b309ea5c6424db957;hp=b6c60055ecb59c34d6f522dac46a18cfe11a2b9f;hpb=2db3b6b4cb740d5b6512459c223859f747807b09;p=sbcl.git diff --git a/src/compiler/generic/vm-typetran.lisp b/src/compiler/generic/vm-typetran.lisp index b6c6005..f80e41f 100644 --- a/src/compiler/generic/vm-typetran.lisp +++ b/src/compiler/generic/vm-typetran.lisp @@ -18,6 +18,7 @@ ;;; These type predicates are used to implement simple cases of TYPEP. ;;; They shouldn't be used explicitly. (define-type-predicate base-char-p base-char) +(define-type-predicate base-string-p base-string) (define-type-predicate bignump bignum) (define-type-predicate complex-double-float-p (complex double-float)) (define-type-predicate complex-single-float-p (complex single-float)) @@ -38,10 +39,18 @@ (simple-array (unsigned-byte 2) (*))) (define-type-predicate simple-array-unsigned-byte-4-p (simple-array (unsigned-byte 4) (*))) +(define-type-predicate simple-array-unsigned-byte-7-p + (simple-array (unsigned-byte 7) (*))) (define-type-predicate simple-array-unsigned-byte-8-p (simple-array (unsigned-byte 8) (*))) +(define-type-predicate simple-array-unsigned-byte-15-p + (simple-array (unsigned-byte 15) (*))) (define-type-predicate simple-array-unsigned-byte-16-p (simple-array (unsigned-byte 16) (*))) +(define-type-predicate simple-array-unsigned-byte-29-p + (simple-array (unsigned-byte 29) (*))) +(define-type-predicate simple-array-unsigned-byte-31-p + (simple-array (unsigned-byte 31) (*))) (define-type-predicate simple-array-unsigned-byte-32-p (simple-array (unsigned-byte 32) (*))) (define-type-predicate simple-array-signed-byte-8-p @@ -66,10 +75,12 @@ #!+long-float (define-type-predicate simple-array-complex-long-float-p (simple-array (complex long-float) (*))) +(define-type-predicate simple-base-string-p simple-base-string) (define-type-predicate system-area-pointer-p system-area-pointer) (define-type-predicate unsigned-byte-32-p (unsigned-byte 32)) (define-type-predicate signed-byte-32-p (signed-byte 32)) (define-type-predicate vector-t-p (vector t)) +(define-type-predicate vector-nil-p (vector nil)) (define-type-predicate weak-pointer-p weak-pointer) (define-type-predicate code-component-p code-component) (define-type-predicate lra-p lra)