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