aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMykola Hohsadze <koliagogsadze@gmail.com>2023-09-05 15:14:53 +0300
committerGitHub <noreply@github.com>2023-09-05 14:14:53 +0200
commitb960bcf0f5bca0f05d6ae7f89ddd8ff42893df0f (patch)
tree31a6b56fd78825a27101c9ffdab358eeeda2b6b9
parentaeaa84ecf4efc8d8edbabbc4ddf4ca6bc99d9fd7 (diff)
downloadcpu_features-b960bcf0f5bca0f05d6ae7f89ddd8ff42893df0f.tar.gz
Add ZEN2 4800S 0880F40 (#331)
-rw-r--r--src/impl_x86__base_implementation.inl1
-rw-r--r--test/cpuinfo_x86_test.cc14
2 files changed, 15 insertions, 0 deletions
diff --git a/src/impl_x86__base_implementation.inl b/src/impl_x86__base_implementation.inl
index 851fc15..11b2246 100644
--- a/src/impl_x86__base_implementation.inl
+++ b/src/impl_x86__base_implementation.inl
@@ -818,6 +818,7 @@ X86Microarchitecture GetX86Microarchitecture(const X86Info* info) {
case CPUID(0x17, 0x60):
case CPUID(0x17, 0x68):
case CPUID(0x17, 0x71):
+ case CPUID(0x17, 0x84):
case CPUID(0x17, 0x90):
case CPUID(0x17, 0x98):
case CPUID(0x17, 0xA0):
diff --git a/test/cpuinfo_x86_test.cc b/test/cpuinfo_x86_test.cc
index 961e69e..328aa5c 100644
--- a/test/cpuinfo_x86_test.cc
+++ b/test/cpuinfo_x86_test.cc
@@ -772,6 +772,20 @@ TEST_F(CpuidX86Test, AMD_K17_ZEN2_XBOX_SERIES_X) {
EXPECT_EQ(GetX86Microarchitecture(&info), X86Microarchitecture::AMD_ZEN2);
}
+// http://users.atw.hu/instlatx64/AuthenticAMD/AuthenticAMD0880F40_K17_CPUID.txt
+TEST_F(CpuidX86Test, AMD_K17_ZEN2_4800S) {
+ cpu().SetLeaves({
+ {{0x00000000, 0}, Leaf{0x00000010, 0x68747541, 0x444D4163, 0x69746E65}},
+ {{0x00000001, 0}, Leaf{0x00880F40, 0x00100800, 0x7ED8320B, 0x178BFBFF}},
+ });
+ const auto info = GetX86Info();
+
+ EXPECT_STREQ(info.vendor, CPU_FEATURES_VENDOR_AUTHENTIC_AMD);
+ EXPECT_EQ(info.family, 0x17);
+ EXPECT_EQ(info.model, 0x84);
+ EXPECT_EQ(GetX86Microarchitecture(&info), X86Microarchitecture::AMD_ZEN2);
+}
+
// http://users.atw.hu/instlatx64/HygonGenuine/HygonGenuine0900F02_Hygon_CPUID3.txt
TEST_F(CpuidX86Test, AMD_K18_ZEN_DHYANA) {
cpu().SetLeaves({