You copied the Doc URL to your clipboard.

11.26 --cpu=name

Enables code generation for the selected ARM® processor or architecture.


This release of ARM Compiler is targeted at ARMv8 and ARMv7-A architectures and processors that implement these architectures.



Where name is the name of a processor or architecture:

Processor and architecture names are not case-sensitive.

Wildcard characters are not accepted.

The following table shows examples of supported processor names for each architecture. For a complete list of the supported architecture and processor names, specify the --cpu=list option.

Table 11-1 Supported ARM architectures

Processor and architecture name Description Example processor names
7 ARMv7 with Thumb (Thumb-2 technology) only, and without hardware divide -
7-A ARMv7 application profile supporting virtual MMU-based memory systems, with ARM, Thumb (Thumb-2 technology) and ThumbEE, DSP support, and 32-bit SIMD support Cortex-A5, Cortex-A7, Cortex-A8, Cortex-A9, Cortex-A15, Cortex-A17 Enables the use of the SMC instruction (formerly SMI) when assembling for the v7-A architecture Cortex-A5, Cortex-A7, Cortex-A8, Cortex-A9, Cortex-A15, Cortex-A17
8-A.32 ARMv8, AArch32 state -
8-A.32.crypto ARMv8, AArch32 state with cryptographic instructions -
8-A.32.no_neon ARMv8, AArch32 state without Advanced SIMD instructions -
8-A.64 ARMv8, AArch64 state -
8-A.64.crypto ARMv8, AArch64 state with cryptographic instructions -
8-A.64.no_neon ARMv8, AArch64 state without Advanced SIMD instructions -


  • is not an actual ARM architecture, but rather refers to 7-A plus Security Extensions.

  • The full list of supported architectures and processors depends on your license.


If you omit --cpu, the linker auto-detects the processor or architecture from the input object files.

Specify --cpu=list to list the supported processor and architecture names that you can use with --cpu=name.

The link phase fails if any of the component object files rely on features that are incompatible with the specified processor. The linker also uses this option to optimize the choice of system libraries and any veneers that have to be generated when building the final image.


You cannot specify both a processor and an architecture on the same command-line.

Was this page helpful? Yes No