Contents
Page-10
Prev
Next
Page+10
Index
Overview of Global Optimization
A globally optimizing compiler will
perform the following operations:
- Order nodes using an ordering algorithm to find dominators.
- Find basic available and busy information for blocks.
- Solve boolean equations to get available and busy information for
each block.
- Replace common subexpressions by corresponding compiler variables.
- Assign registers using graph coloring.
The information provided by data flow analysis provides a special-purpose
proof that the optimized program is correct (produces the same answers).