This file contains a list of all A-profile feature names. From June 2020, the feature names have all been changed to standard format.

The table below lists old and new feature names. Note that some names have been split into two; for example, ARMv8.0-AES is split into AES and PMULL.

Old name New name Short description Comments
ARMv8.0-AdvSIMD FEAT_AdvSIMD Advanced SIMD Extension
ARMv8.0-AES FEAT_AES Advanced SIMD AES instructions
ARMv8.0-AES FEAT_PMULL Advanced SIMD PMULL instructions ARMv8.0-AES is split into AES and PMULL
ARMv8.0-CSV2 FEAT_CSV2 Cache Speculation Variant 2
- FEAT_CSV2_1p1 Cache Speculation Variant 2 version 1.1
- FEAT_CSV2_1p2 Cache Speculation Variant 2 version 1.2
ARMv8.0-CSV2_2 FEAT_CSV2 Cache Speculation Variant 2 version 2
ARMv8.0-CSV3 FEAT_CSV3 Cache Speculation Variant 3
ARMv8.0-DGH FEAT_DGH Data Gathering Hint
ARMv8.0-DoubleLock FEAT_DoubleLock Double Lock
ARMv8.0-ETS FEAT_ETS Enhanced Translation Synchronization
ARMv8.0-FP FEAT_FP Floating point extension
- FEAT_IVIPT The IVIPT Extension
ARMv8.0-PCSample FEAT_PCSRv8 PC Sample-base Profiling extension (not EL3 and EL2)
ARMv8.0-PredInv FEAT_SPECRES Speculation restriction instructions
RAS FEAT_RAS Reliability, Availability, and Serviceability (RAS) Extension
ARMv8.0-SB FEAT_SB Speculation barrier
ARMv8.0-SHA FEAT_SHA1 Advanced SIMD SHA1 instructions
ARMv8.0-SHA FEAT_SHA256 Advanced SIMD SHA256 instructions Split ARMv8.2-SHA into SHA-256, SHA-512 and SHA-3
ARMv8.0-SSBS FEAT_SSBS Speculative Store Bypass Safe Instruction ARMv8.0-SSBS is split into SSBS and SSBS2
ARMv8.0-SSBS FEAT_SSBS2 MRS and MSR instructions for SSBS ARMv8.0-SSBS is split into SSBS and SSBS2
- FEAT_CRC32 CRC32 instructions
- FEAT_nTLBPA No intermediate caching by output address in TLB
ARMv8.1-Debug FEAT_Debugv8p1 Debug with VHE
ARMv8.1-HPD FEAT_HPDS Hierarchical permission disables in translation tables
ARMv8.1-LOR FEAT_LOR Limited ordering regions
ARMv8.1-LSE FEAT_LSE Large System Extensions
ARMv8.1-PAN FEAT_PAN Privileged access-never
ARMv8.1-PMU FEAT_PMUv3p1 PMU extensions version 3.1
ARMv8.1-RDMA FEAT_RDM Rounding double multiply accumulate
ARMv8.1-TTHM FEAT_HAFDBS Hardware updates to access flag and dirty state in translation tables
ARMv8.1-VHE FEAT_VHE Virtualization Host Extensions
ARMv8.1-VMID16 FEAT_VMID16 16-bit VMID
ARMv8.2-AA32BF16 FEAT_AA32BF16 AArch32 BFloat16 instructions
ARMv8.2-AA32HPD FEAT_AA32HPD AArch32 Hierarchical permission disables
ARMv8.2-AA32I8MM FEAT_AA32I8MM AArch32 Int8 Matrix Multiplication
ARMv8.2-ATS1E1 FEAT_PAN2 AT S1E1R and AT S1E1W instruction variants for PAN
ARMv8.2-BF16 FEAT_BF16 AARch64 BFloat16 instructions
ARMv8.2-DCPoP FEAT_DPB DC CVAP instruction
ARMv8.2-Debug FEAT_Debugv8p2 ARMv8.2 Debug
ARMv8.2-DotProd FEAT_DotProd2 Advanced SIMD Int8 dot product instructions
ARMv8.2-EVT FEAT_EVT Enhanced Virtualization Traps
ARMv8.2-F32MM FEAT_F32MM SVE single-precision floating-point matrix multiply instruction
ARMv8.2-F64MM FEAT_F64MM SVE double-precision floating-point matrix multiply instruction
ARMv8.2-FHM FEAT_FHM Half-precision floating-point FMLAL instructions
ARMv8.2-FP16 FEAT_FP16 Half-precision floating-point data processing
ARMv8.2-I8MM FEAT_I8MM Int8 Matrix Multiplication
ARMv8.2-IESB FEAT_IESB Implicit Error synchronization event
ARMv8.2-LPA FEAT_LPA Large PA and IPA support
ARMv8.2-LSMAOC FEAT_LSMAOC Load/Store instruction multiple atomicity and ordering controls
ARMv8.2-LVA FEAT_LVA Large VA support
MPAM FEAT_MPAM Memory Partitioning and Monitoring
ARMv8.2-PCSample FEAT_PCSRv8p2 PC Sample-based profiling version 8.2
ARMv8.2-SHA FEAT_SHA3 Advanced SIMD EOR3, RAX1, XAR, and BCAX instructions Split ARMv8.2-SHA into SHA-256, SHA-512 and SHA-3
ARMv8.2-SHA FEAT_SHA512 Advanced SIMD SHA512 instructions Split ARMv8.2-SHA into SHA-256, SHA-512 and SHA-3
ARMv8.2-SM FEAT_SM3 Advanced SIMD SM3 instructions Split into SM3 and SM4
ARMv8.2-SM FEAT_SM4 Advanced SIMD SM4 instructions Split into SM3 and SM4
SPE FEAT_SPE Statistical Profiling Extension
SVE FEAT_SVE Scalable Vector Extension
ARMv8.2-TTCNP FEAT_TTCNP Common not private translations
ARMv8.2-TTPBHA FEAT_HPDS2 Heirarchical permission disables in translation tables 2
ARMv8.2-TTS2UXN FEAT_XNX Execute-never control distinction by Exception level at stage 2
ARMv8.2-UAO FEAT_UAO Unprivileged Access Override control
ARMv8.2-VPIPT FEAT_VPIPT VMID-aware PIPT instruction cache
ARMv8.3-CCIDX FEAT_CCIDX Extended cache index
ARMv8.3-CompNum FEAT_FCMA Floating-point FCMLA and FCADD instructions
ARMv8.3-DoPD FEAT_DoPD Debug over Powerdown
ARMv8.3-FPAC FEAT_FPAC Faulting on pointer authentication instructions
ARMv8.3-JSConv FEAT_JSCVT JavaScript FJCVTS conversion instruction
ARMv8.3-NV FEAT_NV Nested virtualization
ARMv8.3-PAuth FEAT_PAuth Pointer authentication
ARMv8.3-PAuth2 FEAT_PAuth2 Pointer authentication version 2
ARMv8.3-RCpc FEAT_LRCPC Load-acquire RCpc instructions
AMUv1 FEAT_AMUv1 Activity Monitors Extension
ARMv8.4-CNTSC FEAT_CNTSC Generic Counter Scaling
ARMv8.4-CondM FEAT_FlagM Condition flag manipulation
ARMv8.4-Debug FEAT_Debugv8p4 Debug relaxations and extensions version 8.4
ARMv8.4-DFE FEAT_DoubleFault Double Fault Extension
ARMv8.4-DIT FEAT_DIT Data Independent Timing instructions
ARMv8.4-IDST FEAT_IDST ID space trap handling
ARMv8.4-LSE FEAT_LSE2 Large System Extensions version 2
ARMv8.4-NV FEAT_NV2 Enhanced support for nested virtualization
ARMv8.4-PMU FEAT_PMUv3p4 PMU extension version 3.4
ARMv8.4-RAS FEAT_RASv1p1 Reliability, Availability, and Serviceability (RAS) Extension version 1.1
ARMv8.4-RCpc FEAT_LRCPC2 Load-acquire RCpc instructions version 2
ARMv8.4-S2FWB FEAT_S2FWB Stage 2 forced write-back
ARMv8.4-SecEL2 FEAT_SEL2 Secure EL2
ARMv8.3-SPE FEAT_SPEv1p1 Statistical Profiling Extensions version 1.1
ARMv8.4-TLBI FEAT_TLBIOS TLB invalidate outer-shared instructions Split into TLBIOS and TLBIRANGE
ARMv8.4-TLBI FEAT_TLBIRANGE TLB range invalidate range instructions Split into TLBIOS and TLBIRANGE
ARMv8.4-Trace FEAT_TRF Self hosted Trace Extensions
ARMv8.4-TTL FEAT_TTL Translation Table Level
ARMv8.4-TTRem FEAT_BBM Translation table break before make levels
ARMv8.4-TTST FEAT_TTST Small translation tables
ARMv8.5-BTI FEAT_BTI Branch target identification
ARMv8.5-CondM FEAT_FlagM2 Condition flag manipulation version 2
ARMv8.5-CSEH FEAT_ExS Disabling context synchronizing exception entry and exit
ARMv8.5-E0PD FEAT_E0PD Preventing EL0 access to halves of address maps
ARMv8.5-GTG FEAT_GTG Guest translation granule size
ARMv8.5-MemTag FEAT_MTE Instruction-only Memory Tagging Extension
ARMv8.5-MemTag FEAT_MTE2 Full Memory Tagging Extension
ARMv8.5-PMU FEAT_PMUv3p5 PMU Extension version 3.5
ARMv8.5-RNG FEAT_RNG Random number generator
ARMv8.6-AMU FEAT_AMUv1p1 Activity Monitors Extension version 1.1
ARMv8.6-ECV FEAT_ECV Enhanced counter virtualization
ARMv8.6-FGT FEAT_FGT Fine Grain Traps
ARMv8.6-MPAM FEAT_MPAMv0p1 Memory Partitioning and Monitoring version 0.1
ARMv8.6-MPAM FEAT_MPAMv1p1 Memory Partitioning and Monitoring version1.1
ARMv8.6-MTPMU FEAT_MTPMU Multi-threaded PMU Extensions
ARMv8.6-TWED FEAT_TWED Delayed trapping of WFE
ETMv4 FEAT_ETMv4 Embedded Trace Macrocell version4
ETMv4.1 FEAT_ETMv4p1 Embedded Trace Macrocell version 4.1
ETMv4.2 FEAT_ETMv4p2 Embedded Trace Macrocell version 4.2
ETMv4.3 FEAT_ETMv4p3 Embedded Trace Macrocell version 4.3
ETMv4.4 FEAT_ETMv4p4 Embedded Trace Macrocell version 4.3
ETMv4.5 FEAT_ETMv4p5 Embedded Trace Macrocell version 4.4
ETMv4.6 FEAT_ETMv4p6 Embedded Trace Macrocell version 4.5
GICv3 FEAT_GICv3 Generic Interrupt Controller version 3
GICv3.1 FEAT_GICv3p1 Generic Interrupt Controller version 3.1
- FEAT_GICv3_TDIR Trapping Non-secure EL1 writes to ICV_DIR
GICv4 FEAT_GICv4 Generic Interrupt Controller version 4
GICv4.1 FEAT_GICv4p1 Generic Interrupt Controller version 4.1
PMUv3 FEAT_PMUv3 PMU extension version 3
ETE FEAT_ETE FAT - Embedded Trace Extension
ETEv1.1 FEAT_ETEv1p1 FAT - Embedded Trace Extension, version 1.1
SVE2 FEAT_SVE2 FAT - SVE version 2
SVE2-AES FEAT_SVE_PMULL128 FAT - SVE PMULL instructions SVE2-AES is split into AES and PMULL support
SVE2-BitPerm FEAT_SVE_BitPerm FAT - SVE Bit Permute
SVE2-SHA3 FEAT_SVE_SHA3 FAT - SVE SHA-3 instructions
SVE2-SM4 FEAT_SVE_SM4 FAT - SVE SM4 instructions
TME FEAT_TME FAT - Transactional Memory Extension
TRBE FEAT_TRBE FAT - Trace Buffer Extension

2020 Architecture Extensions

Features introduced by the 2020 Architecture Extensions follow the FEAT_ convention and do not have an equivalent old feature name.

Feature Name Short description
FEAT_AFP Alternate floating-point behavior
FEAT_HCX Support for the HCRX_EL2 register
FEAT_LPA2 Larger physical address for 4KB and 16KB translation granules
FEAT_LS64 Support for 64 byte loads/stores without return
FEAT_LS64_V Support for 64-byte stores with return
FEAT_LS64_ACCDATA Support for 64-byte EL0 stores with return
FEAT_MTE3 MTE Asymmetric Fault Handling
FEAT_PMUv3p7 Armv8.7 PMU Extensions
FEAT_RPRES Increased precision of Reciprocal Estimate and Reciprocal Square Root Estimate
FEAT_RME Realm Management Extension
FEAT_SPEv1p2 Armv8.7 SPE
FEAT_WFxT WFE and WFI instructions with timeout
FEAT_XS XS attribute
FEAT_BRBE Branch Record Buffer Extensions