Intel® C++ Compiler XE 13.1 User and Reference Guides

Compilation Phases

The Intel® C++ Compiler processes C and C++ language source files. Compilation can be roughly divided into these major phases:

The first four phases are performed by the compiler (icl.exe on Windows* OS; icc or icpc on Linux* OS and OS X*).

By default, the compiler automatically invokes the linker (xilink.exe on Windows OS; xild on Linux OS and OS X) to generate the final executable binary.

If you specify /c (Windows OS) or -c (Linux OS and OS X) at compilation time, the compiler will generate only object files. You will need to explicitly invoke linker in order to generate the executable.

If you specify/E /P (Windows OS) or -E -P (Linux OS and OS X) when calling the compiler, the compiler will generate only the preprocessed file with a .i extension.

If you specify /Qipo (Windows OS) or -ipo (Linux OS and OS X) to use multi-file interprocedural optimization (also called Whole Program Optimization), the optimization is done at link time.

Similarly, when you specify /Qprof-gen (Windows OS) or -prof-gen (Linux OS and OS X) to use Profile Guided Optimization, the optimization is done at link time.

In both cases, the Intel® C++ compiler will generate mock object files that only the compiler's linker (xilink.exe and xild) can understand.

See Also


Submit feedback on this help topic