Interprocedural shape analysis with separated heap abstractions

  • Authors:
  • Alexey Gotsman;Josh Berdine;Byron Cook

  • Affiliations:
  • University of Cambridge;Microsoft Research, Cambridge;Microsoft Research, Cambridge

  • Venue:
  • SAS'06 Proceedings of the 13th international conference on Static Analysis
  • Year:
  • 2006

Quantified Score

Hi-index 0.01

Visualization

Abstract

We describe an interprocedural shape analysis that makes use of spatial locality (i.e. the fact that most procedures modify only a small subset of the heap) in its representation of abstract states. Instead of tracking reachability information directly and aliasing information indirectly, our representation tracks reachability indirectly and aliasing directly. Computing the effect of procedure calls and returns on an abstract state is easy because the representation exhibits spatial locality mirroring the locality that is present in the concrete semantics. The benefits of this approach include improved speed, support for programs that deallocate memory, the handling of bounded numbers of heap cutpoints, and support for cyclic and shared data structures.