HP Fortran Programmer's Guide (B3908-90031; September 2011)

Compiling and linking
Compiling with the f90 command
Chapter 248
+Ooptlevel=name1 [,name2...]
2 Optimizations performed at level 1, plus the following:
Coloring register allocation
Induction variables and strength reduction
Common subexpression elimination
Loop invariant code motion
Store/copy optimization
Unused definition elimination
Dataflow analysis
Software pipelining
Scalar replacement
Sum reduction optimization
3 Optimizations performed at levels 1 and 2, plus the following:
Interprocedural optimizations, including cloning and inlining
Loop transformations to improve memory performance,
including fusion and interchange
4
Level 4 optimizations are not currently supported by the PA-RISC
compiler. If +O4 is specified, the compiler will issue a warning
message and compile at optimization level 3.
For Itanium applications, performs level 3 as well as doing
interprocedural optimizations across translation units (link time
optimizations). Object files generated at this level contain an
intermediate representation of the user code and are intended to be
temporary files. These intermediate object files are not guaranteed to
be compatible from one version of the compiler to the next. This
requires concurrent use of the +Oprofile=use option.
Table 2-6 Levels of optimization (Continued)
Level Optimizations