X-Git-Url: http://repo.macrolet.net/gitweb/?a=blobdiff_plain;f=src%2Fcompiler%2Ffndb.lisp;h=edb99d4d585ffd1a977923eda4d3fcc54ff941cf;hb=96aa790ea1d70810e862665c3c8be4ce405a964c;hp=77be6fab720e02a6d560e7b127581c5186c34ba6;hpb=b4ddf569d48686d532f3baf62f1c5cd42d78f9bd;p=sbcl.git diff --git a/src/compiler/fndb.lisp b/src/compiler/fndb.lisp index 77be6fa..edb99d4 100644 --- a/src/compiler/fndb.lisp +++ b/src/compiler/fndb.lisp @@ -80,7 +80,7 @@ ;;;; classes (sb!xc:deftype name-for-class () t) -(defknown classoid-name (classoid) name-for-class (flushable)) +(defknown classoid-name (classoid) symbol (flushable)) (defknown find-classoid (name-for-class &optional t) (or classoid null) ()) (defknown classoid-of (t) classoid (flushable)) @@ -142,7 +142,8 @@ (defknown macro-function (symbol &optional lexenv-designator) (or function null) (flushable)) -(defknown (macroexpand macroexpand-1) (t &optional lexenv-designator) +(defknown (macroexpand macroexpand-1 %macroexpand %macroexpand-1) + (t &optional lexenv-designator) (values form &optional boolean)) (defknown compiler-macro-function (t &optional lexenv-designator) @@ -318,6 +319,13 @@ (real &optional real) (values integer real) (movable foldable flushable explicit-check)) +(defknown %multiply-high (word word) word + (movable foldable flushable)) + +(defknown (%floor %ceiling) + (real real) (values integer real) + (movable foldable flushable explicit-check)) + (defknown (mod rem) (real real) real (movable foldable flushable explicit-check)) @@ -966,7 +974,7 @@ (flushable unsafe)) (defknown make-string-output-stream (&key (:element-type type-specifier)) - stream + string-output-stream (flushable)) (defknown get-output-stream-string (stream) simple-string ()) (defknown streamp (t) boolean (movable foldable flushable)) @@ -1395,6 +1403,8 @@ ;;;; magical compiler frobs +(defknown %values-list-or-context (t t t) * (always-translatable)) + (defknown %unary-truncate/single-float (single-float) integer (movable foldable flushable)) (defknown %unary-truncate/double-float (double-float) integer (movable foldable flushable)) @@ -1434,7 +1444,7 @@ ;; FIXME: This function does not return, but due to the implementation ;; of FILTER-LVAR we cannot write it here. -(defknown %compile-time-type-error (t t t) *) +(defknown %compile-time-type-error (t t t t) *) (defknown sb!kernel::case-failure (t t t) nil) (defknown %odd-key-args-error () nil) @@ -1594,3 +1604,5 @@ (unsafe)) (defknown %compare-and-swap-symbol-value (symbol t t) t (unsafe unwind)) +(defknown spin-loop-hint () (values) + (always-translatable))