Introduction

Arm Compiler provides the earliest, most complete, and most accurate support for the latest architectural features and extensions of the Arm architecture. Arm Compiler supports all the latest Arm Cortex, Neoverse and SecurCore processors, including cores that are in development.

Arm Compiler is a mature toolchain that is tailored to the development of bare-metal software, firmware, and Real-Time Operating System (RTOS) applications. Arm Compiler is used by leading companies in a wide variety of industries, including automotive (ISO 26262), consumer electronics, industrial (IEC 61508), medical (IEC 62304), networking, railway (EN 50128), storage, and telecommunications. For HPC and scientific applications, see the Linux user-space C/C++ Compiler and Linux user-space Fortran compiler.

The Arm Compiler includes many powerful space-saving and performance-enhancing optimization techniques, including low-level microarchitecture-specific instruction scheduling, unused section elimination, and aggressive Link-Time Optimization (LTO).

Components

  1. armclang:
    1. Is built on modern LLVM and Clang technology
    2. Supports GNU syntax assembly
    3. Is highly compatible with source code originally written for GCC
    4. Implements specifications including ANSI/ISO C and C++, ABI for the Arm architecture, ABI for the 64-bit Arm architecture, and Arm C Language Extensions (ACLE)
  2. armlink: Feature-rich dedicated embedded linker that combines objects and libraries to produce an executable
  3. Arm C libraries: Optimized by Arm for performance and code density, and include the tiny MicroLib for deeply embedded applications.
  4. Arm C++ libraries: Libraries based on the LLVM libc++ project
  5. fromelf: Image conversion utility and disassembler
  6. armar: Archiver that enables sets of object files to be collected together

Workflow

Use cases

A foundation proved to be correct.

Verify system design

Developed in collaboration with Arm processor and architecture projects, Arm Compiler is the ideal toolchain for verifying your design. Arm Compiler provides the earliest, most complete, and most accurate support for the latest Arm cores and architectural extensions.

Tools and durable equipment.

Explore Arm architecture features

Selecting the right Arm IP is one of the most important decisions for your SoC design. Combined with Arm Flexible Access, Arm Compiler lets you evaluate which Arm solution best suits your application and market requirements.

Shield that protects you or an item.
Build safety-critical code

Developing complex safety-related applications can be challenging and time-consuming. Specific releases of Arm Compiler and the C Libraries have been certified by TÜV SÜD for development to the most demanding Safety Integrity Levels (SIL), accelerating your certification process.

Get Arm Compiler

Download icon

Try Arm Compiler

Get a free 30-day license for Arm Compiler in Development Studio, or through a seven-day evaluation of Keil MDK Professional.

Evaluate

Support

Community Forums

Not answered 06674904lpc213x_lpc214x_examples_20061205(2) 0 votes 76 views 0 replies Started 14 hours ago by cocoz Answer this
Suggested answer How to run arm code in x86 linux host machine? 0 votes 216 views 1 replies Latest 4 days ago by Ronan Synnott Answer this
Answered Weak symbols with GCC and ARMCC
  • MDK-Arm
  • GCC
0 votes 589 views 5 replies Latest 6 days ago by Jure Menart Answer this
Suggested answer Having problem with E-paper when using virtual usb port 0 votes 386 views 2 replies Latest 6 days ago by AsRycka Answer this
Suggested answer Altera Evaluation Edition License and ARM Compiler 6 0 votes 440 views 2 replies Latest 6 days ago by Andy Neil Answer this
Answered objcopy.exe -B ARM reports error "objcopy: architecture ARM unknown" in latest versions. 0 votes 492 views 2 replies Latest 6 days ago by Abirami Answer this
Suggested answer Debugging using DS5 and Foundation model: Interrupt is not forwarded to the CPU.
  • CoreLink GIC-400 Generic Interrupt Controller
  • DS-5 Ultimate Edition
  • Armv8 Foundation Platform
  • DS-5 Technical Support
0 votes 187 views 1 replies Latest 10 days ago by Andy Neil Answer this
Answered ARM Directives question 0 votes 1231 views 10 replies Latest 13 days ago by ALDELEMI Answer this
Not answered Getting gconf running with gcc-arm-none-eabi-7-2017-q4-major 0 votes 189 views 0 replies Started 15 days ago by beadon Answer this
Suggested answer IAR arm compiler instrumentation options 0 votes 438 views 3 replies Latest 17 days ago by Andy Neil Answer this
Suggested answer Load Alignment Exception with Arm Compiler 6.13 0 votes 1084 views 5 replies Latest 18 days ago by Ronan Synnott Answer this
Answered Why is GCC9.2-2019.12 arm-none-linux-gnueabihf configured without "--with-fpu=vfpv3-d16"? 0 votes 1132 views 6 replies Latest 20 days ago by Przemyslaw Wirkus Answer this
Not answered 06674904lpc213x_lpc214x_examples_20061205(2) Started 14 hours ago by cocoz 0 replies 76 views
Suggested answer How to run arm code in x86 linux host machine? Latest 4 days ago by Ronan Synnott 1 replies 216 views
Answered Weak symbols with GCC and ARMCC Latest 6 days ago by Jure Menart 5 replies 589 views
Suggested answer Having problem with E-paper when using virtual usb port Latest 6 days ago by AsRycka 2 replies 386 views
Suggested answer Altera Evaluation Edition License and ARM Compiler 6 Latest 6 days ago by Andy Neil 2 replies 440 views
Answered objcopy.exe -B ARM reports error "objcopy: architecture ARM unknown" in latest versions. Latest 6 days ago by Abirami 2 replies 492 views
Suggested answer Debugging using DS5 and Foundation model: Interrupt is not forwarded to the CPU. Latest 10 days ago by Andy Neil 1 replies 187 views
Answered ARM Directives question Latest 13 days ago by ALDELEMI 10 replies 1231 views
Not answered Getting gconf running with gcc-arm-none-eabi-7-2017-q4-major Started 15 days ago by beadon 0 replies 189 views
Suggested answer IAR arm compiler instrumentation options Latest 17 days ago by Andy Neil 3 replies 438 views
Suggested answer Load Alignment Exception with Arm Compiler 6.13 Latest 18 days ago by Ronan Synnott 5 replies 1084 views
Answered Why is GCC9.2-2019.12 arm-none-linux-gnueabihf configured without "--with-fpu=vfpv3-d16"? Latest 20 days ago by Przemyslaw Wirkus 6 replies 1132 views