[llvm][AArch64] apple-m4 is armv9.2-a (#98267)
But since SVE and friends have been added to the default extensions list, and every CPU was opted into those extensions by default, we couldn't correctly announce its architecutral version to the backend. Additionally, we FEAT_MEC from llvm's "required" list for v9.0 to the optional list for v9.2, as the spec considers it optional, and M4 does not implement it. Similarly, fixes up several bugs w.r.t. FEAT_RME. As a drive-by, I noticed that saphira did not have an AArch64CPUTestParams entry, and thus added one.
This commit is contained in:
@@ -27,7 +27,6 @@
|
||||
// CHECK-NEXT: FEAT_LRCPC2 Enable v8.4-A RCPC instructions with Immediate Offsets
|
||||
// CHECK-NEXT: FEAT_LSE Enable ARMv8.1 Large System Extension (LSE) atomic instructions
|
||||
// CHECK-NEXT: FEAT_LSE2 Enable ARMv8.4 Large System Extension 2 (LSE2) atomicity rules
|
||||
// CHECK-NEXT: FEAT_MEC Enable Memory Encryption Contexts Extension
|
||||
// CHECK-NEXT: FEAT_MPAM Enable v8.4-A Memory system Partitioning and Monitoring extension
|
||||
// CHECK-NEXT: FEAT_NV, FEAT_NV2 Enable v8.4-A Nested Virtualization Enchancement
|
||||
// CHECK-NEXT: FEAT_PAN Enables ARM v8.1 Privileged Access-Never extension
|
||||
@@ -35,7 +34,6 @@
|
||||
// CHECK-NEXT: FEAT_PAuth Enable v8.3-A Pointer Authentication extension
|
||||
// CHECK-NEXT: FEAT_RAS, FEAT_RASv1p1 Enable ARMv8 Reliability, Availability and Serviceability Extensions
|
||||
// CHECK-NEXT: FEAT_RDM Enable ARMv8.1 Rounding Double Multiply Add/Subtract instructions
|
||||
// CHECK-NEXT: FEAT_RME Enable Realm Management Extension
|
||||
// CHECK-NEXT: FEAT_SB Enable v8.5 Speculation Barrier
|
||||
// CHECK-NEXT: FEAT_SEL2 Enable v8.4-A Secure Exception Level 2 extension
|
||||
// CHECK-NEXT: FEAT_SPECRES Enable v8.5a execution and data prediction invalidation instructions
|
||||
|
||||
@@ -32,7 +32,6 @@
|
||||
// CHECK-NEXT: FEAT_LRCPC2 Enable v8.4-A RCPC instructions with Immediate Offsets
|
||||
// CHECK-NEXT: FEAT_LSE Enable ARMv8.1 Large System Extension (LSE) atomic instructions
|
||||
// CHECK-NEXT: FEAT_LSE2 Enable ARMv8.4 Large System Extension 2 (LSE2) atomicity rules
|
||||
// CHECK-NEXT: FEAT_MEC Enable Memory Encryption Contexts Extension
|
||||
// CHECK-NEXT: FEAT_MPAM Enable v8.4-A Memory system Partitioning and Monitoring extension
|
||||
// CHECK-NEXT: FEAT_NV, FEAT_NV2 Enable v8.4-A Nested Virtualization Enchancement
|
||||
// CHECK-NEXT: FEAT_PAN Enables ARM v8.1 Privileged Access-Never extension
|
||||
|
||||
@@ -30,7 +30,6 @@
|
||||
// CHECK-NEXT: FEAT_LRCPC2 Enable v8.4-A RCPC instructions with Immediate Offsets
|
||||
// CHECK-NEXT: FEAT_LSE Enable ARMv8.1 Large System Extension (LSE) atomic instructions
|
||||
// CHECK-NEXT: FEAT_LSE2 Enable ARMv8.4 Large System Extension 2 (LSE2) atomicity rules
|
||||
// CHECK-NEXT: FEAT_MEC Enable Memory Encryption Contexts Extension
|
||||
// CHECK-NEXT: FEAT_MPAM Enable v8.4-A Memory system Partitioning and Monitoring extension
|
||||
// CHECK-NEXT: FEAT_MTE, FEAT_MTE2 Enable Memory Tagging Extension
|
||||
// CHECK-NEXT: FEAT_NV, FEAT_NV2 Enable v8.4-A Nested Virtualization Enchancement
|
||||
@@ -40,7 +39,6 @@
|
||||
// CHECK-NEXT: FEAT_PMUv3 Enable Code Generation for ARMv8 PMUv3 Performance Monitors extension
|
||||
// CHECK-NEXT: FEAT_RAS, FEAT_RASv1p1 Enable ARMv8 Reliability, Availability and Serviceability Extensions
|
||||
// CHECK-NEXT: FEAT_RDM Enable ARMv8.1 Rounding Double Multiply Add/Subtract instructions
|
||||
// CHECK-NEXT: FEAT_RME Enable Realm Management Extension
|
||||
// CHECK-NEXT: FEAT_SB Enable v8.5 Speculation Barrier
|
||||
// CHECK-NEXT: FEAT_SEL2 Enable v8.4-A Secure Exception Level 2 extension
|
||||
// CHECK-NEXT: FEAT_SPECRES Enable v8.5a execution and data prediction invalidation instructions
|
||||
|
||||
@@ -34,7 +34,6 @@
|
||||
// CHECK-NEXT: FEAT_LRCPC2 Enable v8.4-A RCPC instructions with Immediate Offsets
|
||||
// CHECK-NEXT: FEAT_LSE Enable ARMv8.1 Large System Extension (LSE) atomic instructions
|
||||
// CHECK-NEXT: FEAT_LSE2 Enable ARMv8.4 Large System Extension 2 (LSE2) atomicity rules
|
||||
// CHECK-NEXT: FEAT_MEC Enable Memory Encryption Contexts Extension
|
||||
// CHECK-NEXT: FEAT_MPAM Enable v8.4-A Memory system Partitioning and Monitoring extension
|
||||
// CHECK-NEXT: FEAT_MTE, FEAT_MTE2 Enable Memory Tagging Extension
|
||||
// CHECK-NEXT: FEAT_NV, FEAT_NV2 Enable v8.4-A Nested Virtualization Enchancement
|
||||
@@ -44,7 +43,6 @@
|
||||
// CHECK-NEXT: FEAT_PMUv3 Enable Code Generation for ARMv8 PMUv3 Performance Monitors extension
|
||||
// CHECK-NEXT: FEAT_RAS, FEAT_RASv1p1 Enable ARMv8 Reliability, Availability and Serviceability Extensions
|
||||
// CHECK-NEXT: FEAT_RDM Enable ARMv8.1 Rounding Double Multiply Add/Subtract instructions
|
||||
// CHECK-NEXT: FEAT_RME Enable Realm Management Extension
|
||||
// CHECK-NEXT: FEAT_SB Enable v8.5 Speculation Barrier
|
||||
// CHECK-NEXT: FEAT_SEL2 Enable v8.4-A Secure Exception Level 2 extension
|
||||
// CHECK-NEXT: FEAT_SPECRES Enable v8.5a execution and data prediction invalidation instructions
|
||||
|
||||
@@ -34,7 +34,6 @@
|
||||
// CHECK-NEXT: FEAT_LRCPC2 Enable v8.4-A RCPC instructions with Immediate Offsets
|
||||
// CHECK-NEXT: FEAT_LSE Enable ARMv8.1 Large System Extension (LSE) atomic instructions
|
||||
// CHECK-NEXT: FEAT_LSE2 Enable ARMv8.4 Large System Extension 2 (LSE2) atomicity rules
|
||||
// CHECK-NEXT: FEAT_MEC Enable Memory Encryption Contexts Extension
|
||||
// CHECK-NEXT: FEAT_MPAM Enable v8.4-A Memory system Partitioning and Monitoring extension
|
||||
// CHECK-NEXT: FEAT_MTE, FEAT_MTE2 Enable Memory Tagging Extension
|
||||
// CHECK-NEXT: FEAT_NV, FEAT_NV2 Enable v8.4-A Nested Virtualization Enchancement
|
||||
@@ -44,7 +43,6 @@
|
||||
// CHECK-NEXT: FEAT_PMUv3 Enable Code Generation for ARMv8 PMUv3 Performance Monitors extension
|
||||
// CHECK-NEXT: FEAT_RAS, FEAT_RASv1p1 Enable ARMv8 Reliability, Availability and Serviceability Extensions
|
||||
// CHECK-NEXT: FEAT_RDM Enable ARMv8.1 Rounding Double Multiply Add/Subtract instructions
|
||||
// CHECK-NEXT: FEAT_RME Enable Realm Management Extension
|
||||
// CHECK-NEXT: FEAT_SB Enable v8.5 Speculation Barrier
|
||||
// CHECK-NEXT: FEAT_SEL2 Enable v8.4-A Secure Exception Level 2 extension
|
||||
// CHECK-NEXT: FEAT_SPECRES Enable v8.5a execution and data prediction invalidation instructions
|
||||
|
||||
@@ -30,7 +30,6 @@
|
||||
// CHECK-NEXT: FEAT_LRCPC2 Enable v8.4-A RCPC instructions with Immediate Offsets
|
||||
// CHECK-NEXT: FEAT_LSE Enable ARMv8.1 Large System Extension (LSE) atomic instructions
|
||||
// CHECK-NEXT: FEAT_LSE2 Enable ARMv8.4 Large System Extension 2 (LSE2) atomicity rules
|
||||
// CHECK-NEXT: FEAT_MEC Enable Memory Encryption Contexts Extension
|
||||
// CHECK-NEXT: FEAT_MPAM Enable v8.4-A Memory system Partitioning and Monitoring extension
|
||||
// CHECK-NEXT: FEAT_MTE, FEAT_MTE2 Enable Memory Tagging Extension
|
||||
// CHECK-NEXT: FEAT_NV, FEAT_NV2 Enable v8.4-A Nested Virtualization Enchancement
|
||||
@@ -40,7 +39,6 @@
|
||||
// CHECK-NEXT: FEAT_PMUv3 Enable Code Generation for ARMv8 PMUv3 Performance Monitors extension
|
||||
// CHECK-NEXT: FEAT_RAS, FEAT_RASv1p1 Enable ARMv8 Reliability, Availability and Serviceability Extensions
|
||||
// CHECK-NEXT: FEAT_RDM Enable ARMv8.1 Rounding Double Multiply Add/Subtract instructions
|
||||
// CHECK-NEXT: FEAT_RME Enable Realm Management Extension
|
||||
// CHECK-NEXT: FEAT_SB Enable v8.5 Speculation Barrier
|
||||
// CHECK-NEXT: FEAT_SEL2 Enable v8.4-A Secure Exception Level 2 extension
|
||||
// CHECK-NEXT: FEAT_SPECRES Enable v8.5a execution and data prediction invalidation instructions
|
||||
|
||||
@@ -30,7 +30,6 @@
|
||||
// CHECK-NEXT: FEAT_LRCPC2 Enable v8.4-A RCPC instructions with Immediate Offsets
|
||||
// CHECK-NEXT: FEAT_LSE Enable ARMv8.1 Large System Extension (LSE) atomic instructions
|
||||
// CHECK-NEXT: FEAT_LSE2 Enable ARMv8.4 Large System Extension 2 (LSE2) atomicity rules
|
||||
// CHECK-NEXT: FEAT_MEC Enable Memory Encryption Contexts Extension
|
||||
// CHECK-NEXT: FEAT_MPAM Enable v8.4-A Memory system Partitioning and Monitoring extension
|
||||
// CHECK-NEXT: FEAT_MTE, FEAT_MTE2 Enable Memory Tagging Extension
|
||||
// CHECK-NEXT: FEAT_NV, FEAT_NV2 Enable v8.4-A Nested Virtualization Enchancement
|
||||
@@ -40,7 +39,6 @@
|
||||
// CHECK-NEXT: FEAT_PMUv3 Enable Code Generation for ARMv8 PMUv3 Performance Monitors extension
|
||||
// CHECK-NEXT: FEAT_RAS, FEAT_RASv1p1 Enable ARMv8 Reliability, Availability and Serviceability Extensions
|
||||
// CHECK-NEXT: FEAT_RDM Enable ARMv8.1 Rounding Double Multiply Add/Subtract instructions
|
||||
// CHECK-NEXT: FEAT_RME Enable Realm Management Extension
|
||||
// CHECK-NEXT: FEAT_SB Enable v8.5 Speculation Barrier
|
||||
// CHECK-NEXT: FEAT_SEL2 Enable v8.4-A Secure Exception Level 2 extension
|
||||
// CHECK-NEXT: FEAT_SPE Enable Statistical Profiling extension
|
||||
|
||||
@@ -34,7 +34,6 @@
|
||||
// CHECK-NEXT: FEAT_LRCPC2 Enable v8.4-A RCPC instructions with Immediate Offsets
|
||||
// CHECK-NEXT: FEAT_LSE Enable ARMv8.1 Large System Extension (LSE) atomic instructions
|
||||
// CHECK-NEXT: FEAT_LSE2 Enable ARMv8.4 Large System Extension 2 (LSE2) atomicity rules
|
||||
// CHECK-NEXT: FEAT_MEC Enable Memory Encryption Contexts Extension
|
||||
// CHECK-NEXT: FEAT_MPAM Enable v8.4-A Memory system Partitioning and Monitoring extension
|
||||
// CHECK-NEXT: FEAT_MTE, FEAT_MTE2 Enable Memory Tagging Extension
|
||||
// CHECK-NEXT: FEAT_NV, FEAT_NV2 Enable v8.4-A Nested Virtualization Enchancement
|
||||
@@ -44,7 +43,6 @@
|
||||
// CHECK-NEXT: FEAT_PMUv3 Enable Code Generation for ARMv8 PMUv3 Performance Monitors extension
|
||||
// CHECK-NEXT: FEAT_RAS, FEAT_RASv1p1 Enable ARMv8 Reliability, Availability and Serviceability Extensions
|
||||
// CHECK-NEXT: FEAT_RDM Enable ARMv8.1 Rounding Double Multiply Add/Subtract instructions
|
||||
// CHECK-NEXT: FEAT_RME Enable Realm Management Extension
|
||||
// CHECK-NEXT: FEAT_SB Enable v8.5 Speculation Barrier
|
||||
// CHECK-NEXT: FEAT_SEL2 Enable v8.4-A Secure Exception Level 2 extension
|
||||
// CHECK-NEXT: FEAT_SPE Enable Statistical Profiling extension
|
||||
|
||||
@@ -34,7 +34,6 @@
|
||||
// CHECK-NEXT: FEAT_LRCPC2 Enable v8.4-A RCPC instructions with Immediate Offsets
|
||||
// CHECK-NEXT: FEAT_LSE Enable ARMv8.1 Large System Extension (LSE) atomic instructions
|
||||
// CHECK-NEXT: FEAT_LSE2 Enable ARMv8.4 Large System Extension 2 (LSE2) atomicity rules
|
||||
// CHECK-NEXT: FEAT_MEC Enable Memory Encryption Contexts Extension
|
||||
// CHECK-NEXT: FEAT_MPAM Enable v8.4-A Memory system Partitioning and Monitoring extension
|
||||
// CHECK-NEXT: FEAT_MTE, FEAT_MTE2 Enable Memory Tagging Extension
|
||||
// CHECK-NEXT: FEAT_NV, FEAT_NV2 Enable v8.4-A Nested Virtualization Enchancement
|
||||
@@ -44,7 +43,6 @@
|
||||
// CHECK-NEXT: FEAT_PMUv3 Enable Code Generation for ARMv8 PMUv3 Performance Monitors extension
|
||||
// CHECK-NEXT: FEAT_RAS, FEAT_RASv1p1 Enable ARMv8 Reliability, Availability and Serviceability Extensions
|
||||
// CHECK-NEXT: FEAT_RDM Enable ARMv8.1 Rounding Double Multiply Add/Subtract instructions
|
||||
// CHECK-NEXT: FEAT_RME Enable Realm Management Extension
|
||||
// CHECK-NEXT: FEAT_SB Enable v8.5 Speculation Barrier
|
||||
// CHECK-NEXT: FEAT_SEL2 Enable v8.4-A Secure Exception Level 2 extension
|
||||
// CHECK-NEXT: FEAT_SPE Enable Statistical Profiling extension
|
||||
|
||||
@@ -34,7 +34,6 @@
|
||||
// CHECK-NEXT: FEAT_LRCPC2 Enable v8.4-A RCPC instructions with Immediate Offsets
|
||||
// CHECK-NEXT: FEAT_LSE Enable ARMv8.1 Large System Extension (LSE) atomic instructions
|
||||
// CHECK-NEXT: FEAT_LSE2 Enable ARMv8.4 Large System Extension 2 (LSE2) atomicity rules
|
||||
// CHECK-NEXT: FEAT_MEC Enable Memory Encryption Contexts Extension
|
||||
// CHECK-NEXT: FEAT_MPAM Enable v8.4-A Memory system Partitioning and Monitoring extension
|
||||
// CHECK-NEXT: FEAT_MTE, FEAT_MTE2 Enable Memory Tagging Extension
|
||||
// CHECK-NEXT: FEAT_NV, FEAT_NV2 Enable v8.4-A Nested Virtualization Enchancement
|
||||
@@ -44,7 +43,6 @@
|
||||
// CHECK-NEXT: FEAT_PMUv3 Enable Code Generation for ARMv8 PMUv3 Performance Monitors extension
|
||||
// CHECK-NEXT: FEAT_RAS, FEAT_RASv1p1 Enable ARMv8 Reliability, Availability and Serviceability Extensions
|
||||
// CHECK-NEXT: FEAT_RDM Enable ARMv8.1 Rounding Double Multiply Add/Subtract instructions
|
||||
// CHECK-NEXT: FEAT_RME Enable Realm Management Extension
|
||||
// CHECK-NEXT: FEAT_SB Enable v8.5 Speculation Barrier
|
||||
// CHECK-NEXT: FEAT_SEL2 Enable v8.4-A Secure Exception Level 2 extension
|
||||
// CHECK-NEXT: FEAT_SPE Enable Statistical Profiling extension
|
||||
|
||||
@@ -30,7 +30,6 @@
|
||||
// CHECK-NEXT: FEAT_LRCPC2 Enable v8.4-A RCPC instructions with Immediate Offsets
|
||||
// CHECK-NEXT: FEAT_LSE Enable ARMv8.1 Large System Extension (LSE) atomic instructions
|
||||
// CHECK-NEXT: FEAT_LSE2 Enable ARMv8.4 Large System Extension 2 (LSE2) atomicity rules
|
||||
// CHECK-NEXT: FEAT_MEC Enable Memory Encryption Contexts Extension
|
||||
// CHECK-NEXT: FEAT_MPAM Enable v8.4-A Memory system Partitioning and Monitoring extension
|
||||
// CHECK-NEXT: FEAT_MTE, FEAT_MTE2 Enable Memory Tagging Extension
|
||||
// CHECK-NEXT: FEAT_NV, FEAT_NV2 Enable v8.4-A Nested Virtualization Enchancement
|
||||
@@ -40,7 +39,6 @@
|
||||
// CHECK-NEXT: FEAT_PMUv3 Enable Code Generation for ARMv8 PMUv3 Performance Monitors extension
|
||||
// CHECK-NEXT: FEAT_RAS, FEAT_RASv1p1 Enable ARMv8 Reliability, Availability and Serviceability Extensions
|
||||
// CHECK-NEXT: FEAT_RDM Enable ARMv8.1 Rounding Double Multiply Add/Subtract instructions
|
||||
// CHECK-NEXT: FEAT_RME Enable Realm Management Extension
|
||||
// CHECK-NEXT: FEAT_SB Enable v8.5 Speculation Barrier
|
||||
// CHECK-NEXT: FEAT_SEL2 Enable v8.4-A Secure Exception Level 2 extension
|
||||
// CHECK-NEXT: FEAT_SPECRES Enable v8.5a execution and data prediction invalidation instructions
|
||||
|
||||
@@ -30,7 +30,6 @@
|
||||
// CHECK-NEXT: FEAT_LRCPC2 Enable v8.4-A RCPC instructions with Immediate Offsets
|
||||
// CHECK-NEXT: FEAT_LSE Enable ARMv8.1 Large System Extension (LSE) atomic instructions
|
||||
// CHECK-NEXT: FEAT_LSE2 Enable ARMv8.4 Large System Extension 2 (LSE2) atomicity rules
|
||||
// CHECK-NEXT: FEAT_MEC Enable Memory Encryption Contexts Extension
|
||||
// CHECK-NEXT: FEAT_MPAM Enable v8.4-A Memory system Partitioning and Monitoring extension
|
||||
// CHECK-NEXT: FEAT_MTE, FEAT_MTE2 Enable Memory Tagging Extension
|
||||
// CHECK-NEXT: FEAT_NV, FEAT_NV2 Enable v8.4-A Nested Virtualization Enchancement
|
||||
@@ -40,7 +39,6 @@
|
||||
// CHECK-NEXT: FEAT_PMUv3 Enable Code Generation for ARMv8 PMUv3 Performance Monitors extension
|
||||
// CHECK-NEXT: FEAT_RAS, FEAT_RASv1p1 Enable ARMv8 Reliability, Availability and Serviceability Extensions
|
||||
// CHECK-NEXT: FEAT_RDM Enable ARMv8.1 Rounding Double Multiply Add/Subtract instructions
|
||||
// CHECK-NEXT: FEAT_RME Enable Realm Management Extension
|
||||
// CHECK-NEXT: FEAT_SB Enable v8.5 Speculation Barrier
|
||||
// CHECK-NEXT: FEAT_SEL2 Enable v8.4-A Secure Exception Level 2 extension
|
||||
// CHECK-NEXT: FEAT_SPE Enable Statistical Profiling extension
|
||||
|
||||
@@ -34,7 +34,6 @@
|
||||
// CHECK-NEXT: FEAT_LRCPC2 Enable v8.4-A RCPC instructions with Immediate Offsets
|
||||
// CHECK-NEXT: FEAT_LSE Enable ARMv8.1 Large System Extension (LSE) atomic instructions
|
||||
// CHECK-NEXT: FEAT_LSE2 Enable ARMv8.4 Large System Extension 2 (LSE2) atomicity rules
|
||||
// CHECK-NEXT: FEAT_MEC Enable Memory Encryption Contexts Extension
|
||||
// CHECK-NEXT: FEAT_MPAM Enable v8.4-A Memory system Partitioning and Monitoring extension
|
||||
// CHECK-NEXT: FEAT_MTE, FEAT_MTE2 Enable Memory Tagging Extension
|
||||
// CHECK-NEXT: FEAT_NV, FEAT_NV2 Enable v8.4-A Nested Virtualization Enchancement
|
||||
@@ -44,7 +43,6 @@
|
||||
// CHECK-NEXT: FEAT_PMUv3 Enable Code Generation for ARMv8 PMUv3 Performance Monitors extension
|
||||
// CHECK-NEXT: FEAT_RAS, FEAT_RASv1p1 Enable ARMv8 Reliability, Availability and Serviceability Extensions
|
||||
// CHECK-NEXT: FEAT_RDM Enable ARMv8.1 Rounding Double Multiply Add/Subtract instructions
|
||||
// CHECK-NEXT: FEAT_RME Enable Realm Management Extension
|
||||
// CHECK-NEXT: FEAT_SB Enable v8.5 Speculation Barrier
|
||||
// CHECK-NEXT: FEAT_SEL2 Enable v8.4-A Secure Exception Level 2 extension
|
||||
// CHECK-NEXT: FEAT_SPE Enable Statistical Profiling extension
|
||||
|
||||
@@ -34,7 +34,6 @@
|
||||
// CHECK-NEXT: FEAT_LRCPC2 Enable v8.4-A RCPC instructions with Immediate Offsets
|
||||
// CHECK-NEXT: FEAT_LSE Enable ARMv8.1 Large System Extension (LSE) atomic instructions
|
||||
// CHECK-NEXT: FEAT_LSE2 Enable ARMv8.4 Large System Extension 2 (LSE2) atomicity rules
|
||||
// CHECK-NEXT: FEAT_MEC Enable Memory Encryption Contexts Extension
|
||||
// CHECK-NEXT: FEAT_MPAM Enable v8.4-A Memory system Partitioning and Monitoring extension
|
||||
// CHECK-NEXT: FEAT_MTE, FEAT_MTE2 Enable Memory Tagging Extension
|
||||
// CHECK-NEXT: FEAT_NV, FEAT_NV2 Enable v8.4-A Nested Virtualization Enchancement
|
||||
@@ -44,7 +43,6 @@
|
||||
// CHECK-NEXT: FEAT_PMUv3 Enable Code Generation for ARMv8 PMUv3 Performance Monitors extension
|
||||
// CHECK-NEXT: FEAT_RAS, FEAT_RASv1p1 Enable ARMv8 Reliability, Availability and Serviceability Extensions
|
||||
// CHECK-NEXT: FEAT_RDM Enable ARMv8.1 Rounding Double Multiply Add/Subtract instructions
|
||||
// CHECK-NEXT: FEAT_RME Enable Realm Management Extension
|
||||
// CHECK-NEXT: FEAT_SB Enable v8.5 Speculation Barrier
|
||||
// CHECK-NEXT: FEAT_SEL2 Enable v8.4-A Secure Exception Level 2 extension
|
||||
// CHECK-NEXT: FEAT_SPE Enable Statistical Profiling extension
|
||||
|
||||
@@ -30,7 +30,6 @@
|
||||
// CHECK-NEXT: FEAT_LRCPC2 Enable v8.4-A RCPC instructions with Immediate Offsets
|
||||
// CHECK-NEXT: FEAT_LSE Enable ARMv8.1 Large System Extension (LSE) atomic instructions
|
||||
// CHECK-NEXT: FEAT_LSE2 Enable ARMv8.4 Large System Extension 2 (LSE2) atomicity rules
|
||||
// CHECK-NEXT: FEAT_MEC Enable Memory Encryption Contexts Extension
|
||||
// CHECK-NEXT: FEAT_MPAM Enable v8.4-A Memory system Partitioning and Monitoring extension
|
||||
// CHECK-NEXT: FEAT_MTE, FEAT_MTE2 Enable Memory Tagging Extension
|
||||
// CHECK-NEXT: FEAT_NV, FEAT_NV2 Enable v8.4-A Nested Virtualization Enchancement
|
||||
@@ -40,7 +39,6 @@
|
||||
// CHECK-NEXT: FEAT_PMUv3 Enable Code Generation for ARMv8 PMUv3 Performance Monitors extension
|
||||
// CHECK-NEXT: FEAT_RAS, FEAT_RASv1p1 Enable ARMv8 Reliability, Availability and Serviceability Extensions
|
||||
// CHECK-NEXT: FEAT_RDM Enable ARMv8.1 Rounding Double Multiply Add/Subtract instructions
|
||||
// CHECK-NEXT: FEAT_RME Enable Realm Management Extension
|
||||
// CHECK-NEXT: FEAT_SB Enable v8.5 Speculation Barrier
|
||||
// CHECK-NEXT: FEAT_SEL2 Enable v8.4-A Secure Exception Level 2 extension
|
||||
// CHECK-NEXT: FEAT_SPECRES Enable v8.5a execution and data prediction invalidation instructions
|
||||
|
||||
@@ -34,7 +34,6 @@
|
||||
// CHECK-NEXT: FEAT_LRCPC2 Enable v8.4-A RCPC instructions with Immediate Offsets
|
||||
// CHECK-NEXT: FEAT_LSE Enable ARMv8.1 Large System Extension (LSE) atomic instructions
|
||||
// CHECK-NEXT: FEAT_LSE2 Enable ARMv8.4 Large System Extension 2 (LSE2) atomicity rules
|
||||
// CHECK-NEXT: FEAT_MEC Enable Memory Encryption Contexts Extension
|
||||
// CHECK-NEXT: FEAT_MPAM Enable v8.4-A Memory system Partitioning and Monitoring extension
|
||||
// CHECK-NEXT: FEAT_MTE, FEAT_MTE2 Enable Memory Tagging Extension
|
||||
// CHECK-NEXT: FEAT_NV, FEAT_NV2 Enable v8.4-A Nested Virtualization Enchancement
|
||||
@@ -44,7 +43,6 @@
|
||||
// CHECK-NEXT: FEAT_PMUv3 Enable Code Generation for ARMv8 PMUv3 Performance Monitors extension
|
||||
// CHECK-NEXT: FEAT_RAS, FEAT_RASv1p1 Enable ARMv8 Reliability, Availability and Serviceability Extensions
|
||||
// CHECK-NEXT: FEAT_RDM Enable ARMv8.1 Rounding Double Multiply Add/Subtract instructions
|
||||
// CHECK-NEXT: FEAT_RME Enable Realm Management Extension
|
||||
// CHECK-NEXT: FEAT_RNG Enable Random Number generation instructions
|
||||
// CHECK-NEXT: FEAT_SB Enable v8.5 Speculation Barrier
|
||||
// CHECK-NEXT: FEAT_SEL2 Enable v8.4-A Secure Exception Level 2 extension
|
||||
|
||||
@@ -30,7 +30,6 @@
|
||||
// CHECK-NEXT: FEAT_LRCPC2 Enable v8.4-A RCPC instructions with Immediate Offsets
|
||||
// CHECK-NEXT: FEAT_LSE Enable ARMv8.1 Large System Extension (LSE) atomic instructions
|
||||
// CHECK-NEXT: FEAT_LSE2 Enable ARMv8.4 Large System Extension 2 (LSE2) atomicity rules
|
||||
// CHECK-NEXT: FEAT_MEC Enable Memory Encryption Contexts Extension
|
||||
// CHECK-NEXT: FEAT_MPAM Enable v8.4-A Memory system Partitioning and Monitoring extension
|
||||
// CHECK-NEXT: FEAT_MTE, FEAT_MTE2 Enable Memory Tagging Extension
|
||||
// CHECK-NEXT: FEAT_NV, FEAT_NV2 Enable v8.4-A Nested Virtualization Enchancement
|
||||
@@ -40,7 +39,6 @@
|
||||
// CHECK-NEXT: FEAT_PMUv3 Enable Code Generation for ARMv8 PMUv3 Performance Monitors extension
|
||||
// CHECK-NEXT: FEAT_RAS, FEAT_RASv1p1 Enable ARMv8 Reliability, Availability and Serviceability Extensions
|
||||
// CHECK-NEXT: FEAT_RDM Enable ARMv8.1 Rounding Double Multiply Add/Subtract instructions
|
||||
// CHECK-NEXT: FEAT_RME Enable Realm Management Extension
|
||||
// CHECK-NEXT: FEAT_RNG Enable Random Number generation instructions
|
||||
// CHECK-NEXT: FEAT_SB Enable v8.5 Speculation Barrier
|
||||
// CHECK-NEXT: FEAT_SEL2 Enable v8.4-A Secure Exception Level 2 extension
|
||||
|
||||
@@ -36,7 +36,6 @@
|
||||
// CHECK-NEXT: FEAT_LS64, FEAT_LS64_V, FEAT_LS64_ACCDATA Enable Armv8.7-A LD64B/ST64B Accelerator Extension
|
||||
// CHECK-NEXT: FEAT_LSE Enable ARMv8.1 Large System Extension (LSE) atomic instructions
|
||||
// CHECK-NEXT: FEAT_LSE2 Enable ARMv8.4 Large System Extension 2 (LSE2) atomicity rules
|
||||
// CHECK-NEXT: FEAT_MEC Enable Memory Encryption Contexts Extension
|
||||
// CHECK-NEXT: FEAT_MPAM Enable v8.4-A Memory system Partitioning and Monitoring extension
|
||||
// CHECK-NEXT: FEAT_MTE, FEAT_MTE2 Enable Memory Tagging Extension
|
||||
// CHECK-NEXT: FEAT_NV, FEAT_NV2 Enable v8.4-A Nested Virtualization Enchancement
|
||||
|
||||
@@ -36,7 +36,6 @@
|
||||
// CHECK-NEXT: FEAT_LS64, FEAT_LS64_V, FEAT_LS64_ACCDATA Enable Armv8.7-A LD64B/ST64B Accelerator Extension
|
||||
// CHECK-NEXT: FEAT_LSE Enable ARMv8.1 Large System Extension (LSE) atomic instructions
|
||||
// CHECK-NEXT: FEAT_LSE2 Enable ARMv8.4 Large System Extension 2 (LSE2) atomicity rules
|
||||
// CHECK-NEXT: FEAT_MEC Enable Memory Encryption Contexts Extension
|
||||
// CHECK-NEXT: FEAT_MPAM Enable v8.4-A Memory system Partitioning and Monitoring extension
|
||||
// CHECK-NEXT: FEAT_MTE, FEAT_MTE2 Enable Memory Tagging Extension
|
||||
// CHECK-NEXT: FEAT_NV, FEAT_NV2 Enable v8.4-A Nested Virtualization Enchancement
|
||||
|
||||
@@ -161,14 +161,10 @@ struct CpuInfo {
|
||||
StringRef Name; // Name, as written for -mcpu.
|
||||
const ArchInfo &Arch;
|
||||
AArch64::ExtensionBitset
|
||||
DefaultExtensions; // Default extensions for this CPU. These will be
|
||||
// ORd with the architecture defaults.
|
||||
DefaultExtensions; // Default extensions for this CPU.
|
||||
|
||||
AArch64::ExtensionBitset getImpliedExtensions() const {
|
||||
AArch64::ExtensionBitset ImpliedExts;
|
||||
ImpliedExts |= DefaultExtensions;
|
||||
ImpliedExts |= Arch.DefaultExts;
|
||||
return ImpliedExts;
|
||||
return DefaultExtensions;
|
||||
}
|
||||
};
|
||||
|
||||
|
||||
@@ -801,15 +801,15 @@ def HasV8_9aOps : Architecture64<8, 9, "a", "v8.9a",
|
||||
!listconcat(HasV8_8aOps.DefaultExts, [FeatureSPECRES2, FeatureCSSC,
|
||||
FeatureRASv2])>;
|
||||
def HasV9_0aOps : Architecture64<9, 0, "a", "v9a",
|
||||
[HasV8_5aOps, FeatureMEC],
|
||||
[HasV8_5aOps],
|
||||
!listconcat(HasV8_5aOps.DefaultExts, [FeatureFullFP16, FeatureSVE,
|
||||
FeatureSVE2])>;
|
||||
def HasV9_1aOps : Architecture64<9, 1, "a", "v9.1a",
|
||||
[HasV8_6aOps, HasV9_0aOps],
|
||||
!listconcat(HasV9_0aOps.DefaultExts, [FeatureBF16, FeatureMatMulInt8])>;
|
||||
!listconcat(HasV9_0aOps.DefaultExts, [FeatureBF16, FeatureMatMulInt8, FeatureRME])>;
|
||||
def HasV9_2aOps : Architecture64<9, 2, "a", "v9.2a",
|
||||
[HasV8_7aOps, HasV9_1aOps],
|
||||
!listconcat(HasV9_1aOps.DefaultExts, [])>;
|
||||
!listconcat(HasV9_1aOps.DefaultExts, [FeatureMEC])>;
|
||||
def HasV9_3aOps : Architecture64<9, 3, "a", "v9.3a",
|
||||
[HasV8_8aOps, HasV9_2aOps],
|
||||
!listconcat(HasV9_2aOps.DefaultExts, [FeatureMOPS, FeatureHBC])>;
|
||||
|
||||
@@ -681,247 +681,332 @@ def ProcessorFeatures {
|
||||
FeatureFPARMv8, FeatureNEON, FeaturePerfMon];
|
||||
list<SubtargetFeature> A55 = [HasV8_2aOps, FeatureSHA2, FeatureAES, FeatureFPARMv8,
|
||||
FeatureNEON, FeatureFullFP16, FeatureDotProd,
|
||||
FeatureRCPC, FeaturePerfMon];
|
||||
FeatureRCPC, FeaturePerfMon, FeatureCRC,
|
||||
FeatureLSE, FeatureRAS, FeatureRDM];
|
||||
list<SubtargetFeature> A510 = [HasV9_0aOps, FeatureNEON, FeaturePerfMon,
|
||||
FeatureMatMulInt8, FeatureBF16, FeatureAM,
|
||||
FeatureMTE, FeatureETE, FeatureSVE2BitPerm,
|
||||
FeatureFP16FML,
|
||||
FeatureSB, FeaturePAuth, FeatureSSBS, FeatureSVE, FeatureSVE2];
|
||||
FeatureSB, FeaturePAuth, FeatureSSBS, FeatureSVE, FeatureSVE2,
|
||||
FeatureComplxNum, FeatureCRC, FeatureDotProd,
|
||||
FeatureFPARMv8,FeatureFullFP16, FeatureJS, FeatureLSE,
|
||||
FeatureRAS, FeatureRCPC, FeatureRDM];
|
||||
list<SubtargetFeature> A520 = [HasV9_2aOps, FeaturePerfMon, FeatureAM,
|
||||
FeatureMTE, FeatureETE, FeatureSVE2BitPerm,
|
||||
FeatureFP16FML,
|
||||
FeatureSB, FeatureSSBS, FeaturePAuth, FeatureFlagM, FeaturePredRes,
|
||||
FeatureSVE, FeatureSVE2];
|
||||
FeatureSVE, FeatureSVE2, FeatureBF16, FeatureComplxNum, FeatureCRC,
|
||||
FeatureFPARMv8, FeatureFullFP16, FeatureMatMulInt8, FeatureJS,
|
||||
FeatureNEON, FeatureLSE, FeatureRAS, FeatureRCPC, FeatureRDM,
|
||||
FeatureDotProd];
|
||||
list<SubtargetFeature> A520AE = [HasV9_2aOps, FeaturePerfMon, FeatureAM,
|
||||
FeatureMTE, FeatureETE, FeatureSVE2BitPerm,
|
||||
FeatureFP16FML,
|
||||
FeatureSB, FeatureSSBS, FeaturePAuth, FeatureFlagM, FeaturePredRes,
|
||||
FeatureSVE, FeatureSVE2];
|
||||
FeatureSVE, FeatureSVE2, FeatureBF16, FeatureComplxNum, FeatureCRC,
|
||||
FeatureFPARMv8, FeatureFullFP16, FeatureMatMulInt8, FeatureJS,
|
||||
FeatureNEON, FeatureLSE, FeatureRAS, FeatureRCPC, FeatureRDM,
|
||||
FeatureDotProd];
|
||||
list<SubtargetFeature> A65 = [HasV8_2aOps, FeatureSHA2, FeatureAES, FeatureFPARMv8,
|
||||
FeatureNEON, FeatureFullFP16, FeatureDotProd,
|
||||
FeatureRCPC, FeatureSSBS, FeatureRAS,
|
||||
FeaturePerfMon];
|
||||
FeaturePerfMon, FeatureCRC, FeatureLSE, FeatureRDM];
|
||||
list<SubtargetFeature> A76 = [HasV8_2aOps, FeatureSHA2, FeatureAES, FeatureFPARMv8,
|
||||
FeatureNEON, FeatureFullFP16, FeatureDotProd,
|
||||
FeatureRCPC, FeatureSSBS, FeaturePerfMon];
|
||||
FeatureRCPC, FeatureSSBS, FeaturePerfMon,
|
||||
FeatureCRC, FeatureLSE, FeatureRAS, FeatureRDM];
|
||||
list<SubtargetFeature> A77 = [HasV8_2aOps, FeatureSHA2, FeatureAES, FeatureFPARMv8,
|
||||
FeatureNEON, FeatureFullFP16, FeatureDotProd,
|
||||
FeatureRCPC, FeaturePerfMon, FeatureSSBS];
|
||||
FeatureRCPC, FeaturePerfMon, FeatureSSBS,
|
||||
FeatureCRC, FeatureLSE, FeatureRAS, FeatureRDM];
|
||||
list<SubtargetFeature> A78 = [HasV8_2aOps, FeatureSHA2, FeatureAES, FeatureFPARMv8,
|
||||
FeatureNEON, FeatureFullFP16, FeatureDotProd,
|
||||
FeatureRCPC, FeaturePerfMon, FeatureSPE,
|
||||
FeatureSSBS];
|
||||
FeatureSSBS, FeatureCRC, FeatureLSE, FeatureRAS, FeatureRDM];
|
||||
list<SubtargetFeature> A78AE = [HasV8_2aOps, FeatureSHA2, FeatureAES, FeatureFPARMv8,
|
||||
FeatureNEON, FeatureFullFP16, FeatureDotProd,
|
||||
FeatureRCPC, FeaturePerfMon, FeatureSPE,
|
||||
FeatureSSBS];
|
||||
FeatureSSBS, FeatureCRC, FeatureLSE, FeatureRAS, FeatureRDM];
|
||||
list<SubtargetFeature> A78C = [HasV8_2aOps, FeatureSHA2, FeatureAES, FeatureFPARMv8,
|
||||
FeatureNEON, FeatureFullFP16, FeatureDotProd,
|
||||
FeatureFlagM, FeaturePAuth,
|
||||
FeaturePerfMon, FeatureRCPC, FeatureSPE,
|
||||
FeatureSSBS];
|
||||
FeatureSSBS, FeatureCRC, FeatureLSE, FeatureRAS, FeatureRDM];
|
||||
list<SubtargetFeature> A710 = [HasV9_0aOps, FeatureNEON, FeaturePerfMon,
|
||||
FeatureETE, FeatureMTE, FeatureFP16FML,
|
||||
FeatureSVE2BitPerm, FeatureBF16, FeatureMatMulInt8,
|
||||
FeaturePAuth, FeatureFlagM, FeatureSB, FeatureSVE, FeatureSVE2];
|
||||
FeaturePAuth, FeatureFlagM, FeatureSB, FeatureSVE, FeatureSVE2,
|
||||
FeatureComplxNum, FeatureCRC, FeatureDotProd, FeatureFPARMv8,
|
||||
FeatureFullFP16, FeatureJS, FeatureLSE, FeatureRAS, FeatureRCPC, FeatureRDM];
|
||||
list<SubtargetFeature> A715 = [HasV9_0aOps, FeatureNEON, FeatureMTE,
|
||||
FeatureFP16FML, FeatureSVE, FeatureTRBE,
|
||||
FeatureSVE2BitPerm, FeatureBF16, FeatureETE,
|
||||
FeaturePerfMon, FeatureMatMulInt8, FeatureSPE,
|
||||
FeatureSB, FeatureSSBS, FeatureFullFP16, FeaturePAuth, FeaturePredRes, FeatureFlagM,
|
||||
FeatureSVE2];
|
||||
FeatureSVE2, FeatureComplxNum, FeatureCRC,
|
||||
FeatureDotProd, FeatureFPARMv8,
|
||||
FeatureJS, FeatureLSE, FeatureRAS,
|
||||
FeatureRCPC, FeatureRDM];
|
||||
list<SubtargetFeature> A720 = [HasV9_2aOps, FeatureMTE, FeatureFP16FML,
|
||||
FeatureTRBE, FeatureSVE2BitPerm, FeatureETE,
|
||||
FeaturePerfMon, FeatureSPE, FeatureSPE_EEF,
|
||||
FeatureSB, FeatureSSBS, FeaturePAuth, FeatureFlagM, FeaturePredRes,
|
||||
FeatureSVE, FeatureSVE2];
|
||||
FeatureSVE, FeatureSVE2, FeatureBF16, FeatureComplxNum, FeatureCRC,
|
||||
FeatureDotProd, FeatureFPARMv8, FeatureFullFP16, FeatureMatMulInt8,
|
||||
FeatureJS, FeatureLSE, FeatureNEON, FeatureRAS,
|
||||
FeatureRCPC, FeatureRDM];
|
||||
list<SubtargetFeature> A720AE = [HasV9_2aOps, FeatureMTE, FeatureFP16FML,
|
||||
FeatureTRBE, FeatureSVE2BitPerm, FeatureETE,
|
||||
FeaturePerfMon, FeatureSPE, FeatureSPE_EEF,
|
||||
FeatureSB, FeatureSSBS, FeaturePAuth, FeatureFlagM, FeaturePredRes,
|
||||
FeatureSVE, FeatureSVE2];
|
||||
FeatureSVE, FeatureSVE2, FeatureBF16, FeatureComplxNum, FeatureCRC,
|
||||
FeatureDotProd, FeatureFPARMv8, FeatureFullFP16, FeatureMatMulInt8,
|
||||
FeatureJS, FeatureLSE, FeatureNEON, FeatureRAS,
|
||||
FeatureRCPC, FeatureRDM];
|
||||
list<SubtargetFeature> A725 = [HasV9_2aOps, FeatureMTE, FeatureFP16FML,
|
||||
FeatureETE, FeaturePerfMon, FeatureSPE,
|
||||
FeatureSVE2BitPerm, FeatureSPE_EEF, FeatureTRBE,
|
||||
FeatureFlagM, FeaturePredRes, FeatureSB, FeatureSSBS,
|
||||
FeatureSVE, FeatureSVE2];
|
||||
FeatureSVE, FeatureSVE2, FeatureBF16, FeatureComplxNum, FeatureCRC,
|
||||
FeatureDotProd, FeatureFPARMv8, FeatureFullFP16, FeatureMatMulInt8,
|
||||
FeatureJS, FeatureLSE, FeatureNEON, FeaturePAuth, FeatureRAS,
|
||||
FeatureRCPC, FeatureRDM];
|
||||
list<SubtargetFeature> R82 = [HasV8_0rOps, FeaturePerfMon, FeatureFullFP16,
|
||||
FeatureFP16FML, FeatureSSBS, FeaturePredRes,
|
||||
FeatureSB, FeatureRDM, FeatureDotProd,
|
||||
FeatureComplxNum, FeatureJS,
|
||||
FeatureCacheDeepPersist,
|
||||
FeatureLSE, FeatureFlagM];
|
||||
FeatureFlagM, FeatureCRC, FeatureLSE, FeatureRAS, FeatureFPARMv8,
|
||||
FeatureNEON, FeaturePAuth, FeatureRCPC];
|
||||
list<SubtargetFeature> R82AE = [HasV8_0rOps, FeaturePerfMon, FeatureFullFP16,
|
||||
FeatureFP16FML, FeatureSSBS, FeaturePredRes,
|
||||
FeatureSB, FeatureRDM, FeatureDotProd,
|
||||
FeatureComplxNum, FeatureJS,
|
||||
FeatureCacheDeepPersist,
|
||||
FeatureLSE, FeatureFlagM];
|
||||
FeatureLSE, FeatureFlagM, FeatureCRC, FeatureFPARMv8, FeatureNEON,
|
||||
FeaturePAuth, FeatureRAS, FeatureRCPC];
|
||||
list<SubtargetFeature> X1 = [HasV8_2aOps, FeatureSHA2, FeatureAES, FeatureFPARMv8,
|
||||
FeatureNEON, FeatureRCPC, FeaturePerfMon,
|
||||
FeatureSPE, FeatureFullFP16, FeatureDotProd,
|
||||
FeatureSSBS];
|
||||
FeatureSSBS, FeatureCRC, FeatureLSE, FeatureRAS, FeatureRDM];
|
||||
list<SubtargetFeature> X1C = [HasV8_2aOps, FeatureSHA2, FeatureAES, FeatureFPARMv8,
|
||||
FeatureNEON, FeatureRCPC_IMMO, FeaturePerfMon,
|
||||
FeatureSPE, FeatureFullFP16, FeatureDotProd,
|
||||
FeaturePAuth, FeatureSSBS, FeatureFlagM,
|
||||
FeatureLSE2,
|
||||
FeatureRCPC];
|
||||
FeatureRCPC, FeatureCRC, FeatureLSE, FeatureRAS, FeatureRDM];
|
||||
list<SubtargetFeature> X2 = [HasV9_0aOps, FeatureNEON, FeaturePerfMon,
|
||||
FeatureMatMulInt8, FeatureBF16, FeatureAM,
|
||||
FeatureMTE, FeatureETE, FeatureSVE2BitPerm,
|
||||
FeatureFP16FML,
|
||||
FeaturePAuth, FeatureSSBS, FeatureSB, FeatureSVE, FeatureSVE2, FeatureFlagM];
|
||||
FeaturePAuth, FeatureSSBS, FeatureSB, FeatureSVE, FeatureSVE2, FeatureFlagM,
|
||||
FeatureComplxNum, FeatureCRC, FeatureDotProd, FeatureFPARMv8, FeatureFullFP16,
|
||||
FeatureJS, FeatureLSE, FeatureRAS, FeatureRCPC, FeatureRDM];
|
||||
list<SubtargetFeature> X3 = [HasV9_0aOps, FeatureSVE, FeatureNEON,
|
||||
FeaturePerfMon, FeatureETE, FeatureTRBE,
|
||||
FeatureSPE, FeatureBF16, FeatureMatMulInt8,
|
||||
FeatureMTE, FeatureSVE2BitPerm, FeatureFullFP16,
|
||||
FeatureFP16FML,
|
||||
FeatureSB, FeaturePAuth, FeaturePredRes, FeatureFlagM, FeatureSSBS,
|
||||
FeatureSVE2];
|
||||
FeatureSVE2, FeatureComplxNum, FeatureCRC, FeatureFPARMv8, FeatureJS,
|
||||
FeatureLSE, FeatureRAS, FeatureRCPC, FeatureRDM, FeatureDotProd];
|
||||
list<SubtargetFeature> X4 = [HasV9_2aOps,
|
||||
FeaturePerfMon, FeatureETE, FeatureTRBE,
|
||||
FeatureSPE, FeatureMTE, FeatureSVE2BitPerm,
|
||||
FeatureFP16FML, FeatureSPE_EEF,
|
||||
FeatureSB, FeatureSSBS, FeaturePAuth, FeatureFlagM, FeaturePredRes,
|
||||
FeatureSVE, FeatureSVE2];
|
||||
FeatureSVE, FeatureSVE2, FeatureComplxNum, FeatureCRC, FeatureDotProd,
|
||||
FeatureFPARMv8, FeatureFullFP16, FeatureMatMulInt8, FeatureJS, FeatureLSE,
|
||||
FeatureNEON, FeatureRAS, FeatureRCPC, FeatureRDM, FeatureBF16];
|
||||
list<SubtargetFeature> X925 = [HasV9_2aOps, FeatureMTE, FeatureFP16FML,
|
||||
FeatureETE, FeaturePerfMon, FeatureSPE,
|
||||
FeatureSVE2BitPerm, FeatureSPE_EEF, FeatureTRBE,
|
||||
FeatureFlagM, FeaturePredRes, FeatureSB, FeatureSSBS,
|
||||
FeatureSVE, FeatureSVE2];
|
||||
FeatureSVE, FeatureSVE2, FeatureBF16, FeatureComplxNum, FeatureCRC,
|
||||
FeatureDotProd, FeatureFPARMv8, FeatureFullFP16, FeatureMatMulInt8,
|
||||
FeatureJS, FeatureLSE, FeatureNEON, FeaturePAuth, FeatureRAS,
|
||||
FeatureRCPC, FeatureRDM];
|
||||
list<SubtargetFeature> A64FX = [HasV8_2aOps, FeatureFPARMv8, FeatureNEON,
|
||||
FeatureSHA2, FeaturePerfMon, FeatureFullFP16,
|
||||
FeatureSVE, FeatureComplxNum,
|
||||
FeatureAES];
|
||||
FeatureAES, FeatureCRC, FeatureLSE, FeatureRAS, FeatureRDM];
|
||||
list<SubtargetFeature> Carmel = [HasV8_2aOps, FeatureNEON, FeatureSHA2, FeatureAES,
|
||||
FeatureFullFP16];
|
||||
FeatureFullFP16, FeatureCRC, FeatureLSE, FeatureRAS, FeatureRDM,
|
||||
FeatureFPARMv8];
|
||||
list<SubtargetFeature> AppleA7 = [HasV8_0aOps, FeatureSHA2, FeatureAES, FeatureFPARMv8,
|
||||
FeatureNEON,FeaturePerfMon, FeatureAppleA7SysReg];
|
||||
list<SubtargetFeature> AppleA10 = [HasV8_0aOps, FeatureSHA2, FeatureAES, FeatureFPARMv8,
|
||||
FeatureNEON, FeaturePerfMon, FeatureCRC,
|
||||
FeatureRDM, FeaturePAN, FeatureLOR, FeatureVH];
|
||||
list<SubtargetFeature> AppleA11 = [HasV8_2aOps, FeatureSHA2, FeatureAES, FeatureFPARMv8,
|
||||
FeatureNEON, FeaturePerfMon, FeatureFullFP16];
|
||||
FeatureNEON, FeaturePerfMon, FeatureFullFP16, FeatureCRC,
|
||||
FeatureLSE, FeatureRAS, FeatureRDM];
|
||||
list<SubtargetFeature> AppleA12 = [HasV8_3aOps, FeatureSHA2, FeatureAES, FeatureFPARMv8,
|
||||
FeatureNEON, FeaturePerfMon, FeatureFullFP16];
|
||||
FeatureNEON, FeaturePerfMon, FeatureFullFP16,
|
||||
FeatureComplxNum, FeatureCRC, FeatureJS, FeatureLSE,
|
||||
FeaturePAuth, FeatureRAS, FeatureRCPC, FeatureRDM];
|
||||
list<SubtargetFeature> AppleA13 = [HasV8_4aOps, FeatureSHA2, FeatureAES, FeatureFPARMv8,
|
||||
FeatureNEON, FeaturePerfMon, FeatureFullFP16,
|
||||
FeatureFP16FML, FeatureSHA3];
|
||||
FeatureFP16FML, FeatureSHA3, FeatureComplxNum, FeatureCRC, FeatureJS, FeatureLSE,
|
||||
FeaturePAuth, FeatureRAS, FeatureRCPC, FeatureRDM, FeatureDotProd];
|
||||
list<SubtargetFeature> AppleA14 = [HasV8_4aOps, FeatureSHA2, FeatureAES, FeatureFPARMv8,
|
||||
FeatureNEON, FeaturePerfMon,
|
||||
FeatureFullFP16, FeatureFP16FML, FeatureSHA3,
|
||||
// ArmV8.5-a extensions, excluding BTI:
|
||||
FeatureAltFPCmp, FeatureFRInt3264,
|
||||
FeatureSpecRestrict, FeatureSSBS, FeatureSB,
|
||||
FeaturePredRes, FeatureCacheDeepPersist];
|
||||
FeaturePredRes, FeatureCacheDeepPersist,
|
||||
FeatureComplxNum, FeatureCRC, FeatureJS, FeatureLSE,
|
||||
FeaturePAuth, FeatureRAS, FeatureRCPC, FeatureRDM,
|
||||
FeatureDotProd];
|
||||
list<SubtargetFeature> AppleA15 = [HasV8_6aOps, FeatureSHA2, FeatureAES, FeatureFPARMv8,
|
||||
FeatureNEON, FeaturePerfMon, FeatureSHA3,
|
||||
FeatureFullFP16, FeatureFP16FML];
|
||||
FeatureFullFP16, FeatureFP16FML,
|
||||
FeatureComplxNum, FeatureCRC, FeatureJS, FeatureLSE,
|
||||
FeaturePAuth, FeatureRAS, FeatureRCPC, FeatureRDM,
|
||||
FeatureBF16, FeatureDotProd, FeatureMatMulInt8];
|
||||
list<SubtargetFeature> AppleA16 = [HasV8_6aOps, FeatureSHA2, FeatureAES, FeatureFPARMv8,
|
||||
FeatureNEON, FeaturePerfMon, FeatureSHA3,
|
||||
FeatureFullFP16, FeatureFP16FML,
|
||||
FeatureHCX];
|
||||
FeatureHCX,
|
||||
FeatureComplxNum, FeatureCRC, FeatureJS, FeatureLSE,
|
||||
FeaturePAuth, FeatureRAS, FeatureRCPC, FeatureRDM,
|
||||
FeatureBF16, FeatureDotProd, FeatureMatMulInt8];
|
||||
list<SubtargetFeature> AppleA17 = [HasV8_6aOps, FeatureSHA2, FeatureAES, FeatureFPARMv8,
|
||||
FeatureNEON, FeaturePerfMon, FeatureSHA3,
|
||||
FeatureFullFP16, FeatureFP16FML,
|
||||
FeatureHCX];
|
||||
// Technically apple-m4 is ARMv9.2a, but a quirk of LLVM defines v9.0 as
|
||||
// requiring SVE, which is optional according to the Arm ARM and not
|
||||
// supported by the core. ARMv8.7a is the next closest choice.
|
||||
list<SubtargetFeature> AppleM4 = [HasV8_7aOps, FeatureSHA2, FeatureFPARMv8,
|
||||
FeatureHCX,
|
||||
FeatureComplxNum, FeatureCRC, FeatureJS, FeatureLSE,
|
||||
FeaturePAuth, FeatureRAS, FeatureRCPC, FeatureRDM,
|
||||
FeatureBF16, FeatureDotProd, FeatureMatMulInt8];
|
||||
list<SubtargetFeature> AppleM4 = [HasV9_2aOps, FeatureSHA2, FeatureFPARMv8,
|
||||
FeatureNEON, FeaturePerfMon, FeatureSHA3,
|
||||
FeatureFullFP16, FeatureFP16FML,
|
||||
FeatureAES, FeatureBF16,
|
||||
FeatureSME, FeatureSME2,
|
||||
FeatureSMEF64F64, FeatureSMEI16I64];
|
||||
FeatureSMEF64F64, FeatureSMEI16I64,
|
||||
FeatureComplxNum, FeatureCRC, FeatureJS, FeatureLSE,
|
||||
FeaturePAuth, FeatureRAS, FeatureRCPC, FeatureRDM,
|
||||
FeatureDotProd, FeatureMatMulInt8];
|
||||
list<SubtargetFeature> ExynosM3 = [HasV8_0aOps, FeatureCRC, FeatureSHA2, FeatureAES,
|
||||
FeaturePerfMon];
|
||||
FeaturePerfMon, FeatureNEON, FeatureFPARMv8];
|
||||
list<SubtargetFeature> ExynosM4 = [HasV8_2aOps, FeatureSHA2, FeatureAES, FeatureDotProd,
|
||||
FeatureFullFP16, FeaturePerfMon];
|
||||
FeatureFullFP16, FeaturePerfMon, FeatureCRC, FeatureFPARMv8,
|
||||
FeatureLSE, FeatureNEON, FeatureRAS, FeatureRDM];
|
||||
list<SubtargetFeature> Falkor = [HasV8_0aOps, FeatureCRC, FeatureSHA2, FeatureAES,
|
||||
FeatureFPARMv8, FeatureNEON, FeaturePerfMon,
|
||||
FeatureRDM];
|
||||
list<SubtargetFeature> NeoverseE1 = [HasV8_2aOps, FeatureSHA2, FeatureAES, FeatureDotProd,
|
||||
FeatureFPARMv8, FeatureFullFP16, FeatureNEON,
|
||||
FeatureRCPC, FeatureSSBS, FeaturePerfMon];
|
||||
FeatureRCPC, FeatureSSBS, FeaturePerfMon, FeatureCRC,
|
||||
FeatureLSE, FeatureRAS, FeatureRDM];
|
||||
list<SubtargetFeature> NeoverseN1 = [HasV8_2aOps, FeatureSHA2, FeatureAES, FeatureDotProd,
|
||||
FeatureFPARMv8, FeatureFullFP16, FeatureNEON,
|
||||
FeatureRCPC, FeatureSPE, FeatureSSBS,
|
||||
FeaturePerfMon];
|
||||
FeaturePerfMon, FeatureCRC, FeatureLSE, FeatureRAS, FeatureRDM];
|
||||
list<SubtargetFeature> NeoverseN2 = [HasV9_0aOps, FeatureBF16, FeatureETE, FeatureFP16FML,
|
||||
FeatureMatMulInt8, FeatureMTE, FeatureSVE2,
|
||||
FeatureSVE2BitPerm, FeatureTRBE,
|
||||
FeaturePerfMon,
|
||||
FeatureDotProd, FeatureFullFP16, FeatureSB, FeatureSSBS, FeatureSVE];
|
||||
FeatureDotProd, FeatureFullFP16, FeatureSB, FeatureSSBS, FeatureSVE,
|
||||
FeatureComplxNum, FeatureCRC, FeatureFPARMv8, FeatureJS, FeatureLSE,
|
||||
FeatureNEON, FeaturePAuth, FeatureRAS, FeatureRCPC, FeatureRDM];
|
||||
list<SubtargetFeature> NeoverseN3 = [HasV9_2aOps, FeatureETE, FeatureFP16FML,
|
||||
FeatureFullFP16, FeatureMTE, FeaturePerfMon,
|
||||
FeatureRandGen, FeatureSPE, FeatureSPE_EEF,
|
||||
FeatureSVE2BitPerm,
|
||||
FeatureSSBS, FeatureSB, FeaturePredRes, FeaturePAuth, FeatureFlagM,
|
||||
FeatureSVE, FeatureSVE2];
|
||||
FeatureSVE, FeatureSVE2, FeatureBF16, FeatureComplxNum,
|
||||
FeatureCRC, FeatureDotProd, FeatureFPARMv8, FeatureMatMulInt8,
|
||||
FeatureJS, FeatureLSE, FeatureRAS, FeatureRCPC, FeatureRDM,
|
||||
FeatureNEON];
|
||||
list<SubtargetFeature> Neoverse512TVB = [HasV8_4aOps, FeatureBF16, FeatureCacheDeepPersist,
|
||||
FeatureSHA2, FeatureAES, FeatureFPARMv8, FeatureFP16FML,
|
||||
FeatureFullFP16, FeatureMatMulInt8, FeatureNEON,
|
||||
FeaturePerfMon, FeatureRandGen, FeatureSPE,
|
||||
FeatureSSBS, FeatureSVE,
|
||||
FeatureSHA3, FeatureSM4, FeatureDotProd];
|
||||
FeatureSHA3, FeatureSM4, FeatureDotProd, FeatureComplxNum,
|
||||
FeatureCRC, FeatureJS, FeatureLSE, FeaturePAuth, FeatureRAS,
|
||||
FeatureRCPC, FeatureRDM];
|
||||
list<SubtargetFeature> NeoverseV1 = [HasV8_4aOps, FeatureBF16, FeatureCacheDeepPersist,
|
||||
FeatureSHA2, FeatureAES, FeatureFPARMv8, FeatureFP16FML,
|
||||
FeatureFullFP16, FeatureMatMulInt8, FeatureNEON,
|
||||
FeaturePerfMon, FeatureRandGen, FeatureSPE,
|
||||
FeatureSSBS, FeatureSVE,
|
||||
FeatureSHA3, FeatureSM4, FeatureDotProd];
|
||||
FeatureSHA3, FeatureSM4, FeatureDotProd, FeatureComplxNum,
|
||||
FeatureCRC, FeatureJS, FeatureLSE, FeaturePAuth, FeatureRAS,
|
||||
FeatureRCPC, FeatureRDM];
|
||||
list<SubtargetFeature> NeoverseV2 = [HasV9_0aOps, FeatureBF16, FeatureSPE,
|
||||
FeaturePerfMon, FeatureETE, FeatureMatMulInt8,
|
||||
FeatureNEON, FeatureSVE2BitPerm, FeatureFP16FML,
|
||||
FeatureMTE, FeatureRandGen,
|
||||
FeatureSVE, FeatureSVE2, FeatureSSBS, FeatureFullFP16, FeatureDotProd];
|
||||
FeatureSVE, FeatureSVE2, FeatureSSBS, FeatureFullFP16, FeatureDotProd,
|
||||
FeatureComplxNum, FeatureCRC, FeatureFPARMv8, FeatureJS, FeatureLSE,
|
||||
FeaturePAuth, FeatureRAS, FeatureRCPC, FeatureRDM];
|
||||
list<SubtargetFeature> NeoverseV3 = [HasV9_2aOps, FeatureETE, FeatureFP16FML,
|
||||
FeatureFullFP16, FeatureLS64, FeatureMTE,
|
||||
FeaturePerfMon, FeatureRandGen, FeatureSPE,
|
||||
FeatureSPE_EEF, FeatureSVE2BitPerm, FeatureBRBE,
|
||||
FeatureSSBS, FeatureSB, FeaturePredRes, FeaturePAuth, FeatureFlagM,
|
||||
FeatureSVE, FeatureSVE2];
|
||||
FeatureSVE, FeatureSVE2, FeatureBF16, FeatureComplxNum, FeatureCRC,
|
||||
FeatureDotProd, FeatureFPARMv8, FeatureMatMulInt8, FeatureJS, FeatureLSE,
|
||||
FeatureNEON, FeatureRAS, FeatureRCPC, FeatureRDM, FeatureRME];
|
||||
list<SubtargetFeature> NeoverseV3AE = [HasV9_2aOps, FeatureETE, FeatureFP16FML,
|
||||
FeatureFullFP16, FeatureLS64, FeatureMTE,
|
||||
FeaturePerfMon, FeatureRandGen, FeatureSPE,
|
||||
FeatureSPE_EEF, FeatureSVE2BitPerm, FeatureBRBE,
|
||||
FeatureSSBS, FeatureSB, FeaturePredRes, FeaturePAuth, FeatureFlagM,
|
||||
FeatureSVE, FeatureSVE2];
|
||||
FeatureSVE, FeatureSVE2, FeatureBF16, FeatureComplxNum, FeatureCRC,
|
||||
FeatureDotProd, FeatureFPARMv8, FeatureMatMulInt8, FeatureJS,
|
||||
FeatureLSE, FeatureNEON, FeatureRAS, FeatureRCPC, FeatureRDM,
|
||||
FeatureRME];
|
||||
list<SubtargetFeature> Saphira = [HasV8_4aOps, FeatureSHA2, FeatureAES, FeatureFPARMv8,
|
||||
FeatureNEON, FeatureSPE, FeaturePerfMon];
|
||||
FeatureNEON, FeatureSPE, FeaturePerfMon, FeatureCRC,
|
||||
FeatureLSE, FeatureRDM, FeatureRAS, FeatureRCPC];
|
||||
list<SubtargetFeature> ThunderX = [HasV8_0aOps, FeatureCRC, FeatureSHA2, FeatureAES,
|
||||
FeatureFPARMv8, FeaturePerfMon, FeatureNEON];
|
||||
list<SubtargetFeature> ThunderX2T99 = [HasV8_1aOps, FeatureCRC, FeatureSHA2, FeatureAES,
|
||||
FeatureFPARMv8, FeatureNEON, FeatureLSE];
|
||||
FeatureFPARMv8, FeatureNEON, FeatureLSE,
|
||||
FeatureRDM];
|
||||
list<SubtargetFeature> ThunderX3T110 = [HasV8_3aOps, FeatureCRC, FeatureSHA2, FeatureAES,
|
||||
FeatureFPARMv8, FeatureNEON, FeatureLSE,
|
||||
FeaturePAuth, FeaturePerfMon];
|
||||
FeaturePAuth, FeaturePerfMon, FeatureComplxNum,
|
||||
FeatureJS, FeatureRAS, FeatureRCPC, FeatureRDM];
|
||||
list<SubtargetFeature> TSV110 = [HasV8_2aOps, FeatureSHA2, FeatureAES, FeatureFPARMv8,
|
||||
FeatureNEON, FeaturePerfMon, FeatureSPE,
|
||||
FeatureFullFP16, FeatureFP16FML, FeatureDotProd,
|
||||
FeatureJS, FeatureComplxNum];
|
||||
FeatureJS, FeatureComplxNum, FeatureCRC, FeatureLSE,
|
||||
FeatureRAS, FeatureRDM];
|
||||
list<SubtargetFeature> Ampere1 = [HasV8_6aOps, FeatureNEON, FeaturePerfMon,
|
||||
FeatureSSBS, FeatureRandGen, FeatureSB,
|
||||
FeatureSHA2, FeatureSHA3, FeatureAES,
|
||||
FeatureFullFP16];
|
||||
FeatureFullFP16, FeatureBF16, FeatureComplxNum, FeatureCRC,
|
||||
FeatureDotProd, FeatureFPARMv8, FeatureMatMulInt8, FeatureJS,
|
||||
FeatureLSE, FeaturePAuth, FeatureRAS, FeatureRCPC, FeatureRDM];
|
||||
list<SubtargetFeature> Ampere1A = [HasV8_6aOps, FeatureNEON, FeaturePerfMon,
|
||||
FeatureMTE, FeatureSSBS, FeatureRandGen,
|
||||
FeatureSB, FeatureSM4, FeatureSHA2,
|
||||
FeatureSHA3, FeatureAES,
|
||||
FeatureFullFP16];
|
||||
FeatureFullFP16, FeatureBF16, FeatureComplxNum,
|
||||
FeatureCRC, FeatureDotProd, FeatureFPARMv8, FeatureMatMulInt8,
|
||||
FeatureJS, FeatureLSE, FeaturePAuth, FeatureRAS, FeatureRCPC,
|
||||
FeatureRDM];
|
||||
list<SubtargetFeature> Ampere1B = [HasV8_7aOps, FeatureNEON, FeaturePerfMon,
|
||||
FeatureMTE, FeatureSSBS, FeatureRandGen,
|
||||
FeatureSB, FeatureSM4, FeatureSHA2,
|
||||
FeatureSHA3, FeatureAES, FeatureCSSC,
|
||||
FeatureWFxT, FeatureFullFP16];
|
||||
FeatureWFxT, FeatureFullFP16, FeatureBF16, FeatureComplxNum,
|
||||
FeatureCRC, FeatureDotProd, FeatureFPARMv8, FeatureMatMulInt8,
|
||||
FeatureJS, FeatureLSE, FeaturePAuth, FeatureRAS, FeatureRCPC,
|
||||
FeatureRDM];
|
||||
|
||||
list<SubtargetFeature> Oryon = [HasV8_6aOps, FeatureNEON, FeaturePerfMon,
|
||||
FeatureRandGen,
|
||||
FeaturePAuth, FeatureSM4, FeatureSHA2,
|
||||
FeatureSHA3, FeatureAES,
|
||||
FeatureSPE];
|
||||
FeatureSPE, FeatureBF16, FeatureComplxNum, FeatureCRC,
|
||||
FeatureDotProd, FeatureFPARMv8, FeatureMatMulInt8,
|
||||
FeatureJS, FeatureLSE, FeatureRAS, FeatureRCPC, FeatureRDM];
|
||||
|
||||
// ETE and TRBE are future architecture extensions. We temporarily enable them
|
||||
// by default for users targeting generic AArch64. The extensions do not
|
||||
|
||||
@@ -1,5 +1,4 @@
|
||||
// RUN: llvm-mc -triple aarch64-none-linux-gnu -show-encoding -mattr=+mec < %s | FileCheck %s
|
||||
// RUN: llvm-mc -triple aarch64-none-linux-gnu -show-encoding -mattr=+v9a < %s | FileCheck %s
|
||||
// RUN: not llvm-mc -triple aarch64-none-linux-gnu < %s 2>&1 | FileCheck --check-prefix=CHECK-NO-MEC %s
|
||||
|
||||
mrs x0, MECIDR_EL2
|
||||
@@ -1,6 +1,5 @@
|
||||
# RUN: llvm-mc -triple=aarch64 -mattr=+mec -disassemble %s | FileCheck %s
|
||||
# RUN: llvm-mc -triple=aarch64 -mattr=+v9a -disassemble %s | FileCheck %s
|
||||
# RUN: llvm-mc -triple=aarch64 -disassemble %s 2>&1 | FileCheck %s --check-prefix=CHECK-NO-MEC
|
||||
# RUN: llvm-mc -triple=aarch64 -mattr=+mec -disassemble %s | FileCheck %s
|
||||
# RUN: llvm-mc -triple=aarch64 -disassemble %s 2>&1 | FileCheck %s --check-prefix=CHECK-NO-MEC
|
||||
|
||||
[0xe0,0xa8,0x3c,0xd5]
|
||||
# CHECK: mrs x0, MECIDR_EL2
|
||||
|
||||
@@ -1360,7 +1360,8 @@ INSTANTIATE_TEST_SUITE_P(
|
||||
AArch64::AEK_SVE2BITPERM, AArch64::AEK_FP16FML,
|
||||
AArch64::AEK_PROFILE, AArch64::AEK_JSCVT,
|
||||
AArch64::AEK_FCMA, AArch64::AEK_PERFMON,
|
||||
AArch64::AEK_ETE, AArch64::AEK_SPE_EEF}),
|
||||
AArch64::AEK_ETE, AArch64::AEK_SPE_EEF,
|
||||
AArch64::AEK_RME}),
|
||||
AArch64CPUTestParams("neoverse-v3ae", "armv9.2-a",
|
||||
{AArch64::AEK_BF16, AArch64::AEK_I8MM,
|
||||
AArch64::AEK_SVE, AArch64::AEK_SVE2,
|
||||
@@ -1377,7 +1378,8 @@ INSTANTIATE_TEST_SUITE_P(
|
||||
AArch64::AEK_SVE2BITPERM, AArch64::AEK_FP16FML,
|
||||
AArch64::AEK_PROFILE, AArch64::AEK_JSCVT,
|
||||
AArch64::AEK_FCMA, AArch64::AEK_PERFMON,
|
||||
AArch64::AEK_ETE, AArch64::AEK_SPE_EEF}),
|
||||
AArch64::AEK_ETE, AArch64::AEK_SPE_EEF,
|
||||
AArch64::AEK_RME}),
|
||||
AArch64CPUTestParams(
|
||||
"cortex-r82", "armv8-r",
|
||||
{AArch64::AEK_CRC, AArch64::AEK_RDM, AArch64::AEK_SSBS,
|
||||
@@ -1626,7 +1628,7 @@ INSTANTIATE_TEST_SUITE_P(
|
||||
AArch64::AEK_FP16FML, AArch64::AEK_SHA3, AArch64::AEK_BF16,
|
||||
AArch64::AEK_I8MM, AArch64::AEK_JSCVT, AArch64::AEK_FCMA,
|
||||
AArch64::AEK_PAUTH, AArch64::AEK_PERFMON, AArch64::AEK_HCX}),
|
||||
AArch64CPUTestParams("apple-m4", "armv8.7-a",
|
||||
AArch64CPUTestParams("apple-m4", "armv9.2-a",
|
||||
{AArch64::AEK_CRC, AArch64::AEK_AES,
|
||||
AArch64::AEK_SHA2, AArch64::AEK_SHA3,
|
||||
AArch64::AEK_FP, AArch64::AEK_SIMD,
|
||||
@@ -1798,6 +1800,12 @@ INSTANTIATE_TEST_SUITE_P(
|
||||
AArch64::AEK_SIMD, AArch64::AEK_FP16,
|
||||
AArch64::AEK_RAS, AArch64::AEK_LSE,
|
||||
AArch64::AEK_RDM}),
|
||||
AArch64CPUTestParams(
|
||||
"saphira", "armv8.4-a",
|
||||
{AArch64::AEK_AES, AArch64::AEK_FP, AArch64::AEK_SIMD,
|
||||
AArch64::AEK_PERFMON, AArch64::AEK_SHA2, AArch64::AEK_PROFILE,
|
||||
AArch64::AEK_CRC, AArch64::AEK_LSE, AArch64::AEK_RDM,
|
||||
AArch64::AEK_RAS, AArch64::AEK_RCPC}),
|
||||
AArch64CPUTestParams(
|
||||
"oryon-1", "armv8.6-a",
|
||||
{AArch64::AEK_CRC, AArch64::AEK_FP, AArch64::AEK_PAUTH,
|
||||
|
||||
Reference in New Issue
Block a user