You can monitor and modify the compilation process with the following options:
IA-32 and Itanium(TM)-based applications |
|
-c |
Compile to object only (.o), do not link. |
-Kpic, -KPIC |
Generate position-independent code. |
-nobss_init |
Disables placement of zero-initialized variables in BSS (using Data). |
-p |
Compile and link for function profiling with UNIX prof tool. |
-S |
Produce assembly file named file.asm with optional code or source annotations. |
-sox[-] |
Enable (default) or disable saving of compiler options and version in the executable. |
-Tffile |
Compile file as Fortran source. |
-Zp{n} |
Specifies alignment constraint for structures on n-byte boundary (n = 1, 2, 4, 8, 16). The -Zp16 option enables you to align Fortran structures such as common blocks. For Fortran structures, see STRUCTURE statement in Chapter 10 of IntelŪ Fortran Programmer's Language Reference Manual. |
IA-32 applications only |
|
-0f_check |
Avoiding incorrect decoding of some 0f instructions. |
-fdiv_check |
Enable or disable the patch for the PentiumŪ processor FDIV erratum. |
-fp |
Disables using ebp as general purpose register (no frame pointer). |
-use_asm |
Generates an assembly file and tells the assembler to generate the object file. |
-use_msasm |
Support Microsoft style assembly language insertion using MASM format style and syntax and if requested, output assembly in MASM format. |
Itanium-based applications only |
|
-fr32 |
Disable the use of high floating-point registers. |
Use -fr32 to disable usage of only the lower 32 floating point registers. The following syntax disables usage of only the lower 32 floating-point registers:
prompt> efc -fr32 a.f
Note
With Itanium Fortran Compiler, you cannot use 32-bit pointers.
You save the compiler version and options information in the executable with -sox. The -sox option is enabled by default, which forces the compiler to embed in each object file a string that contains information on the compiler version and compilation options for each source file that has been compiled.
When you link the object files into an executable file, the linker places each of the information strings into the header of the executable. It is then possible to use a tool, such as a strings utility, to determine what options were used to build the executable file.
The size of the executable on disk is increased slightly by the inclusion of these information strings. If this is a concern, you can specify -sox- to disable this feature.
Note that for Itanium(TM)-based applications, the -sox option is accepted for compatibility, but it does not have any effect.