The following specifies names of particular routines to inline:
/inline[=name[,name...]] [/inl=] /ipa[=name[,name...]] [/ipa=]
The default is all routines in the universe specified by any
/inline_from...
(/ipa_from...)
qualifiers, subject to the /inline_looplevel (/ipa_
looplevel)
setting.
Inlining and IPA are off by default, that is, if you do not specify inlining (IPA) qualifiers and no inlining (IPA) directives are found in the source code, no inlining (IPA) will take place.
If you omit /inline (/ipa)
from the command line,
automatic selection of routines to inline is disabled. You can
perform manual selection of routines to inline (analyze) with the
/inline_manual (/ipa_manual)
qualifiers and the inline
and IPA directives.
If you specify /inline (/ipa)
on the command
line without a list of routine names, then all routines in
the inlining (IPA) universe are eligible, subject to the
/inline_looplevel
(/ipa_looplevel)
and
/inline_depth
values.
If you specify /inline (/ipa)
on the command line with
a list of routine names, then only the routines that are included in
the list are eligible, subject to the /inline_looplevel
(/ipa_looplevel)
and /inline_depth
values.
The list items can be separated by commas or colons.
The following qualifiers have no versions, but they must have arguments as shown:
/noinline=name[,name..] [/ninl=] /noipa=name[,name..] [/nipa=]
These qualifiers enable the automatic inlining (IPA) algorithms in the same way that inline (IPA) does when given without arguments, but the routines listed are ones to NOT be inlined (analyzed). That is, all the subroutines and functions but the named ones are eligible.
A list of function names is required.
You cannot specify both /inline
and /noinline (
/ipa and /noipa)
on the same command line.
If all call sites of a subroutine or function are to be inlined, the
following variant of the /inline
qualifier may be of
interest:
/inline_and_copy[=name[,name..]] [/inlc=]
The /inline_and_copy
command qualifier functions like
the /inline
qualifier, except that if all references in
the source file to a function are inlined, the text of the function
is copied to the transformed code file unchanged. This is intended
for use when the functions being inlined are in the same file as
the function reference, and has no special effect when the routines
being inlined are being taken from a library or another source file.