ACM Home Page
Please provide us with feedback. Feedback
A generalized theory of bit vector data flow analysis
Full text PdfPdf (2.42 MB)
Source ACM Transactions on Programming Languages and Systems (TOPLAS) archive
Volume 16 ,  Issue 5  (September 1994) table of contents
Pages: 1472 - 1511  
Year of Publication: 1994
ISSN:0164-0925
Authors
Uday P. Khedker  Indian Institute of Technology, Bombay, India
Dhananjay M. Dhamdhere  Indian Institute of Technology, Bombay, India
Publisher
ACM  New York, NY, USA
Bibliometrics
Downloads (6 Weeks): 8,   Downloads (12 Months): 103,   Citation Count: 11
Additional Information:

abstract   references   cited by   index terms   reviews   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/186025.186043
What is a DOI?

ABSTRACT

The classical theory of data flow analysis, which has its roots in unidirectional flows, is inadequate to characterize bidirectional data flow problems. We present a generalized theory of bit vector data flow analysis which explains the known results in unidirectional and bidirectional data flows and provides a deeper insight into the process of data flow analysis. Based on the theory, we develop a worklist-based generic algorithm which is uniformly applicable to unidirectional and bidirectional data flow problems. It is simple, versatile, and easy to adapt for a specific problem. We show that the theory and the algorithm are applicable to all bounded monotone data flow problems which possess the property of the separability of solution.The theory yields valuable information about the complexity of data flow analysis. We show that the complexity of worklist-based iterative analysis is the same for unidirectional and bidirectional problems. We also define a measure of the complexity of round-robin iterative analysis. This measure, called width, is uniformly applicable to unidirectional and bidirectional problems and provides a tighter bound for unidirectional problems than the traditional measure of depth. Other applications include explanation of isolated results in efficient solution techniques and motivation of new techniques for bidirectional flows. In particular, we discuss edge splitting and edge placement and develop a feasibility criterion for decomposition of a bidirectional flow into a sequence of unidirectional flows.


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
2
 
3
BISWAS, S., BHATTACHARJEE, G. P., AND DRAR, P. 1980. A comparison of some algorithms for live variable analysis. Int. J. Comput. Math. 8, 2, 121-134.
4
5
6
 
7
8
9
10
11
 
12
 
13
JOSHI, S. M. AND DHAMDHERE, D.M. 1982a. A composite algorithm for strength reduction and code movement: Part I. Int. J. Comput. Math. 11, 1, 21-44.
 
14
JOSHI, S. M. AND DHAMDHERE, D.M. 1982b. A composite algorithm for strength reduction and code movement: Part II. Int. J. Comput. Math. 11, 2, 111-126.
 
15
KAM, J. B. AND ULLMAN, J.D. 1977. Monotone data flow analysis frameworks. Acta Informatica 7, 3, 305-318.
 
16
KENNEDY, K. 1972. Safety of code movement. Int. J. Comput. Math. 3, 2/3, 117-130.
 
17
KHEDKER, U. P. AND DHAMDHERE~ D.M. 1992. A generalized theory of data flow analysis. Tech. Rep. TR-070-92, Dept. of Computer Science and Engineering, Indian Inst. of Technology, Bombay, India.
18
19
 
20
21
 
22
 
23
ROSEN, B.K. 1980. Monoids for rapid data flow analysis. SIAM J. Comput. 9, 1, 159-196.
24
25
26
27

CITED BY  11


REVIEWS

"Svetlana Segarceanu : Reviewer"

Dataflow analysis is an important process used in program design, optimization, and debugging. The paper presents a generalized theory of bit vector dataflow analysis, which elucidates the known results in unidirectional and bidirectional data  more...


"Gerald David Chandler : Reviewer"

Dataflow problems are concerned with a set of flow equations that relate the flow of information concerning safe and profitable code transformations in programs. The larger part of this paper consists of systematizing known results. The major   more...

Collaborative Colleagues:
Uday P. Khedker: colleagues
Dhananjay M. Dhamdhere: colleagues