X-Git-Url: http://repo.macrolet.net/gitweb/?a=blobdiff_plain;f=src%2Fcompiler%2Ffndb.lisp;h=dfb0dcd26b09e08a3d4afd1366f43232aa4f03de;hb=5745b5a5b2e3b967bf3876b4306f31b3c78495fa;hp=10c8613fadc3f0129b53c8a8c03b680fc5cd1984;hpb=6add320329d60b3b1879eea6bc254666e0dcbd96;p=sbcl.git diff --git a/src/compiler/fndb.lisp b/src/compiler/fndb.lisp index 10c8613..dfb0dcd 100644 --- a/src/compiler/fndb.lisp +++ b/src/compiler/fndb.lisp @@ -381,7 +381,10 @@ (movable foldable flushable)) (defknown random ((or (float (0.0)) (integer 1)) &optional random-state) (or (float 0.0) (integer 0)) ()) -(defknown make-random-state (&optional (or (member nil t) random-state)) +(defknown make-random-state (&optional + (or (member nil t) random-state unsigned-byte + (simple-array (unsigned-byte 8) (*)) + (simple-array (unsigned-byte 32) (*)))) random-state (flushable)) (defknown random-state-p (t) boolean (movable foldable flushable)) @@ -1232,7 +1235,7 @@ :rename-and-delete :overwrite :append :supersede nil)) (:if-does-not-exist (member :error :create nil)) - (:external-format keyword)) + (:external-format external-format-designator)) (or stream null)) (defknown rename-file (pathname-designator filename) @@ -1255,7 +1258,7 @@ (:verbose t) (:print t) (:if-does-not-exist t) - (:external-format keyword)) + (:external-format external-format-designator)) t) (defknown directory (pathname-designator &key (:resolve-symlinks t)) @@ -1289,7 +1292,9 @@ null) ;;; and analogous SBCL extension: +(defknown sb!impl::%failed-aver (t) nil) (defknown bug (t &rest t) nil) ; never returns + ;;;; from the "Miscellaneous" Chapter: @@ -1307,7 +1312,7 @@ (member t))) (:verbose t) (:print t) - (:external-format keyword) + (:external-format external-format-designator) ;; extensions (:trace-file t) @@ -1385,6 +1390,9 @@ (defknown get-bytes-consed () unsigned-byte (flushable)) (defknown mask-signed-field ((integer 0 *) integer) integer (movable flushable foldable)) + +(defknown array-storage-vector (array) (simple-array * (*)) + (any)) ;;;; magical compiler frobs @@ -1569,6 +1577,16 @@ ()) (defknown style-warn (t &rest t) null ()) + +;;;; memory barriers + +(defknown sb!vm:%compiler-barrier () (values) ()) +(defknown sb!vm:%memory-barrier () (values) ()) +(defknown sb!vm:%read-barrier () (values) ()) +(defknown sb!vm:%write-barrier () (values) ()) +(defknown sb!vm:%data-dependency-barrier () (values) ()) + + ;;;; atomic ops (defknown %compare-and-swap-svref (simple-vector index t t) t (unsafe))