Universidad Complutense de Madrid
E-Prints Complutense

Conditional Termination of Loops over Heap-Allocated Data



Último año

Albert Albiol, Elvira y Arenas Sánchez, Purificación y Genaim, Samir y Puebla, Germán y Román Díez, Guillermo (2014) Conditional Termination of Loops over Heap-Allocated Data. Science of computer programming, 92 (Part A). pp. 2-24. ISSN 0167-6423

Vista previa

URL Oficial: http://www.sciencedirect.com/science/article/pii/S0167642313001044


Static analysis which takes into account the values of data stored in the heap is considered complex and computationally intractable in practice. Thus, most static analyzers do not keep track of object fields nor of array contents, i.e., they are heap-insensitive. In this article, we propose locality conditions for soundly tracking heap-allocated data in Java (bytecode) programs, by means of ghost non-heap allocated variables. This way, heap-insensitive analysis over the transformed program can infer information on the original heap-allocated data without sacrificing efficiency. If the locality conditions cannot be proven unconditionally, we seek to generate aliasing preconditions which, when they hold in the initial state, guarantee the termination of the program. Experimental results show that we greatly improve the accuracy w.r.t. a heap-insensitive analysis while the overhead introduced is reasonable.

Tipo de documento:Artículo
Palabras clave:Static Analysis, Heap-Sensitive Analysis, Termination, Java Bytecode, Program Transformation
Materias:Ciencias > Informática
Ciencias > Informática > Sistemas operativos (Ordenadores)
Ciencias > Informática > Software
Código ID:36390
Depositado:07 Abr 2016 10:42
Última Modificación:08 Abr 2016 08:08

Descargas en el último año

Sólo personal del repositorio: página de control del artículo