Summary
Existing iterative algorithms for global dataflow analysis have demonstrable shortcomings; either they can be used only for a limited class of problems or they are needlessly inefficient in some cases. We review several algorithms, pointing out weaknesses and develop a new algorithm that can be used for a wide class of problems and has a runtime that compares favorably ro runtimes of existing algorithms.
Similar content being viewed by others
References
Aho, A., Ullman, J.: Node listings for reducible flowgraphs. J. Comput. Syst. Sci. 13, 286–299 (1976)
Aho, A., Hopcroft, J., Ullman, J.: The Design and Analysis of Computer Algorithms. Reading, MA: Addison Wesley 1974
Allen, F.: Control flow analysis. SIGPLAN Notices 5, 1–19 (1970)
Giegerich, R., Moncke, U., Wilhelm, R.: Invariance of approximative semantics with respect to program transformations. Proceedings, Third Conference of the European Co-operation in Informatics. In: Informatik-Fachberichte 50, pp. 1–10. Berlin Heidelberg New York: Springer 1981
Graham, S., Wegman, M.: A fast and usually linear algorithm for global flow analysis. J. ACM 23, 172–202 (1976)
Hecht, M., Ullman, J.: Analysis of a simple algorithm for global data flow problems. Conf. Record of the 1st ACM Symp. on POPL 207–217 (1973)
Kam, J., Ullman, J.: Monotone data flow analysis frameworks. Acta Inf. 7, 305–317 (1977)
Kam, J., Ullman, J.: Global data flow analysis and iterative algorithms. J. ACM 23, 158–171 (1976)
Kennedy, K.: Node: Listings applied to data flow analysis. Conf. Record of the 2nd ACM Symp. on POPL 10–21 (1975)
Kennedy, K.: A survey of data flow analysis techniques. In: Program Flow Analysis, Theory and Applications. Muchnick, S., Jones, N. (eds.), pp. 45–46. Englewood Cliffs, NJ: Prentice Hall 1981
Kildall, G.: A unified approach to global program optimization. Conf. Record of the 1st ACM Symp. on POPL 194–206 (1973)
Knuth, D.: An empirical study of FORTRAN programs. Software Pract. Exp. 1, 105–134 (1971)
Tarjan, R.: A unified approach to path problems. J. ACM 28, 577–593 (1981)
Tarjan, R.: Fast algorithms for solving path problems. J. ACM 28, 594–614 (1981)
Wilhelm, R.: Global flow analysis and optimization in the MUG2 compiler generating system. In: Program Flow Analysis, Theory and Applications. Muchnick, S., Jones, N. (eds.), pp. 144–147. Englewood Cliffs, NJ: Prentice Hall 1981
Author information
Authors and Affiliations
Rights and permissions
About this article
Cite this article
Horwitz, S., Demers, A. & Teitelbaum, T. An efficient general iterative algorithm for dataflow analysis. Acta Informatica 24, 679–694 (1987). https://doi.org/10.1007/BF00282621
Received:
Issue Date:
DOI: https://doi.org/10.1007/BF00282621