i960 Processor Compiler User's Guide
6-4
6
arguments correctly, based on which compiler driver you are using.) The
module-local substitution options are not allowed in an
option-list
with
whole-program optimization (Category 1) options.
+fprof causes generation of profile instrumentation, as
described for the
-fprof compiler option (in
Chapters 2 and 3). When the
+fprof
substitution option is used (instead of the -fprof
compiler driver option), only the substitution
modules in the PDB contain the actual
instrumented code. This is useful in some cases.
For example, a library compiled with
-fdb but
without
-fprof is suitable both for users who do
not want to use program-wide optimizations, and
for those who do, as follows:
• All program database information required
to support program-wide optimizations is
present in the library, since it is compiled
with
-fdb.
• To collect a full program profile (including
the library) for use with program-wide
optimizations, a substitution such as
-gcdm,subst=*:*+fprof generates a
program that is appropriately instrumented.
• If you do not use program-wide
optimizations (that is, you do not use
gcdm,subst options), there is no extra
runtime overhead, and the program can be
optimized to any module-local
optimization level higher than -O0.
+O0 +O1 +O2 +O3 +O4 allow substitutions of modules with various
levels of module-local optimization. (The
compilation system interprets the
-O
n
arguments