Lack of documentation of CBLOCK's slots: GEN, IN, OUT.
Bug #311452 reported by
Tobias C. Rittweiler
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
SBCL |
Invalid
|
Wishlist
|
Unassigned |
Bug Description
Pasting from compiler/node.lisp:
(def!struct (cblock ...)
...
;; in constraint propagation: list of LAMBDA-VARs killed in this block
;; in copy propagation: list of killed TNs
(kill nil)
;; other sets used in constraint propagation and/or copy propagation
(gen nil)
(in nil)
(out nil)
...)
"other sets" is not very descriptive.
description: | updated |
Changed in sbcl: | |
importance: | Undecided → Wishlist |
To post a comment you must log in.
Documentation is always good...
I haven't actually checked, but these BLOCK-KILL should be the "semistandard" GEN, KILL, IN, and OUT sets from computer literature: exact meaning depends on the type of flow-analysis being run -- in our case either copy propagation or constraint propagation. Constraint propagation is less common, but any decent textbook should describe copy propagation.