complex-rational-p complex-float-p complex-single-float-p
complex-double-float-p #!+long-float complex-long-float-p
complex-vector-p
- base-char-p %standard-char-p %instancep %other-pointer-p
+ base-char-p %standard-char-p %instancep
base-string-p simple-base-string-p
#!+sb-unicode character-string-p
#!+sb-unicode simple-character-string-p
weak-pointer-p code-component-p lra-p
funcallable-instance-p)
(t) boolean (movable foldable flushable))
+
(defknown #.(loop for (name) in *vector-without-complex-typecode-infos*
collect name)
- (t) boolean (movable foldable flushable))
+ (t) boolean (movable foldable flushable))
+
+(defknown %other-pointer-p (t) boolean
+ (movable foldable flushable always-translatable))
+
\f
;;;; miscellaneous "sub-primitives"
(defknown make-value-cell (t) t
(flushable movable))
+#!+sb-simd-pack
+(progn
+ (defknown simd-pack-p (t) boolean (foldable movable flushable))
+ (defknown %simd-pack-tag (simd-pack) fixnum (movable flushable))
+ (defknown %make-simd-pack (fixnum (unsigned-byte 64) (unsigned-byte 64))
+ simd-pack
+ (flushable movable foldable))
+ (defknown %make-simd-pack-double (double-float double-float)
+ (simd-pack double-float)
+ (flushable movable foldable))
+ (defknown %make-simd-pack-single (single-float single-float
+ single-float single-float)
+ (simd-pack single-float)
+ (flushable movable foldable))
+ (defknown %make-simd-pack-ub32 ((unsigned-byte 32) (unsigned-byte 32)
+ (unsigned-byte 32) (unsigned-byte 32))
+ (simd-pack integer)
+ (flushable movable foldable))
+ (defknown %make-simd-pack-ub64 ((unsigned-byte 64) (unsigned-byte 64))
+ (simd-pack integer)
+ (flushable movable foldable))
+ (defknown (%simd-pack-low %simd-pack-high) (simd-pack)
+ (unsigned-byte 64)
+ (flushable movable foldable))
+ (defknown %simd-pack-ub32s (simd-pack)
+ (values (unsigned-byte 32) (unsigned-byte 32)
+ (unsigned-byte 32) (unsigned-byte 32))
+ (flushable movable foldable))
+ (defknown %simd-pack-ub64s (simd-pack)
+ (values (unsigned-byte 64) (unsigned-byte 64))
+ (flushable movable foldable))
+ (defknown %simd-pack-singles (simd-pack)
+ (values single-float single-float single-float single-float)
+ (flushable movable foldable))
+ (defknown %simd-pack-doubles (simd-pack)
+ (values double-float double-float)
+ (flushable movable foldable)))
+
;;;; threading
(defknown (dynamic-space-free-pointer binding-stack-pointer-sap
(defknown %bignum-set (bignum-type bignum-index bignum-element-type)
bignum-element-type
())
-#!+(or x86 x86-64)
-(defknown %bignum-set-with-offset
- (bignum-type bignum-index (signed-byte 24) bignum-element-type)
- bignum-element-type (always-translatable))
(defknown %digit-0-or-plusp (bignum-element-type) boolean
(foldable flushable movable))
(defknown %funcallable-instance-info (function index) t (flushable))
(defknown %set-funcallable-instance-info (function index t) t ())
\f
-;;;; mutator accessors
-
-(defknown mutator-self () system-area-pointer (flushable movable))
(defknown %data-vector-and-index (array index)
(values (simple-array * (*)) index)