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