Scalable Interprocedural Analysis -- A Pragmatic Approach (2009)
BibTeX
@MISC{Marron09scalableinterprocedural,
author = {Mark Marron and Anindya Banerjee and et al.},
title = { Scalable Interprocedural Analysis -- A Pragmatic Approach},
year = {2009}
}
OpenURL
Abstract
When analyzing a program via an abstract interpretation framework we would like to analyze the program in a context-sensitive interprocedural manner. Analyzing the program in a manner that considers interprocedural flow can lead to much more accurate results than local or context-insensitive analyses. However, the computational cost (both time and memory consumption) associated with context-sensitive interprocedural analysis techniques makes them infeasible for all but very small programs or simple domains. This paper presents several novel, domain independent, heuristics for reducing the cost of analyzing a program in a contextsensitive manner while having a small impact on the precision of the results. The heuristics are motivated by observations about fundamental properties of software design and the semantics of iterative dataflow analysis. We validate the effectiveness of the heuristics via experimental evaluation which shows both good scalability and high precision of the results.







