Sciweavers

PLDI
1998
ACM

Quality and Speed in Linear-scan Register Allocation

14 years 4 months ago
Quality and Speed in Linear-scan Register Allocation
A linear-scan algorithm directs the global allocation of register candidates to registers based on a simple linear sweep over the program being compiled. This approach to register allocation makes sense for systems, such as those for dynamic compilation, where compilation speed is important. In contrast, most commercial and research optimizing compilers rely on a graph-coloring approach to global register allocation. In this paper, we compare the performance of a linear-scan method against a modern graph-coloring method. We implement both register allocators within the Machine SUIF extension of the Stanford SUIF compiler system. Experimental results show that linear scan is much faster than coloring on benchmarks with large numbers of register candidates. We also describe improvements to the linear-scan approach that do not change its linear character, but allow it to produce code of a quality near to that produced by graph coloring.
Omri Traub, Glenn H. Holloway, Michael D. Smith
Added 05 Aug 2010
Updated 05 Aug 2010
Type Conference
Year 1998
Where PLDI
Authors Omri Traub, Glenn H. Holloway, Michael D. Smith
Comments (0)