mirror of
https://github.com/google/cpu_features.git
synced 2025-09-29 23:14:54 +02:00
Update AArch64 features to Linux 6.12.
Change-Id: Ie4e3f6a1e308e81e89f45976e5cba3c0d9bc3039
This commit is contained in:

committed by
Mizux Seiha

parent
87584e2b96
commit
822b9a6cea
@@ -217,6 +217,7 @@ typedef struct {
|
|||||||
// (4-way) instructions.
|
// (4-way) instructions.
|
||||||
int smesf8dp2 : 1; // SVE2 FP8 to half-precision 2-way dot product FDOT
|
int smesf8dp2 : 1; // SVE2 FP8 to half-precision 2-way dot product FDOT
|
||||||
// (2-way) instructions.
|
// (2-way) instructions.
|
||||||
|
int poe : 1; // Stage 1 Permission Overlay.
|
||||||
|
|
||||||
// Make sure to update Aarch64FeaturesEnum below if you add a field here.
|
// Make sure to update Aarch64FeaturesEnum below if you add a field here.
|
||||||
} Aarch64Features;
|
} Aarch64Features;
|
||||||
@@ -331,6 +332,7 @@ typedef enum {
|
|||||||
AARCH64_SME_SF8FMA,
|
AARCH64_SME_SF8FMA,
|
||||||
AARCH64_SME_SF8DP4,
|
AARCH64_SME_SF8DP4,
|
||||||
AARCH64_SME_SF8DP2,
|
AARCH64_SME_SF8DP2,
|
||||||
|
AARCH64_POE,
|
||||||
AARCH64_LAST_,
|
AARCH64_LAST_,
|
||||||
} Aarch64FeaturesEnum;
|
} Aarch64FeaturesEnum;
|
||||||
|
|
||||||
|
@@ -124,6 +124,7 @@ CPU_FEATURES_START_CPP_NAMESPACE
|
|||||||
#define AARCH64_HWCAP2_SME_SF8FMA (1UL << 60)
|
#define AARCH64_HWCAP2_SME_SF8FMA (1UL << 60)
|
||||||
#define AARCH64_HWCAP2_SME_SF8DP4 (1UL << 61)
|
#define AARCH64_HWCAP2_SME_SF8DP4 (1UL << 61)
|
||||||
#define AARCH64_HWCAP2_SME_SF8DP2 (1UL << 62)
|
#define AARCH64_HWCAP2_SME_SF8DP2 (1UL << 62)
|
||||||
|
#define AARCH64_HWCAP2_POE (1UL << 63)
|
||||||
|
|
||||||
// http://elixir.free-electrons.com/linux/latest/source/arch/arm/include/uapi/asm/hwcap.h
|
// http://elixir.free-electrons.com/linux/latest/source/arch/arm/include/uapi/asm/hwcap.h
|
||||||
#define ARM_HWCAP_SWP (1UL << 0)
|
#define ARM_HWCAP_SWP (1UL << 0)
|
||||||
|
@@ -136,7 +136,9 @@
|
|||||||
AARCH64_HWCAP2_SME_SF8FMA) \
|
AARCH64_HWCAP2_SME_SF8FMA) \
|
||||||
LINE(AARCH64_SME_SF8DP4, smesf8dp4, "smesf8dp4", 0, \
|
LINE(AARCH64_SME_SF8DP4, smesf8dp4, "smesf8dp4", 0, \
|
||||||
AARCH64_HWCAP2_SME_SF8DP4) \
|
AARCH64_HWCAP2_SME_SF8DP4) \
|
||||||
LINE(AARCH64_SME_SF8DP2, smesf8dp2, "smesf8dp2", 0, AARCH64_HWCAP2_SME_SF8DP2)
|
LINE(AARCH64_SME_SF8DP2, smesf8dp2, "smesf8dp2", 0, \
|
||||||
|
AARCH64_HWCAP2_SME_SF8DP2) \
|
||||||
|
LINE(AARCH64_POE, poe, "poe", 0, AARCH64_HWCAP2_POE)
|
||||||
|
|
||||||
#define INTROSPECTION_PREFIX Aarch64
|
#define INTROSPECTION_PREFIX Aarch64
|
||||||
#define INTROSPECTION_ENUM_PREFIX AARCH64
|
#define INTROSPECTION_ENUM_PREFIX AARCH64
|
||||||
|
@@ -330,6 +330,7 @@ CPU revision : 3)");
|
|||||||
EXPECT_FALSE(info.features.smesf8fma);
|
EXPECT_FALSE(info.features.smesf8fma);
|
||||||
EXPECT_FALSE(info.features.smesf8dp4);
|
EXPECT_FALSE(info.features.smesf8dp4);
|
||||||
EXPECT_FALSE(info.features.smesf8dp2);
|
EXPECT_FALSE(info.features.smesf8dp2);
|
||||||
|
EXPECT_FALSE(info.features.poe);
|
||||||
}
|
}
|
||||||
#elif defined(CPU_FEATURES_OS_MACOS)
|
#elif defined(CPU_FEATURES_OS_MACOS)
|
||||||
TEST_F(CpuidAarch64Test, FromDarwinSysctlFromName) {
|
TEST_F(CpuidAarch64Test, FromDarwinSysctlFromName) {
|
||||||
|
Reference in New Issue
Block a user