Flow-Insensitive Points-to Analysis with Term and Set Constraints

Jeffrey S. Foster, Manuel Fahndrich and Alexander Aiken

EECS Department
University of California, Berkeley
Technical Report No. UCB/CSD-97-964
August 1997

http://www2.eecs.berkeley.edu/Pubs/TechRpts/1997/CSD-97-964.pdf

We describe new type systems for two kinds of flow-insensitive points-to analyses, one based on Andersen's algorithm and one based on Steensgaard's. The type systems are formulated using a mixed constraint framework. These systems can be seen as a straightforward axiomatization of an informal description of the algorithms, and we show this formally by proving soundness with respect to an operational semantics. Further, we show that these two systems are nearly identical, except that one uses subset constraints and one uses unification. We discuss an implementation of these systems and describe experiments that demonstrate that our general framework achieves running times within a small constant factor of a hand-coded solution. We conclude that a mixed constraint system provides a useful, practical framework for static semantic analyses.


BibTeX citation:

@techreport{Foster:CSD-97-964,
    Author = {Foster, Jeffrey S. and Fahndrich, Manuel and Aiken, Alexander},
    Title = {Flow-Insensitive Points-to Analysis with Term and Set Constraints},
    Institution = {EECS Department, University of California, Berkeley},
    Year = {1997},
    Month = {Aug},
    URL = {http://www2.eecs.berkeley.edu/Pubs/TechRpts/1997/5237.html},
    Number = {UCB/CSD-97-964},
    Abstract = {We describe new type systems for two kinds of flow-insensitive points-to analyses, one based on Andersen's algorithm and one based on Steensgaard's. The type systems are formulated using a mixed constraint framework. These systems can be seen as a straightforward axiomatization of an informal description of the algorithms, and we show this formally by proving soundness with respect to an operational semantics. Further, we show that these two systems are nearly identical, except that one uses subset constraints and one uses unification. We discuss an implementation of these systems and describe experiments that demonstrate that our general framework achieves running times within a small constant factor of a hand-coded solution. We conclude that a mixed constraint system provides a useful, practical framework for static semantic analyses.}
}

EndNote citation:

%0 Report
%A Foster, Jeffrey S.
%A Fahndrich, Manuel
%A Aiken, Alexander
%T Flow-Insensitive Points-to Analysis with Term and Set Constraints
%I EECS Department, University of California, Berkeley
%D 1997
%@ UCB/CSD-97-964
%U http://www2.eecs.berkeley.edu/Pubs/TechRpts/1997/5237.html
%F Foster:CSD-97-964