• Home
  • Search
  • Accurate Call Graph Extraction of Programs with Function Pointers Using Type Signatures
  • Open Access IconOpen Access
  • Cite Icon11
  • https://doi.org/10.1109/apsec.2004.16Copy DOI Icon

Accurate Call Graph Extraction of Programs with Function Pointers Using Type Signatures

  • Nov 30, 2004
  • D.c Atkinson
Show More
  • Abstract
  • Literature Map
  • References
  • Citations
  • Similar Papers
Abstract

Software engineers need to understand programs in order to effectively maintain them. The call graph, which presents the calling relationships between functions, is a useful representation of a program that can aid understanding. For programs that do not use function pointers, the call graph can be extracted simply by parsing the program. However, for programs that use function pointers, call graph extraction is nontrivial. Many widely used C programs utilize function pointers for efficiency and ease of implementation. We present a technique called type signature filtering for improving call graph extraction in the presence of function pointers. Filtering can be accomplished in a single pass after pointer analysis is complete, making it reusable across different analyses. Our results show that for many programs our technique yields a call graph that is nearly identical to the true call graph, even if a naive pointer analysis is used.

Similar Papers
  • Research Article
  • Citations69

Precise Call Graphs for C Programs with Function Pointers

  • Jan 01, 2004
  • Automated Software Engineering
  • Ana Milanova +2
  • Research Article
  • Citations31

Program slicing with dynamic points-to sets

  • Aug 01, 2005
  • IEEE Transactions on Software Engineering
  • M Mock +3
  • Book Chapter
  • Citations3

Lightweight Function Pointer Analysis

  • Jan 01, 2015
  • Wei Zhang +1
  • Research Article

Advancements in Call Graph Methodologies for Enhanced Program Comprehension

  • May 27, 2025
  • International Journal of Software Engineering and Knowledge Engineering
  • Rakan Alanazi
  • Research Article
  • Citations155

An empirical study of static call graph extractors

  • Apr 01, 1998
  • ACM Transactions on Software Engineering and Methodology
  • Gail C Murphy +3
  • Research Article
  • Citations14

Trin-Trin: Who’s Calling? A Pin-Based Dynamic Call Graph Extraction Framework

  • May 12, 2012
  • International Journal of Parallel Programming
  • Rohit Jalan +1
  • Research Article

InferCG: Enhancing Python Call Graph Generation via Static Analysis and Large Language Models

  • Mar 07, 2026
  • ACM Transactions on Software Engineering and Methodology
  • Dongming Xiang +4
  • Conference Article
  • Citations4

Towards Path-Sensitive Points-to Analysis

  • Sep 01, 2007
  • Tobias Gutzmann +2
  • Research Article

Updating and Improving the Accuracy of a Large 3D Database Through the Careful Use of Gcps and Icesat Data : Example of REFERENCE3D

  • Jan 30, 2012
  • Journal of The Remote Sensing Society of Japan
  • E Le Hir +2
  • Research Article

SemanticForge: Repository-Level Code Generation through Semantic Knowledge Graphs and Constraint Satisfaction

  • Oct 31, 2025
  • INNO-PRESS: Journal of Emerging Applied AI
  • Wuyang Zhang +6
  • Book Chapter
  • Citations3

Applying Answer Set Programming to Points-to Analysis of Object-Oriented Language

  • Jan 01, 2011
  • Bo Yang +2
  • Book Chapter
  • Citations34

Efficient Points-to Analysis for Whole-Program Analysis

  • Jan 01, 1999
  • Donglin Liang +1
  • Conference Article
  • Citations4

Advanced refactorings in eclipse

  • Oct 23, 2004
  • Robert Fuhrer +2
Cactus Communications logo

Copyright 2026 Cactus Communications. All rights reserved.