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
Link To Document