LLVM est un ensemble d'outils pour construire une chaine de transformation d'un code source en exécutables (autrefois on disait compilateur ;-). Ce n'est pas une machine virtuelle (au sens Pascal ou java du terme), contrairement à ce que son nom pourrait laisser penser, mais en fait LLVM n'est pas un acronyme ! (mon oeil !). Utiliser LLVM pour construire un compilateur permet de garder le plus loin possible la structure du code source, ouvrant ainsi une assise technologique à la Programmation par Optimisation, dont nous parlerons une autre fois. Sébastien se propose de nous donner un aperçu du potentiel de LLVM dans la vie de tous les jours.