Default Behavior of the Compiler Options

If you invoke the Intel® Fortran Compiler without specifying any compiler options, the default state of each option takes effect. The following tables summarize the options whose default status is ON as they are required for Intel Fortran Compiler default operation. The tables group the options by their functionality.

Per your application requirement, you can disable one or more options.

For the default states and values of all options, see the Compiler Options Quick Reference Alphabetical table. The table provides links to the sections describing the functionality of the options. If an option has a default value, such value is indicated. If an option includes an optional minus [-], this option is ON by default.

The following tables list all options that compiler uses for its default execution.

Data Setting and Language Conformance

Default Option

Description

-72.

-72,-80,-132 specifies the column length for fixed form source only. The compiler might issue a warning for non-numeric text beyond 72 for the -72 option.

-align

Analyzes and reorders memory layout for variables and arrays.

-ansi

-ansi[-] enables assumption of the program's ANSI conformance.

 -r4
 

Specifies the size of the real numbers to four bytes.
-r{8|16}
works the same as -align only with specific setings: specifies the size of real numbers to 8 (IA-32 systems, same as -autodouble) or 16 bytes for Itanium(TM) compiler.

-auto_scalar

Makes scalar local variables AUTOMATIC.

-dps

Enables DEC* parameter statement recognition.

-i4

-i{2|4|8} defines the default KIND for integer variables and constants in 2, 4, and 8 bytes.

-lowercase

Controls the case of routine names and external linker symbols to all lowercase characters.

-pad

Enables changing variable and array memory layout.

-pc64, IA-32 only

-pc{32|64|80} enables floating-point significand precision control as follows: -pc32 to 24-bit significand, -pc64 to 53-bit significand, and -pc80 to 64-bit significand.

-save

Saves all variables in static allocation. Disables
-auto
, that is, disables setting all variables AUTOMATIC.

-sfalign8

Aligns stack for functions with 8 or 16 byte variables. 
-sfalign16
- with 16 byte variables;
-sfalign
- all functions;
-sfalign-
- disables stack alignment for all functions.

-u

Sets IMPLICIT NONE.

-us

Appends an underscore to external subroutine names.

IA-32: /Zp4
Itanium systems: /Zp8

-Zp{n} specifies alignment constraint for structures on 1-, 2-, 4-, 8-, or 16-byte boundary. To disable, use
-align-
.

Optimizations

Default Option

Description

-fp

Disables the use of the ebp register in optimizations.

-ip_no_inlining

Disables full or partial inlining that would result from the -ip interprocedural optimizations. Requires -ip or -ipo.

-IPF_fma,
Itanium(TM) compiler

Enables the contraction of floating-point multiply and add/subtract operations into a single operation.

-IPF_fp_speculationfast, Itanium compiler

Sets the compiler to speculate on floating-point operations. -IPF_fp_speculationoff disables this optimization.

-IPF_fltacc, Itaniumcompiler

Enables the compiler to apply optimizations that affect floating-point accuracy. By default, the compiler may apply optimizations that affect floating-point accuracy. -IPF_fltacc- disables such optimizations. -IPF_fltacc- is effective when -mp is on.

-ipo_obj,
Itanium compiler

Forces the generation of real object files. Requires -ipo.
IA-32 systems: OFF

-O, -O1, -O2

Optimize for maximum speed.

-openmp_report1

Indicates loops, regions, and sections parallelized.

-opt_report_levelmin

Specifies the minimal level of the optimizations report.

-par_report1

Indicates loops successfully auto-parallelized.

-tpp6
IA-32 only

Optimizes code for the Pentium Pro®, Pentium II, and Pentium III processors for IA-32 applications.

-unroll

-unroll[n]: omit n to let the compiler decide whether to perform unrolling or not (default).
Specify n to set maximum number of times to unroll a loop.
The Itanium compiler currently uses only

n
= 0, -unroll0 (disabled option) for compatibility.

-vec_report1

Indicates loops successfully vectorized.

Compilation

Default Option

Description

-falias

Enables aliasing in program.

-ffnalias

Enables aliasing across functions.

-fverbose-asm

Produces assembly file with compiler comments including compiler version and options used.

-fpp1

Enables CVF conditional and # directives.
-fpp{0|1|2|3}
runs the Fortran preprocessor (fpp) on Fortran source files (.f, .ftn, .for, and .f90 files) prior to compilation.

-sox

Enables saving of compiler options and version in the executable. For Itanium-based systems, accepted for compatibility only.

Messages and Diagnostics

Default Option

Description

-cerrs

Enables errors and warning messages to be printed in a  terse format. To disable, use
-cerrs-.

-w1

Displays warnings.

Disabling Default Options

To disable an option, use one of the following as applies:

IA-32 applications:

prompt>ifc -O2 -O0 input_file(s)

Itanium-based applications:

prompt>efc -O2 -O0 input_file(s)

Note
The
-O0 option is part of a mutually-exclusive group of options that includes -O0, -O, -O1, -O2, and -O3. The last of any of these options specified on the command line will override the previous options from this group.

Resetting Default Data Types

To reset data type default options, you need to indicate a new option whch overrides the default setting. For example:

IA-32 applications:

prompt>ifc -i2 input_file(s)

Itanium-based applications:

prompt>efc -i2 input_file(s)

Option -i2 overrides default option -i4.