31.07.2015 Views

Wind River Diab Compiler - Embedded Tools GmbH

Wind River Diab Compiler - Embedded Tools GmbH

Wind River Diab Compiler - Embedded Tools GmbH

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

<strong>Wind</strong> <strong>River</strong> <strong>Diab</strong> <strong>Compiler</strong>Release Notes, 5.9.3All architectures.Whole Program Optimizationdctrl UtilityAPIsDocumentationThe whole program optimization (WPO) facility has been extended beyondinlining across modules. When -Xwhole-program-optim is used, the followingoptions are enabled by default:-Xwpo-inlineAllows calls to functions that are defined in different modules to be inlined.-Xwpo-constDetects global variables that have an initializer, but are never subsequentlywritten. Such variables are treated as constants, and references to them arereplaced by the initial value.-Xwpo-no-aliasDetects global variables that never have their address taken. This informationcan be used by the rest of the optimizer to remove redundant loads and stores.-Xwpo-delete-return-valueDetects global functions whose return values are never used, and optimizesthe functions by removing computations leading to the return statements.-Xwpo-deadRemoves (non-volatile) variables and functions that are not referenced in theprogram.The following option (which is not enabled by default) is also provided:-Xwpo-inline-single-callsFunctions that are only called once across the entire program are treated as ifthey were marked with __attribute__(("always_inline")), and, if possible,inlined regardless of their size, or the value of -Xinline.The logical pairs to these options (such as -Xno-wpo-inline) can be used to disablethe default options on an individual basis.For detailed information, see the <strong>Wind</strong> <strong>River</strong> <strong>Diab</strong> <strong>Compiler</strong> User’s Guide for yourarchitecture, and the <strong>Wind</strong> <strong>River</strong> <strong>Diab</strong> <strong>Compiler</strong> Options Reference.The dctrl utility now allows for selection of individual core targets in a multi-coreprocessor. It prompts the user to select a core when a multi-core target is selected.It also differentiates between cores and chips in the target option listing.__vector_table( )Used to specify assignment of an interrupt or trap function to a core vectortable. See also 6. Documentation Errata, p.13.Tricore only.The documentation set has been restructured to provide more modular andaccessible units of information. This has primarily involved moving sections of the<strong>Wind</strong> <strong>River</strong> <strong>Diab</strong> <strong>Compiler</strong> User’s Guide into the following new documents:■<strong>Wind</strong> <strong>River</strong> <strong>Diab</strong> <strong>Compiler</strong> Options Reference8

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!