;;; These functions are needed for constant-folding.
(defun sb!kernel:simple-array-nil-p (object)
- (typep object '(simple-array nil)))
+ (when (typep object 'array)
+ (assert (not (eq (array-element-type object) nil))))
+ nil)
(defun sb!kernel:%negate (number)
(- number))
(defun sb!kernel:%ldb (size posn integer)
(ldb (byte size posn) integer))
+
+(defun sb!kernel:%dpb (newbyte size posn integer)
+ (dpb newbyte (byte size posn) integer))
+
+(defun sb!kernel:%with-array-data (array start end)
+ (assert (typep array '(simple-array * (*))))
+ (values array start end 0))
+
+#!-alpha
+(defun sb!vm::ash-left-mod32 (integer amount)
+ (ldb (byte 32 0) (ash integer amount)))
+#!+alpha
+(defun sb!vm::ash-left-mod64 (integer amount)
+ (ldb (byte 64 0) (ash integer amount)))