Table 29 Fine-tuning optimization options (continued)

Level

Level

Function

 

 

compiler can be reduced by

 

 

using this option.

+O[no]moveflops

+O2or higher

Enable [disable] moving

 

 

conditional floating-point

 

 

instructions out of loops. The

 

 

default is +Omoveflops.

+O[no]parallel

+O3or higher

Transform [do not transform]

 

 

eligible loops for 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.

+O[no]parminit

+O2 or higher

Suppress optimizations that

 

 

assume [do not assume] that

 

 

arguments may refer to the

 

 

same memory locations. The

 

 

default is

 

 

+Onoparmsoverlap.

+O[no]pipeline

+O2or higher

Enable [disable] software

 

 

pipelining. The default is

 

 

+Opipeline.

 

 

NOTE: This option is valid

 

 

only on the PA-RISC systems.

+O[no]procelim

All

Remove [do not remove]

 

 

unreferenced procedures

 

 

from the executable. The

 

 

default is +Onoprocelimat

 

 

levels 0 - 3, +Oprocelimat

 

 

level 4.

+O[no]promote_indirect_calls

+O3or higher

Use profile data from

 

 

profile-based optimization

 

 

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

Page 96
Image 96
HP UX Fortran Software manual +Onoparminit, +Opipeline