1 USING: accessors arrays compiler.cfg compiler.cfg.instructions
2 compiler.cfg.linear-scan.debugger
3 compiler.cfg.linear-scan.live-intervals
4 compiler.cfg.linear-scan.numbering
5 compiler.cfg.linear-scan.resolve compiler.cfg.predecessors
6 compiler.cfg.registers compiler.cfg.rpo cpu.architecture kernel
7 namespaces tools.test vectors ;
8 IN: compiler.cfg.linear-scan.resolve.tests
11 { 3 4 } V{ 1 2 } clone [ { 5 6 } 3append-here ] keep >array
15 T{ ##peek f V int-regs 0 D 0 }
20 T{ ##replace f V int-regs 0 D 1 }
24 1 get 1vector 0 get (>>successors)
28 dup reverse-post-order number-instructions
31 CONSTANT: test-live-interval-1
36 { ranges V{ T{ live-range f 0 2 } T{ live-range f 4 6 } } }
42 0 get test-live-interval-1 spill-to
46 1 get test-live-interval-1 spill-to
49 CONSTANT: test-live-interval-2
54 { ranges V{ T{ live-range f 0 2 } T{ live-range f 4 6 } } }
60 0 get test-live-interval-2 reload-from
64 1 get test-live-interval-2 reload-from