Um Algoritmo Inter-Procedural para Análise de Largura de Variáveis - Teixeira, Douglas do Couto; Pereira, Fernando Magno Quintão (Anais do Concurso de Trabalhos de Iniciação Científica da SBC (CTIC-SBC); 2012: Anais do XXXI Concurso de Trabalhos de Iniciação Científica da SBC, 2012)
Durante este projeto foi desenvolvido um algoritmo inter-procedural que é capaz de processar programas com milhões de instruções assembly. Ao contrário de muitos trabalhos anteriores, nosso algoritmo trata comparações entre variaveis sem recorrer a algoritmos custosos. Nós obtemos sensibilidade à fluxo de execução usando como representação intermediária o formato e-SSA (Extended Static Single Assignment) descrito por Bodik. Nós também mostramos que processar os componentes fortemente conexos do grafo em ordem topológica não só reduz o tempo de execução do programa, mas também aumenta sua precisão. Nós implementamos nossa técnica em LLVM, um compilador industrial, e pudemos processar cerca de quatro milhões de instruções assembly em poucos segundos.