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:

    “Mr. Christian, it is about time for many people to begin to come to the White House to discuss different phases of the coal strike. When anybody comes, if his special problem concerns the state, refer him to the governor of Pennsylvania. If his problem has a national phase, refer him to the United States Coal Commission. In no event bring him to me.”
    —Calvin Coolidge (1872–1933)

    “The essence of the physicality of the most famous blonde in the world is a wholesome eroticism blurred a little round the edges by the fact she is not quite sure what eroticism is. This gives her her tentative luminosity and what makes her, somehow, always more like her own image in the mirror than she is like herself.”
    —Angela Carter (1940–1992)