Sciweavers

CGO
2006
IEEE

Tailoring Graph-coloring Register Allocation For Runtime Compilation

14 years 6 months ago
Tailoring Graph-coloring Register Allocation For Runtime Compilation
Just-in-time compilers are invoked during application execution and therefore need to ensure fast compilation times. Consequently, runtime compiler designers are averse to implementing compile-time intensive optimization algorithms. Instead, they tend to select faster but less effective transformations. In this paper, we explore this trade-off for an important optimization – global register allocation. We present a graph-coloring register allocator that has been redesigned for runtime compilation. Compared to ChaitinBriggs [7], a standard graph-coloring technique, the reformulated algorithm requires considerably less allocation time and produces allocations that are only marginally worse than those of Chaitin-Briggs. Our experimental results indicate that the allocator performs better than the linear-scan and Chaitin-Briggs allocators on most benchmarks in a runtime compilation environment. By increasing allocation efficiency and preserving optimization quality, the presented algor...
Keith D. Cooper, Anshuman Dasgupta
Added 10 Jun 2010
Updated 10 Jun 2010
Type Conference
Year 2006
Where CGO
Authors Keith D. Cooper, Anshuman Dasgupta
Comments (0)