HP Fortran Programmer Guide (766160-001, March 2014)

Table 29 Fine-tuning optimization options (continued)
FunctionLevelLevel
NOTE: The optimizer tries
to determine the most likely
target of indirect calls. If the
profile data is incomplete or
ambiguous, the optimizer
may not select the best
target. If this happens, your
code’s performance may
decrease.
This option can be used at
optimization levels 3 and 4.
At +O3, it is only effective if
indirect calls from functions
within a file are mostly to
target functions within the
same file. This is because
+O3optimizes only within a
file whereas, +O4optimizes
across files.
The default is
+Opromote_indirect_callsat
optimization level 3 and
above.
+Onopromote_indirect_callswill
be the default at
optimization level 2 and
below.
The named functions are
assumed to be rarely called.
All+Orarely_called=function1[,function2...]
This option overrides any
information in a profile
database.
The file indicated by
filename contains a list of
+Orarely_called:filename
functions, separated by
spaces or newlines. These
functions are assumed to be
rarely called. This option
overrides any information in
a profile database.
This option generates [does
not generate] recovery code
All+O[no]recovery
for control speculation. For
code that writes to
uncacheable memory that
may not be properly
identified as volatile, the
+Orecoveryoption reduces
the risk of incorrect
behavior. The default is
+Orecovery.
NOTE: The program that
uses signal handlers to catch
signals raised by memory
accesses may not behave
correctly under
+Onorecovery.
Using options to control optimization 97