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_alias[-]

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 settings: specifies the size of real numbers to 8 (IA-32 systems, same as -autodouble) or 16 bytes for ItaniumŪ 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.

-nostack_temps

Allocates temporary array in the heap.

-pad

Enables changing variable and array memory layout.

-pc80
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.

-u

Sets IMPLICIT NONE.

-us

Appends an underscore to external subroutine names.

IA-32: -Zp4
Itanium compiler
: -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
IA-32 only

Disables the use of the ebp register in optimizations. Directs to use the ebp-based stack frame for all functions.

-ip_no_inlining

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

-IPF_fltacc-
ItaniumŪ compiler

Enables the compiler to apply optimizations that affect floating-point accuracy.

-IPF_fma
Itanium compiler

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

-IPF_fp_speculation
fast

Itanium compiler

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

-ipo_obj
Itanium compiler

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

-O, -O1, -O2

Optimize for maximum speed.

-Ob1

Disables inlining unless -ip or -Ob2 is specified.

-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.

-tpp2
Itanium compiler

Optimizes code for the IntelŪ ItaniumŪ 2 processor for Itanium-based applications. Generated code is compatible with the Itanium processor.

-tpp7
IA-32 only

Optimizes code for the IntelŪ PentiumŪ 4 and IntelŪ Xeon(TM) processor 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

Assumes aliasing in program.

-ffnalias

Assumes aliasing within functions.

-fverbose-asm

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

-fpp1 
(for preprocessor only)

When preprocessor runs, enables CVF conditional and # directives.

-sox-

Disables 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-
.

-d0

Displays only the procedure name and the number of the line at which the failure occurred.

-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.

Note
I
f there are enabling and disabling versions of switches on the line, the last one takes precedence.

Resetting Default Data Types

To reset data type default options, you need to indicate a new option which 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.