Effects of Different Flow Insensitive Points-to Analyses on DEF/USE Sets

Abstract

Points-to analysis is required as a preliminary step for many code analyses used in program understanding and maintenance. Different flow insensitive points-to analyses have been proposed in literature. They are extremely appealing with respect to the flow sensitive counterparts because of their high efficiency. Their output, consisting of a set of points-to pairs which hold for the given program, can be integrated with other analyses, such as reaching definitions or call graph computation. In any case, their role is to resolve dereference chains into the referenced locations.

In this paper two variants of flow insensitive points-to analysis are considered. The resulting points-to pairs are used to determine the locations that are defined or used by every program statement. When a definition or a use exploits a pointer to access the defined or used location, the preliminarly computed points-to pairs allow to find out the accessed locations. The effect of different choices of points-to analyses on DEF/USE sets is discussed in this paper, together with the consequences on the efficiency of the computation.

Postscript version of the paper.

Copyright notice

Copyright 1999 IEEE. Published in the Proceedings of CSMR'99, March 3-5, 1999, in Amsterdam, The Netherlands. Personal use of this material is permitted. However, permission to reprint/republish this material for advertising or promotional purposes or for creating new collective works for resale or redistribution to servers or lists, or to reuse any copyrighted component of this work in other works, must be obtained from the IEEE. Contact: Manager, Copyrights and Permissions / IEEE Service Center / 445 Hoes Lane / P.O. Box 1331 / Piscataway, NJ 08855-1331, USA. Telephone: + Intl. 908-562-3966.