Developer Guide and Reference

Contents

fnsplit, Qfnsplit

Enables function splitting.

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*).
Function splitting is generally not supported when exception handling is turned on for C/C++ routines in the stack of called routines. See also