DocumentCode :
2204391
Title :
Understanding C programs using the Combined C Graph representation
Author :
Kinloch, David A. ; Munro, Malcolm
Author_Institution :
Centre for Software Maintenance, Durham Univ., UK
fYear :
1994
fDate :
19-23 Sep 1994
Firstpage :
172
Lastpage :
180
Abstract :
The process of program comprehension is often aided by the use of static analysis tools to provide a maintainer with different views of the code. Each view however often requires a different intermediate program representation, leading to redundancies and repetition of information. A solution is to develop a single intermediate representation which contains sufficient information to construct each program view. This paper describes the Combined C Graph (CCG), a fine-grained intermediate representation for programs written in the C language from which program slices, call graph, flow-sensitive data flow, definition-use and control dependence views can be easily constructed. The CCG allows the representation of embedded side effects and control flows and value returning functions with value parameters. The effects of pointer parameters are also modelled. Construction of the CCG makes use of the PERPLEX C analysis tool which produces a generic Prolog fact base representation of the source code. Existing data flow analysis techniques are extended to allow the computation of flow-sensitive data flow analysis information
Keywords :
C language; software maintenance; software tools; system monitoring; Combined C Graph; PERPLEX C analysis tool; call graph; combined C graph representation; control dependence views; data flow analysis; definition-use; embedded side effects; fine-grained intermediate representation; flow-sensitive data flow; generic Prolog fact base representation; intermediate program representation; maintainer; program comprehension; program slices; source code; static analysis tools; understanding C programs; C language; Computer-aided software engineering; Software maintenance;
fLanguage :
English
Publisher :
ieee
Conference_Titel :
Software Maintenance, 1994. Proceedings., International Conference on
Conference_Location :
Victoria, BC
Print_ISBN :
0-8186-6330-8
Type :
conf
DOI :
10.1109/ICSM.1994.336777
Filename :
336777
Link To Document :
بازگشت