Points-to analysis for program understanding

Citation
R. Fiutem et al., Points-to analysis for program understanding, J SYST SOFT, 44(3), 1999, pp. 213-227
Citations number
45
Categorie Soggetti
Computer Science & Engineering
Journal title
JOURNAL OF SYSTEMS AND SOFTWARE
ISSN journal
01641212 → ACNP
Volume
44
Issue
3
Year of publication
1999
Pages
213 - 227
Database
ISI
SICI code
0164-1212(199901)44:3<213:PAFPU>2.0.ZU;2-M
Abstract
Program understanding activities are more difficult for programs written in languages (such as C) that heavily make use of pointers for data structure manipulation, because the programmer needs to build a mental model of the memory use and of the pointers to its locations. Pointers also pose additio nal problems to the tools supporting program understanding, since they intr oduce additional dependences that have to be accounted for. This paper exte nds the flow insensitive context insensitive points-to analysis (PTA) algor ithm proposed by Steensgaard, to cover arbitrary combinations of pointer de references, array subscripts and field selections. It exhibits interesting properties, among which scalability resulting from the low complexity and g ood performances is one. The results of the analysis are valuable by themse lves, as their graphical display represents the points-to links between loc ations. They are also integrated with other program understanding technique s like, e.g., call graph construction, slicing, plan recognition and archit ectural recovery. The use of this algorithm in the framework of the program understanding environment CANTO is discussed. (C) 1999 Elsevier Science In c. All rights reserved.