X-Git-Url: http://repo.macrolet.net/gitweb/?a=blobdiff_plain;f=src%2Fcode%2Fcross-misc.lisp;h=12d9312a633bf222bb3f53f1d2c0efb37f600ca8;hb=69ef68ba7393e3492c1b4a756d1140f71c2922bc;hp=838c63bb223e9e596b0c04411cd37cc7003890f2;hpb=b61003dec6f5af2b03549439155676666186283e;p=sbcl.git diff --git a/src/code/cross-misc.lisp b/src/code/cross-misc.lisp index 838c63b..12d9312 100644 --- a/src/code/cross-misc.lisp +++ b/src/code/cross-misc.lisp @@ -31,15 +31,6 @@ (defmacro without-interrupts (&rest forms) `(progn ,@forms)) -;;; When we're running as a cross-compiler in an arbitrary host ANSI -;;; Lisp, we shouldn't be doing anything which is sensitive to GC. -;;; KLUDGE: I (WHN 19990131) think the proper long-term solution would -;;; be to remove any operations from cross-compiler source files -;;; (putting them in target-only source files) if they refer to these -;;; hooks. This is a short-term hack. -(defvar *before-gc-hooks* nil) -(defvar *after-gc-hooks* nil) - ;;; The GENESIS function works with fasl code which would, in the ;;; target SBCL, work on ANSI-STREAMs (streams which aren't extended ;;; Gray streams). In ANSI Common Lisp, an ANSI-STREAM is just a @@ -145,9 +136,29 @@ (assert (typep array '(simple-array * (*)))) (values array start end 0)) -#!-alpha -(defun sb!vm::ash-left-constant-mod32 (integer amount) - (ldb (byte 32 0) (ash integer amount))) -#!+alpha -(defun sb!vm::ash-left-constant-mod64 (integer amount) - (ldb (byte 64 0) (ash integer amount))) +(defun sb!kernel:signed-byte-32-p (number) + (typep number '(signed-byte 32))) + +;;; package locking nops for the cross-compiler + +(defmacro without-package-locks (&body body) + `(progn ,@body)) + +(defmacro with-single-package-locked-error ((&optional kind thing &rest format) + &body body) + (declare (ignore kind thing format)) + `(progn ,@body)) + +(defun compiler-assert-symbol-home-package-unlocked (symbol control) + (declare (ignore control)) + symbol) + +(defun assert-package-unlocked (package &optional control &rest args) + (declare (ignore control args)) + package) + +(defun assert-symbol-home-package-unlocked (name format &key continuablep) + (declare (ignore format continuablep)) + name) + +(declaim (declaration enable-package-locks disable-package-locks))