The ACLE Extensions for ARMv8-M
The ARM C Language Extensions (ACLE) for ARMv8-M enables the ARMv8-M Security Extension to build a Secure image, and to enable a Non-secure image to call a Secure image.
ACLE for ARMv8-M enables the ARMv8-M Security Extension you to write applications and middleware code that is portable across compilers, and across ARM architecture variants, while exploiting the unique features of the ARM architecture.
The ACLE specification specifies source language extensions and implementation choices that C/C++ compilers can implement to allow programmers to better exploit the ARM architecture.
The extensions include:
- Predefined macros that provide information about the functionality of the target architecture (for example, whether it has hardware floating-point).
- Intrinsic functions.
- Attributes that can be applied to functions, data, and other entities.
Some of the material, specifically the architecture and processor names, and the feature test macros, might also be applicable to assemblers and other tools. ACLE is not a Hardware Abstraction Layer (HAL), and does not specify a library component, but it might make it easier to write a HAL or other low-level library in C rather than assembler.