HP aC++ Release Notes Version A.03.95 (5900-1789; September 2011)

HP aC++ Release Notes
New Features in Version A.03.33
Chapter 1 47
An obvious disadvantage of this is that, even when a single file is changed, code generation for all other files
will happen during link-phase, unless +Oreusedir= is used. This makes overall compile-link time
significantly high. With the new set of +Oprofile options, this disadvantage can be overcome.
The options below do not produce ISOMs (Intermediate-code .o files) as do the +I, +P, and +O4 options.
Therefore they will rebuild faster than the ISOM-building options, but cannot just be relinked in the +P
phase from the ISOMs built by the +I phase. The new options also do not support cross-module optimization
with the +O4 option. PBO build processes that do not rebuild from source will not work with these new
options, but processes that currently use scripts to run ld -r commands on every ISOM to convert it to a
SOM can use the aCC driver with these new options instead of the scripts.
Following are the new options of +Oprofile:
+Oprofile=use
Use the profile database to optimize. This is similar in behavior to the +P option.
+Oprofile=use:filename
Specify filename as the name of the profile database file. This is similar in behavior to the +P and +df
options (that is, +P +df filename).
+Oprofile=collect
Instrument the application for profile based optimization. This is similar in behavior to the +I option.
+Oprofile=prediction:static
Select static branch prediction for this executable. This is a synonym for +Ostaticprediction.
NOTE Note the following while performing optimization using new options:
The new options can be used only with -c (compile only), if not, the optimization is
performed as in the earlier versions of the compiler.
The new options are available only at optimization levels below +O4. At +O4, the
compiler silently replaces +Oprofile by +I or +P.
Mixing of old and new options while optimizing on the same command line is disabled.
For example, +Oprofile and +I/+P/+df in the same command line are incompatible.
The flow.data file must exist when compiling with +Oprofile=use, instead of the
link stage with +P.