12th International Conference on Parallel Architectures and Compilation Techniques (PACT'03)
Spill Code Minimization by Spill Code Motion
New Orleans, Louisiana
September 27-October 01
ISBN: 0-7695-2021-9
This paper aims at minimizing the spill costs. Spill cost minimization heuristics that have been researched sometimes work in unexpected ways due to the lack of precise knowledge of registers availability, which can be obtained only after register allocation is all finished. Different from previous techniques, our approach, called spill code motion, tries to eliminate redundancy among spill code. This works as a variation of commonly used code motion techniques. After Chaitin-style graph coloring with na?ve live range splitting, spill-in instructions are first hoisted as long as registers are available and until they reach spillout instructions. Unnecessarily hoisted spill-in instructions are then sunk. The experimental results show our approach yields up to a 10% performance increase compared to the latest spill code minimization technique in the case of using small number of registers.
Citation:
Akira Koseki, Hideaki Komatsu, Toshio Nakatani, "Spill Code Minimization by Spill Code Motion," pact, pp.125, 12th International Conference on Parallel Architectures and Compilation Techniques (PACT'03), 2003