DocumentCode
3202998
Title
Points to analysis for program understanding
Author
Tonella, P. ; Antoniol, G. ; Fiutem, R. ; Merlo, E.
Author_Institution
IRST, Trento, Italy
fYear
1997
fDate
28-30 Mar 1997
Firstpage
90
Lastpage
99
Abstract
Real world programs (in languages like C) heavily make use of pointers. Program understanding activities are thus made more difficult, since pointers affect the memory locations that are referenced in a statement, and also the functions called by a statement, when function pointers are used. The programmer needs to build a mental model of the memory use and of the pointers to its locations, in order to comprehend the functionalities of the system. This paper presents an efficient flow insensitive context insensitive points-to analysis algorithm capable of dealing with the features of the C code. It is extremely promising with regard to scalability, because of the low complexity. The results 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
Keywords
C language; program control structures; reverse engineering; C language; architectural recovery; call graph; context insensitive; flow insensitive; function calls; function pointers; graphical display; memory locations; mental model; plan recognition; pointers; points to analysis; program slicing; program understanding; scalability; Algorithm design and analysis; Cognitive science; Computer languages; Data engineering; Data mining; Displays; Maintenance engineering; Programming profession; Scalability; Testing;
fLanguage
English
Publisher
ieee
Conference_Titel
Program Comprehension, 1997. IWPC '97. Proceedings., Fifth Iternational Workshop on
Conference_Location
Dearborn, MI
ISSN
1092-8138
Print_ISBN
0-8186-7993-X
Type
conf
DOI
10.1109/WPC.1997.601271
Filename
601271
Link To Document