skip to main content
article
Free Access

Global Data Flow Analysis and Iterative Algorithms

Authors Info & Claims
Published:01 January 1976Publication History
Skip Abstract Section

Abstract

Kildall has developed data propagation algorithms for code optimization in a general lattice theoretic framework. In another direction, Hecht and Ullman gave a strong upper bound on the number of iterations required for propagation algorithms when the data is represented by bit vectors and depth-first ordering of the flow graph is used. The present paper combines the ideas of these two papers by considering conditions under which the bound of Hecht and Ullman applies to the depth-first version of Kildall's general data propagation algorithm. It is shown that the following condition is necessary and sufficient: Let ƒ and g be any two functions which could be associated with blocks of a flow graph, let x be an arbitrary lattice element, and let 0 be the lattice zero. Then (*) (∀ƒ,g,x) [ƒg(0) ≥ g(0) ∧ ƒ(x) ∧ x]. Then it is shown that several of the particular instances of the techniques Kildall found useful do not meet condition (*).

References

  1. 1 AHO, A V., AND ULmSAN, J.D The Theory of Parsing, Translat,on and Compiling, Vol. II" Compding. Prentice-Hall, Englewood Cliffs, N J., 1973 Google ScholarGoogle ScholarDigital LibraryDigital Library
  2. 2 ALLEN, F.E. Program optnni~atlon. Annual Review m Automatic Programming, Vol. 5, Pergamon Press, New York, 1969, 239-307.Google ScholarGoogle Scholar
  3. 3 ALLEN, F.E. Control flow analysm SIGPLAN Notices 5, 7 (July 1970), 1-19. Google ScholarGoogle ScholarDigital LibraryDigital Library
  4. 4 COCKE, J Global common subexpression elnnination SIGPLAN Nohces 5, 7 (July 1970), 20-24. Google ScholarGoogle ScholarDigital LibraryDigital Library
  5. 5 HECHT, M.S., AN}) ULLMAN, J.D. Analysis of a simple algorithm for global flow problems. Proc. ACM Conf. on Principles of Programming Languages, Oct. 1973, pp. 207-217. Google ScholarGoogle ScholarDigital LibraryDigital Library
  6. 6 HECHT, M S., AND ULLMAN, J D Characterizations of reducible flow graphs. J. ACM 21, 3 (July 1974), 367-375. Google ScholarGoogle ScholarDigital LibraryDigital Library
  7. 7 HOPCROFT, J.E, AND TARJAN, R.E. Algorithm 447--Efficmnt algorithms for graph mampulation. Comm ACM 16, 6 (June 1973), 372-378. Google ScholarGoogle ScholarDigital LibraryDigital Library
  8. 8 KAM, J.B., AN}) ULLMAN, J D Monotone data flow analysis frameworks TR-169, Dep. of Elec. Eng., Computer Sciences Lab., Princeton U., Princeton, N J, Jan 1975Google ScholarGoogle Scholar
  9. 9 KENNEDY, K A global flow analysis algorithm lnt J Computer Math. 3, 1 (Dec 1971), 5-15.Google ScholarGoogle Scholar
  10. 10 KILDALL, G A Global expression optimization during compilation. TR 724)6-02, Computer Scl Group, U. of Washington, Seattle, Wash , June 1972. See also Proc. ACM Conf. on Principles of Programming Languages, Oct. 1973, pp 194-206 Google ScholarGoogle ScholarDigital LibraryDigital Library
  11. 11 KNUTH, D.E. An empirmal study of FORTRAN programs. Software Pratt and Exper. 1, 2 (April 1971), 105-134Google ScholarGoogle ScholarCross RefCross Ref
  12. 12 SCHAEFER, M. A Malhemahcal Theory of Global Flow Analysis Prentice-Hall, Englewood Chffs, N J., 1973.Google ScholarGoogle Scholar
  13. 13 ULLMAN, J D Fast algorithms for the elimination of commonsubexpressions Acta Informatwa Z, 3 (Dec. 1973), 191-213Google ScholarGoogle ScholarDigital LibraryDigital Library
  14. 14 VYSSOTSKY, V.A. Private communication to M.S. Hecht, June 1973Google ScholarGoogle Scholar

Index Terms

  1. Global Data Flow Analysis and Iterative Algorithms

      Recommendations

      Comments

      Login options

      Check if you have access through your login credentials or your institution to get full access on this article.

      Sign in

      Full Access

      • Published in

        cover image Journal of the ACM
        Journal of the ACM  Volume 23, Issue 1
        Jan. 1976
        220 pages
        ISSN:0004-5411
        EISSN:1557-735X
        DOI:10.1145/321921
        Issue’s Table of Contents

        Copyright © 1976 ACM

        Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected]

        Publisher

        Association for Computing Machinery

        New York, NY, United States

        Publication History

        • Published: 1 January 1976
        Published in jacm Volume 23, Issue 1

        Permissions

        Request permissions about this article.

        Request Permissions

        Check for updates

        Qualifiers

        • article

      PDF Format

      View or Download as a PDF file.

      PDF

      eReader

      View online with eReader.

      eReader