7.2 Inlining and IPA Directives

This section describes the following KAP directives:

C*$* [no]inline  [here|routine|global]  [(name[,name..])]
C*$* [no]ipa     [here|routine|global]  [(name[,name..])]

The C*$* inline and C*$*ipa directives tell KAP to inline or IPA the named routines. The C*$* noinline and C*$* noipa directives tell KAP not to inline or analyze the named routines. These directives combine next-line, entire routine, and global (entire program) scope. If none of the optional elements are included, all routines referenced on the next line of code that are in the inlining/analyzing universe are inlined on that line.

These directives are disabled by default. They are enabled when any inlining or IPA qualifier, respectively, is given on the command line. They can be enabled without activating the automatic inlining /IPA selection algorithms with the /inline_manual and /ipa_manual command qualifiers. They are not restricted by the other inlining and IPA command qualifiers, and can be used instead of, or in addition to, command-line controlled inlining.

The optional names are routine names. If any routines are named in the directive, it applies only to them. If NO routine names are given, the directive applies to ALL routines. The parentheses around the routine names are not required if the list of routine names is empty.

If a C*$* inline or C*$* ipa names a routine not in the corresponding universe, a Warning message is issued, and the directive is ignored.


Previous Page | Next Page | Contents | Index |
Command-Line Qualifiers