1.0.28.41: make MAKE-ARRAY transforms co-operate with FILL better
[sbcl.git] / src / compiler / fndb.lisp
index e666a3d..08a5e0b 100644 (file)
 (defknown fill-pointer (vector) index (foldable unsafely-flushable))
 (defknown vector-push (t vector) (or index null) ()
   :destroyed-constant-args (nth-constant-args 2))
-(defknown vector-push-extend (t vector &optional index) index ()
+(defknown vector-push-extend (t vector &optional (and index (integer 1)))
+  index ()
   :destroyed-constant-args (nth-constant-args 2))
 (defknown vector-pop (vector) t ()
   :destroyed-constant-args (nth-constant-args 1))
 \f
 ;;;; miscellaneous extensions
 
+(defknown symbol-global-value (symbol) t ())
+(defknown set-symbol-global-value (symbol t) t ())
+
 (defknown get-bytes-consed () unsigned-byte (flushable))
 (defknown mask-signed-field ((integer 0 *) integer) integer
           (movable flushable foldable))
 (defknown hairy-data-vector-set/check-bounds (array index t)
   t
   (unsafe explicit-check))
-(defknown %caller-frame-and-pc () (values t t) (flushable))
+(defknown %caller-frame () t (flushable))
+(defknown %caller-pc () system-area-pointer (flushable))
 (defknown %with-array-data (array index (or index null))
   (values (simple-array * (*)) index index index)
   (foldable flushable))