Handbook
Glossary
assign-certified-colors ( intervals cfg available -- )
Vocabulary
compiler
.
cfg
.
register-allocation
.
chordal
Inputs
intervals
an
object
cfg
an
object
available
an
object
Outputs
None
Definition
USING:
accessors
assocs
compiler.cfg.linear-scan.live-intervals
kernel
math
namespaces
sequences
;
IN:
compiler.cfg.register-allocation.chordal
::
assign-certified-colors
( intervals cfg available -- )
intervals
interference-graph
:>
graph graph
maximum-cardinality-order
:>
order graph order
perfect-order?
[
]
[
graph order
non-chordal-spill-result
]
if
cfg graph
weighted-ssa-affinities
:>
weighted graph order weighted available
preference-guided-colors
:>
colors colors
graph-colors
set
intervals
[|
interval |
interval
vreg>>
colors
at
interval
interval-reg-class
available
at
nth
interval
reg<<
]
each
"decoupled-ssa-chordal"
"algorithm"
chordal-statistics
get
set-at
0
"fallback-count"
chordal-statistics
get
set-at
0
"repair-assignments"
chordal-statistics
get
set-at
intervals
length
"color-assignments"
chordal-statistics
get
set-at
t
"post-spill-chordal?"
chordal-statistics
get
set-at
t
"chordal?"
chordal-statistics
get
set-at
graph
assoc-size
"vertices"
chordal-statistics
get
set-at
graph
values
[
length
]
map-sum
2
/
"edges"
chordal-statistics
get
set-at
chordal-witness?
get
[
order
reverse
"perfect-elimination-order"
chordal-statistics
get
set-at
colors
"colors"
chordal-statistics
get
set-at
graph
"interference-graph"
chordal-statistics
get
set-at
]
when
;