[movitz-cvs] CVS update: movitz/losp/los0-gc.lisp
Frode Vatvedt Fjeld
ffjeld at common-lisp.net
Thu Sep 16 08:55:00 UTC 2004
Update of /project/movitz/cvsroot/movitz/losp
In directory common-lisp.net:/tmp/cvs-serv8512
Modified Files:
los0-gc.lisp
Log Message:
*** empty log message ***
Date: Thu Sep 16 10:55:00 2004
Author: ffjeld
Index: movitz/losp/los0-gc.lisp
diff -u movitz/losp/los0-gc.lisp:1.36 movitz/losp/los0-gc.lisp:1.37
--- movitz/losp/los0-gc.lisp:1.36 Wed Sep 15 12:22:57 2004
+++ movitz/losp/los0-gc.lisp Thu Sep 16 10:55:00 2004
@@ -10,7 +10,7 @@
;;;; Author: Frode Vatvedt Fjeld <frodef at acm.org>
;;;; Created at: Sat Feb 21 17:48:32 2004
;;;;
-;;;; $Id: los0-gc.lisp,v 1.36 2004/09/15 10:22:57 ffjeld Exp $
+;;;; $Id: los0-gc.lisp,v 1.37 2004/09/16 08:55:00 ffjeld Exp $
;;;;
;;;;------------------------------------------------------------------
@@ -205,8 +205,6 @@
(:jae '(:sub-program ()
(:locally (:movl ,(bt:enum-value 'movitz::atomically-status :inactive)
(:edi (:edi-offset atomically-status))))
- (:movl :edx (#x1000000))
- (:addl :eax (#x1000000))
(:int 113) ; This interrupt can be retried.
(:jmp 'retry-cons)))
(:movl ,(dpb movitz:+movitz-fixnum-factor+
@@ -320,9 +318,7 @@
(install-primitive los0-fast-cons muerte::fast-cons)
(install-primitive los0-box-u32-ecx muerte::box-u32-ecx)
(install-primitive los0-get-cons-pointer muerte::get-cons-pointer)
- (install-primitive los0-cons-commit muerte::cons-commit)
- #+ignore (install-primitive los0-malloc-pointer-words muerte::malloc-pointer-words)
- #+ignore (install-primitive los0-malloc-non-pointer-words muerte::malloc-non-pointer-words))
+ (install-primitive los0-cons-commit muerte::cons-commit))
(if (eq context (current-run-time-context))
(setf (%run-time-context-slot 'muerte::nursery-space)
actual-duo-space)
@@ -380,6 +376,8 @@
(defparameter *x* #4000()) ; Have this in static space.
+(defparameter *xx* #4000()) ; Have this in static space.
+
(defun stop-and-copy (&optional evacuator)
(setf (fill-pointer *x*) 0)
@@ -428,7 +426,6 @@
(assert (vector-push (%object-lispval forward-x) a))))
(setf (memref (object-location x) 0 0 :lisp) forward-x)
forward-x))))))))
- (setf *gc-stack* (muerte::copy-current-control-stack))
;; Scavenge roots
(dolist (range muerte::%memory-map-roots%)
(map-heap-words evacuator (car range) (cdr range)))
@@ -479,7 +476,10 @@
~/muerte:pprint-clumps/, freed: ~/muerte:pprint-clumps/.~%"
old-size new-size (- old-size new-size))))
(initialize-space oldspace)
- (fill oldspace #x13 :start 2)))
+ (fill oldspace #x13 :start 2)
+ (setf *gc-stack* (muerte::copy-current-control-stack))
+ (setf (fill-pointer *xx*) (fill-pointer *x*))
+ (replace *xx* *x*)))
(values))
More information about the Movitz-cvs
mailing list