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-CP15SDISABLE2 | FEAT_CP15SDISABLE2 | CP15DISABLE2 | ||
ARMv8.0-CSV2 | FEAT_CSV2 | Cache Speculation Variant 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 | ||
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 | |||
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-DCCVADP | FEAT_DPB2 | DC CVADP instruction | ||
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-FRINT | FEAT_FRINTTS | FRINT32Z, FRINT32X, FRINT64Z, and FRINT64X instructions | ||
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 | ||
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_AES | FAT - SVE AES instructions | ||
SVE2-AES | FEAT_SVE_PMULL | 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 |
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_PAN3 | Support for SCTLR_ELx.EPAN |
FEAT_PMUv3p7 | Armv8.7 PMU Extensions |
FEAT_RPRES | Increased precision of Reciprocal Estimate and Reciprocal Square Root Estimate |
FEAT_SPEv1p2 | Armv8.7 SPE |
FEAT_WFxT | WFE and WFI instructions with timeout |
FEAT_XS | XS attribute |
FEAT_BRBE | Branch Record Buffer Extensions |
FEAT_CSRE | Call Stack Recorder Extensions |