The /scalaropt
command-line qualifier sets the level to
which dusty-deck and other scalar transformations are performed.
Unlike the /scalaropt
command-line qualifier, the
C*$* scalar optimize
directive sets the level of
loop-based optimizations (for example, loop fusion) only, and not
straight-code optimizations (for example, dead-code elimination).
The allowed values and their meanings are as follows:
0
- No scalar optimizations are performed.
1
- IF loops are changed into DO loops.
Simple code floating out of loops is performed. Inaccessible
or unused code is removed. Forward substitution of variables is
performed. Dusty-deck IF transformations are enabled.
2
- The full range of scalar optimization is
performed. Included are floating invariant IFs out of loops,
induction variable recognition, loop rerolling (if
/roundoff
> 0), loop peeling, loop fusion, induction
variable recognition, and loop unrolling.
3
- Memory management is performed (if
/roundoff=3
); additional dead-code elimination
is performed during output conversion.