1989 · 119 citations · 11 references
ComputingComputer EngineeringComputer ScienceAlgorithmsCompilersParallel AlgorithmsControl-flow AnalysisData-flow AnalysisGraph ColoringHeuristic OptimizationInstruction SchedulingRegister AllocationGlobal Register AllocationGraph Coloring Register AllocationRegister AssignmentSpilling
Global register allocation and spilling is commonly performed by solving a graph coloring problem. In this paper we present a new coherent set of heuristic methods for reducing the amount of spill code generated. This results in more efficient (and shorter) compiled code. Our approach has been compared to both standard and priority-based coloring algorithms, universally outperforming them.
11
New methods to color the vertices of a graph
Daniel Brélaz · Communications of the ACM · 1979 · 1.6K citations · Full text
Register allocation & spilling via graph coloring
Gregory J. Chaitin · ACM SIGPLAN Notices · 1982 · 767 citations · Full text
Register allocation via coloring
Gregory J. Chaitin, Marc Auslander, Ashok K. Chandra et al. · Computer Languages · 1981 · 731 citations
Register allocation & spilling via graph coloring
Gregory J. Chaitin · 1982 · 668 citations
Register allocation by priority-based coloring
Frederick Chow, John L. Hennessy · 1984 · 219 citations