You copied the Doc URL to your clipboard.

ARM architectures supported by the toolchain

ARM Compiler supports both the AArch64 and AArch32 states of the ARMv8-A architecture profile, and the ARMv7-A architecture profile.

When compiling code, the compiler needs to know which architecture to target in order to take advantage of features specific to that architecture.

To specify a target architecture with armclang, you must specify the mandatory --target command-line option:

--target=arch-vendor-os-env

Supported targets include:

aarch64-arm-none-eabi
The AArch64 state of the ARMv8-A architecture profile.
armv8a-arm-none-eabi
The AArch32 state of the ARMv8-A architecture profile.
armv7a-arm-none-eabi
The ARMv7-A architecture profile.

Targeting an architecture with --target generates generic code that runs on any processor with that architecture.

To optimize your code for a particular processor, use the -mcpu option.

The -mcpu option supports the following values with --target=aarch64-arm-none-eabi and --target=armv8a-arm-none-eabi:

  • cortex-a53
  • cortex-a57

The -mcpu option supports the following values with --target=armv7a-arm-none-eabi:

  • cortex-a5
  • cortex-a7
  • cortex-a8
  • cortex-a9
  • cortex-a12
  • cortex-a15
  • cortex-a17

Note

The --target and -mcpu options are armclang options. For all of the other tools, such as armasm and armlink, use the --cpu and --fpu options to specify target processors and architectures.
Was this page helpful? Yes No