Wir sind sehr erfreut, dass Wind River seine Diab Compiler weiterhin verbessert, denn viele unserer Kunden nutzen dieses Schlüssel-Werkzeug", erklärt Chuck Corley, Director of Applications Engineering, Motorola Computing Platform Division. "Durch die Optimierungen für unsere neuesten hochleistungsfähigen Prozessoren können unsere Kunden das Bestmögliche aus ihrem Code, der auf unseren PowerPC ISA-basierenden Prozessoren einschließlich dem MPC7455 läuft, herausholen."
"Entwickler setzen weiterhin auf den Wind River Compiler, um ihren Code zu optimieren und ihre Investitionen in Silizium zu maximieren. Weil Wind River seine existierende Diab Technologie in die nächste Generation des Wind River Compilers übernommen hat, profitieren die Entwickler vom neuen Optimierungspotential. Es erfüllt weiterhin die Standards der Softwareindustrie", erläutert Jerry Krasner, Ph.D., Vice President Embedded Market Forecasters (http://www.embeddedforecast.com/).
5.9.6.7
General
Improved algebraic simplification of subtraction expressions
Tricore Optimizations
Detect patterns that can be replaced by saturation instructions (sat.hu and sat.bu)Better
detection of patterns that can be replaced by min and max instructions.
New linker (dld) option: -Xadjust-lma
A new linker option, -Xadjust-lma, has been added to support building VxWorks images
where the physical address (LMA) should be a fixed offset from the virtual address (VMA).
Compiler option –Xbss-zero-init-user-{on|off}. added
This option controls the behavior of moving variables to the bss section, and has an on/off
version; unlike the previous two options, which only enable the bss optimization for variables
in default sections, this optimization allows variables in *user defined* sections to be moved
to bss.
Support for abridged C++ with Dinkum std
An abridged version of Dinkum C++ is included to allow interworking of -Xc++abr and -
Xdialect-c++14.
-Xswitch-table-in-function-section replaced by -Xswitch-array-in-function-section
The -Xswitch-table-in-function-section option has been replaced by a new function, -
Xswitch-array-in-function-section. The new option is functionally equivalent to the old one
and is being introduced because the name "-Xswitch-table-in-function-section" is potentially
confusing, as these options only affect switch arrays. The old option is deprecated and will be
removed in a subsequent release.
libd.a no longer needs to be rebuilt to exclude exception handling and RTTI
Previously, if you wanted to use the functionality in the C++ library libd.a while excluding
exception handling and RTTI support, you had to rebuild the library. Now there is an
abridged version of libd.a, called libdabr.a, that provides the same functionality as libd.a, but
without exception handling and RTTI. (Use -ldabr to link libdabr.a.)
Multicore Small Data Area support in Diab Linker
Diab linker now supports per-core Small Data Area (SDA) notation in linker command language.
5.9.6.6
general
Improved algebraic simplification of subtraction expressions.
Tricore Optimizations
Detect patterns that can be replaced by saturation instructions (sat.hu and sat.bu)Better detection of patterns that can be replaced by min and max instructions.
New linker (dld) option: -Xadjust-lma
A new linker option, -Xadjust-lma, has been added to support building VxWorks images where the physical address (LMA) should be a fixed offset from the virtual address (VMA).
Compiler option –Xbss-zero-init-user-{on|off}. added
This option controls the behavior of moving variables to the bss section, and has an on/off version; unlike the previous two options, which only enable the bss optimization for variables in default sections, this optimization allows variables in *user defined* sections to be moved to bss.
Support for abridged C++ with Dinkum std
An abridged version of Dinkum C++ is included to allow interworking of -Xc++abr and -Xdialect-c++14.
Multicore Small Data Area support in Diab Linker
Diab linker now supports per-core Small Data Area (SDA) notation in linker command language.
5.9.6.3
C++11/C++14 support
By default, the Diab C++ compiler supports the ANSI C++ standard (ISO/IEC FDIS 14882:2003), aka the "C++03" standard. Beginning with release 5.9.6.3, the Diab C++ compiler also supports the C++11 and C++14 language standards (ISO/IEC 14882:2011 and ISO/IEC 14882:2014) and a "bare metal" subset of the C++11/C++14 library.
ddump
new symbol redirection and section renaming utility. This utility offers the ability to redirect references to global symbols within the scope of functions or a C structures and additionally rename sections.
PowerPC
Generic Timer Module GTM-IP v. 3.1.5.1 Support: Wind River Multi Channel Sequencer (MCS) assembler now supports the GTM-IP specification version 3.1.5.1.
5.9.6.2
PowerPC
This release provides support for detecting NXP e200z4 erratum e10385 (see linker option -Xppce200z4-erratum-010385).
TriCore
This release provides support for a user-defined division by zero hook (see compiler option Xtc-fdiv-exc-hook).
Stack Smashing Protection feature (-Xstack-protection). This feature is supported on the following targets: ARM, PPC, RH850, and TriCore. For more information, see the Safety and Security chapter in the Diab Compiler user's guide for your architecture.
5.9.6.1
- Erweiterungen des ddump Tools
- erweiterte -g und -U Optinen um Symbole des selben Typs zu drucken
- Erweiterte XML Ausgabe mit der Beschreibung von Array Element Größe und Bitfield Größe und Offset
- Fähigkeit Struct/Union Array Elemente rekursiv auszugeben
PowerPC
- 64-bit Unterstützung
- Altivec/VMX für PowerPC 64
Renesas
- Renesas G4MH Architecture Unterstützung
- Support für die Zusatzbefehle wie FP-SIMD, neue Adressierungsmodi, Scheduling für die neue Pipeline und Verwendung der Branch Prediction Hardware
- erweitere Renesas Core Unterstützung: separate Auswahlmöglichkeiten für G3K, G3KH, G3M, G3MH und G4MH um die Optimierung für die der Core spezifische Pipeline zu ermöglichen
- RH850 Performance Verbesserungen durch erweiterte Optimierungen