Pablo Greco 40546a
From 58b7dda3dda6a768f465f2b8782ef665bd0d7f72 Mon Sep 17 00:00:00 2001
Pablo Greco 40546a
Message-Id: <58b7dda3dda6a768f465f2b8782ef665bd0d7f72@dist-git>
Pablo Greco 40546a
From: Jiri Denemark <jdenemar@redhat.com>
Pablo Greco 40546a
Date: Fri, 21 Jun 2019 09:25:08 +0200
Pablo Greco 40546a
Subject: [PATCH] cputest: Test CPU signatures
Pablo Greco 40546a
MIME-Version: 1.0
Pablo Greco 40546a
Content-Type: text/plain; charset=UTF-8
Pablo Greco 40546a
Content-Transfer-Encoding: 8bit
Pablo Greco 40546a
Pablo Greco 40546a
The signature computation code is not too complicated and it will likely
Pablo Greco 40546a
never change so testing it is not very important. We do it mostly for a
Pablo Greco 40546a
nice side effect of easily accessible signature numbers for all CPU
Pablo Greco 40546a
data files.
Pablo Greco 40546a
Pablo Greco 40546a
Signed-off-by: Jiri Denemark <jdenemar@redhat.com>
Pablo Greco 40546a
Reviewed-by: Ján Tomko <jtomko@redhat.com>
Pablo Greco 40546a
(cherry picked from commit dd08d27fc205c86961b6d957fbb92da5aead5d1b)
Pablo Greco 40546a
Pablo Greco 40546a
https://bugzilla.redhat.com/show_bug.cgi?id=1686895
Pablo Greco 40546a
Pablo Greco 40546a
Signed-off-by: Jiri Denemark <jdenemar@redhat.com>
Pablo Greco 40546a
Message-Id: <24fc3fddd709251f12a12589605c76634af8fb1b.1561068591.git.jdenemar@redhat.com>
Pablo Greco 40546a
Reviewed-by: Ján Tomko <jtomko@redhat.com>
Pablo Greco 40546a
---
Pablo Greco 40546a
 tests/cputest.c                               | 86 +++++++++++++++++++
Pablo Greco 40546a
 tests/cputestdata/x86_64-cpuid-A10-5800K.sig  |  4 +
Pablo Greco 40546a
 tests/cputestdata/x86_64-cpuid-Atom-D510.sig  |  4 +
Pablo Greco 40546a
 tests/cputestdata/x86_64-cpuid-Atom-N450.sig  |  4 +
Pablo Greco 40546a
 .../cputestdata/x86_64-cpuid-Core-i5-2500.sig |  4 +
Pablo Greco 40546a
 .../x86_64-cpuid-Core-i5-2540M.sig            |  4 +
Pablo Greco 40546a
 .../x86_64-cpuid-Core-i5-4670T.sig            |  4 +
Pablo Greco 40546a
 .../cputestdata/x86_64-cpuid-Core-i5-650.sig  |  4 +
Pablo Greco 40546a
 .../cputestdata/x86_64-cpuid-Core-i5-6600.sig |  4 +
Pablo Greco 40546a
 .../x86_64-cpuid-Core-i7-2600-xsaveopt.sig    |  4 +
Pablo Greco 40546a
 .../cputestdata/x86_64-cpuid-Core-i7-2600.sig |  4 +
Pablo Greco 40546a
 .../x86_64-cpuid-Core-i7-3520M.sig            |  4 +
Pablo Greco 40546a
 .../x86_64-cpuid-Core-i7-3740QM.sig           |  4 +
Pablo Greco 40546a
 .../cputestdata/x86_64-cpuid-Core-i7-3770.sig |  4 +
Pablo Greco 40546a
 .../x86_64-cpuid-Core-i7-4510U.sig            |  4 +
Pablo Greco 40546a
 .../x86_64-cpuid-Core-i7-4600U.sig            |  4 +
Pablo Greco 40546a
 .../x86_64-cpuid-Core-i7-5600U-arat.sig       |  4 +
Pablo Greco 40546a
 .../x86_64-cpuid-Core-i7-5600U-ibrs.sig       |  4 +
Pablo Greco 40546a
 .../x86_64-cpuid-Core-i7-5600U.sig            |  4 +
Pablo Greco 40546a
 .../x86_64-cpuid-Core-i7-7600U.sig            |  4 +
Pablo Greco 40546a
 .../cputestdata/x86_64-cpuid-Core-i7-7700.sig |  4 +
Pablo Greco 40546a
 .../cputestdata/x86_64-cpuid-Core-i7-8700.sig |  4 +
Pablo Greco 40546a
 .../cputestdata/x86_64-cpuid-Core2-E6850.sig  |  4 +
Pablo Greco 40546a
 .../cputestdata/x86_64-cpuid-Core2-Q9500.sig  |  4 +
Pablo Greco 40546a
 .../x86_64-cpuid-EPYC-7601-32-Core-ibpb.sig   |  4 +
Pablo Greco 40546a
 .../x86_64-cpuid-EPYC-7601-32-Core.sig        |  4 +
Pablo Greco 40546a
 tests/cputestdata/x86_64-cpuid-FX-8150.sig    |  4 +
Pablo Greco 40546a
 .../cputestdata/x86_64-cpuid-Opteron-1352.sig |  4 +
Pablo Greco 40546a
 .../cputestdata/x86_64-cpuid-Opteron-2350.sig |  4 +
Pablo Greco 40546a
 .../cputestdata/x86_64-cpuid-Opteron-6234.sig |  4 +
Pablo Greco 40546a
 .../cputestdata/x86_64-cpuid-Opteron-6282.sig |  4 +
Pablo Greco 40546a
 .../x86_64-cpuid-Pentium-P6100.sig            |  4 +
Pablo Greco 40546a
 tests/cputestdata/x86_64-cpuid-Phenom-B95.sig |  4 +
Pablo Greco 40546a
 .../x86_64-cpuid-Ryzen-7-1800X-Eight-Core.sig |  4 +
Pablo Greco 40546a
 tests/cputestdata/x86_64-cpuid-Xeon-5110.sig  |  4 +
Pablo Greco 40546a
 .../x86_64-cpuid-Xeon-E3-1245-v5.sig          |  4 +
Pablo Greco 40546a
 .../x86_64-cpuid-Xeon-E5-2609-v3.sig          |  4 +
Pablo Greco 40546a
 .../x86_64-cpuid-Xeon-E5-2623-v4.sig          |  4 +
Pablo Greco 40546a
 .../x86_64-cpuid-Xeon-E5-2630-v3.sig          |  4 +
Pablo Greco 40546a
 .../x86_64-cpuid-Xeon-E5-2630-v4.sig          |  4 +
Pablo Greco 40546a
 .../x86_64-cpuid-Xeon-E5-2650-v3.sig          |  4 +
Pablo Greco 40546a
 .../x86_64-cpuid-Xeon-E5-2650-v4.sig          |  4 +
Pablo Greco 40546a
 .../cputestdata/x86_64-cpuid-Xeon-E5-2650.sig |  4 +
Pablo Greco 40546a
 .../cputestdata/x86_64-cpuid-Xeon-E7-4820.sig |  4 +
Pablo Greco 40546a
 .../cputestdata/x86_64-cpuid-Xeon-E7-4830.sig |  4 +
Pablo Greco 40546a
 .../x86_64-cpuid-Xeon-E7-8890-v3.sig          |  4 +
Pablo Greco 40546a
 tests/cputestdata/x86_64-cpuid-Xeon-E7540.sig |  4 +
Pablo Greco 40546a
 .../x86_64-cpuid-Xeon-Gold-5115.sig           |  4 +
Pablo Greco 40546a
 .../x86_64-cpuid-Xeon-Gold-6148.sig           |  4 +
Pablo Greco 40546a
 tests/cputestdata/x86_64-cpuid-Xeon-W3520.sig |  4 +
Pablo Greco 40546a
 tests/cputestdata/x86_64-cpuid-Xeon-X5460.sig |  4 +
Pablo Greco 40546a
 51 files changed, 286 insertions(+)
Pablo Greco 40546a
 create mode 100644 tests/cputestdata/x86_64-cpuid-A10-5800K.sig
Pablo Greco 40546a
 create mode 100644 tests/cputestdata/x86_64-cpuid-Atom-D510.sig
Pablo Greco 40546a
 create mode 100644 tests/cputestdata/x86_64-cpuid-Atom-N450.sig
Pablo Greco 40546a
 create mode 100644 tests/cputestdata/x86_64-cpuid-Core-i5-2500.sig
Pablo Greco 40546a
 create mode 100644 tests/cputestdata/x86_64-cpuid-Core-i5-2540M.sig
Pablo Greco 40546a
 create mode 100644 tests/cputestdata/x86_64-cpuid-Core-i5-4670T.sig
Pablo Greco 40546a
 create mode 100644 tests/cputestdata/x86_64-cpuid-Core-i5-650.sig
Pablo Greco 40546a
 create mode 100644 tests/cputestdata/x86_64-cpuid-Core-i5-6600.sig
Pablo Greco 40546a
 create mode 100644 tests/cputestdata/x86_64-cpuid-Core-i7-2600-xsaveopt.sig
Pablo Greco 40546a
 create mode 100644 tests/cputestdata/x86_64-cpuid-Core-i7-2600.sig
Pablo Greco 40546a
 create mode 100644 tests/cputestdata/x86_64-cpuid-Core-i7-3520M.sig
Pablo Greco 40546a
 create mode 100644 tests/cputestdata/x86_64-cpuid-Core-i7-3740QM.sig
Pablo Greco 40546a
 create mode 100644 tests/cputestdata/x86_64-cpuid-Core-i7-3770.sig
Pablo Greco 40546a
 create mode 100644 tests/cputestdata/x86_64-cpuid-Core-i7-4510U.sig
Pablo Greco 40546a
 create mode 100644 tests/cputestdata/x86_64-cpuid-Core-i7-4600U.sig
Pablo Greco 40546a
 create mode 100644 tests/cputestdata/x86_64-cpuid-Core-i7-5600U-arat.sig
Pablo Greco 40546a
 create mode 100644 tests/cputestdata/x86_64-cpuid-Core-i7-5600U-ibrs.sig
Pablo Greco 40546a
 create mode 100644 tests/cputestdata/x86_64-cpuid-Core-i7-5600U.sig
Pablo Greco 40546a
 create mode 100644 tests/cputestdata/x86_64-cpuid-Core-i7-7600U.sig
Pablo Greco 40546a
 create mode 100644 tests/cputestdata/x86_64-cpuid-Core-i7-7700.sig
Pablo Greco 40546a
 create mode 100644 tests/cputestdata/x86_64-cpuid-Core-i7-8700.sig
Pablo Greco 40546a
 create mode 100644 tests/cputestdata/x86_64-cpuid-Core2-E6850.sig
Pablo Greco 40546a
 create mode 100644 tests/cputestdata/x86_64-cpuid-Core2-Q9500.sig
Pablo Greco 40546a
 create mode 100644 tests/cputestdata/x86_64-cpuid-EPYC-7601-32-Core-ibpb.sig
Pablo Greco 40546a
 create mode 100644 tests/cputestdata/x86_64-cpuid-EPYC-7601-32-Core.sig
Pablo Greco 40546a
 create mode 100644 tests/cputestdata/x86_64-cpuid-FX-8150.sig
Pablo Greco 40546a
 create mode 100644 tests/cputestdata/x86_64-cpuid-Opteron-1352.sig
Pablo Greco 40546a
 create mode 100644 tests/cputestdata/x86_64-cpuid-Opteron-2350.sig
Pablo Greco 40546a
 create mode 100644 tests/cputestdata/x86_64-cpuid-Opteron-6234.sig
Pablo Greco 40546a
 create mode 100644 tests/cputestdata/x86_64-cpuid-Opteron-6282.sig
Pablo Greco 40546a
 create mode 100644 tests/cputestdata/x86_64-cpuid-Pentium-P6100.sig
Pablo Greco 40546a
 create mode 100644 tests/cputestdata/x86_64-cpuid-Phenom-B95.sig
Pablo Greco 40546a
 create mode 100644 tests/cputestdata/x86_64-cpuid-Ryzen-7-1800X-Eight-Core.sig
Pablo Greco 40546a
 create mode 100644 tests/cputestdata/x86_64-cpuid-Xeon-5110.sig
Pablo Greco 40546a
 create mode 100644 tests/cputestdata/x86_64-cpuid-Xeon-E3-1245-v5.sig
Pablo Greco 40546a
 create mode 100644 tests/cputestdata/x86_64-cpuid-Xeon-E5-2609-v3.sig
Pablo Greco 40546a
 create mode 100644 tests/cputestdata/x86_64-cpuid-Xeon-E5-2623-v4.sig
Pablo Greco 40546a
 create mode 100644 tests/cputestdata/x86_64-cpuid-Xeon-E5-2630-v3.sig
Pablo Greco 40546a
 create mode 100644 tests/cputestdata/x86_64-cpuid-Xeon-E5-2630-v4.sig
Pablo Greco 40546a
 create mode 100644 tests/cputestdata/x86_64-cpuid-Xeon-E5-2650-v3.sig
Pablo Greco 40546a
 create mode 100644 tests/cputestdata/x86_64-cpuid-Xeon-E5-2650-v4.sig
Pablo Greco 40546a
 create mode 100644 tests/cputestdata/x86_64-cpuid-Xeon-E5-2650.sig
Pablo Greco 40546a
 create mode 100644 tests/cputestdata/x86_64-cpuid-Xeon-E7-4820.sig
Pablo Greco 40546a
 create mode 100644 tests/cputestdata/x86_64-cpuid-Xeon-E7-4830.sig
Pablo Greco 40546a
 create mode 100644 tests/cputestdata/x86_64-cpuid-Xeon-E7-8890-v3.sig
Pablo Greco 40546a
 create mode 100644 tests/cputestdata/x86_64-cpuid-Xeon-E7540.sig
Pablo Greco 40546a
 create mode 100644 tests/cputestdata/x86_64-cpuid-Xeon-Gold-5115.sig
Pablo Greco 40546a
 create mode 100644 tests/cputestdata/x86_64-cpuid-Xeon-Gold-6148.sig
Pablo Greco 40546a
 create mode 100644 tests/cputestdata/x86_64-cpuid-Xeon-W3520.sig
Pablo Greco 40546a
 create mode 100644 tests/cputestdata/x86_64-cpuid-Xeon-X5460.sig
Pablo Greco 40546a
Pablo Greco 40546a
diff --git a/tests/cputest.c b/tests/cputest.c
Pablo Greco 40546a
index 9e5f807823..0cb9a57592 100644
Pablo Greco 40546a
--- a/tests/cputest.c
Pablo Greco 40546a
+++ b/tests/cputest.c
Pablo Greco 40546a
@@ -37,6 +37,7 @@
Pablo Greco 40546a
 #include "testutils.h"
Pablo Greco 40546a
 #include "cpu_conf.h"
Pablo Greco 40546a
 #include "cpu/cpu.h"
Pablo Greco 40546a
+#include "cpu/cpu_x86.h"
Pablo Greco 40546a
 #include "cpu/cpu_map.h"
Pablo Greco 40546a
 #include "virstring.h"
Pablo Greco 40546a
 
Pablo Greco 40546a
@@ -648,6 +649,62 @@ cpuTestGuestCPUID(const void *arg)
Pablo Greco 40546a
 }
Pablo Greco 40546a
 
Pablo Greco 40546a
 
Pablo Greco 40546a
+static int
Pablo Greco 40546a
+cpuTestCompareSignature(const struct data *data,
Pablo Greco 40546a
+                        virCPUDataPtr hostData)
Pablo Greco 40546a
+{
Pablo Greco 40546a
+    VIR_AUTOFREE(char *) result = NULL;
Pablo Greco 40546a
+    VIR_AUTOFREE(char *) sigStr = NULL;
Pablo Greco 40546a
+    unsigned long signature;
Pablo Greco 40546a
+    unsigned int family;
Pablo Greco 40546a
+    unsigned int model;
Pablo Greco 40546a
+    unsigned int stepping;
Pablo Greco 40546a
+
Pablo Greco 40546a
+    signature = virCPUx86DataGetSignature(hostData, &family, &model, &stepping);
Pablo Greco 40546a
+
Pablo Greco 40546a
+    if (virAsprintf(&result, "%s/cputestdata/%s-cpuid-%s.sig",
Pablo Greco 40546a
+                    abs_srcdir, virArchToString(data->arch), data->host) < 0)
Pablo Greco 40546a
+        return -1;
Pablo Greco 40546a
+
Pablo Greco 40546a
+    if (virAsprintf(&sigStr,
Pablo Greco 40546a
+                    "%1$06lx\n"
Pablo Greco 40546a
+                    "family:   %2$3u (0x%2$02x)\n"
Pablo Greco 40546a
+                    "model:    %3$3u (0x%3$02x)\n"
Pablo Greco 40546a
+                    "stepping: %4$3u (0x%4$02x)\n",
Pablo Greco 40546a
+                    signature, family, model, stepping) < 0)
Pablo Greco 40546a
+        return -1;
Pablo Greco 40546a
+
Pablo Greco 40546a
+    return virTestCompareToFile(sigStr, result);
Pablo Greco 40546a
+}
Pablo Greco 40546a
+
Pablo Greco 40546a
+
Pablo Greco 40546a
+static int
Pablo Greco 40546a
+cpuTestCPUIDSignature(const void *arg)
Pablo Greco 40546a
+{
Pablo Greco 40546a
+    const struct data *data = arg;
Pablo Greco 40546a
+    virCPUDataPtr hostData = NULL;
Pablo Greco 40546a
+    char *hostFile = NULL;
Pablo Greco 40546a
+    char *host = NULL;
Pablo Greco 40546a
+    int ret = -1;
Pablo Greco 40546a
+
Pablo Greco 40546a
+    if (virAsprintf(&hostFile, "%s/cputestdata/%s-cpuid-%s.xml",
Pablo Greco 40546a
+                    abs_srcdir, virArchToString(data->arch), data->host) < 0)
Pablo Greco 40546a
+        goto cleanup;
Pablo Greco 40546a
+
Pablo Greco 40546a
+    if (virTestLoadFile(hostFile, &host) < 0 ||
Pablo Greco 40546a
+        !(hostData = virCPUDataParse(host)))
Pablo Greco 40546a
+        goto cleanup;
Pablo Greco 40546a
+
Pablo Greco 40546a
+    ret = cpuTestCompareSignature(data, hostData);
Pablo Greco 40546a
+
Pablo Greco 40546a
+ cleanup:
Pablo Greco 40546a
+    virCPUDataFree(hostData);
Pablo Greco 40546a
+    VIR_FREE(hostFile);
Pablo Greco 40546a
+    VIR_FREE(host);
Pablo Greco 40546a
+    return ret;
Pablo Greco 40546a
+}
Pablo Greco 40546a
+
Pablo Greco 40546a
+
Pablo Greco 40546a
 static int
Pablo Greco 40546a
 cpuTestUpdateLiveCompare(virArch arch,
Pablo Greco 40546a
                          virCPUDefPtr actual,
Pablo Greco 40546a
@@ -869,6 +926,31 @@ cpuTestJSONCPUID(const void *arg)
Pablo Greco 40546a
     VIR_FREE(result);
Pablo Greco 40546a
     return ret;
Pablo Greco 40546a
 }
Pablo Greco 40546a
+
Pablo Greco 40546a
+
Pablo Greco 40546a
+static int
Pablo Greco 40546a
+cpuTestJSONSignature(const void *arg)
Pablo Greco 40546a
+{
Pablo Greco 40546a
+    const struct data *data = arg;
Pablo Greco 40546a
+    virQEMUCapsPtr qemuCaps = NULL;
Pablo Greco 40546a
+    virCPUDataPtr hostData = NULL;
Pablo Greco 40546a
+    qemuMonitorCPUModelInfoPtr modelInfo;
Pablo Greco 40546a
+    int ret = -1;
Pablo Greco 40546a
+
Pablo Greco 40546a
+    if (!(qemuCaps = cpuTestMakeQEMUCaps(data)))
Pablo Greco 40546a
+        goto cleanup;
Pablo Greco 40546a
+
Pablo Greco 40546a
+    modelInfo = virQEMUCapsGetCPUModelInfo(qemuCaps, VIR_DOMAIN_VIRT_KVM);
Pablo Greco 40546a
+    if (!(hostData = virQEMUCapsGetCPUModelX86Data(modelInfo, false)))
Pablo Greco 40546a
+        goto cleanup;
Pablo Greco 40546a
+
Pablo Greco 40546a
+    ret = cpuTestCompareSignature(data, hostData);
Pablo Greco 40546a
+
Pablo Greco 40546a
+ cleanup:
Pablo Greco 40546a
+    virObjectUnref(qemuCaps);
Pablo Greco 40546a
+    virCPUDataFree(hostData);
Pablo Greco 40546a
+    return ret;
Pablo Greco 40546a
+}
Pablo Greco 40546a
 #endif
Pablo Greco 40546a
 
Pablo Greco 40546a
 
Pablo Greco 40546a
@@ -1014,6 +1096,8 @@ mymain(void)
Pablo Greco 40546a
         if (json != JSON_NONE) { \
Pablo Greco 40546a
             DO_TEST(arch, cpuTestJSONCPUID, host, host, \
Pablo Greco 40546a
                     NULL, NULL, json, 0); \
Pablo Greco 40546a
+            DO_TEST(arch, cpuTestJSONSignature, host, host, \
Pablo Greco 40546a
+                    NULL, NULL, 0, 0); \
Pablo Greco 40546a
         } \
Pablo Greco 40546a
     } while (0)
Pablo Greco 40546a
 #else
Pablo Greco 40546a
@@ -1026,6 +1110,8 @@ mymain(void)
Pablo Greco 40546a
                 NULL, NULL, 0, 0); \
Pablo Greco 40546a
         DO_TEST(arch, cpuTestGuestCPUID, host, host, \
Pablo Greco 40546a
                 NULL, NULL, json, 0); \
Pablo Greco 40546a
+        DO_TEST(arch, cpuTestCPUIDSignature, host, host, \
Pablo Greco 40546a
+                NULL, NULL, 0, 0); \
Pablo Greco 40546a
         DO_TEST_JSON(arch, host, json); \
Pablo Greco 40546a
         if (json != JSON_NONE) { \
Pablo Greco 40546a
             DO_TEST(arch, cpuTestUpdateLive, host, host, \
Pablo Greco 40546a
diff --git a/tests/cputestdata/x86_64-cpuid-A10-5800K.sig b/tests/cputestdata/x86_64-cpuid-A10-5800K.sig
Pablo Greco 40546a
new file mode 100644
Pablo Greco 40546a
index 0000000000..8045eda561
Pablo Greco 40546a
--- /dev/null
Pablo Greco 40546a
+++ b/tests/cputestdata/x86_64-cpuid-A10-5800K.sig
Pablo Greco 40546a
@@ -0,0 +1,4 @@
Pablo Greco 40546a
+610f01
Pablo Greco 40546a
+family:    21 (0x15)
Pablo Greco 40546a
+model:     16 (0x10)
Pablo Greco 40546a
+stepping:   1 (0x01)
Pablo Greco 40546a
diff --git a/tests/cputestdata/x86_64-cpuid-Atom-D510.sig b/tests/cputestdata/x86_64-cpuid-Atom-D510.sig
Pablo Greco 40546a
new file mode 100644
Pablo Greco 40546a
index 0000000000..d22d28ff8a
Pablo Greco 40546a
--- /dev/null
Pablo Greco 40546a
+++ b/tests/cputestdata/x86_64-cpuid-Atom-D510.sig
Pablo Greco 40546a
@@ -0,0 +1,4 @@
Pablo Greco 40546a
+0106ca
Pablo Greco 40546a
+family:     6 (0x06)
Pablo Greco 40546a
+model:     28 (0x1c)
Pablo Greco 40546a
+stepping:  10 (0x0a)
Pablo Greco 40546a
diff --git a/tests/cputestdata/x86_64-cpuid-Atom-N450.sig b/tests/cputestdata/x86_64-cpuid-Atom-N450.sig
Pablo Greco 40546a
new file mode 100644
Pablo Greco 40546a
index 0000000000..d22d28ff8a
Pablo Greco 40546a
--- /dev/null
Pablo Greco 40546a
+++ b/tests/cputestdata/x86_64-cpuid-Atom-N450.sig
Pablo Greco 40546a
@@ -0,0 +1,4 @@
Pablo Greco 40546a
+0106ca
Pablo Greco 40546a
+family:     6 (0x06)
Pablo Greco 40546a
+model:     28 (0x1c)
Pablo Greco 40546a
+stepping:  10 (0x0a)
Pablo Greco 40546a
diff --git a/tests/cputestdata/x86_64-cpuid-Core-i5-2500.sig b/tests/cputestdata/x86_64-cpuid-Core-i5-2500.sig
Pablo Greco 40546a
new file mode 100644
Pablo Greco 40546a
index 0000000000..9b113c3798
Pablo Greco 40546a
--- /dev/null
Pablo Greco 40546a
+++ b/tests/cputestdata/x86_64-cpuid-Core-i5-2500.sig
Pablo Greco 40546a
@@ -0,0 +1,4 @@
Pablo Greco 40546a
+0206a7
Pablo Greco 40546a
+family:     6 (0x06)
Pablo Greco 40546a
+model:     42 (0x2a)
Pablo Greco 40546a
+stepping:   7 (0x07)
Pablo Greco 40546a
diff --git a/tests/cputestdata/x86_64-cpuid-Core-i5-2540M.sig b/tests/cputestdata/x86_64-cpuid-Core-i5-2540M.sig
Pablo Greco 40546a
new file mode 100644
Pablo Greco 40546a
index 0000000000..9b113c3798
Pablo Greco 40546a
--- /dev/null
Pablo Greco 40546a
+++ b/tests/cputestdata/x86_64-cpuid-Core-i5-2540M.sig
Pablo Greco 40546a
@@ -0,0 +1,4 @@
Pablo Greco 40546a
+0206a7
Pablo Greco 40546a
+family:     6 (0x06)
Pablo Greco 40546a
+model:     42 (0x2a)
Pablo Greco 40546a
+stepping:   7 (0x07)
Pablo Greco 40546a
diff --git a/tests/cputestdata/x86_64-cpuid-Core-i5-4670T.sig b/tests/cputestdata/x86_64-cpuid-Core-i5-4670T.sig
Pablo Greco 40546a
new file mode 100644
Pablo Greco 40546a
index 0000000000..e2fb6c5dd2
Pablo Greco 40546a
--- /dev/null
Pablo Greco 40546a
+++ b/tests/cputestdata/x86_64-cpuid-Core-i5-4670T.sig
Pablo Greco 40546a
@@ -0,0 +1,4 @@
Pablo Greco 40546a
+0306c3
Pablo Greco 40546a
+family:     6 (0x06)
Pablo Greco 40546a
+model:     60 (0x3c)
Pablo Greco 40546a
+stepping:   3 (0x03)
Pablo Greco 40546a
diff --git a/tests/cputestdata/x86_64-cpuid-Core-i5-650.sig b/tests/cputestdata/x86_64-cpuid-Core-i5-650.sig
Pablo Greco 40546a
new file mode 100644
Pablo Greco 40546a
index 0000000000..fc7c566de5
Pablo Greco 40546a
--- /dev/null
Pablo Greco 40546a
+++ b/tests/cputestdata/x86_64-cpuid-Core-i5-650.sig
Pablo Greco 40546a
@@ -0,0 +1,4 @@
Pablo Greco 40546a
+020652
Pablo Greco 40546a
+family:     6 (0x06)
Pablo Greco 40546a
+model:     37 (0x25)
Pablo Greco 40546a
+stepping:   2 (0x02)
Pablo Greco 40546a
diff --git a/tests/cputestdata/x86_64-cpuid-Core-i5-6600.sig b/tests/cputestdata/x86_64-cpuid-Core-i5-6600.sig
Pablo Greco 40546a
new file mode 100644
Pablo Greco 40546a
index 0000000000..7e57c2ded6
Pablo Greco 40546a
--- /dev/null
Pablo Greco 40546a
+++ b/tests/cputestdata/x86_64-cpuid-Core-i5-6600.sig
Pablo Greco 40546a
@@ -0,0 +1,4 @@
Pablo Greco 40546a
+0506e3
Pablo Greco 40546a
+family:     6 (0x06)
Pablo Greco 40546a
+model:     94 (0x5e)
Pablo Greco 40546a
+stepping:   3 (0x03)
Pablo Greco 40546a
diff --git a/tests/cputestdata/x86_64-cpuid-Core-i7-2600-xsaveopt.sig b/tests/cputestdata/x86_64-cpuid-Core-i7-2600-xsaveopt.sig
Pablo Greco 40546a
new file mode 100644
Pablo Greco 40546a
index 0000000000..9b113c3798
Pablo Greco 40546a
--- /dev/null
Pablo Greco 40546a
+++ b/tests/cputestdata/x86_64-cpuid-Core-i7-2600-xsaveopt.sig
Pablo Greco 40546a
@@ -0,0 +1,4 @@
Pablo Greco 40546a
+0206a7
Pablo Greco 40546a
+family:     6 (0x06)
Pablo Greco 40546a
+model:     42 (0x2a)
Pablo Greco 40546a
+stepping:   7 (0x07)
Pablo Greco 40546a
diff --git a/tests/cputestdata/x86_64-cpuid-Core-i7-2600.sig b/tests/cputestdata/x86_64-cpuid-Core-i7-2600.sig
Pablo Greco 40546a
new file mode 100644
Pablo Greco 40546a
index 0000000000..9b113c3798
Pablo Greco 40546a
--- /dev/null
Pablo Greco 40546a
+++ b/tests/cputestdata/x86_64-cpuid-Core-i7-2600.sig
Pablo Greco 40546a
@@ -0,0 +1,4 @@
Pablo Greco 40546a
+0206a7
Pablo Greco 40546a
+family:     6 (0x06)
Pablo Greco 40546a
+model:     42 (0x2a)
Pablo Greco 40546a
+stepping:   7 (0x07)
Pablo Greco 40546a
diff --git a/tests/cputestdata/x86_64-cpuid-Core-i7-3520M.sig b/tests/cputestdata/x86_64-cpuid-Core-i7-3520M.sig
Pablo Greco 40546a
new file mode 100644
Pablo Greco 40546a
index 0000000000..9c6ea10a83
Pablo Greco 40546a
--- /dev/null
Pablo Greco 40546a
+++ b/tests/cputestdata/x86_64-cpuid-Core-i7-3520M.sig
Pablo Greco 40546a
@@ -0,0 +1,4 @@
Pablo Greco 40546a
+0306a9
Pablo Greco 40546a
+family:     6 (0x06)
Pablo Greco 40546a
+model:     58 (0x3a)
Pablo Greco 40546a
+stepping:   9 (0x09)
Pablo Greco 40546a
diff --git a/tests/cputestdata/x86_64-cpuid-Core-i7-3740QM.sig b/tests/cputestdata/x86_64-cpuid-Core-i7-3740QM.sig
Pablo Greco 40546a
new file mode 100644
Pablo Greco 40546a
index 0000000000..9c6ea10a83
Pablo Greco 40546a
--- /dev/null
Pablo Greco 40546a
+++ b/tests/cputestdata/x86_64-cpuid-Core-i7-3740QM.sig
Pablo Greco 40546a
@@ -0,0 +1,4 @@
Pablo Greco 40546a
+0306a9
Pablo Greco 40546a
+family:     6 (0x06)
Pablo Greco 40546a
+model:     58 (0x3a)
Pablo Greco 40546a
+stepping:   9 (0x09)
Pablo Greco 40546a
diff --git a/tests/cputestdata/x86_64-cpuid-Core-i7-3770.sig b/tests/cputestdata/x86_64-cpuid-Core-i7-3770.sig
Pablo Greco 40546a
new file mode 100644
Pablo Greco 40546a
index 0000000000..9c6ea10a83
Pablo Greco 40546a
--- /dev/null
Pablo Greco 40546a
+++ b/tests/cputestdata/x86_64-cpuid-Core-i7-3770.sig
Pablo Greco 40546a
@@ -0,0 +1,4 @@
Pablo Greco 40546a
+0306a9
Pablo Greco 40546a
+family:     6 (0x06)
Pablo Greco 40546a
+model:     58 (0x3a)
Pablo Greco 40546a
+stepping:   9 (0x09)
Pablo Greco 40546a
diff --git a/tests/cputestdata/x86_64-cpuid-Core-i7-4510U.sig b/tests/cputestdata/x86_64-cpuid-Core-i7-4510U.sig
Pablo Greco 40546a
new file mode 100644
Pablo Greco 40546a
index 0000000000..fd6726a3da
Pablo Greco 40546a
--- /dev/null
Pablo Greco 40546a
+++ b/tests/cputestdata/x86_64-cpuid-Core-i7-4510U.sig
Pablo Greco 40546a
@@ -0,0 +1,4 @@
Pablo Greco 40546a
+040651
Pablo Greco 40546a
+family:     6 (0x06)
Pablo Greco 40546a
+model:     69 (0x45)
Pablo Greco 40546a
+stepping:   1 (0x01)
Pablo Greco 40546a
diff --git a/tests/cputestdata/x86_64-cpuid-Core-i7-4600U.sig b/tests/cputestdata/x86_64-cpuid-Core-i7-4600U.sig
Pablo Greco 40546a
new file mode 100644
Pablo Greco 40546a
index 0000000000..fd6726a3da
Pablo Greco 40546a
--- /dev/null
Pablo Greco 40546a
+++ b/tests/cputestdata/x86_64-cpuid-Core-i7-4600U.sig
Pablo Greco 40546a
@@ -0,0 +1,4 @@
Pablo Greco 40546a
+040651
Pablo Greco 40546a
+family:     6 (0x06)
Pablo Greco 40546a
+model:     69 (0x45)
Pablo Greco 40546a
+stepping:   1 (0x01)
Pablo Greco 40546a
diff --git a/tests/cputestdata/x86_64-cpuid-Core-i7-5600U-arat.sig b/tests/cputestdata/x86_64-cpuid-Core-i7-5600U-arat.sig
Pablo Greco 40546a
new file mode 100644
Pablo Greco 40546a
index 0000000000..dd18d0f76d
Pablo Greco 40546a
--- /dev/null
Pablo Greco 40546a
+++ b/tests/cputestdata/x86_64-cpuid-Core-i7-5600U-arat.sig
Pablo Greco 40546a
@@ -0,0 +1,4 @@
Pablo Greco 40546a
+0306d4
Pablo Greco 40546a
+family:     6 (0x06)
Pablo Greco 40546a
+model:     61 (0x3d)
Pablo Greco 40546a
+stepping:   4 (0x04)
Pablo Greco 40546a
diff --git a/tests/cputestdata/x86_64-cpuid-Core-i7-5600U-ibrs.sig b/tests/cputestdata/x86_64-cpuid-Core-i7-5600U-ibrs.sig
Pablo Greco 40546a
new file mode 100644
Pablo Greco 40546a
index 0000000000..dd18d0f76d
Pablo Greco 40546a
--- /dev/null
Pablo Greco 40546a
+++ b/tests/cputestdata/x86_64-cpuid-Core-i7-5600U-ibrs.sig
Pablo Greco 40546a
@@ -0,0 +1,4 @@
Pablo Greco 40546a
+0306d4
Pablo Greco 40546a
+family:     6 (0x06)
Pablo Greco 40546a
+model:     61 (0x3d)
Pablo Greco 40546a
+stepping:   4 (0x04)
Pablo Greco 40546a
diff --git a/tests/cputestdata/x86_64-cpuid-Core-i7-5600U.sig b/tests/cputestdata/x86_64-cpuid-Core-i7-5600U.sig
Pablo Greco 40546a
new file mode 100644
Pablo Greco 40546a
index 0000000000..dd18d0f76d
Pablo Greco 40546a
--- /dev/null
Pablo Greco 40546a
+++ b/tests/cputestdata/x86_64-cpuid-Core-i7-5600U.sig
Pablo Greco 40546a
@@ -0,0 +1,4 @@
Pablo Greco 40546a
+0306d4
Pablo Greco 40546a
+family:     6 (0x06)
Pablo Greco 40546a
+model:     61 (0x3d)
Pablo Greco 40546a
+stepping:   4 (0x04)
Pablo Greco 40546a
diff --git a/tests/cputestdata/x86_64-cpuid-Core-i7-7600U.sig b/tests/cputestdata/x86_64-cpuid-Core-i7-7600U.sig
Pablo Greco 40546a
new file mode 100644
Pablo Greco 40546a
index 0000000000..8f757722bb
Pablo Greco 40546a
--- /dev/null
Pablo Greco 40546a
+++ b/tests/cputestdata/x86_64-cpuid-Core-i7-7600U.sig
Pablo Greco 40546a
@@ -0,0 +1,4 @@
Pablo Greco 40546a
+0806e9
Pablo Greco 40546a
+family:     6 (0x06)
Pablo Greco 40546a
+model:    142 (0x8e)
Pablo Greco 40546a
+stepping:   9 (0x09)
Pablo Greco 40546a
diff --git a/tests/cputestdata/x86_64-cpuid-Core-i7-7700.sig b/tests/cputestdata/x86_64-cpuid-Core-i7-7700.sig
Pablo Greco 40546a
new file mode 100644
Pablo Greco 40546a
index 0000000000..d4db84a618
Pablo Greco 40546a
--- /dev/null
Pablo Greco 40546a
+++ b/tests/cputestdata/x86_64-cpuid-Core-i7-7700.sig
Pablo Greco 40546a
@@ -0,0 +1,4 @@
Pablo Greco 40546a
+0906e9
Pablo Greco 40546a
+family:     6 (0x06)
Pablo Greco 40546a
+model:    158 (0x9e)
Pablo Greco 40546a
+stepping:   9 (0x09)
Pablo Greco 40546a
diff --git a/tests/cputestdata/x86_64-cpuid-Core-i7-8700.sig b/tests/cputestdata/x86_64-cpuid-Core-i7-8700.sig
Pablo Greco 40546a
new file mode 100644
Pablo Greco 40546a
index 0000000000..45d6ea29d0
Pablo Greco 40546a
--- /dev/null
Pablo Greco 40546a
+++ b/tests/cputestdata/x86_64-cpuid-Core-i7-8700.sig
Pablo Greco 40546a
@@ -0,0 +1,4 @@
Pablo Greco 40546a
+0906ea
Pablo Greco 40546a
+family:     6 (0x06)
Pablo Greco 40546a
+model:    158 (0x9e)
Pablo Greco 40546a
+stepping:  10 (0x0a)
Pablo Greco 40546a
diff --git a/tests/cputestdata/x86_64-cpuid-Core2-E6850.sig b/tests/cputestdata/x86_64-cpuid-Core2-E6850.sig
Pablo Greco 40546a
new file mode 100644
Pablo Greco 40546a
index 0000000000..2382914bc7
Pablo Greco 40546a
--- /dev/null
Pablo Greco 40546a
+++ b/tests/cputestdata/x86_64-cpuid-Core2-E6850.sig
Pablo Greco 40546a
@@ -0,0 +1,4 @@
Pablo Greco 40546a
+0006fb
Pablo Greco 40546a
+family:     6 (0x06)
Pablo Greco 40546a
+model:     15 (0x0f)
Pablo Greco 40546a
+stepping:  11 (0x0b)
Pablo Greco 40546a
diff --git a/tests/cputestdata/x86_64-cpuid-Core2-Q9500.sig b/tests/cputestdata/x86_64-cpuid-Core2-Q9500.sig
Pablo Greco 40546a
new file mode 100644
Pablo Greco 40546a
index 0000000000..9aec5927d0
Pablo Greco 40546a
--- /dev/null
Pablo Greco 40546a
+++ b/tests/cputestdata/x86_64-cpuid-Core2-Q9500.sig
Pablo Greco 40546a
@@ -0,0 +1,4 @@
Pablo Greco 40546a
+01067a
Pablo Greco 40546a
+family:     6 (0x06)
Pablo Greco 40546a
+model:     23 (0x17)
Pablo Greco 40546a
+stepping:  10 (0x0a)
Pablo Greco 40546a
diff --git a/tests/cputestdata/x86_64-cpuid-EPYC-7601-32-Core-ibpb.sig b/tests/cputestdata/x86_64-cpuid-EPYC-7601-32-Core-ibpb.sig
Pablo Greco 40546a
new file mode 100644
Pablo Greco 40546a
index 0000000000..8fe15b7991
Pablo Greco 40546a
--- /dev/null
Pablo Greco 40546a
+++ b/tests/cputestdata/x86_64-cpuid-EPYC-7601-32-Core-ibpb.sig
Pablo Greco 40546a
@@ -0,0 +1,4 @@
Pablo Greco 40546a
+800f12
Pablo Greco 40546a
+family:    23 (0x17)
Pablo Greco 40546a
+model:      1 (0x01)
Pablo Greco 40546a
+stepping:   2 (0x02)
Pablo Greco 40546a
diff --git a/tests/cputestdata/x86_64-cpuid-EPYC-7601-32-Core.sig b/tests/cputestdata/x86_64-cpuid-EPYC-7601-32-Core.sig
Pablo Greco 40546a
new file mode 100644
Pablo Greco 40546a
index 0000000000..8fe15b7991
Pablo Greco 40546a
--- /dev/null
Pablo Greco 40546a
+++ b/tests/cputestdata/x86_64-cpuid-EPYC-7601-32-Core.sig
Pablo Greco 40546a
@@ -0,0 +1,4 @@
Pablo Greco 40546a
+800f12
Pablo Greco 40546a
+family:    23 (0x17)
Pablo Greco 40546a
+model:      1 (0x01)
Pablo Greco 40546a
+stepping:   2 (0x02)
Pablo Greco 40546a
diff --git a/tests/cputestdata/x86_64-cpuid-FX-8150.sig b/tests/cputestdata/x86_64-cpuid-FX-8150.sig
Pablo Greco 40546a
new file mode 100644
Pablo Greco 40546a
index 0000000000..4b6440a315
Pablo Greco 40546a
--- /dev/null
Pablo Greco 40546a
+++ b/tests/cputestdata/x86_64-cpuid-FX-8150.sig
Pablo Greco 40546a
@@ -0,0 +1,4 @@
Pablo Greco 40546a
+600f12
Pablo Greco 40546a
+family:    21 (0x15)
Pablo Greco 40546a
+model:      1 (0x01)
Pablo Greco 40546a
+stepping:   2 (0x02)
Pablo Greco 40546a
diff --git a/tests/cputestdata/x86_64-cpuid-Opteron-1352.sig b/tests/cputestdata/x86_64-cpuid-Opteron-1352.sig
Pablo Greco 40546a
new file mode 100644
Pablo Greco 40546a
index 0000000000..d21535b4b9
Pablo Greco 40546a
--- /dev/null
Pablo Greco 40546a
+++ b/tests/cputestdata/x86_64-cpuid-Opteron-1352.sig
Pablo Greco 40546a
@@ -0,0 +1,4 @@
Pablo Greco 40546a
+100f23
Pablo Greco 40546a
+family:    16 (0x10)
Pablo Greco 40546a
+model:      2 (0x02)
Pablo Greco 40546a
+stepping:   3 (0x03)
Pablo Greco 40546a
diff --git a/tests/cputestdata/x86_64-cpuid-Opteron-2350.sig b/tests/cputestdata/x86_64-cpuid-Opteron-2350.sig
Pablo Greco 40546a
new file mode 100644
Pablo Greco 40546a
index 0000000000..d21535b4b9
Pablo Greco 40546a
--- /dev/null
Pablo Greco 40546a
+++ b/tests/cputestdata/x86_64-cpuid-Opteron-2350.sig
Pablo Greco 40546a
@@ -0,0 +1,4 @@
Pablo Greco 40546a
+100f23
Pablo Greco 40546a
+family:    16 (0x10)
Pablo Greco 40546a
+model:      2 (0x02)
Pablo Greco 40546a
+stepping:   3 (0x03)
Pablo Greco 40546a
diff --git a/tests/cputestdata/x86_64-cpuid-Opteron-6234.sig b/tests/cputestdata/x86_64-cpuid-Opteron-6234.sig
Pablo Greco 40546a
new file mode 100644
Pablo Greco 40546a
index 0000000000..4b6440a315
Pablo Greco 40546a
--- /dev/null
Pablo Greco 40546a
+++ b/tests/cputestdata/x86_64-cpuid-Opteron-6234.sig
Pablo Greco 40546a
@@ -0,0 +1,4 @@
Pablo Greco 40546a
+600f12
Pablo Greco 40546a
+family:    21 (0x15)
Pablo Greco 40546a
+model:      1 (0x01)
Pablo Greco 40546a
+stepping:   2 (0x02)
Pablo Greco 40546a
diff --git a/tests/cputestdata/x86_64-cpuid-Opteron-6282.sig b/tests/cputestdata/x86_64-cpuid-Opteron-6282.sig
Pablo Greco 40546a
new file mode 100644
Pablo Greco 40546a
index 0000000000..4b6440a315
Pablo Greco 40546a
--- /dev/null
Pablo Greco 40546a
+++ b/tests/cputestdata/x86_64-cpuid-Opteron-6282.sig
Pablo Greco 40546a
@@ -0,0 +1,4 @@
Pablo Greco 40546a
+600f12
Pablo Greco 40546a
+family:    21 (0x15)
Pablo Greco 40546a
+model:      1 (0x01)
Pablo Greco 40546a
+stepping:   2 (0x02)
Pablo Greco 40546a
diff --git a/tests/cputestdata/x86_64-cpuid-Pentium-P6100.sig b/tests/cputestdata/x86_64-cpuid-Pentium-P6100.sig
Pablo Greco 40546a
new file mode 100644
Pablo Greco 40546a
index 0000000000..8712d34023
Pablo Greco 40546a
--- /dev/null
Pablo Greco 40546a
+++ b/tests/cputestdata/x86_64-cpuid-Pentium-P6100.sig
Pablo Greco 40546a
@@ -0,0 +1,4 @@
Pablo Greco 40546a
+020655
Pablo Greco 40546a
+family:     6 (0x06)
Pablo Greco 40546a
+model:     37 (0x25)
Pablo Greco 40546a
+stepping:   5 (0x05)
Pablo Greco 40546a
diff --git a/tests/cputestdata/x86_64-cpuid-Phenom-B95.sig b/tests/cputestdata/x86_64-cpuid-Phenom-B95.sig
Pablo Greco 40546a
new file mode 100644
Pablo Greco 40546a
index 0000000000..c93dbebc45
Pablo Greco 40546a
--- /dev/null
Pablo Greco 40546a
+++ b/tests/cputestdata/x86_64-cpuid-Phenom-B95.sig
Pablo Greco 40546a
@@ -0,0 +1,4 @@
Pablo Greco 40546a
+100f42
Pablo Greco 40546a
+family:    16 (0x10)
Pablo Greco 40546a
+model:      4 (0x04)
Pablo Greco 40546a
+stepping:   2 (0x02)
Pablo Greco 40546a
diff --git a/tests/cputestdata/x86_64-cpuid-Ryzen-7-1800X-Eight-Core.sig b/tests/cputestdata/x86_64-cpuid-Ryzen-7-1800X-Eight-Core.sig
Pablo Greco 40546a
new file mode 100644
Pablo Greco 40546a
index 0000000000..031bb84902
Pablo Greco 40546a
--- /dev/null
Pablo Greco 40546a
+++ b/tests/cputestdata/x86_64-cpuid-Ryzen-7-1800X-Eight-Core.sig
Pablo Greco 40546a
@@ -0,0 +1,4 @@
Pablo Greco 40546a
+800f11
Pablo Greco 40546a
+family:    23 (0x17)
Pablo Greco 40546a
+model:      1 (0x01)
Pablo Greco 40546a
+stepping:   1 (0x01)
Pablo Greco 40546a
diff --git a/tests/cputestdata/x86_64-cpuid-Xeon-5110.sig b/tests/cputestdata/x86_64-cpuid-Xeon-5110.sig
Pablo Greco 40546a
new file mode 100644
Pablo Greco 40546a
index 0000000000..15f8400ca6
Pablo Greco 40546a
--- /dev/null
Pablo Greco 40546a
+++ b/tests/cputestdata/x86_64-cpuid-Xeon-5110.sig
Pablo Greco 40546a
@@ -0,0 +1,4 @@
Pablo Greco 40546a
+0006f6
Pablo Greco 40546a
+family:     6 (0x06)
Pablo Greco 40546a
+model:     15 (0x0f)
Pablo Greco 40546a
+stepping:   6 (0x06)
Pablo Greco 40546a
diff --git a/tests/cputestdata/x86_64-cpuid-Xeon-E3-1245-v5.sig b/tests/cputestdata/x86_64-cpuid-Xeon-E3-1245-v5.sig
Pablo Greco 40546a
new file mode 100644
Pablo Greco 40546a
index 0000000000..7e57c2ded6
Pablo Greco 40546a
--- /dev/null
Pablo Greco 40546a
+++ b/tests/cputestdata/x86_64-cpuid-Xeon-E3-1245-v5.sig
Pablo Greco 40546a
@@ -0,0 +1,4 @@
Pablo Greco 40546a
+0506e3
Pablo Greco 40546a
+family:     6 (0x06)
Pablo Greco 40546a
+model:     94 (0x5e)
Pablo Greco 40546a
+stepping:   3 (0x03)
Pablo Greco 40546a
diff --git a/tests/cputestdata/x86_64-cpuid-Xeon-E5-2609-v3.sig b/tests/cputestdata/x86_64-cpuid-Xeon-E5-2609-v3.sig
Pablo Greco 40546a
new file mode 100644
Pablo Greco 40546a
index 0000000000..2c548c9934
Pablo Greco 40546a
--- /dev/null
Pablo Greco 40546a
+++ b/tests/cputestdata/x86_64-cpuid-Xeon-E5-2609-v3.sig
Pablo Greco 40546a
@@ -0,0 +1,4 @@
Pablo Greco 40546a
+0306f2
Pablo Greco 40546a
+family:     6 (0x06)
Pablo Greco 40546a
+model:     63 (0x3f)
Pablo Greco 40546a
+stepping:   2 (0x02)
Pablo Greco 40546a
diff --git a/tests/cputestdata/x86_64-cpuid-Xeon-E5-2623-v4.sig b/tests/cputestdata/x86_64-cpuid-Xeon-E5-2623-v4.sig
Pablo Greco 40546a
new file mode 100644
Pablo Greco 40546a
index 0000000000..4d1622a8ef
Pablo Greco 40546a
--- /dev/null
Pablo Greco 40546a
+++ b/tests/cputestdata/x86_64-cpuid-Xeon-E5-2623-v4.sig
Pablo Greco 40546a
@@ -0,0 +1,4 @@
Pablo Greco 40546a
+0406f1
Pablo Greco 40546a
+family:     6 (0x06)
Pablo Greco 40546a
+model:     79 (0x4f)
Pablo Greco 40546a
+stepping:   1 (0x01)
Pablo Greco 40546a
diff --git a/tests/cputestdata/x86_64-cpuid-Xeon-E5-2630-v3.sig b/tests/cputestdata/x86_64-cpuid-Xeon-E5-2630-v3.sig
Pablo Greco 40546a
new file mode 100644
Pablo Greco 40546a
index 0000000000..2c548c9934
Pablo Greco 40546a
--- /dev/null
Pablo Greco 40546a
+++ b/tests/cputestdata/x86_64-cpuid-Xeon-E5-2630-v3.sig
Pablo Greco 40546a
@@ -0,0 +1,4 @@
Pablo Greco 40546a
+0306f2
Pablo Greco 40546a
+family:     6 (0x06)
Pablo Greco 40546a
+model:     63 (0x3f)
Pablo Greco 40546a
+stepping:   2 (0x02)
Pablo Greco 40546a
diff --git a/tests/cputestdata/x86_64-cpuid-Xeon-E5-2630-v4.sig b/tests/cputestdata/x86_64-cpuid-Xeon-E5-2630-v4.sig
Pablo Greco 40546a
new file mode 100644
Pablo Greco 40546a
index 0000000000..4d1622a8ef
Pablo Greco 40546a
--- /dev/null
Pablo Greco 40546a
+++ b/tests/cputestdata/x86_64-cpuid-Xeon-E5-2630-v4.sig
Pablo Greco 40546a
@@ -0,0 +1,4 @@
Pablo Greco 40546a
+0406f1
Pablo Greco 40546a
+family:     6 (0x06)
Pablo Greco 40546a
+model:     79 (0x4f)
Pablo Greco 40546a
+stepping:   1 (0x01)
Pablo Greco 40546a
diff --git a/tests/cputestdata/x86_64-cpuid-Xeon-E5-2650-v3.sig b/tests/cputestdata/x86_64-cpuid-Xeon-E5-2650-v3.sig
Pablo Greco 40546a
new file mode 100644
Pablo Greco 40546a
index 0000000000..2c548c9934
Pablo Greco 40546a
--- /dev/null
Pablo Greco 40546a
+++ b/tests/cputestdata/x86_64-cpuid-Xeon-E5-2650-v3.sig
Pablo Greco 40546a
@@ -0,0 +1,4 @@
Pablo Greco 40546a
+0306f2
Pablo Greco 40546a
+family:     6 (0x06)
Pablo Greco 40546a
+model:     63 (0x3f)
Pablo Greco 40546a
+stepping:   2 (0x02)
Pablo Greco 40546a
diff --git a/tests/cputestdata/x86_64-cpuid-Xeon-E5-2650-v4.sig b/tests/cputestdata/x86_64-cpuid-Xeon-E5-2650-v4.sig
Pablo Greco 40546a
new file mode 100644
Pablo Greco 40546a
index 0000000000..4d1622a8ef
Pablo Greco 40546a
--- /dev/null
Pablo Greco 40546a
+++ b/tests/cputestdata/x86_64-cpuid-Xeon-E5-2650-v4.sig
Pablo Greco 40546a
@@ -0,0 +1,4 @@
Pablo Greco 40546a
+0406f1
Pablo Greco 40546a
+family:     6 (0x06)
Pablo Greco 40546a
+model:     79 (0x4f)
Pablo Greco 40546a
+stepping:   1 (0x01)
Pablo Greco 40546a
diff --git a/tests/cputestdata/x86_64-cpuid-Xeon-E5-2650.sig b/tests/cputestdata/x86_64-cpuid-Xeon-E5-2650.sig
Pablo Greco 40546a
new file mode 100644
Pablo Greco 40546a
index 0000000000..d6493fe186
Pablo Greco 40546a
--- /dev/null
Pablo Greco 40546a
+++ b/tests/cputestdata/x86_64-cpuid-Xeon-E5-2650.sig
Pablo Greco 40546a
@@ -0,0 +1,4 @@
Pablo Greco 40546a
+0206d7
Pablo Greco 40546a
+family:     6 (0x06)
Pablo Greco 40546a
+model:     45 (0x2d)
Pablo Greco 40546a
+stepping:   7 (0x07)
Pablo Greco 40546a
diff --git a/tests/cputestdata/x86_64-cpuid-Xeon-E7-4820.sig b/tests/cputestdata/x86_64-cpuid-Xeon-E7-4820.sig
Pablo Greco 40546a
new file mode 100644
Pablo Greco 40546a
index 0000000000..8738e95e41
Pablo Greco 40546a
--- /dev/null
Pablo Greco 40546a
+++ b/tests/cputestdata/x86_64-cpuid-Xeon-E7-4820.sig
Pablo Greco 40546a
@@ -0,0 +1,4 @@
Pablo Greco 40546a
+0206f2
Pablo Greco 40546a
+family:     6 (0x06)
Pablo Greco 40546a
+model:     47 (0x2f)
Pablo Greco 40546a
+stepping:   2 (0x02)
Pablo Greco 40546a
diff --git a/tests/cputestdata/x86_64-cpuid-Xeon-E7-4830.sig b/tests/cputestdata/x86_64-cpuid-Xeon-E7-4830.sig
Pablo Greco 40546a
new file mode 100644
Pablo Greco 40546a
index 0000000000..8738e95e41
Pablo Greco 40546a
--- /dev/null
Pablo Greco 40546a
+++ b/tests/cputestdata/x86_64-cpuid-Xeon-E7-4830.sig
Pablo Greco 40546a
@@ -0,0 +1,4 @@
Pablo Greco 40546a
+0206f2
Pablo Greco 40546a
+family:     6 (0x06)
Pablo Greco 40546a
+model:     47 (0x2f)
Pablo Greco 40546a
+stepping:   2 (0x02)
Pablo Greco 40546a
diff --git a/tests/cputestdata/x86_64-cpuid-Xeon-E7-8890-v3.sig b/tests/cputestdata/x86_64-cpuid-Xeon-E7-8890-v3.sig
Pablo Greco 40546a
new file mode 100644
Pablo Greco 40546a
index 0000000000..8fb489fac9
Pablo Greco 40546a
--- /dev/null
Pablo Greco 40546a
+++ b/tests/cputestdata/x86_64-cpuid-Xeon-E7-8890-v3.sig
Pablo Greco 40546a
@@ -0,0 +1,4 @@
Pablo Greco 40546a
+0306f4
Pablo Greco 40546a
+family:     6 (0x06)
Pablo Greco 40546a
+model:     63 (0x3f)
Pablo Greco 40546a
+stepping:   4 (0x04)
Pablo Greco 40546a
diff --git a/tests/cputestdata/x86_64-cpuid-Xeon-E7540.sig b/tests/cputestdata/x86_64-cpuid-Xeon-E7540.sig
Pablo Greco 40546a
new file mode 100644
Pablo Greco 40546a
index 0000000000..afc150cf82
Pablo Greco 40546a
--- /dev/null
Pablo Greco 40546a
+++ b/tests/cputestdata/x86_64-cpuid-Xeon-E7540.sig
Pablo Greco 40546a
@@ -0,0 +1,4 @@
Pablo Greco 40546a
+0206e6
Pablo Greco 40546a
+family:     6 (0x06)
Pablo Greco 40546a
+model:     46 (0x2e)
Pablo Greco 40546a
+stepping:   6 (0x06)
Pablo Greco 40546a
diff --git a/tests/cputestdata/x86_64-cpuid-Xeon-Gold-5115.sig b/tests/cputestdata/x86_64-cpuid-Xeon-Gold-5115.sig
Pablo Greco 40546a
new file mode 100644
Pablo Greco 40546a
index 0000000000..1a3f3449f0
Pablo Greco 40546a
--- /dev/null
Pablo Greco 40546a
+++ b/tests/cputestdata/x86_64-cpuid-Xeon-Gold-5115.sig
Pablo Greco 40546a
@@ -0,0 +1,4 @@
Pablo Greco 40546a
+050654
Pablo Greco 40546a
+family:     6 (0x06)
Pablo Greco 40546a
+model:     85 (0x55)
Pablo Greco 40546a
+stepping:   4 (0x04)
Pablo Greco 40546a
diff --git a/tests/cputestdata/x86_64-cpuid-Xeon-Gold-6148.sig b/tests/cputestdata/x86_64-cpuid-Xeon-Gold-6148.sig
Pablo Greco 40546a
new file mode 100644
Pablo Greco 40546a
index 0000000000..1a3f3449f0
Pablo Greco 40546a
--- /dev/null
Pablo Greco 40546a
+++ b/tests/cputestdata/x86_64-cpuid-Xeon-Gold-6148.sig
Pablo Greco 40546a
@@ -0,0 +1,4 @@
Pablo Greco 40546a
+050654
Pablo Greco 40546a
+family:     6 (0x06)
Pablo Greco 40546a
+model:     85 (0x55)
Pablo Greco 40546a
+stepping:   4 (0x04)
Pablo Greco 40546a
diff --git a/tests/cputestdata/x86_64-cpuid-Xeon-W3520.sig b/tests/cputestdata/x86_64-cpuid-Xeon-W3520.sig
Pablo Greco 40546a
new file mode 100644
Pablo Greco 40546a
index 0000000000..4b641ba966
Pablo Greco 40546a
--- /dev/null
Pablo Greco 40546a
+++ b/tests/cputestdata/x86_64-cpuid-Xeon-W3520.sig
Pablo Greco 40546a
@@ -0,0 +1,4 @@
Pablo Greco 40546a
+0106a5
Pablo Greco 40546a
+family:     6 (0x06)
Pablo Greco 40546a
+model:     26 (0x1a)
Pablo Greco 40546a
+stepping:   5 (0x05)
Pablo Greco 40546a
diff --git a/tests/cputestdata/x86_64-cpuid-Xeon-X5460.sig b/tests/cputestdata/x86_64-cpuid-Xeon-X5460.sig
Pablo Greco 40546a
new file mode 100644
Pablo Greco 40546a
index 0000000000..e17253472f
Pablo Greco 40546a
--- /dev/null
Pablo Greco 40546a
+++ b/tests/cputestdata/x86_64-cpuid-Xeon-X5460.sig
Pablo Greco 40546a
@@ -0,0 +1,4 @@
Pablo Greco 40546a
+010676
Pablo Greco 40546a
+family:     6 (0x06)
Pablo Greco 40546a
+model:     23 (0x17)
Pablo Greco 40546a
+stepping:   6 (0x06)
Pablo Greco 40546a
-- 
Pablo Greco 40546a
2.22.0
Pablo Greco 40546a