Points-to Analysis for Program Understanding
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...
Main Authors: | , , , |
---|---|
Other Authors: | |
Format: | Text |
Language: | English |
Published: |
1997
|
Subjects: | |
Online Access: | http://citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.21.6906 http://serg.ing.unisannio.it/~antoniol/papers/jss99.ps.gz |
id |
ftciteseerx:oai:CiteSeerX.psu:10.1.1.21.6906 |
---|---|
record_format |
openpolar |
spelling |
ftciteseerx:oai:CiteSeerX.psu:10.1.1.21.6906 2023-05-15T18:32:41+02:00 Points-to Analysis for Program Understanding R. Fiutem P. Tonella G. Antoniol E. Merlo The Pennsylvania State University CiteSeerX Archives 1997 application/postscript http://citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.21.6906 http://serg.ing.unisannio.it/~antoniol/papers/jss99.ps.gz en eng http://citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.21.6906 http://serg.ing.unisannio.it/~antoniol/papers/jss99.ps.gz Metadata may be used without restrictions as long as the oai identifier remains attached to it. http://serg.ing.unisannio.it/~antoniol/papers/jss99.ps.gz text 1997 ftciteseerx 2016-01-07T17:47:43Z 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 additional problems to the tools supporting program understanding, since they introduce additional dependences that have to be accounted for. This paper extends the flow insensitive context insensitive points-to analysis algorithm proposed by Steensgaard, to cover arbitrary combinations of pointer dereferences, array subscripts and field selections. It exhibits interesting properties, among which scalability resulting from the low complexity and good performances. The results of the analysis are valuable by themselves, as their graphical display represents the points-to links between locations. They are also integrated with other program understanding techniques like, e.g., call graph construction, slicing, plan recognition and architectural recovery. The use of this algorithm in the framework of the program understanding environment CANTO is discussed. Text The Pointers Unknown |
institution |
Open Polar |
collection |
Unknown |
op_collection_id |
ftciteseerx |
language |
English |
description |
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 additional problems to the tools supporting program understanding, since they introduce additional dependences that have to be accounted for. This paper extends the flow insensitive context insensitive points-to analysis algorithm proposed by Steensgaard, to cover arbitrary combinations of pointer dereferences, array subscripts and field selections. It exhibits interesting properties, among which scalability resulting from the low complexity and good performances. The results of the analysis are valuable by themselves, as their graphical display represents the points-to links between locations. They are also integrated with other program understanding techniques like, e.g., call graph construction, slicing, plan recognition and architectural recovery. The use of this algorithm in the framework of the program understanding environment CANTO is discussed. |
author2 |
The Pennsylvania State University CiteSeerX Archives |
format |
Text |
author |
R. Fiutem P. Tonella G. Antoniol E. Merlo |
spellingShingle |
R. Fiutem P. Tonella G. Antoniol E. Merlo Points-to Analysis for Program Understanding |
author_facet |
R. Fiutem P. Tonella G. Antoniol E. Merlo |
author_sort |
R. Fiutem |
title |
Points-to Analysis for Program Understanding |
title_short |
Points-to Analysis for Program Understanding |
title_full |
Points-to Analysis for Program Understanding |
title_fullStr |
Points-to Analysis for Program Understanding |
title_full_unstemmed |
Points-to Analysis for Program Understanding |
title_sort |
points-to analysis for program understanding |
publishDate |
1997 |
url |
http://citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.21.6906 http://serg.ing.unisannio.it/~antoniol/papers/jss99.ps.gz |
genre |
The Pointers |
genre_facet |
The Pointers |
op_source |
http://serg.ing.unisannio.it/~antoniol/papers/jss99.ps.gz |
op_relation |
http://citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.21.6906 http://serg.ing.unisannio.it/~antoniol/papers/jss99.ps.gz |
op_rights |
Metadata may be used without restrictions as long as the oai identifier remains attached to it. |
_version_ |
1766216875170070528 |