Realize the potential of your Arm-based design

Bringing the ultimate in C/C++ code size and performance to all your embedded projects

Used to build code shipping in billions of devices, the Arm Compiler enables the development of highly efficient C/C++ software that maximize the potential of Arm Cortex and Neoverse processors and architectures, from Armv6-M to Armv8-A 64-bit Arm.

This versatile compilation tool works alongside the latest Arm cores, including those in development. In addition, a qualified safety package is available for those interested in accelerating their safety-critical projects.

Evaluate as part of Arm Development Studio
Note: Arm Compiler can be evaluated from the command line once the IDE has been installed.

Developed alongside the Arm architecture for optimal performance

We know the Arm architecture inside-out. Irrespective of whether you are a semiconductor company who values the earliest support for upcoming processors or you’d like to build the highest performing, smallest-sized code, Arm Compiler has your back all the way.

Faster run-time

Faster runtime

Continuous investment in Arm Compiler has resulted in best-in-class runtime speed and code size.

Space saving code

Space-saving code

The tiny Arm C Microlib, armlink linker and best-in-class code density work hand-in-hand to let you fit a lot more code into small footprints.

Safety-ready

Safety-ready

Safety certification, qualification kit and long-term maintenance combined with Arm’s quality assurance. It accelerates safety certification.

Performance improvement between AC6.6 and AC6.11

Generates code faster

By combining microarchitecture-specific instruction scheduling, whole-program optimization strategies and finely tuned libraries, Arm Compiler significantly accelerates execution time across a wide variety of workloads. In fact, in some large industrial and automotive bodies of code, performance gains over its previous generation exceed 30 percent. This is a result of our all-encompassing optimization investment targeting complex, realistic embedded code, as opposed to focusing on a single small CPU benchmark.

Relative code size of an RTX-5 project in Arm Compiler vs GCC

Continuous improvement in code size

Arm Compiler 6 further improves the space-optimizing reputation of Arm C/C++ embedded toolchains, particularly for Cortex-M devices. It combines density-enhancing techniques from previous generations with new link-time optimizations that lead to the removal of unused and redundant code. Moreover, there is the Arm C MicroLib library, which provides up to a 50 percent reduction in code size compared to the full standard C library.

Build safety-critical code

Comprising compiler branches assessed and qualified by safety experts TÜV SÜD, qualification kit documents, and long-term maintenance contract, the safety package for Arm Compiler simplifies the process of achieving functional safety certification. It has been used by leading companies in a variety of industries, including automotive (ISO 26262), industrial (IEC 61508), railway (EN 50128) and medical (IEC 62304).
 

Learn more about Arm Compiler safety package »

Code compatibility

Arm Compiler 6 uses very modern and faster compiler front-end that incorporates Clang technology. Whilst other tools in the toolchain remain the same highly optimized and familiar - armlink, armasm, armar and fromelf - the new front-end technology extends source code compatibility with code bases written for GNU Compiler Collection (gcc) to nearly 100%. This makes it easier for developers to switch toolchains, eliminating costly lock-in situations.

As the same time, to permit smooth and gradual migration of code from previous Arm Compiler generations, Arm Compiler 6 licenses are backwards compatible and enable the use of older Arm toolchains at no extra cost.

The Arm Compiler 6 front-end technology with extended GCC compatibility means that not all legacy code can be directly built by the new toolchain. However, the code migration process is facilitated by a comprehensive Migration and Compatibility Guide and Arm’s expert technical support service.
 

Migration and Compatibility Guide »

Which products include Arm Compiler that best suits my needs?

Developing for custom SoCs

Cortex-A/R/M Arm Development Studio

Developing on off-the-shelf devices

Cortex-A/R/M Arm Development Studio
Cortex-M only Keil MDK

Developing for safety

All Arm processors Standalone safety-qualified Arm Compiler
Cortex-M only Keil MDK

Developing for continuous integration or build farms

All Arm processors Standalone Arm Compiler

Arm Compiler Community Blogs