ACM Home Page
Please provide us with feedback. Feedback
Incremental data-flow analysis algorithms
Full text PdfPdf (3.62 MB)
Source ACM Transactions on Programming Languages and Systems (TOPLAS) archive
Volume 10 ,  Issue 1  (January 1988) table of contents
Pages: 1 - 50  
Year of Publication: 1988
ISSN:0164-0925
Authors
Barbara G. Ryder  Rutgers Univ., New Brunswick, NJ
Marvin C. Paull  Rutgers Univ., New Brunswick, NJ
Publisher
ACM  New York, NY, USA
Bibliometrics
Downloads (6 Weeks): 8,   Downloads (12 Months): 89,   Citation Count: 35
Additional Information:

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

ABSTRACT

An incremental update algorithm modifies the solution of a problem that has been changed, rather than re-solving the entire problem. ACINCF and ACINCB are incremental update algorithms for forward and backward data-flow analysis, respectively, based on our equations model of Allen-Cocke interval analysis. In addition, we have studied their performance on a “nontoy” structured programming language L. Given a set of localized program changes in a program written in L, we identify a priori the nodes in its flow graph whose corresponding data-flow equations may be affected by the changes. We characterize these possibly affected nodes by their corresponding program structures and their relation to the original change sites, and do so without actually performing the incremental updates. Our results can be refined to characterize the reduced equations possibly affected if structured loop exit mechanisms are used, either singly or together, thereby relating richness of programming language usage to the ease of incremental updating.


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
ALLEN, F. E. Interprocedural data flow analysis. In Proceedings of 1974 ZFZP Congress. IEEE Press, New York, 1974, pp. 398-402.
4
 
5
BABICH, W. A., AND JAZAYERI, M. The method of attributes for data flow analysis, Part II: Demand analysis. Acta Znf. 10 (1978), 265-272.
 
6
BABICH, W. A., AND JAZAYERI, M. The method of attributes for data flow analysis, Part I: Exhaustive analysis. Actu Znf. 10 (1978), 245-264.
7
 
8
BURKE, M. An interval analysis approach toward interprocedural data flow analysis. Comput. Sci. Tech. Rep. RC 10640, IBM Thomas J. Watson Research Center, Yorktown Heights, N.Y., July 1984.
9
10
 
11
ELSHOFF, J. A numerical profile of commercial PL/I programs. Softw. Pratt. &per. 6,4 (1976), 505-525.
 
12
ELSHOFF, J. The influence of structured programming on PL/I program profiles. IEEE Trans. Softw. Eng. SE-3,5 (Sept. 1977), 364-368.
13
 
14
 
15
ISAACSON, E., AND KELLER, H. B. Anulysis of Numerical Methods. Wiley, New York, 1966.
16
 
17
JOHNSON, S. C. LINT, A C program checker. In UNIX System Programmer's Manual Vol. 2. Holt, Rinehart and Winston, New York, 1979, pp. 278-290.
18
 
19
KNUTH, D. E. An empirical study of FORTRAN programs. Softw. Pruct. Exper. I (1971), 105-133.
20
 
21
 
22
OSTERWEIL, L. J., AND FOSDICK, L. D. DAVE-A validation, error detection, and documentation system for FORTRAN programs. Softw. Pratt. Exper. 6 (Sept. 1976), 473-486.
 
23
PAIGE, R. Formal Differentiation-A Program Synthesis Technique. UMI Research Press, Ann Arbor, Mich., 1981.
 
24
 
25
REISER, J., ED. SAIL. Memo AIM-289, Artificial Intelligence Laboratory, Stanford Univ., Stanford, Calif., Aug. 1976.
26
27
28
 
29
ROBINSON, S. K., AND TORSUN, I. S. An empirical analysis of FORTRAN programs. Comput. J. 19, 1 (1976), 56-62.
30
31
 
32
RYDER, B. G. The PFORT verifier. Softw. Pratt. Exper. 4 (1974), 359-377.
 
33
RYDER, B. G. Constructing the call graph of a program. IEEE Trcms. Softw. Eng. SE-5, 3 (May 1979), 216-225.
 
34
 
35
RYDER, B. G. An application of static program analysis to software maintenance. In Proceedings of the 12th Hawaii Znternatianal Conference on System Sciences, Vol. II: Software (Kona, Hawaii, Jan. 1987). University of Hawaii and University of S.W. Louisiana, in cooperation with the ACM and the IEEE Technical Committee on Computational Medicine. pp. 82-91. (Also available in abridged version as Tech. Rep. CAIP-TR-009, Center for Computer Aids for Industrial Productivity, Rutgers Univ., New Brunswick, N.J., July 1986.)
 
36
RYDER, B. G., AND CARROLL, M. D. A new structure for performing interval-based incremental data flow analysis. Tech. Rep. CAIP-TR-008, Center for Computer Aids for Industrial Productivity, Rutgers Univ., New Brunswick, N.J., May 1986.
 
37
RYDER, B. G., AND CARROLL, M. D. Interval-based incremental data flow analysis. Tech. Rep. CAIP-TR-007, Center for Computer Aids for Industrial Productivity, Rutgers Univ., New Brunswick, N.J., May 1986.
38
 
39
RYDER, B. G., AND CARROLL, M. D. An incremental analysis algorithm for software systems. Tech. Rep. CAIP-TR-035, Center for Computer Aids for Industrial Productivity, Rutgers Univ., New Brunswick, N.J., May 1987.
40
 
41
SCHWARTZ, J. T. Interprocedural optimizations. SETL Newsl. 134, Courant Institute of Mathematical Sciences, New York Univ., New York, July 1, 1974.
 
42
SCHWARTZ, J. T., AND SHARIR, M. A design for optimizations of the bitvectoring class. Comput. Sci. Tech. Rep. 17, Courant Institute of Mathematical Sciences, New York Univ., New York, Sept. 1979.
 
43
SHARIR, M., AND PNUELI, A. Two approaches to interprocedural data flow analysis. In Program Flaw Analysis: Theory and Applications, S. Muchnick and N. Jones, Eds. Prentice-Hall, Englewood Cliffs, N.J. 1981, pp. 189-234.
 
44
SHIMASAKI, M., FUKAYA, S., IKEDA, K., AND KIYONO, T. An analysis of PASCAL programs in compiler writing. Softw. Pratt. Erper. 10,2 (Feb. 1980), 149-158.
 
45
TARJAN, R. E. Testing flow graph reducibility. J. Comput. Syst. Sci. 9 (1974), 355-365.
46
 
47
ULLMAN, J. D. Fast algorithms for the elimination of common subexpressions. Acta Znf. 2, 3 (1973), 191-213.
 
48
49

CITED BY  35


REVIEW

"Marvin V. Zelkowitz : Reviewer"

This paper presents an analysis of several data-flow algorithms and a mechanism for the incremental updating of each. In particular, it describes the Allen-Cocke interval analysis (both forward and backward data-flow) and the Hecht-Ullman T1-T2   more...

Collaborative Colleagues:
Barbara G. Ryder: colleagues
Marvin C. Paull: colleagues