See: Description
| Class | Description |
|---|---|
| CriticalEdgeRemover |
removes all critical edges.
A critical edge is an edge from Block A to block B, if B has more than one predecessor and A has more the one successor. As an example: If we wanted a computation to be only on the path A->B this computation must be directly on the edge. |
| LoopConditionUnroller |
"unrolls" the condition of while/for loops.
before the first test of a while-loop, we can't be sure, if the body will be taken or not, and several optimizations (especially LCM) can't be done. |