Control Flow Graph - Special Edges

Special Edges

For practical reasons, it is necessary to introduce some artificial kinds of edges or to process differently some kinds of edges.

A back edge is an edge that points to a block that has already been met during a depth-first (DFS) traversal of the graph. Back edges are typical of loops.

A critical edge is an edge which is neither the only edge leaving its source block, nor the only edge entering its destination block. These edges must be split: a new block must be created in the middle of the edge, in order to insert computations on the edge without affecting any other edges.

An abnormal edge is an edge whose destination is unknown. Exception handling constructs can produce them. These edges tend to inhibit optimization.

An impossible edge (also known as a fake edge) is an edge which has been added to the graph solely to preserve the property that the exit block postdominates all blocks. It cannot ever be traversed.

Read more about this topic:  Control Flow Graph

Famous quotes containing the words special and/or edges:

    I think those Southern writers [William Faulkner, Carson McCullers] have analyzed very carefully the buildup in the South of a special consciousness brought about by the self- condemnation resulting from slavery, the humiliation following the War Between the States and the hope, sometimes expressed timidly, for redemption.
    Jimmy Carter (James Earl Carter, Jr.)

    ... we see the poor as a mass of shadow, painted in one flat grey wash, at the remote edges of our sunshine.
    Albion Fellows Bacon (1865–1933)