GCC has long lacked a strength reduction capability outside of loops. Previous attempts to address this within existing frameworks, such as partial redundancy elimination, have not been successful. A primary reason for this is that these frameworks process individual expressions independently. For strength reduction, a determination of profitability often requires examining chains of related strength reduction candidates. This short presentation will demonstrate the issues involved and outline a new SSA dominator-based proposal for efficiently performing non-loop strength reduction.