Expand description

aarch64 documentation

Features

FeatureDescriptionAlso Enables
aesEnable AES support (FEAT_AES, FEAT_PMULL).neon
bf16Enable BFloat16 Extension (FEAT_BF16).
btiEnable Branch Target Identification (FEAT_BTI).
crcEnable ARMv8 CRC-32 checksum instructions (FEAT_CRC32).
ditEnable v8.4-A Data Independent Timing instructions (FEAT_DIT).
dotprodEnable dot product support (FEAT_DotProd).
dpbEnable v8.2 data Cache Clean to Point of Persistence (FEAT_DPB).
dpb2Enable v8.5 Cache Clean to Point of Deep Persistence (FEAT_DPB2).
f32mmEnable Matrix Multiply FP32 Extension (FEAT_F32MM).fp16, neon, sve
f64mmEnable Matrix Multiply FP64 Extension (FEAT_F64MM).fp16, neon, sve
fcmaEnable v8.3-A Floating-point complex number support (FEAT_FCMA).neon
fhmEnable FP16 FML instructions (FEAT_FHM).fp16, neon
flagmEnable v8.4-A Flag Manipulation Instructions (FEAT_FlagM).
fp16Full FP16 (FEAT_FP16).neon
frinttsEnable FRInt[3264][Z
i8mmEnable Matrix Multiply Int8 Extension (FEAT_I8MM).
jsconvEnable v8.3-A JavaScript FP conversion instructions (FEAT_JSCVT).neon
lorEnables ARM v8.1 Limited Ordering Regions extension (FEAT_LOR).
lseEnable ARMv8.1 Large System Extension (LSE) atomic instructions (FEAT_LSE).
mteEnable Memory Tagging Extension (FEAT_MTE, FEAT_MTE2).
neonEnable Advanced SIMD instructions (FEAT_AdvSIMD).
pacaEnable v8.3-A Pointer Authentication extension (FEAT_PAuth).pacg
pacgEnable v8.3-A Pointer Authentication extension (FEAT_PAuth).paca
panEnables ARM v8.1 Privileged Access-Never extension (FEAT_PAN).
pmuv3Enable Code Generation for ARMv8 PMUv3 Performance Monitors extension (FEAT_PMUv3).
randEnable Random Number generation instructions (FEAT_RNG).
rasEnable ARMv8 Reliability, Availability and Serviceability Extensions (FEAT_RAS, FEAT_RASv1p1).
rcpcEnable support for RCPC extension (FEAT_LRCPC).
rcpc2Enable v8.4-A RCPC instructions with Immediate Offsets (FEAT_LRCPC2).rcpc
rdmEnable ARMv8.1 Rounding Double Multiply Add/Subtract instructions (FEAT_RDM).
sbEnable v8.5 Speculation Barrier (FEAT_SB).
sha2Enable SHA1 and SHA256 support (FEAT_SHA1, FEAT_SHA256).neon
sha3Enable SHA512 and SHA3 support (FEAT_SHA3, FEAT_SHA512).neon, sha2
sm4Enable SM3 and SM4 support (FEAT_SM4, FEAT_SM3).neon
speEnable Statistical Profiling extension (FEAT_SPE).
ssbsEnable Speculative Store Bypass Safe bit (FEAT_SSBS, FEAT_SSBS2).
sveEnable Scalable Vector Extension (SVE) instructions (FEAT_SVE).fp16, neon
sve2Enable Scalable Vector Extension 2 (SVE2) instructions (FEAT_SVE2).fp16, neon, sve
sve2-aesEnable AES SVE2 instructions (FEAT_SVE_AES, FEAT_SVE_PMULL128).aes, fp16, neon, sve, sve2
sve2-bitpermEnable bit permutation SVE2 instructions (FEAT_SVE_BitPerm).fp16, neon, sve, sve2
sve2-sha3Enable SHA3 SVE2 instructions (FEAT_SVE_SHA3).fp16, neon, sha2, sha3, sve, sve2
sve2-sm4Enable SM4 SVE2 instructions (FEAT_SVE_SM4).fp16, neon, sm4, sve, sve2
tmeEnable Transactional Memory Extension (FEAT_TME).
v8.1aSupport ARM v8.1a instructions.crc, lor, lse, pan, rdm, vh
v8.2aSupport ARM v8.2a instructions.crc, dpb, lor, lse, pan, ras, rdm, v8.1a, vh
v8.3aSupport ARM v8.3a instructions.crc, dpb, fcma, jsconv, lor, lse, neon, paca, pacg, pan, ras, rcpc, rdm, v8.1a, v8.2a, vh
v8.4aSupport ARM v8.4a instructions.crc, dit, dotprod, dpb, fcma, flagm, jsconv, lor, lse, neon, paca, pacg, pan, ras, rcpc, rcpc2, rdm, v8.1a, v8.2a, v8.3a, vh
v8.5aSupport ARM v8.5a instructions.bti, crc, dit, dotprod, dpb, dpb2, fcma, flagm, frintts, jsconv, lor, lse, neon, paca, pacg, pan, ras, rcpc, rcpc2, rdm, sb, ssbs, v8.1a, v8.2a, v8.3a, v8.4a, vh
v8.6aSupport ARM v8.6a instructions.bf16, bti, crc, dit, dotprod, dpb, dpb2, fcma, flagm, frintts, i8mm, jsconv, lor, lse, neon, paca, pacg, pan, ras, rcpc, rcpc2, rdm, sb, ssbs, v8.1a, v8.2a, v8.3a, v8.4a, v8.5a, vh
v8.7aSupport ARM v8.7a instructions.bf16, bti, crc, dit, dotprod, dpb, dpb2, fcma, flagm, frintts, i8mm, jsconv, lor, lse, neon, paca, pacg, pan, ras, rcpc, rcpc2, rdm, sb, ssbs, v8.1a, v8.2a, v8.3a, v8.4a, v8.5a, v8.6a, vh
vhEnables ARM v8.1 Virtual Host extension (FEAT_VHE).
crt-staticEnables C Run-time Libraries to be statically linked.

This is often empirical, rather than specified in any standard, i.e. all available CPUs with a particular feature also have another feature.

CPUs

CPUEnabled Features
a64fxcrc, dpb, fcma, fp16, lor, lse, neon, pan, pmuv3, ras, rdm, sha2, sve, v8.1a, v8.2a, vh
ampere1aes, bf16, bti, crc, dit, dotprod, dpb, dpb2, fcma, flagm, frintts, i8mm, jsconv, lor, lse, neon, paca, pacg, pan, pmuv3, rand, ras, rcpc, rcpc2, rdm, sb, sha2, sha3, ssbs, v8.1a, v8.2a, v8.3a, v8.4a, v8.5a, v8.6a, vh
ampere1aaes, bf16, bti, crc, dit, dotprod, dpb, dpb2, fcma, flagm, frintts, i8mm, jsconv, lor, lse, mte, neon, paca, pacg, pan, pmuv3, rand, ras, rcpc, rcpc2, rdm, sb, sha2, sha3, sm4, ssbs, v8.1a, v8.2a, v8.3a, v8.4a, v8.5a, v8.6a, vh
apple-a10aes, crc, lor, neon, pan, pmuv3, rdm, sha2, vh
apple-a11aes, crc, dpb, fp16, lor, lse, neon, pan, pmuv3, ras, rdm, sha2, v8.1a, v8.2a, vh
apple-a12aes, crc, dpb, fcma, fp16, jsconv, lor, lse, neon, paca, pacg, pan, pmuv3, ras, rcpc, rdm, sha2, v8.1a, v8.2a, v8.3a, vh
apple-a13aes, crc, dit, dotprod, dpb, fcma, fhm, flagm, fp16, jsconv, lor, lse, neon, paca, pacg, pan, pmuv3, ras, rcpc, rcpc2, rdm, sha2, sha3, v8.1a, v8.2a, v8.3a, v8.4a, vh
apple-a14aes, crc, dit, dotprod, dpb, dpb2, fcma, fhm, flagm, fp16, frintts, jsconv, lor, lse, neon, paca, pacg, pan, pmuv3, ras, rcpc, rcpc2, rdm, sb, sha2, sha3, ssbs, v8.1a, v8.2a, v8.3a, v8.4a, vh
apple-a15aes, bf16, bti, crc, dit, dotprod, dpb, dpb2, fcma, fhm, flagm, fp16, frintts, i8mm, jsconv, lor, lse, neon, paca, pacg, pan, pmuv3, ras, rcpc, rcpc2, rdm, sb, sha2, sha3, ssbs, v8.1a, v8.2a, v8.3a, v8.4a, v8.5a, v8.6a, vh
apple-a16aes, bf16, bti, crc, dit, dotprod, dpb, dpb2, fcma, fhm, flagm, fp16, frintts, i8mm, jsconv, lor, lse, neon, paca, pacg, pan, pmuv3, ras, rcpc, rcpc2, rdm, sb, sha2, sha3, ssbs, v8.1a, v8.2a, v8.3a, v8.4a, v8.5a, v8.6a, vh
apple-a7aes, neon, pmuv3, sha2
apple-a8aes, neon, pmuv3, sha2
apple-a9aes, neon, pmuv3, sha2
apple-latestaes, bf16, bti, crc, dit, dotprod, dpb, dpb2, fcma, fhm, flagm, fp16, frintts, i8mm, jsconv, lor, lse, neon, paca, pacg, pan, pmuv3, ras, rcpc, rcpc2, rdm, sb, sha2, sha3, ssbs, v8.1a, v8.2a, v8.3a, v8.4a, v8.5a, v8.6a, vh
apple-m1aes, crc, dit, dotprod, dpb, dpb2, fcma, fhm, flagm, fp16, frintts, jsconv, lor, lse, neon, paca, pacg, pan, pmuv3, ras, rcpc, rcpc2, rdm, sb, sha2, sha3, ssbs, v8.1a, v8.2a, v8.3a, v8.4a, vh
apple-m2aes, bf16, bti, crc, dit, dotprod, dpb, dpb2, fcma, fhm, flagm, fp16, frintts, i8mm, jsconv, lor, lse, neon, paca, pacg, pan, pmuv3, ras, rcpc, rcpc2, rdm, sb, sha2, sha3, ssbs, v8.1a, v8.2a, v8.3a, v8.4a, v8.5a, v8.6a, vh
apple-s4aes, crc, dpb, fcma, fp16, jsconv, lor, lse, neon, paca, pacg, pan, pmuv3, ras, rcpc, rdm, sha2, v8.1a, v8.2a, v8.3a, vh
apple-s5aes, crc, dpb, fcma, fp16, jsconv, lor, lse, neon, paca, pacg, pan, pmuv3, ras, rcpc, rdm, sha2, v8.1a, v8.2a, v8.3a, vh
carmelaes, crc, dpb, fp16, lor, lse, neon, pan, ras, rdm, sha2, v8.1a, v8.2a, vh
cortex-a34aes, crc, neon, pmuv3, sha2
cortex-a35aes, crc, neon, pmuv3, sha2
cortex-a510bf16, bti, crc, dit, dotprod, dpb, dpb2, fcma, fhm, flagm, fp16, frintts, i8mm, jsconv, lor, lse, mte, neon, paca, pacg, pan, pmuv3, ras, rcpc, rcpc2, rdm, sb, ssbs, sve, sve2, sve2-bitperm, v8.1a, v8.2a, v8.3a, v8.4a, v8.5a, vh
cortex-a53aes, crc, neon, pmuv3, sha2
cortex-a55aes, crc, dotprod, dpb, fp16, lor, lse, neon, pan, pmuv3, ras, rcpc, rdm, sha2, v8.1a, v8.2a, vh
cortex-a57aes, crc, neon, pmuv3, sha2
cortex-a65aes, crc, dotprod, dpb, fp16, lor, lse, neon, pan, pmuv3, ras, rcpc, rdm, sha2, ssbs, v8.1a, v8.2a, vh
cortex-a65aeaes, crc, dotprod, dpb, fp16, lor, lse, neon, pan, pmuv3, ras, rcpc, rdm, sha2, ssbs, v8.1a, v8.2a, vh
cortex-a710bf16, bti, crc, dit, dotprod, dpb, dpb2, fcma, fhm, flagm, fp16, frintts, i8mm, jsconv, lor, lse, mte, neon, paca, pacg, pan, pmuv3, ras, rcpc, rcpc2, rdm, sb, ssbs, sve, sve2, sve2-bitperm, v8.1a, v8.2a, v8.3a, v8.4a, v8.5a, vh
cortex-a715bf16, bti, crc, dit, dotprod, dpb, dpb2, fcma, fhm, flagm, fp16, frintts, i8mm, jsconv, lor, lse, mte, neon, paca, pacg, pan, pmuv3, ras, rcpc, rcpc2, rdm, sb, spe, ssbs, sve, sve2, sve2-bitperm, v8.1a, v8.2a, v8.3a, v8.4a, v8.5a, vh
cortex-a72aes, crc, neon, pmuv3, sha2
cortex-a73aes, crc, neon, pmuv3, sha2
cortex-a75aes, crc, dotprod, dpb, fp16, lor, lse, neon, pan, pmuv3, ras, rcpc, rdm, sha2, v8.1a, v8.2a, vh
cortex-a76aes, crc, dotprod, dpb, fp16, lor, lse, neon, pan, pmuv3, ras, rcpc, rdm, sha2, ssbs, v8.1a, v8.2a, vh
cortex-a76aeaes, crc, dotprod, dpb, fp16, lor, lse, neon, pan, pmuv3, ras, rcpc, rdm, sha2, ssbs, v8.1a, v8.2a, vh
cortex-a77aes, crc, dotprod, dpb, fp16, lor, lse, neon, pan, pmuv3, ras, rcpc, rdm, sha2, ssbs, v8.1a, v8.2a, vh
cortex-a78aes, crc, dotprod, dpb, fp16, lor, lse, neon, pan, pmuv3, ras, rcpc, rdm, sha2, spe, ssbs, v8.1a, v8.2a, vh
cortex-a78caes, crc, dotprod, dpb, fhm, flagm, fp16, lor, lse, neon, paca, pacg, pan, pmuv3, ras, rcpc, rdm, sha2, spe, ssbs, v8.1a, v8.2a, vh
cortex-r82crc, dit, dotprod, dpb, fcma, fhm, flagm, fp16, jsconv, lse, neon, paca, pacg, pan, pmuv3, ras, rcpc, rcpc2, rdm, sb, ssbs
cortex-x1aes, crc, dotprod, dpb, fp16, lor, lse, neon, pan, pmuv3, ras, rcpc, rdm, sha2, spe, ssbs, v8.1a, v8.2a, vh
cortex-x1caes, crc, dotprod, dpb, flagm, fp16, lor, lse, neon, paca, pacg, pan, pmuv3, ras, rcpc, rcpc2, rdm, sha2, spe, ssbs, v8.1a, v8.2a, vh
cortex-x2bf16, bti, crc, dit, dotprod, dpb, dpb2, fcma, fhm, flagm, fp16, frintts, i8mm, jsconv, lor, lse, mte, neon, paca, pacg, pan, pmuv3, ras, rcpc, rcpc2, rdm, sb, ssbs, sve, sve2, sve2-bitperm, v8.1a, v8.2a, v8.3a, v8.4a, v8.5a, vh
cortex-x3bf16, bti, crc, dit, dotprod, dpb, dpb2, fcma, fhm, flagm, fp16, frintts, i8mm, jsconv, lor, lse, mte, neon, paca, pacg, pan, pmuv3, ras, rcpc, rcpc2, rdm, sb, spe, ssbs, sve, sve2, sve2-bitperm, v8.1a, v8.2a, v8.3a, v8.4a, v8.5a, vh
cycloneaes, neon, pmuv3, sha2
exynos-m3aes, crc, neon, pmuv3, sha2
exynos-m4aes, crc, dotprod, dpb, fp16, lor, lse, neon, pan, pmuv3, ras, rdm, sha2, v8.1a, v8.2a, vh
exynos-m5aes, crc, dotprod, dpb, fp16, lor, lse, neon, pan, pmuv3, ras, rdm, sha2, v8.1a, v8.2a, vh
falkoraes, crc, neon, pmuv3, rdm, sha2
genericneon
kryoaes, crc, neon, pmuv3, sha2
neoverse-512tvbaes, bf16, crc, dit, dotprod, dpb, dpb2, fcma, fhm, flagm, fp16, i8mm, jsconv, lor, lse, neon, paca, pacg, pan, pmuv3, rand, ras, rcpc, rcpc2, rdm, sha2, spe, ssbs, sve, v8.1a, v8.2a, v8.3a, v8.4a, vh
neoverse-e1aes, crc, dotprod, dpb, fp16, lor, lse, neon, pan, pmuv3, ras, rcpc, rdm, sha2, ssbs, v8.1a, v8.2a, vh
neoverse-n1aes, crc, dotprod, dpb, fp16, lor, lse, neon, pan, pmuv3, ras, rcpc, rdm, sha2, spe, ssbs, v8.1a, v8.2a, vh
neoverse-n2aes, bf16, bti, crc, dit, dotprod, dpb, dpb2, fcma, flagm, fp16, frintts, i8mm, jsconv, lor, lse, mte, neon, paca, pacg, pan, pmuv3, ras, rcpc, rcpc2, rdm, sb, sha2, ssbs, sve, sve2, sve2-bitperm, v8.1a, v8.2a, v8.3a, v8.4a, v8.5a, vh
neoverse-v1aes, bf16, crc, dit, dotprod, dpb, dpb2, fcma, fhm, flagm, fp16, i8mm, jsconv, lor, lse, neon, paca, pacg, pan, pmuv3, rand, ras, rcpc, rcpc2, rdm, sha2, spe, ssbs, sve, v8.1a, v8.2a, v8.3a, v8.4a, vh
neoverse-v2bf16, bti, crc, dit, dotprod, dpb, dpb2, fcma, fhm, flagm, fp16, frintts, i8mm, jsconv, lor, lse, mte, neon, paca, pacg, pan, pmuv3, rand, ras, rcpc, rcpc2, rdm, sb, spe, ssbs, sve, sve2, sve2-bitperm, v8.1a, v8.2a, v8.3a, v8.4a, v8.5a, vh
saphiraaes, crc, dit, dotprod, dpb, fcma, flagm, jsconv, lor, lse, neon, paca, pacg, pan, pmuv3, ras, rcpc, rcpc2, rdm, sha2, spe, v8.1a, v8.2a, v8.3a, v8.4a, vh
thunderxaes, crc, neon, pmuv3, sha2
thunderx2t99aes, crc, lor, lse, neon, pan, rdm, sha2, v8.1a, vh
thunderx3t110aes, crc, dpb, fcma, jsconv, lor, lse, neon, paca, pacg, pan, pmuv3, ras, rcpc, rdm, sha2, v8.1a, v8.2a, v8.3a, vh
thunderxt81aes, crc, neon, pmuv3, sha2
thunderxt83aes, crc, neon, pmuv3, sha2
thunderxt88aes, crc, neon, pmuv3, sha2
tsv110aes, crc, dotprod, dpb, fhm, fp16, lor, lse, neon, pan, pmuv3, ras, rdm, sha2, spe, v8.1a, v8.2a, vh