6.2.2 Library Creation

Use the following qualifiers to create a preprocessed library. To specify an existing library file to inline from, use /inline_from_libraries= or /ipa_from_libraries= , as follows:

/inline_create=<library name>  [/incr]
/ipa_create=<library name>     [/ipacr]

The default source for functions to put into the library is the current source file. If /inline_from... or /ipa_from... is specified, the functions in the listed files are the ones put into the library. This provides a method to combine or expand libraries - just include the old library(ies) in an /inline_from_libraries or /ipa_from_libraries qualifier, along with an /inline_from_files or /ipa_from_files qualifier giving source files containing any new functions.

Functions are included in libraries in the order in which they appear in the input files. This is to make sure that if multiple functions with the same name are in the same source file, the one chosen for inlining will be the one you expect from the algorithm under /inline_from... .

A library created with /inline_create will work for inlining or IPA, because it is just partially reduced source code. However, a library created with /ipa_create may not appear in an /inline_from= list. It is flagged with a Warning message.

If no library name is given, the name used is file.klib , where file is the input file name with any trailing .c stripped off.

When creating a library, only one /inline_create (/ipa_create ) qualifier may be given. That is, only one library may be created per KAP run. If the library file existed prior to running KAP, it is overwritten.

When /inline_create (/ipa_create ) is specified on the command line, no transformed code file will be generated.

See the description of the /inline_from_libraries and /ipa_from_libraries qualifiers for information about using libraries created with these qualifiers.

If the /inline (/ipa ) qualifier is not given, or is given without a list of function names, the default will be to include all the functions from the inlining universe in the library, if possible. If /inline=<name list> or /ipa=<name list> is specified, only the named functions will be included in the library.


Previous Page Next Page Contents Index
Command-Line Qualifiers