maybe-finish-mapping in map-allocated-objects must be inline

Helmut Eller <[email protected]>
Newsgroups gmane.lisp.cmucl.devel
Message-ID <[email protected]>
The local function MAYBE-FINISH-MAPPING in MAP-ALLOCATED-OBJECTS must be
inlined otherwise the CURRENT pointer is boxed and moved into a value
cell for every object.  That boxing allocates something like 1MB of saps
when (room t) is called with an almost empty heap and much more for if
there is something on the heap.

There's also a unused variable TESTED.  It looks like some parts were
written by a drunk :-)

Helmut


--- a/code/room.lisp
+++ b/code/room.lisp
@@ -368,7 +368,7 @@
 			 (fixnum (sap+ current size))
 			 (memory-size (sap+ current size)))))
 		(setf current c))))
-	 (declare (inline next))
+	 (declare (inline next maybe-finish-mapping))
 	 (loop
 	    (maybe-finish-mapping)
 	    (maybe-skip-page)


_______________________________________________
cmucl-imp mailing list
[email protected]
http://lists.zs64.net/mailman/listinfo/cmucl-imp
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.