Static analysis which takes into account the value of data stored in the heap is typically considered complex and computationally intractable in practice. Thus, most static analyzers do not keep track of object fields (or fields for short), i.e., they are field-insensitive. In this paper, we propose locality conditions for soundly converting fields into local variables. This way, field-insensitive analysis over the transformed program can infer information on the original fields. Our notion of locality is context-sensitive and can be applied both to numeric and reference fields. We propose then a polyvariant transformation which actually converts object fields meeting the locality condition into variables and which is able to generate multiple versions of code when this leads to increasing the amount of fields which satisfy the locality conditions. We have implemented our analysis within a termination analyzer for Java bytecode. © 2010 Springer-Verlag.
CITATION STYLE
Albert, E., Arenas, P., Genaim, S., Puebla, G., & Ramírez Deantes, D. V. (2010). From object fields to local variables: A practical approach to field-sensitive analysis. In Lecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics) (Vol. 6337 LNCS, pp. 100–116). https://doi.org/10.1007/978-3-642-15769-1_7
Mendeley helps you to discover research relevant for your work.