From 4ec5f78320f2f6342433cebaace63c8df08f8e7e Mon Sep 17 00:00:00 2001
From: wlott <wlott>
Date: Thu, 27 Sep 1990 02:24:19 +0000
Subject: [PATCH] Added :constants argument to save-lisp.  It gets passed on to
 purify.

---
 code/save.lisp | 13 ++++++++-----
 1 file changed, 8 insertions(+), 5 deletions(-)

diff --git a/code/save.lisp b/code/save.lisp
index 29b81f2b4..d2650b04d 100644
--- a/code/save.lisp
+++ b/code/save.lisp
@@ -8,7 +8,7 @@
 ;;; 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
 ;;; be C.
@@ -52,6 +52,7 @@
 (defun save-lisp (core-file-name &key
 				 (purify t)
 				 (root-structures ())
+				 (constants nil)
 				 (init-function
 				  #'(lambda ()
 				      (throw 'top-level-catcher nil)))
@@ -68,9 +69,11 @@
   less often and take less time in the resulting core file.
 
   :root-structures
-      This should be a list of the main entry points in any newly loaded
-  systems.  This need not be supplied, but locality will be better if it
-  is.  This is meaningless if :purify is Nil.
+  :constants
+      These should be a list of the main entry points in any newly loaded
+  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
       This is a function which is called when the created core file is
@@ -86,7 +89,7 @@
       If true, print out the lisp system herald when starting."
   
   (if purify
-      (purify :root-structures root-structures)
+      (purify :root-structures root-structures :constants constants)
       (gc))
   (unless (save (namestring core-file-name))
     (dolist (f *before-save-initializations*) (funcall f))
-- 
GitLab