Core
- Control Flow Graphs
- Static Single Assignment (SSA)
- Data Flow Analysis
- Dominator Trees - Block A dominates B if every path to B goes through A
- Loop Analysis
- Constant Propagation
- Dead Code Elimination
- Common Subexpression Elimination
- Code Motion
- Strength reuction
- Inlining
- Instruction scheduling