Intel® Fortran Compiler Classic and Intel® Fortran Compiler Developer Guide and Reference

ID 767251
Date 3/31/2023
Public

A newer version of this document is available. Customers should click here to go to the newest version.

Document Table of Contents

fnsplit, Qfnsplit

Enables function splitting. This feature is only available for ifort.

Syntax

Linux:

-fnsplit[=n]

-no-fnsplit

macOS:

None

Windows:

/Qfnsplit[:n]

/Qfnsplit-

Arguments

n

Is an optional positive integer indicating the threshold number.

The blocks can be placed into a different code segment if they are only reachable via a conditional branch whose taken probability is less than the specified n. Branch taken probability is heuristically calculated by the compiler and can be observed in assembly listings.

The range for n is 0 <= n <= 100.

Default

OFF

Function splitting is not enabled. However, function grouping is still enabled.

Description

This option enables function splitting. If you specify [Q]fnsplit with no n, you must also specify option [Q]prof-use, or the option will have no effect and no function splitting will occur.

If you specify n, function splitting is enabled and you do not need to specify option [Q]prof-use.

To disable function splitting when you use option [Q]prof-use, specify /Qfnsplit- (Windows*) or -no-fnsplit (Linux*).

NOTE:

Function splitting is generally not supported when exception handling is turned on for C/C++ routines in the stack of called routines. See also -fexceptions (Linux*).

IDE Equivalent

None

Alternate Options

Linux: -freorder-blocks-and-partition (a gcc option)

Windows: None