1.0.32.12: Fix slot-value on specialized parameters in SVUC methods
[sbcl.git] / src / code / gc.lisp
index 32aa109..06d38a0 100644 (file)
@@ -13,9 +13,6 @@
 \f
 ;;;; DYNAMIC-USAGE and friends
 
-(declaim (special sb!vm:*read-only-space-free-pointer*
-                  sb!vm:*static-space-free-pointer*))
-
 (eval-when (:compile-toplevel :execute)
   (sb!xc:defmacro def-c-var-fun (lisp-fun c-var-name)
     `(defun ,lisp-fun ()
@@ -215,7 +212,9 @@ run in any thread.")
            ;; Now, if GET-MUTEX did not cons, that would be enough.
            ;; Because it does, we need the :IN-PROGRESS bit above to
            ;; tell the runtime not to trigger gcs.
-           (let ((sb!impl::*in-without-gcing* t))
+           (let ((sb!impl::*in-without-gcing* t)
+                 (sb!impl::*deadline* nil)
+                 (sb!impl::*deadline-seconds* nil))
              (sb!thread:with-mutex (*already-in-gc*)
                (let ((*gc-inhibit* t))
                  (let ((old-usage (dynamic-usage))
@@ -286,6 +285,8 @@ run in any thread.")
   (when (sub-gc :gen (if full 6 gen))
     (post-gc)))
 
+(define-alien-routine scrub-control-stack sb!alien:void)
+
 (defun unsafe-clear-roots ()
   ;; KLUDGE: Do things in an attempt to get rid of extra roots. Unsafe
   ;; as having these cons more then we have space left leads to huge