• DocumentCode
    899362
  • Title

    A control-flow normalization algorithm and its complexity

  • Author

    Ammarguellat, Zahira

  • Author_Institution
    Center for Supercomput. Res. & Dev., Illinois Univ., Urbana-Champaign, IL, USA
  • Volume
    18
  • Issue
    3
  • fYear
    1992
  • fDate
    3/1/1992 12:00:00 AM
  • Firstpage
    237
  • Lastpage
    251
  • Abstract
    A single method for normalizing the control-flow of programs to facilitate program transformations, program analysis, and automatic parallelization is presented. While previous methods result in programs whose control flowgraphs are reducible, programs normalized by this technique satisfy a stronger condition than reducibility and are therefore simpler in their syntax and structure than with previous methods. In particular, all control-flow cycles are normalized into single-entry, single-exit while loops and all GOTOs are eliminated. Furthermore, the method avoids problems of code replication that are characteristic of node-splitting techniques. This restructuring obviates the control dependence graph, since afterwards control dependence relations are manifest in the syntax tree of the program. Transformations that effect this normalization are presented, and the complexity of the method is studied
  • Keywords
    computational complexity; graph theory; parallel algorithms; structured programming; GOTOs; automatic parallelization; complexity; control dependence relations; control flowgraphs; control-flow cycles; control-flow normalization algorithm; node-splitting techniques; syntax tree; Algorithm design and analysis; Automatic control; Data analysis; Helium; Pathology; Performance analysis; Program processors; Tree graphs;
  • fLanguage
    English
  • Journal_Title
    Software Engineering, IEEE Transactions on
  • Publisher
    ieee
  • ISSN
    0098-5589
  • Type

    jour

  • DOI
    10.1109/32.126773
  • Filename
    126773