The /optimize qualifier sets the base optimization and
code analysis level, ranging from 0 (no optimization) to 5 (maximum
optimization). The optimization level can also be modified on a
loop-by-loop basis by the C*$* optimize (<integer>)
directive. Some of the code analysis techniques can be enabled with
the /scalaropt  qualifier.
The meaning of each of the different optimization levels is as
follows. Each optimization level is cumulative, for example, level 4
performs what is listed below for that level, in addition to what is
listed for levels 0-3.
   - 0 - KAP performs no loop optimization.
   
- 1 - KAP performs only simple analysis and optimization.
   Induction variables are recognized. DO loop interchanging
   techniques are applied.
   
- 2 - Lifetime analysis is performed to determine when
   last-value assignment of subprogram-local scalar variables is
   necessary. More powerful data dependence tests are used.
   
- 3 - More loop interchanging is attempted, such as
   interchanging of triangular loops. Special-case data dependence
   tests are used. Special index sets called wraparound variables
   are recognized.
   
- 4 - Loop interchanging around reductions is attempted.
   More exact data dependence tests are used.
   
- 5 - Array expansion is enabled at this point.
   
A higher optimization level results in more optimization, more
analysis, and more ambitious transformations, along with increased
compilation time.
Previous Page Next Page Contents Index 
Command-Line Qualifiers
