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

+Oentrysched allows the optimizer to perform
instruction scheduling on a subprogram’s entry and
+O[no]entrysched
exit code sequences. This option is only effective at
optimization level 1 or higher.
The option can change the behavior of programs that
perform exception-handling or that handle
asynchronous interrupts.
The default is +Onoentrysched.
NOTE: This option is valid only on the PA-RISC
systems.
Enable [disable] failsafe optimization. When a
compilation fails at the current optimization level,
+O[no]failsafe
+Ofailsafe will automatically restart the
compilation at +O2(for specific high level optimizer
errors +O3/+O4) or +O1 for Itanium® processor family
architecture and +O0 for PA-RISC architecture. The
default is +Ofailsafe.
Select a combination of compilation options for
optimum execution speed of the compiled program.
+Ofast
Those options include: +O2,
+Olibcalls+Onolimit, +Ofltacc=relaxed,
and +FPD. +Ofast also causes the +pi4M, +pd4M
options to be passed to the linker. In addition to these
options, on the Itanium processor family architecture,
+DSnative instruction scheduling is selected and
+mergeseg is also passed to the linker.
Selects the +Ofast option at optimization level +O3
for PA-RISC based architectures. For Itanium processor
+Ofaster
family architectures, +Ofaster runs at +O4and implies
-ipo.
Inform the compiler that the program accesses [does
not access] the floating point environment to test flags
+O[no]fenvaccess
or run under non-default modes. If it knows that a
program does not access the floating point
environment, the compiler is allowed to perform certain
optimizations that it otherwise may not perform, such
as global common subexpression elimination, code
motion, or constant folding.
The default is +Onofenvaccess.
+Ofastaccess improves execution time by speeding
up access to global data items. You can use this option
+O[no]fastaccess
at optimization level 1 or higher. Note that the
+Ofastaccess option may increase link time. The
default is +Onofastaccess at optimization levels 1,
2, and 3; and +Ofastaccess at optimization level
4.
NOTE: This option is valid only on
+Onofltacc enables optimizations that follow the
rules of algebra but may change the order of
+O[no]fltacc
expression evaluation. For example, if a, b, and c are
floating-point variables, the expressions (a + b) +
c and a + (b + c)may give slightly different results
due to roundoff.
The +Onofltacc option also enables the fusion of
adjacent multiply and add operations—resulting in
Fused Multiply-Add (FMA). (At optimization level 2 or
higher, FMA occurs by default.) FMA improves
performance but occasionally produces results that
may differ in accuracy from results produced by code
where fusion has not occurred. In general, the
differences are slight.
42 Compiling and linking