The C++ compiler package consists of a front end, optimizer, code generator, assembler, template prelinker, and link editor. The CC command invokes each of these components automatically unless you use command-line options to specify otherwise.
Because any of these components may generate an error, and the components perform different tasks, it may be helpful to identify the component that generates an error. Use the -v and -dryrun options to help with this.
As shown in the following table, input files to the various compiler components have different file name suffixes. The suffix establishes the kind of compilation that is done. Refer to Table 2–1 for the meanings of the file suffixes.
Table 2–2 Components of the C++ Compilation System
Component |
Description |
Notes on Use |
---|---|---|
Front end (compiler preprocessor and compiler) | ||
SPARC: Code optimizer |
-xO[2-5], -fast |
|
x86: Intermediate language translator |
-xO[2-5], -fast |
|
SPARC: Inline expansion of assembly language templates |
.il file specified |
|
x86: Interprocedural analyzer |
-xcrossfile=1 with -xO4, -xO5, or -fast |
|
Assembler | ||
SPARC: Code generator, inliner, assembler |
|
|
ube |
x86: Code generator |
-xO[2-5], -fast |
Template pre-linker | ||
Nonincremental link editor |