]> gitweb.factorcode.org Git - factor.git/blob - basis/compiler/cfg/linear-scan/ranges/ranges-docs.factor
77aef69e0184429060c70f11697331a1ac7ac956
[factor.git] / basis / compiler / cfg / linear-scan / ranges / ranges-docs.factor
1 USING: arrays help.markup help.syntax math sequences ;
2 IN: compiler.cfg.linear-scan.ranges
3
4 HELP: add-range
5 { $values { "from" integer } { "to" integer } { "ranges" sequence } }
6 { $description "Adds the given range to the 'ranges' sequence, or extends the last range of it if it is possible." } ;
7
8 HELP: intersect-range
9 { $values
10   { "range1" pair }
11   { "range2" pair }
12   { "n/f" { $link number } " or " { $link f } }
13 }
14 { $description "First index for the ranges intersection, or f if they don't intersect." } ;
15
16 ARTICLE: "compiler.cfg.linear-scan.ranges" "Live ranges utilities"
17 "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."
18 $nl
19 "Range splitting:"
20 { $subsections
21   split-range split-ranges
22 } ;
23
24 ABOUT: "compiler.cfg.linear-scan.ranges"