;; cached type of this continuation's value. If NIL, then this must
;; be recomputed: see CONTINUATION-DERIVED-TYPE.
(%derived-type nil :type (or ctype null))
- ;; Node where this continuation is used, if unique. This is always
+ ;; the node where this continuation is used, if unique. This is always
;; null in :DELETED and :UNUSED continuations, and is never null in
;; :INSIDE-BLOCK continuations. In a :BLOCK-START continuation, the
;; Block's START-USES indicate whether NIL means no uses or more
(test-constraint nil :type (or sset null)))
(def!method print-object ((cblock cblock) stream)
(print-unreadable-object (cblock stream :type t :identity t)
- (format stream ":START c~D" (cont-num (block-start cblock)))))
+ (format stream ":START c~W" (cont-num (block-start cblock)))))
;;; The BLOCK-ANNOTATION class is inherited (via :INCLUDE) by
;;; different BLOCK-INFO annotation structures so that code
;; If this CLAMBDA is a LET, then this slot holds the LAMBDA whose
;; LETS list we are in, otherwise it is a self-pointer.
(home nil :type (or clambda null))
- ;; a list of all the all the lambdas that have been LET-substituted
- ;; in this lambda. This is only non-null in lambdas that aren't
- ;; LETs.
- (lets () :type list)
- ;; a list of all the ENTRY nodes in this function and its LETs, or
- ;; null in a LET
- (entries () :type list)
- ;; a list of all the functions directly called from this function
- ;; (or one of its LETs) using a non-LET local call. This may include
- ;; deleted functions because nobody bothers to clear them out.
- (calls () :type list)
+ ;; all the lambdas that have been LET-substituted in this lambda.
+ ;; This is only non-null in lambdas that aren't LETs.
+ (lets nil :type list)
+ ;; all the ENTRY nodes in this function and its LETs, or null in a LET
+ (entries nil :type list)
+ ;; CLAMBDAs which are locally called by this lambda, and other
+ ;; objects (closed-over LAMBDA-VARs and XEPs) which this lambda
+ ;; depends on in such a way that DFO shouldn't put them in separate
+ ;; components.
+ (calls-or-closes nil :type list)
;; the TAIL-SET that this LAMBDA is in. This is null during creation.
;;
;; In CMU CL, and old SBCL, this was also NILed out when LET
;;; original exit continuation is the exit node's CONT.
(defstruct (exit (:include node)
(:copier nil))
- ;; The Entry node that this is an exit for. If null, this is a
+ ;; the ENTRY node that this is an exit for. If null, this is a
;; degenerate exit. A degenerate exit is used to "fill" an empty
;; block (which isn't allowed in IR1.) In a degenerate exit, Value
;; is always also null.
(entry nil :type (or entry null))
- ;; The continuation yeilding the value we are to exit with. If NIL,
+ ;; the continuation yielding the value we are to exit with. If NIL,
;; then no value is desired (as in GO).
(value nil :type (or continuation null)))
(defprinter (exit :identity t)