Syntax:
The /annotations option specifies that additional information will be added to the source listing file. This information indicates which of a set of optimizations the compiler applied to particular parts of the source file. Note that some of the values of keyword may exist for optimizations that are not supported on your platform. If so, the source listing file contains no corresponding annotations (such as feedback). In the visual development environment, specify the various annotations keywords under the Annotations list box in the Listing Compiler Option Category.
You can view the resulting annotations in the source listing file to see what optimizations the compiler performed or else why the compiler was not able to optimize a particular code sequence. The default is /noannotations, which places no annotations in the source listing file.
The /annotations option keywords are as follows:
Same as /noannotations, the default value.
Specifying /annotations all selects all of the following annotations.
Specifying /annotations:code annotates the machine code listing with descriptions of special instructions used for prefetching, alignment, and so on.
Specifying /annotations:detail provides, where available, an additional level of annotation detail.
Specifying /annotations:feedback provides information about any feedback optimizations (not available for Windows systems).
Specifying /annotations:inlining indicates where code for a called procedure was expanded inline.
Specifying /annotations:loop_transforms indicates where advanced loop nest optimizations have been applied to improve cache performance (unroll and jam, loop fusion, loop interchange, and so on).
Specifying /annotations:loop_unrolling indicates where a loop was unrolled (contents expanded multiple times).
Specifying /annotations:prefetching indicates where special instructions were used to reduce memory latency.
Specifying /annotations:shrinkwrapping indicates removal of code establishing routine context when it is not needed.
Specifying /annotations:software_pipelining indicates where instructions have been rearranged to make optimal use of the processor's functional units (not available for ia32 systems).
Specifying /annotations:tail_calls indicates an optimization where a call from one routine to another can be replaced with a jump.
Specifying /annotations:tail_recursion indicates an optimization that eliminates unnecessary routine context for a recursive call.
The /annotations option is ignored unless you also specify the /list[:file] option or select the equivalent Source Listing option in the Listing File category in the visual development environment.