What is it about?

This paper introduces AutoPruner, a novel call graph pruning technique. AutoPruner employs statistical semantic and structural analysis to eliminate false positive edges in call graphs. Comparisons with state-of-the-art baselines reveal that AutoPruner outperforms them by up to 25% in F1-score.

Featured Image

Why is it important?

Constructing a static call graph involves navigating a delicate balance between soundness and precision, as program analysis techniques often introduce imprecision. AutoPruner aims to address these issues by predicting false positives as in static call graphs. The call graph refined by AutoPruner demonstrates notable enhancements in both null pointer analysis and monomorphic call site detection. Leveraging the call graph generated by WALA, AutoPruner reduces the false alarm rate in null pointer analysis by an impressive 11%.

Perspectives

I hope this article makes an advance in improving the precision of call graphs, which sits at the core of many program analysis techniques.

Thanh Le Cong
University of Melbourne

Read the Original

This page is a summary of: AutoPruner: transformer-based call graph pruning, November 2022, ACM (Association for Computing Machinery),
DOI: 10.1145/3540250.3549175.
You can read the full text:

Read

Contributors

The following have contributed to this page