ACM Home Page
Please provide us with feedback. Feedback
Equivalence analysis: a general technique to improve the efficiency of data-flow analyses in the presence of pointers
Full text PdfPdf (875 KB)
Source Workshop on Program Analysis for Software Tools and Engineering archive
Proceedings of the 1999 ACM SIGPLAN-SIGSOFT workshop on Program analysis for software tools and engineering table of contents
Toulouse, France
Pages: 39 - 46  
Year of Publication: 1999
ISBN:1-58113-137-2
Also published in ...
Authors
Donglin Liang  The Ohio State University
Mary Jean Harrold  The Ohio State University
Sponsors
SIGSOFT: ACM Special Interest Group on Software Engineering
SIGPLAN: ACM Special Interest Group on Programming Languages
Publisher
ACM  New York, NY, USA
Bibliometrics
Downloads (6 Weeks): 3,   Downloads (12 Months): 22,   Citation Count: 5
Additional Information:

abstract   references   cited by   index terms   collaborative colleagues  

Tools and Actions: Request Permissions Request Permissions    Review this Article  
DOI Bookmark: Use this link to bookmark this Article: http://doi.acm.org/10.1145/316158.316175
What is a DOI?

ABSTRACT

Existing methods to handle pointer variables during data-flow analyses can make such analyses inefficient both in time and space because the data-flow analyses must store and propagate large sets of data facts that are introduced by dereferences of pointer variable. This paper presents equivalence analysis, a general technique to improve the efficiency of data-flow analyses in the presence of pointers. The technique identifies equivalence relations among the memory locations accessed by a procedure and ensures that two equivalent memory locations share the same set of data facts in a procedure and in the procedures that are called by that procedure. Thus, a data-flow analysis needs to compute the data-flow information only for a representative memory location in an equivalence class. The data-flow information for other memory locations in the equivalence class can be derived from that of the representative memory location. Our empirical studies indicate that equivalence analysis may effectively improve the efficiency of many data-flow analyses.


REFERENCES

Note: OCR errors may be found in this Reference List extracted from the full text article. ACM has opted to expose the complete List rather than only correct and linked references.

 
1
L. O. Andersen. Program analysis and specialization for the C programming language. Technical Report 94-19, University of Copenhagen, 1994 .
2
 
3
4
 
5
6
 
7
Programming Languages Research Group. PROLANGS Analysis Framework. http://www.proIangs.rutgers.edu/, Rutgers University, 1998.
 
8
 
9
J. E. Hopcroft. An nlogn algorithm for minimizing states in finite automata. In Theory of Machines and Computations. Academic Press, 1971.
10
11
 
12
W. A. Landi, B. G. Ryder, P. A. Stocks, S. Zhang, and R. Altucher. A schema for interprocedural modification side-effect analysis with pointer aliasing. Technical Report DCS-TR-336, Rutgers University, May 1998.
13
 
14
15
 
16
17
18
19


Collaborative Colleagues:
Donglin Liang: colleagues
Mary Jean Harrold: colleagues