This document discusses code optimization techniques at various levels, from peephole optimizations within small windows of code to optimizations across entire programs and control flow graphs. It describes opportunities for optimization from programmers, intermediate code, and target code. Specific optimizations covered include constant folding, dead code elimination, common subexpression elimination, constant propagation, copy propagation, and loop optimizations like induction variable strength reduction and loop interchange. Global data flow analysis techniques like live variable analysis are also introduced.