ACM Home Page
Please provide us with feedback. Feedback
Demand-driven computation of interprocedural data flow
Full text PdfPdf (1.42 MB)
Source Annual Symposium on Principles of Programming Languages archive
Proceedings of the 22nd ACM SIGPLAN-SIGACT symposium on Principles of programming languages table of contents
San Francisco, California, United States
Pages: 37 - 48  
Year of Publication: 1995
ISBN:0-89791-692-1
Authors
Evelyn Duesterwald  Department of Computer Science, University of Pittsburgh, Pittsburgh, PA
Rajiv Gupta  Department of Computer Science, University of Pittsburgh, Pittsburgh, PA
Mary Lou Soffa  Department of Computer Science, University of Pittsburgh, Pittsburgh, PA
Sponsors
SIGPLAN: ACM Special Interest Group on Programming Languages
SIGACT: ACM Special Interest Group on Algorithms and Computation Theory
Publisher
ACM  New York, NY, USA
Bibliometrics
Downloads (6 Weeks): 5,   Downloads (12 Months): 39,   Citation Count: 21
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/199448.199461
What is a DOI?

ABSTRACT

This paper presents a general framework for deriving demand-driven algorithms for interprocedural data flow analysis of imperative programs. The goal of demand-driven analysis is to reduce the time and/or space overhead of conventional exhaustive analysis by avoiding the collection of information that is not needed. In our framework, a demand for data flow information is modeled as a set of date flow queries. The derived demand-driven algorithms find responses to these queries through a partial reversal of the respective data flow analysis. Depending on whether minimizing time or space is of primary concern, result caching may be incorporated in the derived algorithm. Our framework is applicable to interprocedural data flow problems with a finite domain set. If the problem's flow functions are distributive, the derived demand algorithms provide as precise information as the corresponding exhaustive analysis. For problems with monotone but non-distributive flow functions the provided data flow solutions are only approximate. We demonstrate our approach using the example of interprocedural copy constant propagation.


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.

 
Bir84
G. Birkhoff. Lattice theory, volume 25. American Mathematical Society, Colloquium Publication, Washington, DC, 3rd edition, '84.
 
BJ78
W.A. Babich and M. Jazayeri. The method of attributes for data flow analysis: Part II. Demand analysis. Acta Informatica, 10(3), Oct. '78.
Bou93
 
CC77
P. Cousot and R. Cousot. Static determination of dynamic properties of recursive procedures. In E.J. Neuhold, editor, IFIP Conf. on Formal Description of Programming Concepts, pases 237--277. North- Hollan Pub. Co., '77.
CCF90
 
CCF92
CG93
 
CHK92
K. Cooper, M. Hall, and K. Kennedy. Procedure cloning. In IEEE 1992 Int. Conf. on Computer Languages, pages 96-105, San Francisco, CA, April 1992.
CK88
Coo85
 
Cou81
P. Cousot. Semantic foundations of program analysis. In S. Muchnick and N.D. Jones, editors, Program Flow Analysis: Theory and Apphcations, pages 303- 342. Prentice-Hall, '81.
 
DGS94
DRZ92
GT93
 
HL92
JM73
JM82
JP93
Kil73
 
KS92
 
KU77
J.B. Kam and J.D. Ullman. Monotone data flow analysis frameworks. Acta Informatica, 7(3):305-317, Jul. '77.
Mas94
Mye81
 
PS89
 
Rep94
Ros79
Ros81
RP88
 
RSH94
T. Reps, M. Sagiv, and S. Horwitz. Interprocedural datatiow analysis via graph reachability. Technical Report 94-14, Datalogisk Institut, University of Copenhagen, Copenhagen, Denmark, '94.
 
RT82
J. Reif and R.E. Tarjan. Symbolic program analysis in almost linear time. SIAM Journal of Computing, 11 (1):81-93, Feb. '82.
RWZ88
 
SMHY93
A.D. Stoyenko, T.J. Marlowe, W.A. Halang, and M. Younis. Enabling efficient schedulability analysis through conditional linking and program transformations. Control Engineering Practice, 1(1):85-105, '93.
 
SP81
M. Sharir and A. Pnueli. Two approaches to interprocedural data flow analysis. In S. Muchnick and N.D. Jones, editors, Program Flow Analysis: Theory and Applications, pages 189-234. Prentice-Hall, '81.
 
SY93
WZ85
Zad84

CITED BY  21

Collaborative Colleagues:
Evelyn Duesterwald: colleagues
Rajiv Gupta: colleagues
Mary Lou Soffa: colleagues