0.7.13.pcl-class.1
[sbcl.git] / src / compiler / generic / vm-fndb.lisp
index 92cd6c4..2a4857b 100644 (file)
@@ -22,7 +22,8 @@
           complex-vector-p
           base-char-p %standard-char-p %instancep
           array-header-p
-          simple-array-p simple-array-unsigned-byte-2-p
+          simple-array-p simple-array-nil-p
+          simple-array-unsigned-byte-2-p
           simple-array-unsigned-byte-4-p simple-array-unsigned-byte-8-p
           simple-array-unsigned-byte-16-p simple-array-unsigned-byte-32-p
           simple-array-signed-byte-8-p simple-array-signed-byte-16-p
@@ -55,9 +56,9 @@
 (defknown vector-sap ((simple-unboxed-array (*))) system-area-pointer
   (flushable))
 
-(defknown get-lowtag (t) (unsigned-byte #.sb!vm:n-lowtag-bits)
+(defknown lowtag-of (t) (unsigned-byte #.sb!vm:n-lowtag-bits)
   (flushable movable))
-(defknown get-type (t) (unsigned-byte #.sb!vm:n-widetag-bits)
+(defknown widetag-of (t) (unsigned-byte #.sb!vm:n-widetag-bits)
   (flushable movable))
 
 (defknown (get-header-data get-closure-length) (t) (unsigned-byte 24)
 \f
 ;;;; bignum operations
 
-(defknown %allocate-bignum (bignum-index) bignum-widetag
+(defknown %allocate-bignum (bignum-index) bignum-type
   (flushable))
 
-(defknown %bignum-length (bignum-widetag) bignum-index
+(defknown %bignum-length (bignum-type) bignum-index
   (foldable flushable movable))
 
-(defknown %bignum-set-length (bignum-widetag bignum-index) bignum-widetag
+(defknown %bignum-set-length (bignum-type bignum-index) bignum-type
   (unsafe))
 
-(defknown %bignum-ref (bignum-widetag bignum-index) bignum-element-type
+(defknown %bignum-ref (bignum-type bignum-index) bignum-element-type
   (flushable))
 
-(defknown %bignum-set (bignum-widetag bignum-index bignum-element-type)
+(defknown %bignum-set (bignum-type bignum-index bignum-element-type)
   bignum-element-type
   (unsafe))
 
   (foldable flushable movable))
 
 (defknown %fixnum-digit-with-correct-sign (bignum-element-type)
-  (signed-byte #.sb!vm:word-bits)
+  (signed-byte #.sb!vm:n-word-bits)
   (foldable flushable movable))
 
 (defknown (%ashl %ashr %digit-logical-shift-right)
 (defknown code-header-ref (t index) t (flushable))
 (defknown code-header-set (t index t) t ())
 
-(defknown function-subtype (function) (unsigned-byte #.sb!vm:n-widetag-bits)
+(defknown fun-subtype (function) (unsigned-byte #.sb!vm:n-widetag-bits)
   (flushable))
-(defknown ((setf function-subtype))
+(defknown ((setf fun-subtype))
          ((unsigned-byte #.sb!vm:n-widetag-bits) function)
   (unsigned-byte #.sb!vm:n-widetag-bits)
   ())
 ;;;; mutator accessors
 
 (defknown mutator-self () system-area-pointer (flushable movable))
+
+(defknown %data-vector-and-index (array index)
+                                 (values (simple-array * (*)) index)
+                                (foldable flushable))