skip to main content
article
Free Access

The transitive closure of control dependence: the iterated join

Published:01 June 1992Publication History
Skip Abstract Section

Abstract

We characterize the transitive closure of the control dependence relation and give an application to the theory of control fow guards. We relate our result to characterizations by Beck et al., by Sarkar, and by Cytron et al., and strengthen a result of the latter concerning dominance frontiers and join sets.

References

  1. 1 ALLEN, R., KENNEDY, K., PORTERFIELD, C., AND WARREN, J.D. Conversion of control dependence to data dependence. In Conference Record of the Tenth Annual ACM Symposium on Principles of Programming Languages (Austin, Texas, Jan. 1983), SIGPLAN/SIGACT, pp. 177-189. Google ScholarGoogle Scholar
  2. 2 BECK, M., JOHNSON, R., AND PINGALI, K. From control flow to dataflow. J. Parallel Distrib. Comput. 12, 2 (June 1991), 118-129. Google ScholarGoogle Scholar
  3. 3 BESAW, K. V. Advanced techniques for vectorizing dusty decks. In Proceedings of the Second International Conference on SupQrcomputing, Vol. I (1987), pp. 111-132.Google ScholarGoogle Scholar
  4. 4 CYTRON, R., FERRANTE, J., ROSEN, B. K., WEGMAN, M. N., AND ZADECK, F.K. Efficiently computing static single assignment form and the control dependence graph. Tech. Rep. RC-14756, IBM Watson Research Center, July 1989.Google ScholarGoogle Scholar
  5. 5 CYTRON, R., FERRANTE, J., ROSEN, B. K., WEGMAN, M. N., AND ZADECK, F. K. Efficiently computing static single assignment form and the control dependence graph. ACM Trans. Program. Lang. Syst., 13, 4 (Oct. 1991), 451-490. Google ScholarGoogle Scholar
  6. 6 CYTRON, R., FERRANTE, J., AND SARKAR, V. Compact representations for control dependence. In SIGPLAN '90 Conference on Programming Language Design and Implementation (June 1990), pp. 337-351. Google ScholarGoogle Scholar
  7. 7 CYTRON, R., FERRANTE, J., AND SARKAR, V. Experiences using control dependence in PTRAN. In Languages and Compilers for Parallel Computing, D. Gelernter, A. Nicolau, and D. Padua, Eds., MIT Press, Cambridge, Mass., 1990, Ch. 11, 186-212. Google ScholarGoogle Scholar
  8. 8 FERRANTE, J. AND MACE, M. On linearizing parallel code. In Conference Record of the Twelfth Annual ACM Symposium on Principles of Programming Languages (Jan. 1985), SIGPLAN/SIGACT, pp. 179-190. Google ScholarGoogle Scholar
  9. 9 FERRANTE, J., MACE, M., AND SIMONS, B. Generating sequential code from parallel code. In 1988 International Conference on Supercomputing (St. Malo, France, July 1988), pp. 582-592. Google ScholarGoogle Scholar
  10. 10 FERRANTE, J., OTTENSTEIN, K. J., AND WARREN, J.D. The program dependence graph and its use in optimization. ACM Trans. Program. Lang. Syst., 9, 3 (July 1987), 319-349. Google ScholarGoogle Scholar
  11. 11 GUPTA, R., AND SOFFA, M.L. Region scheduling. In Proceedings of the Second International Conference on Supercomputing, Vol. III, 1987, pp. 141-148.Google ScholarGoogle Scholar
  12. 12 HECHT, M.S. Flow Analysis of Computer Programs. North-Holland, Amsterdam, 1977. Google ScholarGoogle Scholar
  13. 13 HORWITZ, S., PRINS, J., AND REPS, T. Integrating non-interfering versions of programs. In Conference Record of the Fifteenth Annual ACM Symposium on Principles of Programming Languages (Jan. 1988). Google ScholarGoogle Scholar
  14. 14 HORWITZ, S., PRINS, J., AND REPS, T. On the adequacy of program dependence graphs for representing programs. In Conference Record of the Fifteenth Annual ACM Symposium on Principles of Programming Languages (Jan. 1988). Google ScholarGoogle Scholar
  15. 15 KENNEDY, K., AND MCKINLEY, K. S. Loop distribution with arbitrary control flow. In Proceedings of Supercomputing "90 (Nov. 1990), pp. 407-416. Google ScholarGoogle Scholar
  16. 16 SARKAR, V. PTRAN--the IBM parallel translation system. In Parallel Functional Languages and Compilers, B. K. Szymanski, Ed., ACM Press/Addison-Wesley, 1991, Ch. 8, 309-391. Google ScholarGoogle Scholar
  17. 17 SELKE, R.P. Program dependence graphs: A formal treatment. Tech. Rep. COMP TR90-130, Dept. of Computer Science, Rice Univ., Aug. 1990.Google ScholarGoogle Scholar
  18. 18 SELKE, R.P. Transforming program dependence graphs. Tech. Rep. COMP TR90-131, Dept. of Computer Science, Rice Univ., Aug. 1990.Google ScholarGoogle Scholar
  19. 19 WEISS, M. Control dependence and partial IF-conversion for MIMD architectures. Tech. Rep. CA-8802-0301, Compass, Inc., Feb. 1988.Google ScholarGoogle Scholar

Index Terms

  1. The transitive closure of control dependence: the iterated join

          Recommendations

          Reviews

          James Curtis Miller

          Control dependency flowgraphs are often used in compiling for many purposes . This paper contains a basic review of the necessary graph-theoretic concepts and characterizes the transitive closure of control dependence. The characterization given is shown to be equivalent to those in several earlier works by other authors. This paper also formally shows the equivalence of these various definitions. The paper ends with an application to the theory of control flow guards used in vectorization and loop distribution. This paper is self-contained and can be read independently of the other works (which are referenced well). The mathematics needed to read this paper consists mostly of basic graph theory concepts. Thus the paper should be accessible to most computer scientists. The applications to compiling are fairly straightforward and should also be understandable to most computer scientists. This paper does not break much new ground, but it is generally interesting and worth reading to people interested in compiling.

          Access critical reviews of Computing literature here

          Become a reviewer for Computing Reviews.

          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

          PDF Format

          View or Download as a PDF file.

          PDF

          eReader

          View online with eReader.

          eReader
          About Cookies On This Site

          We use cookies to ensure that we give you the best experience on our website.

          Learn more

          Got it!