Without directions from the user, the compiler attempts to estimate what functions should be inlined to optimize application performance. See Criteria for Inline Function Expansion for more information.
The following options are useful in situations where an application can benefit from user function inlining but does not need specific direction about inlining limits. Except where noted, these options are supported on IA-32, Intel® 64, and IA-64 architectures.
Linux* and Mac OS* X |
Windows* |
Effect |
---|---|---|
Specifies the level of inline function expansion. Depending on the value specified, the option can disable or enable inlining. By default, the option enables inlining of any function if the compiler believes the function can be inlined. For more information, see the following topic:
|
||
Disables only inlining normally enabled by the following options: No other IPO optimization are disabled. For more information, see the following topic:
|
||
Disables partial inlining normally enabled by the following options: No other IPO optimization are disabled. For more information, see the following topic:
|
||
Disables inlining for intrinsic functions. Disables the by-name recognition support of intrinsic functions and the resulting optimizations. Use this option if you redefine standard library routines with your own version and your version of the routine has the same name as the standard library routine. By default, the compiler automatically inlines (expands) a number of standard and math library functions at the point of the call to that function, which usually results in faster computation. For more information, see the following topic:
|
||
Keeps source information for inlined functions. The additional source code can be used by the Intel® Debugger track the user-defined call stack while using inlining. To use this option you must also specify an additional option to enable debugging: For more information, see the following topic:
|