HP aC++/HP C A.06.20 Programmer's Guide

functions not exported and not referenced from within the shared library. This may be
especially useful when functions have been inlined.
NOTE: Any function having symbolic debug information associated with it is not
removed.
The default is +Onoprocelim at optimization levels 0 and 1; at levels 2, 3 and 4, the
default is +Oprocelim.
+O[no]promote_indirect_calls
+O[no]promote_indirect_calls
The +O[no]promote_indirect_calls option uses 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 +Oinline is in effect, the optimizer may also inline
the promoted calls.
+Opromote_indirect_calls is only effective with profile-based optimization.
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 +O3 optimizes only within a file, whereas +O4 optimizes across
files.
The default is +Opromote_indirect_calls at optimization level 3 and above.
+Onopromote_indirect_calls will be the default at optimization level 2 and
below.
+Orarely_called
+Orarely_called=function1[,function2...]
The +Orarely_called option overrides any information in a profile database.
The named functions are assumed to be rarely called
+Orarely_called:filename
The file indicated by filename contains a list of functions, separated by spaces or
newlines. These functions are assumed to be rarely called. This option overrides any
information in a profile database.
82 Command-Line Options