Skip to Main content Skip to Navigation

Verification formelle et optimisation de l’allocation de registres

Abstract : The need for trustful programs led to an increasing use of formal verication techniques the last decade, and especially of program proof. However, the code running on the computer is not the source code, i.e. the one written by the developper, since it has to betranslated by the compiler. As a result, the formal verication of compilers is required to complete the source code verication. One of the hardest phases of compilation is register allocation. Register allocation is the phase within which the compiler decides where the variables of the program are stored in the memory during its execution. The are two kinds of memory locations : a limited number of fast-access zones, called registers, and a very large but slow-access stack. The aim of register allocation is then to make a great use of registers, leading to a faster runnable code.The most used model for register allocation is the interference graph coloring one. In this thesis, our objective is twofold : first, formally verifying some well-known interference graph coloring algorithms for register allocation and, second, designing new graph-coloring register allocation algorithms. More precisely, we provide a fully formally veri ed implementation of the Iterated Register Coalescing, a very classical graph-coloring register allocation heuristics, that has been integrated into the CompCert compiler. We also studied two intermediate representations of programs used in compilers, and in particular the SSA form to design new algorithms, using global properties of the graph rather than local criteria currently used in the litterature.
Complete list of metadatas
Contributor : Abes Star :  Contact
Submitted on : Thursday, February 3, 2011 - 9:43:12 AM
Last modification on : Saturday, December 21, 2019 - 3:45:16 AM
Long-term archiving on: : Wednesday, May 4, 2011 - 2:42:19 AM


Version validated by the jury (STAR)


  • HAL Id : tel-00562318, version 1



Benoît Robillard. Verification formelle et optimisation de l’allocation de registres. Architectures Matérielles [cs.AR]. Conservatoire national des arts et metiers - CNAM, 2010. Français. ⟨NNT : 2010CNAM0730⟩. ⟨tel-00562318⟩



Record views


Files downloads