X-Git-Url: http://repo.macrolet.net/gitweb/?a=blobdiff_plain;f=src%2Fcompiler%2Fgeneric%2Fvm-fndb.lisp;h=edfd9da18f09b66d5c56e66db6b6023e48b3752e;hb=77869604fc3eb4417a630651e5fe40e74342ee59;hp=7746eaec0685c9b498d2aeb5b7ade5caeb3024b9;hpb=4e3b57699314dbd3883470d9b196287b178f3e6d;p=sbcl.git diff --git a/src/compiler/generic/vm-fndb.lisp b/src/compiler/generic/vm-fndb.lisp index 7746eae..edfd9da 100644 --- a/src/compiler/generic/vm-fndb.lisp +++ b/src/compiler/generic/vm-fndb.lisp @@ -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 @@ -239,23 +240,23 @@ (defknown copy-to-system-area ((simple-unboxed-array (*)) index system-area-pointer index index) - null + (values) ()) (defknown copy-from-system-area (system-area-pointer index (simple-unboxed-array (*)) index index) - null + (values) ()) (defknown system-area-copy (system-area-pointer index system-area-pointer index index) - null + (values) ()) (defknown bit-bash-copy ((simple-unboxed-array (*)) index (simple-unboxed-array (*)) index index) - null + (values) ()) ;;; (not really a bit-bashing routine, but starting to take over from @@ -263,7 +264,7 @@ (defknown %byte-blt ((or (simple-unboxed-array (*)) system-area-pointer) index (or (simple-unboxed-array (*)) system-area-pointer) index index) - null + (values) ()) ;;;; code/function/fdefn object manipulation routines @@ -306,3 +307,7 @@ ;;;; mutator accessors (defknown mutator-self () system-area-pointer (flushable movable)) + +(defknown %data-vector-and-index (array index) + (values (simple-array * (*)) index) + (foldable flushable))