[movitz-cvs] CVS update: movitz/losp/muerte/scavenge.lisp
Frode Vatvedt Fjeld
ffjeld at common-lisp.net
Tue Mar 30 08:50:13 UTC 2004
Update of /project/movitz/cvsroot/movitz/losp/muerte
In directory common-lisp.net:/tmp/cvs-serv13258
Modified Files:
scavenge.lisp
Log Message:
In map-heap-words, only write back the new word if the function
changes it. Seems like an obvious way to reduce pressure on the memory
subsystem, and increased speed by about 5% on my test HW.
Date: Tue Mar 30 03:50:12 2004
Author: ffjeld
Index: movitz/losp/muerte/scavenge.lisp
diff -u movitz/losp/muerte/scavenge.lisp:1.1 movitz/losp/muerte/scavenge.lisp:1.2
--- movitz/losp/muerte/scavenge.lisp:1.1 Mon Mar 29 09:30:22 2004
+++ movitz/losp/muerte/scavenge.lisp Tue Mar 30 03:50:12 2004
@@ -10,7 +10,7 @@
;;;; Author: Frode Vatvedt Fjeld <frodef at acm.org>
;;;; Created at: Mon Mar 29 14:54:08 2004
;;;;
-;;;; $Id: scavenge.lisp,v 1.1 2004/03/29 14:30:22 ffjeld Exp $
+;;;; $Id: scavenge.lisp,v 1.2 2004/03/30 08:50:12 ffjeld Exp $
;;;;
;;;;------------------------------------------------------------------
@@ -87,7 +87,8 @@
((typep x 'pointer)
(let ((new (funcall function x)))
(check-type new pointer)
- (setf (memref i 0 0 :lisp) new)))))))
+ (unless (eq x new)
+ (setf (memref i 0 0 :lisp) new))))))))
(values))
(defun map-stack-words (function start-stack-frame)
More information about the Movitz-cvs
mailing list