Compilateurs
Que détermine l'analyse de vivacité (liveness), effectuée en préparation de l'allocation de registres ?
- ALe numéro de la ligne où chaque variable est déclarée dans tout le programme
- BLes valeurs maximale et minimale des variables
- CSi, à chaque point, la valeur peut encore être utilisée plus tard
Afficher la réponse et l'explication
Réponse : C. Si, à chaque point, la valeur peut encore être utilisée plus tard
L'analyse de vivacité détermine, en parcourant le graphe de flot de contrôle, si à chaque point du programme une valeur peut encore être lue par la suite (est vivante). Les valeurs vivantes doivent être conservées en registre, tandis que le registre d'une valeur qui ne servira plus peut être réutilisé pour une autre. Les valeurs vivantes simultanément ne pouvant partager un registre, le graphe d'interférence est construit à partir de ce résultat. Ce n'est pas une analyse de la position des déclarations ou de la plage des valeurs.