The optimization passes for the SSA IntermediateLanguage are collected and controlled by the Simplify functor (simplify.sig, simplify.fun).

The following optimization passes are implemented:

The following implementation passes are implemented:

There are additional analysis and rewrite passes that augment many of the other optimization passes:

The optimization passes can be controlled from the command-line by the options:

  • -diag-pass <pass> — keep diagnostic info for pass

  • -disable-pass <pass> — skip optimization pass (if normally performed)

  • -enable-pass <pass> — perform optimization pass (if normally skipped)

  • -keep-pass <pass> — keep the results of pass

  • -loop-passes <n> — loop optimization passes

  • -ssa-passes <passes> — ssa optimization passes