Developer Guide and Reference

ID 767251
Date 10/31/2024
Public
Document Table of Contents

Compiler Options

This compiler supports many compiler options you can use in your applications.

The LLVM-based Intel® Fortran Compiler (ifx) supports many Intel® Fortran Compiler Classic compiler options, but full implementation is not yet available. Implementation will be improved in future releases.

In this section, we provide the following:

  • An alphabetical list of compiler options that includes their short descriptions

  • General rules for compiler options and the conventions we use when referring to options

  • Details about what appears in the compiler option descriptions

  • A description of each compiler option. The descriptions appear under the option's functional category. Within each category, the options are listed in alphabetical order.

Several Clang compiler options are supported for the ifx compiler, such as some of the -fprofile options. We do not document these options. For more information about Clang options, see the Clang documentation.

The Clang -fprofile options replace the functionality of the previous [Q]prof options, which are no longer supported.

For details about new functionality, such as new compiler options, see the Release Notes for the product.

Conventions Used for Compiler Options

The following conventions are used to describe compiler options.

compiler option name shortcuts

The following conventions are used as shortcuts when referencing compiler option names in descriptions:

  • No initial – or /

    This shortcut is used for option names that are the same for Linux and Windows except for the initial character.

    For example, Fa denotes:

    • Linux: -Fa

    • Windows: /Fa

  • [Q]option-name

    This shortcut is used for option names that only differ because the Windows form starts with a Q.

    For example, [Q]ipo denotes:

    • Linux: -ipo

    • Windows: /Qipo

  • [q or Q]option-name

    This shortcut is used for option names that only differ because the Linux form starts with a q and the Windows form starts with a Q.

    For example, [q or Q]opt-report denotes:

    • Linux: -qopt-report

    • Windows: /Qopt-report

More dissimilar compiler option names are shown in full.

/option or

-option

A slash before an option name indicates the option is available on Windows. A dash before an option name indicates the option is available on Linux systems. For example:

  • Linux : -help
  • Windows: /help

NOTE:
If an option is available on all supported operating systems, no slash or dash appears in the general description of the option. The slash and dash will only appear where the option syntax is described.

/option:argument or

-option=argument

Indicates that an option requires an argument (parameter).

/option:keyword or

-option=keyword

Indicates that an option requires one of the keyword values.

/option[:keyword ] or

-option[=keyword ]

Indicates that the option can be used alone or with an optional keyword.

option[n] or

option[:n] or

option[=n]

Indicates that the option can be used alone or with an optional value. For example, in -unroll[=n], the n can be omitted or a valid value can be specified for n.

option[-]

Indicates that a trailing hyphen disables the option. For example, /Qglobal_hoist- disables the Windows option /Qglobal_hoist.

[no]option or

[no-]option

Indicates that no or no- preceding an option disables the option. For example:

In the Linux option -[no-]global_hoist, -global_hoist enables the option, while -no-global_hoist disables it.

In some options, the no appears later in the option name. For example, -fno-common disables the -fcommon option.