Table 3 Options for controlling the front end (continued)

Option

Function

-w

Suppress warning messages.

 

 

+w

Warn about all questionable constructs and issue remarks

 

about coding styles and performance. Without the +w

 

option, the compiler issues warnings only about constructs

 

that are almost certainly problems.

Back-end

The two main functions of the back-end are:

To optimize your program for faster performance

To generate the code that goes into the object file

Optimization is performed by two subcomponents of the compiler’s back end:

The High-Level Optimizer (HLO), which performs large-scale, high-semantic-level analyses and transformations to increase performance.

The low-level optimizer, which performs traditional optimizations (such as common subexpression elimination and dead-code removal) as well as machine-specific optimizations.

Options for controlling optimization form the largest group of the command-line options. These options enable you to do the following:

To set the level of optimization that is applied to your program

To apply a package of optimizations that meet certain requirements of your application—for example, optimizations that favor compile-time speed over performance

To apply specific optimization technologies to your program, or to specific parts of your program, for fine-tuning performance

Table 4 (page 90) lists (in summary form) the options that control optimization. For information about how to use these options, see

NOTE: If you use the f90 command to compile and link on separate command lines, many of the optimization options must appear on both the command line and the link line; see “Performance and optimization ” (page 87). For information about using f90 to compile and link, see “Linking with f90 vs. ld” (page 50).

Table 4 Options for controlling optimization

Option

Function

 

 

+check=uninit

Check the use of stack variables before it is defined at

 

runtime.

 

 

+DC7200

Perform memory hierarchy optimizations for the PA7200

 

processor.

 

 

-O[optlevel]

Optimize program, where optlevel is 0 (no optimization),

 

1, 2, 3, or 4 (the highest level). If optlevel is not

 

specified, the program is optimized at level 2 (-O2).

 

 

+Ooptlevel

This option has the same meaning as the -O[optlevel]

 

option, except that optlevel must be specified. It is

 

provided for compatibility with makefiles.

 

 

Back-end 13