HP-UX Floating-Point Guide
Chapter 7 175
Performance Tuning
Inefficient Code
used to specify how aggressively you
want the compiler to pursue inlining
opportunities. The default value of n
is 100.
+O[no]libcalls +Olibcalls, which is available at all
optimization levels (0 through 4),
invokes millicode versions of several
frequently called math library
functions. It also inlines the
double-precision versions of the sqrt
and fabs C functions.
This option is invoked by default
when you specify the optimization
type +Oaggressive; use
+Oaggressive +Onolibcalls if
you want aggressive optimization
without using millicode routines.
Do not use this option on a C program
that depends on the setting of errno
by math library functions. See
“Millicode Versions of Math Library
Functions” on page 112 for details.
+O[no]moveflops +Omoveflops, which is the default at
levels 2, 3, and 4, moves conditional
floating-point instructions out of
loops. This option may alter
floating-point exception behavior. Use
+Onomoveflops if you depend on
floating-point exception behavior and
you do not want this behavior to be
altered by the relocation of
floating-point instructions.
+O[no]vectorize +Ovectorize, available with the
Fortran and C compilers only,
replaces eligible loops with calls to
vector routines in the math library.
The +Ovectorize option is invoked
by default when you specify the
optimization type +Oaggressive;