A Polynomial Spilling Heuristic: Layered Allocation - Inria - Institut national de recherche en sciences et technologies du numérique
Communication Dans Un Congrès Année : 2013

A Polynomial Spilling Heuristic: Layered Allocation

Résumé

Register allocation is one of the most important, and one of the oldest compiler optimizations. It aims to map temporary variables to machine registers, and defaults to explicit load/store from memory when necessary. The latter option is referred to as spilling. This paper addresses the minimization of the spill code overhead, one of the difficult problems in register allocation. We devised a heuristic, polynomial approach called "layered". It is rooted in the recent advances in decoupled register allocation. As opposed to conventional incremental spilling, our method incrementally allocates clusters of variables. We demonstrate its quasi-optimiality on standard benchmarks and on two architectures.
Fichier principal
Vignette du fichier
57_Diouf.pdf (295.03 Ko) Télécharger le fichier
Origine Fichiers produits par l'(les) auteur(s)
Loading...

Dates et versions

hal-00911887 , version 1 (01-12-2013)

Identifiants

Citer

Boubacar Diouf, Albert Cohen, Fabrice Rastello. A Polynomial Spilling Heuristic: Layered Allocation. CGO 2013 - International Symposium on Code Generation and Optimization, Feb 2013, Shenzhen, China. ⟨10.1109/CGO.2013.6495005⟩. ⟨hal-00911887⟩
252 Consultations
373 Téléchargements

Altmetric

Partager

More