Creating a Multifile IPO Executable Using xild

Use the Intel® linker, xild, instead of step 2 in Creating a Multifile IPO Executable with Command Line. The Intel linker xild performs the following steps:

  1. Invokes the Intel compiler to perform multifile IPO if objects containing IR are found.

  2. Invokes GCC ld to link the application.

The command-line syntax for xild is the same as that of the GCC linker:

prompt>xild [<options>] <LINK_commandline>

where:

To place the multifile IPO executable in ipo_file, use the option -ofilename, for example:

prompt>xild -oipo_file a.o b.o c.o

xild calls Intel compiler to perform IPO for objects containing IR and creates a new list of object(s) to be linked. Then xild calls ld to link the object files that are specified in the new list and produce ipo_file executable specified by the -ofilename option.

  Note

The -ipo option can reorder object files and linker arguments on the command line. Therefore, if your program relies on a precise order of arguments on the command line, -ipo can affect the behavior of your program.

Usage Rules

You must use the Intel linker xild to link your application if:

The xild Options

The additional options supported by xild may be used to examine the results of multifile IPO. These options are described in the following table.

-qipo_fa[file.s]

Produces assembly listing for the multifile IPO compilation. You may specify an optional name for the listing file, or a directory (with the backslash) in which to place the file. The default listing name is ipo_out.s.

-qipo_fo[file.o]

Produces object file for the multifile IPO compilation. You may specify an optional name for the object file, or a directory (with the backslash) in which to place the file. The default object file name is ipo_out.o.

-ipo_fcode-asm

Add code bytes to assembly listing

-ipo_fsource-asm

Add high-level source code to assembly listing

-ipo_fverbose-asm,
-ipo_fnoverbose-asm

Enable and disable, respectively, inserting comments containing version and options used in the assembly listing for xild.