Compilateurs
Quel est le principal avantage d'utiliser, à l'intérieur d'un compilateur, une représentation intermédiaire (IR) indépendante du langage source comme du CPU ?
- AElle permet de compiler sans lire le code source
- BLe CPU pouvant l'exécuter telle quelle, la génération de code machine devient inutile
- CElle sépare la partie avant propre à chaque langage de la partie arrière propre à chaque CPU, et les optimisations peuvent être partagées
Afficher la réponse et l'explication
Réponse : C. Elle sépare la partie avant propre à chaque langage de la partie arrière propre à chaque CPU, et les optimisations peuvent être partagées
Pour prendre en charge M langages et N CPU, un compilateur par combinaison en exigerait M×N ; avec une représentation intermédiaire commune, M parties avant (frontend) du langage vers l'IR et N parties arrière (backend) de l'IR vers le CPU suffisent. La plupart des optimisations, réalisées une fois sur l'IR, profitent à tous les langages et CPU. L'IR n'est pas directement exécutable par le CPU et doit finalement être convertie en code machine.