Developer Guide and Reference

Contents

inline-factor, Qinline-factor

Specifies the percentage multiplier that should be applied to all inlining options that define upper limits.

Syntax

Linux and macOS:
-inline-factor
=
n
-no-inline-factor
Windows:
/Qinline-factor
:
n
/Qinline-factor-
Arguments
n
Is a positive integer specifying the percentage value. The default value is 100 (a factor of 1).
Default
-inline-factor=100
or
/Qinline-factor:100
The compiler uses a percentage multiplier of 100.
Description
This option specifies the percentage multiplier that should be applied to all inlining options that define upper limits:
  • [Q]inline-max-size
  • [Q]inline-max-total-size
  • [Q]inline-max-per-routine
  • [Q]inline-max-per-compile
The
[Q]inline-factor
option takes the default value for each of the above options and multiplies it by
n
divided by 100. For example, if 200 is specified, all inlining options that define upper limits are multiplied by a factor of 2. This option is useful if you do not want to individually increase each option limit.
If you specify
-no-inline-factor
(Linux* and
macOS*
) or
/Qinline-factor-
(Windows*), the following occurs:
  • Every function is considered to be a small or medium function; there are no large functions.
  • There is no limit to the size a routine may grow when inline expansion is performed.
  • There is no limit to the number of times some routine may be inlined into a particular routine.
  • There is no limit to the number of times inlining can be applied to a compilation unit.
To see compiler values for important inlining limits, specify option
[q or Q]opt-report
.
When you use this option to increase default limits, the compiler may do so much additional inlining that it runs out of memory and terminates with an "out of memory" message.
Alternate Options
None

Product and Performance Information

1

Intel's compilers may or may not optimize to the same degree for non-Intel microprocessors for optimizations that are not unique to Intel microprocessors. These optimizations include SSE2, SSE3, and SSSE3 instruction sets and other optimizations. Intel does not guarantee the availability, functionality, or effectiveness of any optimization on microprocessors not manufactured by Intel. Microprocessor-dependent optimizations in this product are intended for use with Intel microprocessors. Certain optimizations not specific to Intel microarchitecture are reserved for Intel microprocessors. Please refer to the applicable product User and Reference Guides for more information regarding the specific instruction sets covered by this notice.

Notice revision #20110804