25 lines
856 B
Factor
25 lines
856 B
Factor
USING: arrays help.markup help.syntax math sequences ;
|
|
IN: compiler.cfg.linear-scan.ranges
|
|
|
|
HELP: add-range
|
|
{ $values { "from" integer } { "to" integer } { "ranges" sequence } }
|
|
{ $description "Adds the given range to the 'ranges' sequence, or extends the last range of it if it is possible." } ;
|
|
|
|
HELP: intersect-range
|
|
{ $values
|
|
{ "r1" pair }
|
|
{ "r2" pair }
|
|
{ "n/f" { $link number } " or " { $link f } }
|
|
}
|
|
{ $description "First index for the ranges intersection, or f if they don't intersect." } ;
|
|
|
|
ARTICLE: "compiler.cfg.linear-scan.ranges" "Live ranges utilities"
|
|
"Utilities for dealing with the live range part of live intervals. A sequence of integer 2-tuples encodes the closed intervals in the cfg where a virtual register is live."
|
|
$nl
|
|
"Range splitting:"
|
|
{ $subsections
|
|
split-range split-ranges
|
|
} ;
|
|
|
|
ABOUT: "compiler.cfg.linear-scan.ranges"
|