Summary of changes between Arm® Compiler 6.6 and Arm® Compiler 6.7
summary of the changes between Arm® Compiler 6.6 and Arm Compiler 6.7.
The following are general changes in Arm Compiler 6.7:
- Armv8‑M architecture-based targets are now supported when using an Arm DS-5 Professional license.
Arm Compiler 6.7 includes FlexNet Publisher 22.214.171.124 client libraries. This version of the license client is not compatible with previous versions of the FlexNet Publisher license server software. When used with a license server running an armlmd or lmgrd version earlier than 126.96.36.199, Arm Compiler 6.7 can report any of the following:
Failed to check out a license.Bad message command.
Failed to check out a license.Version of vendor daemon is too old.
Flex error code: -83.
Flex error code: -140.
A license server running armlmd and lmgrd version 188.8.131.52 (or later) is compatible with Arm Compiler 6.7 and all previous releases of Arm tools.
Arm recommends that you always use the latest version of the license server software that is available from https://developer.arm.com/products/software-development-tools/license-management/downloads.
- Previously, when generating execute-only sections, the tools set the ELF
section header flag to
SHF_ARM_NOREAD. For compliance with forthcoming changes to the Application Binary Interface (ABI) for the Arm® Architecture, this behavior has changed. For execute-only sections, the tools now set the ELF section header flag to
The following are enhancements in Arm Compiler 6.7:
- Compiler and integrated assembler (armclang)
- Added support for the
-ffp-mode=modeloption that you can use to specify the level of floating-point standard compliance:
-ffp-mode=stdselects the default compiler behavior.
-ffp-mode=fastis equivalent to
-ffp-mode=fullis equivalent to
Arm recommends using
For more information about this option, see -ffp-mode in the armclang Reference Guide.
Extended the support for the
__attribute__((value_in_regs))function attribute to improve compatibility with the equivalent Arm Compiler 5 feature.
For more information about this attribute, see the __attribute__((value_in_regs)) function attribute in the armclang Reference Guide.
Added support for the generation of implicit
ITblocks when assembling for T32 state. To specify the behavior of the inline assembler and integrated assembler if there are conditional instructions outside
ITblocks, use the option
For more information about this option, see -mimplicit-it in the armclang Reference Guide.
- Previously, when compiling at
-Os, the compiler could over-align literal pools that are generated during vectorization to a 128-bit boundary. This behavior has been changed. The compiler now avoids adding excessive padding.
- Added support for the
- Added support for
__atsections that are named
.bss.ARM.__at_<address>. The linker places the associated ZI data at the specified address.