CiteULike is a free online bibliography manager. Register and you can start organising your references online.

call graph extraction in the presence of function pointers Export

In Proceedings of the 2002 International Conference on Software Engineering Research and Practice (June 2002), pp. 579-584.

Citation Format

[Posts]

View FullText article


kklo's tags for this article

abstract-model call-graph function-pointer

X Reviews [Write a review of this article]

X Find related articles from these CiteULike users

X Find related articles with these CiteULike tags

X Posting History

X Abstract

Software engineers need to understand programs in order to efficiently and effectively maintain them. The call graph, which presents the relationships between calling and called functions, is a useful representation of a program that can greatly aid understanding. For programs without the use of function pointers, the call graph can be extracted during a simple parse of the program. However, for programs with function pointers, call graph extraction is nontrivial. Many commonly used C programs utilize function pointers for efficiency and ease of implementation. We present different techniques for extracting the call graph in the presence of function pointers. We demonstrate our techniques on several commonly available C programs. Our results show that unless function pointers are taken into account, the call graphs of these programs are erroneously small. We also show that performing a simple, conservative pointer analysis yields call graphs that are too large to be generally useful. However, both filtering of the points-to sets and the use of run-time pointer data can be used to obtain a closer approximation to the true call graph.


X BibTeX record

X RIS record


Privacy Statement | Terms & Conditions
CiteULike organises scholarly (or academic) papers or literature and provides bibliographic (which means it makes bibliographies) for universities and higher education establishments. It helps undergraduates and postgraduates. People studying for PhDs or in postdoctoral (postdoc) positions. The service is similar in scope to EndNote or RefWorks or any other reference manager like BibTeX, but it is a social bookmarking service for scientists and humanities researchers.