Pointer analysis: building a foundation for effective program analysis

  • Authors:
  • Calvin Lin;Benjamin Charles Hardekopf

  • Affiliations:
  • The University of Texas at Austin;The University of Texas at Austin

  • Venue:
  • Pointer analysis: building a foundation for effective program analysis
  • Year:
  • 2009

Quantified Score

Hi-index 0.00

Visualization

Abstract

Pointer analysis is a fundamental enabling technology for program analysis. By improving the scalability of precise pointer analysis we can make a positive impact across a wide range of program analyses used for many different purposes, including program verification and model checking, optimization and parallelization, program understanding, hardware synthesis, and more. In this thesis we present a suite of new algorithms aimed at improving pointer analysis scalability. These new algorithms make inclusion-based analysis (the most precise flow- and context-insensitive pointer analysis) over 4× faster while using 7× less memory than the previous state-of-the-art; they also enable flow-sensitive pointer analysis to handle programs with millions of lines of code, two orders of magnitude greater than the previous state-of-the-art. We present a formal framework for describing the space of pointer analysis approximations. The space of possible approximations is complex and multidimensional, and until now has not been well-defined in a formal manner. We believe that the framework is useful as a method to meaningfully compare the precision of the multitude of existing pointer analyses, as well as aiding in the systematic exploration of the entire space of approximations.