HP Fortran Programmer Guide HP-UX 11i v1, HP-UX 11i v2, and HP-UX 11i v3 (B3908-90032,December 2012)

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 1-4 lists (in summary form) the options that control optimization. For information about how
to use these options, see “Using options to control optimization” on page 145.
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” on page 139. For information about using f90 to compile and link, see “Linking
with f90 vs. ld” on page 76
Table 4 Options for controlling optimization
FunctionOption
Perform memory hierarchy optimizations for the PA7200
processor.
+DC7200
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).
-O[optlevel]
This option has the same meaning as the -O[optlevel]
option, except that optlevel must be specified. It is
provided for compatibility with makefiles.
+Ooptlevel
Provide [do not provide] feedback information about the
optimization process. This option is most useful at
optimization level 3 and higher. The default is +Onoinfo.
+O[no]info
Enable [disable] optimization, a predefined string that
indicates a category of optimizations (for example, those
+O[no]optimization
that do not increase code size) or a specific optimization
technology (for example, inlining). See the HP Fortran
Programmer’s Reference, for the different values for
optimization.
The other component of the back end is the code generator (CodeGen), which you can control by
using the command-line options in Table 1.5. These options allow you to specify (among other
things) that the output file include debugging or profiling information or that local variables be
saved in static memory.
12 An overview of HP Fortran