X-Git-Url: http://repo.macrolet.net/gitweb/?a=blobdiff_plain;f=src%2Fcode%2Fkernel.lisp;h=a1f20ff03db44ebaf21c73162e3f5111c2c6c2a6;hb=527e43a1353207444070ee497de3079fc051fe40;hp=08b69bb16d9a8196371d93459604902419c008a9;hpb=29a9ccc860532b32c566aec095f570e999a9c52c;p=sbcl.git diff --git a/src/code/kernel.lisp b/src/code/kernel.lisp index 08b69bb..a1f20ff 100644 --- a/src/code/kernel.lisp +++ b/src/code/kernel.lisp @@ -65,6 +65,9 @@ (defun %simple-fun-arglist (func) (%simple-fun-arglist func)) +(defun (setf %simple-fun-arglist) (new-value func) + (setf (%simple-fun-arglist func) new-value)) + ;;; Extract the name from the function header FUNC. (defun %simple-fun-name (func) (%simple-fun-name func)) @@ -120,22 +123,22 @@ (defun %set-raw-bits (object offset value) (declare (type index offset)) - (declare (type (unsigned-byte #.sb!vm:n-word-bits) value)) + (declare (type sb!vm:word value)) (setf (sb!kernel:%raw-bits object offset) value)) +(defun %vector-raw-bits (object offset) + (declare (type index offset)) + (sb!kernel:%vector-raw-bits object offset)) + +(defun %set-vector-raw-bits (object offset value) + (declare (type index offset)) + (declare (type sb!vm:word value)) + (setf (sb!kernel:%vector-raw-bits object offset) value)) + (defun make-single-float (x) (make-single-float x)) (defun make-double-float (hi lo) (make-double-float hi lo)) -#!+long-float -(defun make-long-float (exp hi #!+sparc mid lo) - (make-long-float exp hi #!+sparc mid lo)) + (defun single-float-bits (x) (single-float-bits x)) (defun double-float-high-bits (x) (double-float-high-bits x)) (defun double-float-low-bits (x) (double-float-low-bits x)) -#!+long-float -(defun long-float-exp-bits (x) (long-float-exp-bits x)) -#!+long-float -(defun long-float-high-bits (x) (long-float-high-bits x)) -#!+(and long-float sparc) -(defun long-float-mid-bits (x) (long-float-mid-bits x)) -#!+long-float -(defun long-float-low-bits (x) (long-float-low-bits x)) +