- Book Chapter
- 10.1007/978-3-540-40018-9_26
Register Allocation Based on a Reference Flow Analysis
- Jan 01, 2003
- Dae-Hwan Kim + 1 more +1
The graph-coloring approach for register allocation has been widely used but its formulation is too abstract to generate efficient spill code. Recently, a new register allocation based on the analysis of variable reference flow was proposed [13]. This register allocation leads to more efficient spill code (i.e, reduced spill instructions) than the graph-coloring approach, but requires a large amount of computation. For the trade-off between the computation amount and code efficiency, this paper proposes two variations of the register allocation proposed in [13]. The first register allocation technique reduces computation time by employing a simplified graph-coloring algorithm for variable register allocation. The second technique generates more efficient code with aggressive variable flow analysis demanding a large amount of computation than [13]. Experimental results show that the first allocation reduces the amount of spill code by 22.2% and the amount of computation by 20.4% when compared to the Briggs’ allocator. The second allocator improves the efficiency by 6.2% with the increase of the computation by 4.6 times when compared to the register allocation in [13].
Read more