Redundant (Common) Subexpression Elimination

Global Constant Folding and Propagation

Dead Code Elimination

Conditional Pruning

Conditional Reordering

Assignment Elimination Due to Equality

GOTO Chasing

Array Temporary Elimination

10.3.1 Redundant (Common) Subexpression Elimination

Figure 1 shows an expression X op Y which may be computed once on each path and then used.