Points-to analysis in almost linear time

741Citations
Citations of this article
172Readers
Mendeley users who have this article in their library.
Get full text

Abstract

We present an interprocedural flow-insensitive points-to analysis based on type inference methods with an almost linear time cost complexity. To our knowledge, this is the asymptotically fastest non-trivial interprocedural points-to analysis algorithm yet described. The algorithm is based on a non-standard type system. The type inferred for any variable represents a set of locations and includes a type which in turn represents a set of locations possibly pointed to by the variable. The type inferred for a function variable represents a set of functions it may point to and includes a type signature for these functions. The results are equivalent to those of a flow-insensitive alias analysis (and control flow analysis) that assumes alias relations are reflexive and transitive. This work makes three contributions. The first is a type system for describing a universally valid storage shape graph for a program in linear space. The second is a constraint system which often leads to better results than the 'obvious' constraint system for the given type system. The third is an almost linear time algorithm for points-to analysis by solving a constraint system.

Cite

CITATION STYLE

APA

Steensgaard, B. (1996). Points-to analysis in almost linear time. In Conference Record of the Annual ACM Symposium on Principles of Programming Languages (pp. 32–41). ACM. https://doi.org/10.1145/237721.237727

Register to see more suggestions

Mendeley helps you to discover research relevant for your work.

Already have an account?

Save time finding and organizing research with Mendeley

Sign up for free