Skip to content
Snippets Groups Projects
Commit 4ec5f783 authored by wlott's avatar wlott
Browse files

Added :constants argument to save-lisp. It gets passed on to purify.

parent d9b236d0
No related branches found
No related tags found
No related merge requests found
...@@ -8,7 +8,7 @@ ...@@ -8,7 +8,7 @@
;;; Scott Fahlman (FAHLMAN@CMUC). ;;; Scott Fahlman (FAHLMAN@CMUC).
;;; ********************************************************************** ;;; **********************************************************************
;;; ;;;
;;; $Header: /Volumes/share2/src/cmucl/cvs2git/cvsroot/src/code/save.lisp,v 1.2 1990/08/24 18:13:22 wlott Exp $ ;;; $Header: /Volumes/share2/src/cmucl/cvs2git/cvsroot/src/code/save.lisp,v 1.3 1990/09/27 02:24:19 wlott Exp $
;;; ;;;
;;; Dump the current lisp image into a core file. All the real work is done ;;; Dump the current lisp image into a core file. All the real work is done
;;; be C. ;;; be C.
...@@ -52,6 +52,7 @@ ...@@ -52,6 +52,7 @@
(defun save-lisp (core-file-name &key (defun save-lisp (core-file-name &key
(purify t) (purify t)
(root-structures ()) (root-structures ())
(constants nil)
(init-function (init-function
#'(lambda () #'(lambda ()
(throw 'top-level-catcher nil))) (throw 'top-level-catcher nil)))
...@@ -68,9 +69,11 @@ ...@@ -68,9 +69,11 @@
less often and take less time in the resulting core file. less often and take less time in the resulting core file.
:root-structures :root-structures
This should be a list of the main entry points in any newly loaded :constants
systems. This need not be supplied, but locality will be better if it These should be a list of the main entry points in any newly loaded
is. This is meaningless if :purify is Nil. systems and a list of any large data structures that will never again
be changed. These need not be supplied, but locality and/or GC performance
will be better if they are. They are meaningless if :purify is NIL.
:init-function :init-function
This is a function which is called when the created core file is This is a function which is called when the created core file is
...@@ -86,7 +89,7 @@ ...@@ -86,7 +89,7 @@
If true, print out the lisp system herald when starting." If true, print out the lisp system herald when starting."
(if purify (if purify
(purify :root-structures root-structures) (purify :root-structures root-structures :constants constants)
(gc)) (gc))
(unless (save (namestring core-file-name)) (unless (save (namestring core-file-name))
(dolist (f *before-save-initializations*) (funcall f)) (dolist (f *before-save-initializations*) (funcall f))
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment