The Intel® compiler provides two methods of optimizing the layout of functions in the executable:
Using a function order list
Using the /Qipo (Windows) compiler option
Each method has its advantages. A function order list, created with proforder, lets you optimize the layout of non-static functions: that is, external and library functions whose names are exposed to the linker.
The compiler cannot affect the layout order for functions it does not compile, such as library functions. The function layout optimization is performed automatically when IPO is active.
Function Order List Effects
Function Type |
IPO Code Layout |
Function Ordering with proforder |
---|---|---|
Static |
X |
No effect |
Extern |
X |
X |
Library |
No effect |
X |
Function Order List Usage Guidelines (Windows*)
Use the following guidelines to create a function order list:
The order list only affects the order of non-static functions.
Copyright © 1996-2010, Intel Corporation. All rights reserved.