s))))
(:copier nil))
;; the stream we dump to
- (stream (required-argument) :type stream)
+ (stream (missing-arg) :type stream)
;; hashtables we use to keep track of dumped constants so that we
;; can get them from the table rather than dumping them again. The
;; EQUAL-TABLE is used for lists and strings, and the EQ-TABLE is
;;; This structure holds information about a circularity.
(defstruct (circularity (:copier nil))
;; the kind of modification to make to create circularity
- (type (required-argument) :type (member :rplaca :rplacd :svset :struct-set))
+ (type (missing-arg) :type (member :rplaca :rplacd :svset :struct-set))
;; the object containing circularity
object
;; index in object for circularity
- (index (required-argument) :type index)
+ (index (missing-arg) :type index)
;; the object to be stored at INDEX in OBJECT. This is that the key
;; that we were using when we discovered the circularity.
value
;; take a little more care while dumping these.
;; So if better list coalescing is needed, start here.
;; -- WHN 2000-11-07
- (if (circular-list-p x)
+ (if (cyclic-list-p x)
(progn
(dump-list x file)
(eq-save-object x file))
;;; We peek at the object type so that we only pay the circular
;;; detection overhead on types of objects that might be circular.
(defun dump-object (x file)
- (if (or (array-header-p x)
- (simple-vector-p x)
- (consp x)
- (typep x 'instance))
+ (if (compound-object-p x)
(let ((*circularities-detected* ())
(circ (fasl-output-circularity-table file)))
(clrhash circ)
(dolist (entry (sb!c::ir2-component-entries 2comp))
(let ((entry-handle (dump-one-entry entry code-handle file)))
(setf (gethash entry (fasl-output-entry-table file)) entry-handle)
-
(let ((old (gethash entry (fasl-output-patch-table file))))
- ;; FIXME: All this code is shared with
- ;; FASL-DUMP-BYTE-COMPONENT, and should probably be gathered
- ;; up into a named function (DUMP-PATCHES?) called from both
- ;; functions.
(when old
(dolist (patch old)
(dump-alter-code-object (car patch)
#+sb-xc-host
(defun fasl-dump-cold-fset (fun-name fun-dump-handle fasl-output)
(declare (type fixnum fun-dump-handle))
- (aver (legal-function-name-p fun-name))
+ (aver (legal-fun-name-p fun-name))
(dump-non-immediate-object fun-name fasl-output)
(dump-push fun-dump-handle fasl-output)
(dump-fop 'fop-fset fasl-output)