Optimization

By default, programs are not optimized during compilation. You can specify optimization at level 1, 2, or 3, using the following syntax:

-opt level

For example, "-opt 2". If you specify -opt with no level, level 3 optimizations are performed by default. (Remember that if you use the -deb option, only level 1 or 2 is allowed. If you use -deb and specify -opt with no level, level 2 optimizations are performed.) A brief description of the optimizations performed at each level follows.

Level     Description
1 Operator pattern replacement and Boolean conditional expression optimizations.
2 Common subexpression elimination; all level 1 optimizations.
3 All level 1 and level 2 optimizations plus the following:
  • branch chaining
  • dead code elimination
  • strength reduction
  • loop induction
  • loop invariant code motion
  • removal of redundant register saves and loads
  • removal of mathematical identities
  • peephole optimizations
  • constant folding