\section{SSA Optimizations}\label{sec:ssa} All SSA optimization modules satisfy the signature \mlrischref{SSA/ssa-optimization.sig}{SSA\_OPTIMIZATION}, which is defined as: \begin{SML} signature SSA_OPTIMIZATION = sig structure SSA : SSA val optimize : SSA.ssa -> SSA.ssa end \end{SML} The following SSA based scalar optimizations have been implemented in MLRISC. \begin{itemize} \item \mlrischref{SSA/ssa-dead-code-elim.sml}{Dead code elimination} \item \mlrischref{SSA/ssa-gvn.sml}{Global value numbering, constant folding, algebraic simplication} \item \mlrischref{SSA/ssa-gcm.sml}{Global code motion} \item \mlrischref{SSA/ssa-cond-const-prop.sml}{Conditional constant propagation} \item \mlrischref{SSA/ssa-op-str-red.sml}{Strength reduction} \end{itemize}