HP Fortran Programmer Guide (766160-001, March 2014)
Table 29 Fine-tuning optimization options (continued)
FunctionLevelLevel
compiler can be reduced by
using this option.
Enable [disable] moving
conditional floating-point
+O2or higher+O[no]moveflops
instructions out of loops. The
default is +Omoveflops.
Transform [do not transform]
eligible loops for parallel
+O3or higher+O[no]parallel
execution. The default is
+Onoparallel.
This option is available only
on HP 9000 systems. On
Integrity systems, you can
use the +Oautopar option
instead to parallelize loops.
Suppress optimizations that
assume [do not assume] that
+O2 or higher+O[no]parminit
arguments may refer to the
same memory locations. The
default is
+Onoparmsoverlap.
Enable [disable] software
pipelining. The default is
+Opipeline.
NOTE: This option is valid
only on the PA-RISC systems.
+O2or higher+O[no]pipeline
Remove [do not remove]
unreferenced procedures
All+O[no]procelim
from the executable. The
default is +Onoprocelimat
levels 0 - 3, +Oprocelimat
level 4.
Use profile data from
profile-based optimization
+O3or higher+O[no]promote_indirect_calls
and other information to
determine the most likely
target of indirect calls and
promotes them to direct
calls. Indirect calls occur
with pointers to functions
and virtual calls.
In all cases the optimized
code tests to make sure the
direct call is being taken and
if not, executes the indirect
call. If +Oinlineis in effect,
the optimizer may also inline
the promoted calls.
+Opromote_indirect_calls
is only effective with
profile-based optimization.
96 Performance and optimization