Improvements to Conservative and Optimistic Register Coalescing

Autor: Bouchez, Florent, Darte, Alain, Rastello, Fabrice
Přispěvatelé: Laboratoire de l'Informatique du Parallélisme (LIP), École normale supérieure - Lyon (ENS Lyon)-Université Claude Bernard Lyon 1 (UCBL), Université de Lyon-Université de Lyon-Institut National de Recherche en Informatique et en Automatique (Inria)-Centre National de la Recherche Scientifique (CNRS), École normale supérieure de Lyon (ENS de Lyon)-Université Claude Bernard Lyon 1 (UCBL)
Jazyk: angličtina
Rok vydání: 2008
Předmět:
Zdroj: Proceedings of the 2008 international conference on Compilers, architectures and synthesis for embedded systems
Proceedings of the 2008 international conference on Compilers, architectures and synthesis for embedded systems, 2008, pp.147-156. ⟨10.1145/1450095.1450119⟩
DOI: 10.1145/1450095.1450119⟩
Popis: 18 pages; International audience; Register coalescing is used, as part of register allocation, to reduce the number of register copies. Developing efficient register coalescing heuristics is particularly important to get rid of the numerous move instructions introduced by code transformations such as static single assignment, among others. The challenge is to find a good trade-off between a too aggressive strategy that could make the interference graph uncolorable, possibly increasing the spill (transfer to memory), and a too conservative strategy that preserves colorability but leaves too many moves. The two main approaches are ``iterated register coalescing'' by George and Appel and ``optimistic coalescing'' by Park and Moon. The first one coalesces moves, one by one, in a conservative way. In the second one, moves are first coalesced regardless of the colorability, then some coalescings are undone to reduce spilling. Previous experiments show that optimistic coalescing outperforms conservative coalescing. We show that, with a more involved conservative strategy, incremental conservative coalescing can be as efficient as optimistic coalescing. We also develop a more aggressive optimistic approach with a different de-coalescing phase. The combination of the two approaches leads to about 10% improvements compared to traditional optimistic coalescing.
Databáze: OpenAIRE