Architectures supported by Arm® Compiler
Arm® Compiler supports a number of different architecture profiles.
Arm Compiler supports the following architectures:
- Armv8‑A and all update releases, for bare-metal targets.
- Armv7‑A for bare-metal targets.
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, you must supply the target execution state (AArch32 or AArch64), together with either a target architecture (for example Armv8‑A) or a target processor (for example, the Cortex®‑A53 processor).
To specify a target execution state (AArch64 or AArch32) with armclang, use the mandatory
--target command-line option:
Supported targets include:
- Generates A64 instructions for AArch64 state. Implies
- Generates A32 and T32 instructions for AArch32 state. Must be used in
-march(to target an architecture) or
-mcpu(to target a processor).
To generate generic code that runs on any processor with a particular
architecture, use the
-march option. Use the
-march=list option to see all
To optimize your code for a particular processor, use the
-mcpu option. Use the
-mcpu=list option to see all supported processors.
armclangoptions. For all of the other tools, such as armasm and armlink, use the
--cpuoption to specify target processors and architectures.