Arm A-profile feature names

自 2020 年 6 月开始,Arm A-profile 架构的 feature name 全部更改为标准的格式,都以 FEAT_ 前缀打头。从 feature name 上已经无法分辨是那个 archtecture 版本引入的功能了。

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    
NA FEAT_AFP Alternate floating-point behavior  
NA FEAT_HCX Support for the HCRX_EL2 register  
NA FEAT_LPA2 Larger physical address for 4KB and 16KB translation granules  
NA FEAT_LS64 Support for 64 byte loads/stores without return  
NA FEAT_LS64_V Support for 64 byte stores with return  
NA FEAT_LS64_ACCDATA Support for 64 byte EL0 stores with return  
NA FEAT_MTE3 MTE Asymmetric Fault Handling  
NA FEAT_PAN3 Support for SCTLR_ELx.EPAN  
NA FEAT_PMUv3p7 Armv8.7 PMU Extensions  
NA FEAT_RPRES Increased precison of Reciprocal Estimate and Reciprocal Square Root Estimate  
NA FEAT_SPEv1p2 Armv8.7 SPE  
NA FEAT_WFxT WFE and WFI instructions with timeout  
NA FEAT_XS XS attribute  
NA FEAT_BRBE Branch Record Buffer Extensions  
NA FEAT_CSV2_1p1 Cache Speculation Variant 2 version 1.1  
NA FEAT_CSV2_1p2 Cache Speculation Variant 2 version 1.2  
NA FEAT_nTLBPA No intermediate caching by output address in TLB  

 

Reference: https://developer.arm.com/architectures/cpu-architecture/a-profile/exploration-tools/feature-names-for-a-profile

你可能感兴趣的:(ARM,Armv8)