mirror of
https://github.com/anrieff/libcpuid
synced 2025-01-23 20:06:41 +00:00
Add cpu_feature_level_t enumerated values for x86 CPUs
I had to fix run_tests.py to update all test files properly. Fix #177
This commit is contained in:
parent
c5885699f0
commit
959edc34e7
229 changed files with 388 additions and 12 deletions
|
@ -121,7 +121,7 @@ int need_input = 0,
|
|||
need_hypervisor = 0,
|
||||
need_identify = 0;
|
||||
|
||||
#define MAX_REQUESTS 32
|
||||
#define MAX_REQUESTS 64
|
||||
int num_requests = 0;
|
||||
output_data_switch requests[MAX_REQUESTS];
|
||||
|
||||
|
@ -866,7 +866,7 @@ int main(int argc, char** argv)
|
|||
}
|
||||
|
||||
for (cpu_type_index = 0; cpu_type_index < data.num_cpu_types; cpu_type_index++) {
|
||||
if (raw_array.with_affinity)
|
||||
if (raw_array.with_affinity && (cpu_type_index > 0))
|
||||
fprintf(fout, "--------------------------------------------------------------------------------\n");
|
||||
for (i = 0; i < num_requests; i++)
|
||||
print_info(requests[i], &data.cpu_types[cpu_type_index]);
|
||||
|
|
|
@ -1628,7 +1628,17 @@ const char* cpu_feature_level_str(cpu_feature_level_t level)
|
|||
{
|
||||
const struct { cpu_feature_level_t level; const char* name; }
|
||||
matchtable[] = {
|
||||
{ FEATURE_LEVEL_UNKNOWN, "unknown" },
|
||||
{ FEATURE_LEVEL_UNKNOWN, "unknown" },
|
||||
/* x86 */
|
||||
{ CPU_FEATURE_LEVEL_I386, "i386" },
|
||||
{ CPU_FEATURE_LEVEL_I486, "i486" },
|
||||
{ CPU_FEATURE_LEVEL_I586, "i586" },
|
||||
{ CPU_FEATURE_LEVEL_I686, "i686" },
|
||||
{ CPU_FEATURE_LEVEL_X86_64_V1, "x86-64-v1" },
|
||||
{ CPU_FEATURE_LEVEL_X86_64_V2, "x86-64-v2" },
|
||||
{ CPU_FEATURE_LEVEL_X86_64_V3, "x86-64-v3" },
|
||||
{ CPU_FEATURE_LEVEL_X86_64_V4, "x86-64-v4" },
|
||||
/* ARM */
|
||||
{ FEATURE_LEVEL_ARM_V1, "ARMv1" },
|
||||
{ FEATURE_LEVEL_ARM_V2, "ARMv2" },
|
||||
{ FEATURE_LEVEL_ARM_V3, "ARMv3" },
|
||||
|
@ -1664,7 +1674,7 @@ const char* cpu_feature_level_str(cpu_feature_level_t level)
|
|||
{ FEATURE_LEVEL_ARM_V9_4_A, "ARMv9.4-A" },
|
||||
};
|
||||
unsigned i, n = COUNT_OF(matchtable);
|
||||
if (n != (NUM_CPU_FEATURE_LEVELS - FEATURE_LEVEL_ARM_V1) + 1) {
|
||||
if (n != (NUM_CPU_FEATURE_LEVELS - FEATURE_LEVEL_ARM_V1) + (CPU_FEATURE_LEVEL_X86_64_V4 - CPU_FEATURE_LEVEL_I386) + 2) {
|
||||
warnf("Warning: incomplete library, feature level matchtable size differs from the actual number of levels.\n");
|
||||
}
|
||||
for (i = 0; i < n; i++)
|
||||
|
|
|
@ -190,7 +190,17 @@ typedef enum {
|
|||
* @brief CPU architecture
|
||||
*/
|
||||
typedef enum {
|
||||
/* TODO: add x86 levels */
|
||||
/* x86: https://en.wikipedia.org/wiki/X86-64#Microarchitecture_levels */
|
||||
CPU_FEATURE_LEVEL_I386, /*!< i386 */
|
||||
CPU_FEATURE_LEVEL_I486, /*!< i486 */
|
||||
CPU_FEATURE_LEVEL_I586, /*!< i586 */
|
||||
CPU_FEATURE_LEVEL_I686, /*!< i686 */
|
||||
CPU_FEATURE_LEVEL_X86_64_V1, /*!< x86-64-v1 */
|
||||
CPU_FEATURE_LEVEL_X86_64_V2, /*!< x86-64-v2 */
|
||||
CPU_FEATURE_LEVEL_X86_64_V3, /*!< x86-64-v3 */
|
||||
CPU_FEATURE_LEVEL_X86_64_V4, /*!< x86-64-v4 */
|
||||
|
||||
/* ARM: https://en.wikipedia.org/wiki/ARM_architecture_family#Cores */
|
||||
FEATURE_LEVEL_ARM_V1 = 100, /*!< ARMv1 */
|
||||
FEATURE_LEVEL_ARM_V2, /*!< ARMv2 */
|
||||
FEATURE_LEVEL_ARM_V3, /*!< ARMv3 */
|
||||
|
|
|
@ -413,3 +413,104 @@ void decode_deterministic_cache_info_x86(uint32_t cache_regs[][NUM_REGS],
|
|||
assign_cache_data(1, type, size, ways, linesize, data);
|
||||
}
|
||||
}
|
||||
|
||||
void decode_architecture_version_x86(struct cpu_id_t* data)
|
||||
{
|
||||
bool is_compliant, has_all_features;
|
||||
int i, j;
|
||||
cpu_feature_level_t feature_level = FEATURE_LEVEL_UNKNOWN;
|
||||
|
||||
const struct { const int family; const cpu_feature_level_t feature_level; }
|
||||
architecture_matchtable_ia_32[] = {
|
||||
{ 4, CPU_FEATURE_LEVEL_I486 },
|
||||
{ 5, CPU_FEATURE_LEVEL_I586 },
|
||||
{ 6, CPU_FEATURE_LEVEL_I686 },
|
||||
{ 15, CPU_FEATURE_LEVEL_I686 }, // Intel Pentium 4, AMD K8
|
||||
};
|
||||
|
||||
const cpu_feature_t architecture_x86_64_v1[] = {
|
||||
CPU_FEATURE_CMOV,
|
||||
CPU_FEATURE_CX8,
|
||||
CPU_FEATURE_FPU,
|
||||
CPU_FEATURE_FXSR,
|
||||
CPU_FEATURE_MMX,
|
||||
CPU_FEATURE_SSE,
|
||||
CPU_FEATURE_SSE2,
|
||||
-1
|
||||
};
|
||||
|
||||
const cpu_feature_t architecture_x86_64_v2[] = {
|
||||
CPU_FEATURE_CX16,
|
||||
CPU_FEATURE_LAHF_LM,
|
||||
CPU_FEATURE_POPCNT,
|
||||
CPU_FEATURE_PNI,
|
||||
CPU_FEATURE_SSE4_1,
|
||||
CPU_FEATURE_SSE4_2,
|
||||
CPU_FEATURE_SSSE3,
|
||||
-1
|
||||
};
|
||||
|
||||
const cpu_feature_t architecture_x86_64_v3[] = {
|
||||
CPU_FEATURE_AVX,
|
||||
CPU_FEATURE_AVX2,
|
||||
CPU_FEATURE_BMI1,
|
||||
CPU_FEATURE_BMI2,
|
||||
CPU_FEATURE_F16C,
|
||||
CPU_FEATURE_FMA3,
|
||||
CPU_FEATURE_ABM,
|
||||
CPU_FEATURE_MOVBE,
|
||||
CPU_FEATURE_OSXSAVE,
|
||||
-1
|
||||
};
|
||||
|
||||
const cpu_feature_t architecture_x86_64_v4[] = {
|
||||
CPU_FEATURE_AVX512F,
|
||||
CPU_FEATURE_AVX512BW,
|
||||
CPU_FEATURE_AVX512CD,
|
||||
CPU_FEATURE_AVX512DQ,
|
||||
CPU_FEATURE_AVX512VL,
|
||||
-1
|
||||
};
|
||||
|
||||
const struct { const cpu_feature_t* features_array; const cpu_feature_level_t feature_level; }
|
||||
architecture_matchtable_x86_64[] = {
|
||||
{ architecture_x86_64_v1, CPU_FEATURE_LEVEL_X86_64_V1 },
|
||||
{ architecture_x86_64_v2, CPU_FEATURE_LEVEL_X86_64_V2 },
|
||||
{ architecture_x86_64_v3, CPU_FEATURE_LEVEL_X86_64_V3 },
|
||||
{ architecture_x86_64_v4, CPU_FEATURE_LEVEL_X86_64_V4 },
|
||||
};
|
||||
|
||||
if (!data->flags[CPU_FEATURE_LM]) {
|
||||
/* Check Intel Architecture, 32-bit */
|
||||
for (i = 0; i < COUNT_OF(architecture_matchtable_ia_32); i++) {
|
||||
is_compliant = (data->x86.family == architecture_matchtable_ia_32[i].family);
|
||||
debugf(3, "Check if CPU is %s compliant: %s for family %i\n", cpu_feature_level_str(architecture_matchtable_ia_32[i].feature_level), is_compliant ? "yes" : "no", architecture_matchtable_ia_32[i].family);
|
||||
if (is_compliant) {
|
||||
feature_level = architecture_matchtable_ia_32[i].feature_level;
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
else {
|
||||
/* Check Intel Architecture, 64-bit */
|
||||
for (i = 0; i < COUNT_OF(architecture_matchtable_x86_64); i++) {
|
||||
debugf(3, "Check if CPU is %s compliant:\n", cpu_feature_level_str(architecture_matchtable_x86_64[i].feature_level));
|
||||
has_all_features = true;
|
||||
for (j = 0; architecture_matchtable_x86_64[i].features_array[j] != -1; j++) {
|
||||
is_compliant = data->flags[ architecture_matchtable_x86_64[i].features_array[j] ];
|
||||
has_all_features = has_all_features && is_compliant;
|
||||
debugf(3, " - feature %s is %s\n", cpu_feature_str(architecture_matchtable_x86_64[i].features_array[j]), is_compliant ? "present" : "absent");
|
||||
}
|
||||
if (is_compliant)
|
||||
feature_level = architecture_matchtable_x86_64[i].feature_level;
|
||||
else
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
data->feature_level = feature_level;
|
||||
if (feature_level == FEATURE_LEVEL_UNKNOWN)
|
||||
warnf("Warning: CPU with CPUID signature %02X_%02XH has an unkown architecture version (LM=%i).\n", data->x86.ext_family, data->x86.ext_model, data->flags[CPU_FEATURE_LM]);
|
||||
else
|
||||
debugf(2, "x86 architecture version is %s\n", cpu_feature_level_str(feature_level));
|
||||
}
|
||||
|
|
|
@ -134,4 +134,7 @@ void decode_deterministic_cache_info_x86(uint32_t cache_regs[][NUM_REGS],
|
|||
struct cpu_id_t* data,
|
||||
struct internal_id_info_t* internal);
|
||||
|
||||
/* generic way to get microarchitecture levels for x86 CPUs */
|
||||
void decode_architecture_version_x86(struct cpu_id_t* data);
|
||||
|
||||
#endif /* __LIBCPUID_UTIL_H__ */
|
||||
|
|
|
@ -676,6 +676,7 @@ int cpuid_identify_amd(struct cpu_raw_data_t* raw, struct cpu_id_t* data, struct
|
|||
decode_amd_cache_info(raw, data);
|
||||
decode_amd_number_of_cores(raw, data);
|
||||
decode_amd_codename(data, internal);
|
||||
decode_architecture_version_x86(data);
|
||||
return 0;
|
||||
}
|
||||
|
||||
|
|
|
@ -207,6 +207,7 @@ int cpuid_identify_centaur(struct cpu_raw_data_t* raw, struct cpu_id_t* data, st
|
|||
if (raw->basic_cpuid[0][EAX] >= 4)
|
||||
decode_deterministic_cache_info_x86(raw->intel_fn4, MAX_INTELFN4_LEVEL, data, internal);
|
||||
decode_number_of_cores_x86(raw, data);
|
||||
decode_architecture_version_x86(data);
|
||||
|
||||
brand = get_brand_code_and_bits(data);
|
||||
model_code = get_model_code(data, brand);
|
||||
|
|
|
@ -1100,6 +1100,7 @@ int cpuid_identify_intel(struct cpu_raw_data_t* raw, struct cpu_id_t* data, stru
|
|||
if ((raw->basic_cpuid[0][EAX] < 11) || (decode_intel_extended_topology(raw, data) == 0))
|
||||
decode_number_of_cores_x86(raw, data);
|
||||
data->purpose = cpuid_identify_purpose_intel(raw);
|
||||
decode_architecture_version_x86(data);
|
||||
|
||||
brand = get_brand_code_and_bits(data);
|
||||
model_code = get_model_code(data);
|
||||
|
|
|
@ -72,6 +72,7 @@ intel_fn11[2]=00000000 00000000 00000000 00000000
|
|||
intel_fn11[3]=00000000 00000000 00000000 00000000
|
||||
--------------------------------------------------------------------------------
|
||||
x86
|
||||
x86-64-v2
|
||||
general
|
||||
15
|
||||
1
|
||||
|
|
|
@ -188,6 +188,7 @@ CPUID 8000001E: 00000013-00000101-00000000-00000000
|
|||
CPUID 8FFFFFFF: 00000000-00000000-00000000-00000000
|
||||
--------------------------------------------------------------------------------
|
||||
x86
|
||||
x86-64-v3
|
||||
general
|
||||
15
|
||||
0
|
||||
|
|
|
@ -80,6 +80,7 @@ amd_fn8000001dh[2]=00004143 03c0003f 000007ff 00000001
|
|||
amd_fn8000001dh[3]=00000000 00000000 00000000 00000000
|
||||
--------------------------------------------------------------------------------
|
||||
x86
|
||||
x86-64-v3
|
||||
general
|
||||
15
|
||||
8
|
||||
|
|
|
@ -192,6 +192,7 @@ CPUID 8000001E: 00000013-00000101-00000000-00000000
|
|||
CPUID 8FFFFFFF: 00000000-00000000-00000000-00000000
|
||||
--------------------------------------------------------------------------------
|
||||
x86
|
||||
x86-64-v3
|
||||
general
|
||||
15
|
||||
0
|
||||
|
|
|
@ -816,6 +816,7 @@ CPUID 8000001E: 0000002F-00000107-00000101-00000000
|
|||
CPUID 8FFFFFFF: 00000000-00000000-00000000-00000000
|
||||
--------------------------------------------------------------------------------
|
||||
x86
|
||||
x86-64-v3
|
||||
general
|
||||
15
|
||||
2
|
||||
|
|
|
@ -612,6 +612,7 @@ CPUID 8000001E: 0000002B-00000105-00000101-00000000
|
|||
CPUID 8FFFFFFF: 00000000-00000000-00000000-00000000
|
||||
--------------------------------------------------------------------------------
|
||||
x86
|
||||
x86-64-v3
|
||||
general
|
||||
15
|
||||
1
|
||||
|
|
|
@ -72,6 +72,7 @@ intel_fn11[2]=00000000 00000000 00000000 00000000
|
|||
intel_fn11[3]=00000000 00000000 00000000 00000000
|
||||
--------------------------------------------------------------------------------
|
||||
x86
|
||||
x86-64-v3
|
||||
general
|
||||
15
|
||||
2
|
||||
|
|
|
@ -294,6 +294,7 @@ CPUID 8000001E: 00000015-00000102-00000000-00000000
|
|||
CPUID 8FFFFFFF: 00000000-00000000-00000000-00000000
|
||||
--------------------------------------------------------------------------------
|
||||
x86
|
||||
x86-64-v3
|
||||
general
|
||||
15
|
||||
1
|
||||
|
|
|
@ -72,6 +72,7 @@ intel_fn11[2]=00000000 00000000 00000000 00000000
|
|||
intel_fn11[3]=00000000 00000000 00000000 00000000
|
||||
--------------------------------------------------------------------------------
|
||||
x86
|
||||
x86-64-v3
|
||||
general
|
||||
15
|
||||
1
|
||||
|
|
|
@ -196,6 +196,7 @@ CPUID 8000001E: 00000003-00000003-00000000-00000000
|
|||
CPUID 8FFFFFFF: 4C4C4548-494B204F-21595454-5E2D5E20 [HELLO KITTY! ^-^]
|
||||
--------------------------------------------------------------------------------
|
||||
x86
|
||||
x86-64-v3
|
||||
general
|
||||
15
|
||||
0
|
||||
|
|
|
@ -192,6 +192,7 @@ CPUID 8000001D: 0000C143-03C0003F-000007FF-00000002 [SL 02]
|
|||
CPUID 8000001E: 00000003-00000003-00000000-00000000
|
||||
--------------------------------------------------------------------------------
|
||||
x86
|
||||
x86-64-v3
|
||||
general
|
||||
15
|
||||
0
|
||||
|
|
|
@ -192,6 +192,7 @@ CPUID 8000001E: 00000003-00000003-00000000-00000000
|
|||
CPUID 8FFFFFFF: 4C4C4548-494B204F-21595454-5E2D5E20 [HELLO KITTY! ^-^]
|
||||
--------------------------------------------------------------------------------
|
||||
x86
|
||||
x86-64-v3
|
||||
general
|
||||
15
|
||||
0
|
||||
|
|
|
@ -98,6 +98,7 @@ CPUID 8000001E: 00000001-00000001-00000000-00000000
|
|||
CPUID 8FFFFFFF: 4C4C4548-494B204F-21595454-5E2D5E20 [HELLO KITTY! ^-^]
|
||||
--------------------------------------------------------------------------------
|
||||
x86
|
||||
x86-64-v3
|
||||
general
|
||||
15
|
||||
0
|
||||
|
|
|
@ -72,6 +72,7 @@ intel_fn11[2]=00000000 00000000 00000000 00000000
|
|||
intel_fn11[3]=00000000 00000000 00000000 00000000
|
||||
--------------------------------------------------------------------------------
|
||||
x86
|
||||
x86-64-v1
|
||||
general
|
||||
15
|
||||
6
|
||||
|
|
|
@ -72,6 +72,7 @@ intel_fn11[2]=00000000 00000000 00000000 00000000
|
|||
intel_fn11[3]=00000000 00000000 00000000 00000000
|
||||
--------------------------------------------------------------------------------
|
||||
x86
|
||||
x86-64-v1
|
||||
general
|
||||
15
|
||||
2
|
||||
|
|
|
@ -72,6 +72,7 @@ intel_fn11[2]=00000000 00000000 00000000 00000000
|
|||
intel_fn11[3]=00000000 00000000 00000000 00000000
|
||||
--------------------------------------------------------------------------------
|
||||
x86
|
||||
x86-64-v1
|
||||
general
|
||||
15
|
||||
5
|
||||
|
|
|
@ -72,6 +72,7 @@ intel_fn11[2]=00000000 00000000 00000000 00000000
|
|||
intel_fn11[3]=00000000 00000000 00000000 00000000
|
||||
--------------------------------------------------------------------------------
|
||||
x86
|
||||
x86-64-v1
|
||||
general
|
||||
15
|
||||
5
|
||||
|
|
|
@ -72,6 +72,7 @@ intel_fn11[2]=00000000 00000000 00000000 00000000
|
|||
intel_fn11[3]=00000000 00000000 00000000 00000000
|
||||
--------------------------------------------------------------------------------
|
||||
x86
|
||||
x86-64-v1
|
||||
general
|
||||
15
|
||||
5
|
||||
|
|
|
@ -72,6 +72,7 @@ intel_fn11[2]=00000000 00000000 00000000 00000000
|
|||
intel_fn11[3]=00000000 00000000 00000000 00000000
|
||||
--------------------------------------------------------------------------------
|
||||
x86
|
||||
x86-64-v1
|
||||
general
|
||||
15
|
||||
6
|
||||
|
|
|
@ -72,6 +72,7 @@ intel_fn11[2]=00000000 00000000 00000000 00000000
|
|||
intel_fn11[3]=00000000 00000000 00000000 00000000
|
||||
--------------------------------------------------------------------------------
|
||||
x86
|
||||
x86-64-v1
|
||||
general
|
||||
15
|
||||
9
|
||||
|
|
|
@ -72,6 +72,7 @@ intel_fn11[2]=00000000 00000000 00000000 00000000
|
|||
intel_fn11[3]=00000000 00000000 00000000 00000000
|
||||
--------------------------------------------------------------------------------
|
||||
x86
|
||||
x86-64-v1
|
||||
general
|
||||
15
|
||||
4
|
||||
|
|
|
@ -72,6 +72,7 @@ intel_fn11[2]=00000000 00000000 00000000 00000000
|
|||
intel_fn11[3]=00000000 00000000 00000000 00000000
|
||||
--------------------------------------------------------------------------------
|
||||
x86
|
||||
x86-64-v1
|
||||
general
|
||||
15
|
||||
4
|
||||
|
|
|
@ -72,6 +72,7 @@ intel_fn11[2]=00000000 00000000 00000000 00000000
|
|||
intel_fn11[3]=00000000 00000000 00000000 00000000
|
||||
--------------------------------------------------------------------------------
|
||||
x86
|
||||
x86-64-v1
|
||||
general
|
||||
15
|
||||
10
|
||||
|
|
|
@ -68,6 +68,7 @@ intel_fn4[2]=00000000 00000000 00000000 00000000
|
|||
intel_fn4[3]=00000000 00000000 00000000 00000000
|
||||
--------------------------------------------------------------------------------
|
||||
x86
|
||||
x86-64-v1
|
||||
general
|
||||
15
|
||||
2
|
||||
|
|
|
@ -72,6 +72,7 @@ intel_fn11[2]=00000000 00000000 00000000 00000000
|
|||
intel_fn11[3]=00000000 00000000 00000000 00000000
|
||||
--------------------------------------------------------------------------------
|
||||
x86
|
||||
x86-64-v1
|
||||
general
|
||||
15
|
||||
6
|
||||
|
|
|
@ -68,6 +68,7 @@ intel_fn4[2]=00000000 00000000 00000000 00000000
|
|||
intel_fn4[3]=00000000 00000000 00000000 00000000
|
||||
--------------------------------------------------------------------------------
|
||||
x86
|
||||
i686
|
||||
general
|
||||
6
|
||||
8
|
||||
|
|
|
@ -68,6 +68,7 @@ intel_fn4[2]=00000000 00000000 00000000 00000000
|
|||
intel_fn4[3]=00000000 00000000 00000000 00000000
|
||||
--------------------------------------------------------------------------------
|
||||
x86
|
||||
i686
|
||||
general
|
||||
6
|
||||
8
|
||||
|
|
|
@ -68,6 +68,7 @@ intel_fn4[2]=00000000 00000000 00000000 00000000
|
|||
intel_fn4[3]=00000000 00000000 00000000 00000000
|
||||
--------------------------------------------------------------------------------
|
||||
x86
|
||||
i686
|
||||
general
|
||||
6
|
||||
10
|
||||
|
|
|
@ -68,6 +68,7 @@ intel_fn4[2]=00000000 00000000 00000000 00000000
|
|||
intel_fn4[3]=00000000 00000000 00000000 00000000
|
||||
--------------------------------------------------------------------------------
|
||||
x86
|
||||
x86-64-v1
|
||||
general
|
||||
15
|
||||
11
|
||||
|
|
|
@ -81,6 +81,7 @@ amd_fn8000001dh[2]=00000000 00000000 00000000 00000000
|
|||
amd_fn8000001dh[3]=00000000 00000000 00000000 00000000
|
||||
--------------------------------------------------------------------------------
|
||||
x86
|
||||
x86-64-v1
|
||||
general
|
||||
15
|
||||
12
|
||||
|
|
|
@ -68,6 +68,7 @@ intel_fn4[2]=00000000 00000000 00000000 00000000
|
|||
intel_fn4[3]=00000000 00000000 00000000 00000000
|
||||
--------------------------------------------------------------------------------
|
||||
x86
|
||||
x86-64-v1
|
||||
general
|
||||
15
|
||||
12
|
||||
|
|
|
@ -68,6 +68,7 @@ intel_fn4[2]=00000000 00000000 00000000 00000000
|
|||
intel_fn4[3]=00000000 00000000 00000000 00000000
|
||||
--------------------------------------------------------------------------------
|
||||
x86
|
||||
x86-64-v1
|
||||
general
|
||||
15
|
||||
12
|
||||
|
|
|
@ -68,6 +68,7 @@ intel_fn4[2]=00000000 00000000 00000000 00000000
|
|||
intel_fn4[3]=00000000 00000000 00000000 00000000
|
||||
--------------------------------------------------------------------------------
|
||||
x86
|
||||
i686
|
||||
general
|
||||
15
|
||||
12
|
||||
|
|
|
@ -68,6 +68,7 @@ intel_fn4[2]=00000000 00000000 00000000 00000000
|
|||
intel_fn4[3]=00000000 00000000 00000000 00000000
|
||||
--------------------------------------------------------------------------------
|
||||
x86
|
||||
x86-64-v1
|
||||
general
|
||||
15
|
||||
3
|
||||
|
|
|
@ -68,6 +68,7 @@ intel_fn4[2]=00000000 00000000 00000000 00000000
|
|||
intel_fn4[3]=00000000 00000000 00000000 00000000
|
||||
--------------------------------------------------------------------------------
|
||||
x86
|
||||
x86-64-v1
|
||||
general
|
||||
15
|
||||
15
|
||||
|
|
|
@ -68,6 +68,7 @@ intel_fn4[2]=00000000 00000000 00000000 00000000
|
|||
intel_fn4[3]=00000000 00000000 00000000 00000000
|
||||
--------------------------------------------------------------------------------
|
||||
x86
|
||||
x86-64-v1
|
||||
general
|
||||
15
|
||||
4
|
||||
|
|
|
@ -44,6 +44,7 @@ ext_cpuid[30]=00000000 00000100 00000000 00000000
|
|||
ext_cpuid[31]=0000000f 0000016f 0000000f 00000000
|
||||
--------------------------------------------------------------------------------
|
||||
x86
|
||||
x86-64-v3
|
||||
general
|
||||
15
|
||||
8
|
||||
|
|
|
@ -44,6 +44,7 @@ ext_cpuid[30]=00000000 00000100 00000000 00000000
|
|||
ext_cpuid[31]=0000000f 0000016f 0000000f 00000000
|
||||
--------------------------------------------------------------------------------
|
||||
x86
|
||||
x86-64-v3
|
||||
general
|
||||
15
|
||||
8
|
||||
|
|
|
@ -44,6 +44,7 @@ ext_cpuid[30]=00000000 00000100 00000300 00000000
|
|||
ext_cpuid[31]=0000000f 0000016f 0000000f 00000001
|
||||
--------------------------------------------------------------------------------
|
||||
x86
|
||||
x86-64-v3
|
||||
general
|
||||
15
|
||||
8
|
||||
|
|
|
@ -102,6 +102,7 @@ CPUID 8000001F: 0000000F-0000016F-0000000F-00000000
|
|||
CPUID 8FFFFFFF: 00000000-00000000-00000000-00000000
|
||||
--------------------------------------------------------------------------------
|
||||
x86
|
||||
x86-64-v3
|
||||
general
|
||||
15
|
||||
0
|
||||
|
|
|
@ -44,6 +44,7 @@ ext_cpuid[30]=00000000 00000100 00000300 00000000
|
|||
ext_cpuid[31]=0000000f 0000016f 0000000f 00000001
|
||||
--------------------------------------------------------------------------------
|
||||
x86
|
||||
x86-64-v3
|
||||
general
|
||||
15
|
||||
1
|
||||
|
|
|
@ -76,6 +76,7 @@ intel_fn11[2]=00000000 00000000 00000000 00000000
|
|||
intel_fn11[3]=00000000 00000000 00000000 00000000
|
||||
--------------------------------------------------------------------------------
|
||||
x86
|
||||
x86-64-v3
|
||||
general
|
||||
15
|
||||
1
|
||||
|
|
|
@ -44,6 +44,7 @@ ext_cpuid[30]=00000000 00000100 00000000 00000000
|
|||
ext_cpuid[31]=0000000f 0000016f 0000000f 00000000
|
||||
--------------------------------------------------------------------------------
|
||||
x86
|
||||
x86-64-v3
|
||||
general
|
||||
15
|
||||
1
|
||||
|
|
|
@ -44,6 +44,7 @@ ext_cpuid[30]=00000000 00000100 00000000 00000000
|
|||
ext_cpuid[31]=00000007 0000016f 0000000f 00000000
|
||||
--------------------------------------------------------------------------------
|
||||
x86
|
||||
x86-64-v3
|
||||
general
|
||||
15
|
||||
1
|
||||
|
|
|
@ -72,6 +72,7 @@ intel_fn11[2]=00000000 00000000 00000000 00000000
|
|||
intel_fn11[3]=00000000 00000000 00000000 00000000
|
||||
--------------------------------------------------------------------------------
|
||||
x86
|
||||
x86-64-v3
|
||||
general
|
||||
15
|
||||
1
|
||||
|
|
|
@ -44,6 +44,7 @@ ext_cpuid[30]=00000000 00000100 00000100 00000000
|
|||
ext_cpuid[31]=00000007 0000016f 0000000f 00000001
|
||||
--------------------------------------------------------------------------------
|
||||
x86
|
||||
x86-64-v3
|
||||
general
|
||||
15
|
||||
1
|
||||
|
|
|
@ -960,6 +960,7 @@ CPUID 8000001F: 0001000F-0000016F-000001FD-00000000
|
|||
CPUID 80000020: 00000000-00000002-00000000-00000000
|
||||
--------------------------------------------------------------------------------
|
||||
x86
|
||||
x86-64-v3
|
||||
general
|
||||
15
|
||||
7
|
||||
|
|
|
@ -976,6 +976,7 @@ CPUID 80000020: 0000000B-00000000-00000000-0000000F [SL 01]
|
|||
CPUID 80000020: 00000000-00000000-00000000-00000000 [SL 02]
|
||||
--------------------------------------------------------------------------------
|
||||
x86
|
||||
x86-64-v3
|
||||
general
|
||||
15
|
||||
4
|
||||
|
|
|
@ -15360,6 +15360,7 @@ CPUID 80000020: 00000000-00000002-00000000-00000000
|
|||
CPUID 8FFFFFFF: 00000000-00000000-00000000-00000000
|
||||
--------------------------------------------------------------------------------
|
||||
x86
|
||||
x86-64-v3
|
||||
general
|
||||
15
|
||||
1
|
||||
|
@ -15393,6 +15394,7 @@ EPYC (Rome)
|
|||
fpu vme de pse tsc msr pae mce cx8 apic mtrr sep pge mca cmov pat pse36 clflush mmx fxsr sse sse2 ht pni pclmul monitor ssse3 cx16 sse4_1 sse4_2 syscall movbe popcnt aes xsave osxsave avx mmxext nx fxsr_opt rdtscp lm lahf_lm cmp_legacy svm abm misalignsse sse4a 3dnowprefetch osvw ibs skinit wdt ts ttp tm_amd hwpstate constant_tsc fma3 f16c rdrand cpb aperfmperf avx2 bmi1 bmi2 sha_ni rdseed adx
|
||||
--------------------------------------------------------------------------------
|
||||
x86
|
||||
x86-64-v3
|
||||
general
|
||||
15
|
||||
1
|
||||
|
|
|
@ -7680,6 +7680,7 @@ CPUID 80000020: 00000000-00000002-00000000-00000000
|
|||
CPUID 8FFFFFFF: 00000000-00000000-00000000-00000000
|
||||
--------------------------------------------------------------------------------
|
||||
x86
|
||||
x86-64-v3
|
||||
general
|
||||
15
|
||||
1
|
||||
|
|
|
@ -472,6 +472,7 @@ CPUID 8000001F: 0001000F-0000012F-0000000E-00000001
|
|||
CPUID 80000020: 00000000-00000002-00000000-00000000
|
||||
--------------------------------------------------------------------------------
|
||||
x86
|
||||
x86-64-v3
|
||||
general
|
||||
15
|
||||
0
|
||||
|
|
|
@ -720,6 +720,7 @@ CPUID 80000020: 00000000-00000002-00000000-00000000
|
|||
CPUID 8FFFFFFF: 00000000-00000000-00000000-00000000
|
||||
--------------------------------------------------------------------------------
|
||||
x86
|
||||
x86-64-v3
|
||||
general
|
||||
15
|
||||
8
|
||||
|
|
|
@ -972,6 +972,7 @@ amd_fn8000001dh[2]=00004143 01c0003f 000003ff 00000002
|
|||
amd_fn8000001dh[3]=00014163 03c0003f 00003fff 00000001
|
||||
--------------------------------------------------------------------------------
|
||||
x86
|
||||
x86-64-v3
|
||||
general
|
||||
15
|
||||
1
|
||||
|
|
|
@ -472,6 +472,7 @@ CPUID 8000001F: 0001000F-0000012F-0000000E-00000001
|
|||
CPUID 80000020: 00000000-00000002-00000000-00000000
|
||||
--------------------------------------------------------------------------------
|
||||
x86
|
||||
x86-64-v3
|
||||
general
|
||||
15
|
||||
0
|
||||
|
|
|
@ -360,6 +360,7 @@ CPUID 80000020: 00000000-00000002-00000000-00000000
|
|||
CPUID 8FFFFFFF: 00000000-00000000-00000000-00000000
|
||||
--------------------------------------------------------------------------------
|
||||
x86
|
||||
x86-64-v3
|
||||
general
|
||||
15
|
||||
0
|
||||
|
|
|
@ -80,6 +80,7 @@ amd_fn8000001dh[2]=00004143 01c0003f 000003ff 00000002
|
|||
amd_fn8000001dh[3]=0001c163 03c0003f 00000fff 00000001
|
||||
--------------------------------------------------------------------------------
|
||||
x86
|
||||
x86-64-v3
|
||||
general
|
||||
15
|
||||
8
|
||||
|
|
|
@ -960,6 +960,7 @@ CPUID 80000020: 00000000-00000002-00000000-00000000
|
|||
CPUID 8FFFFFFF: 00000000-00000000-00000000-00000000
|
||||
--------------------------------------------------------------------------------
|
||||
x86
|
||||
x86-64-v3
|
||||
general
|
||||
15
|
||||
1
|
||||
|
|
|
@ -960,6 +960,7 @@ CPUID 80000020: 00000000-00000002-00000000-00000000
|
|||
CPUID 8FFFFFFF: 00000000-00000000-00000000-00000000
|
||||
--------------------------------------------------------------------------------
|
||||
x86
|
||||
x86-64-v3
|
||||
general
|
||||
15
|
||||
0
|
||||
|
|
|
@ -1440,6 +1440,7 @@ CPUID 80000020: 00000000-00000002-00000000-00000000
|
|||
CPUID 8FFFFFFF: 00000000-00000000-00000000-00000000
|
||||
--------------------------------------------------------------------------------
|
||||
x86
|
||||
x86-64-v3
|
||||
general
|
||||
15
|
||||
1
|
||||
|
|
|
@ -3840,6 +3840,7 @@ CPUID 80000020: 00000000-00000002-00000000-00000000
|
|||
CPUID 8FFFFFFF: 00000000-00000000-00000000-00000000
|
||||
--------------------------------------------------------------------------------
|
||||
x86
|
||||
x86-64-v3
|
||||
general
|
||||
15
|
||||
1
|
||||
|
|
|
@ -496,6 +496,7 @@ CPUID 80000020: 00000000-00000000-00000000-00000000 [SL 02]
|
|||
CPUID 8FFFFFFF: 00000000-00000000-00000000-00000000
|
||||
--------------------------------------------------------------------------------
|
||||
x86
|
||||
x86-64-v3
|
||||
general
|
||||
15
|
||||
0
|
||||
|
|
|
@ -488,6 +488,7 @@ CPUID 80000020: 0000000B-00000000-00000000-0000000F [SL 01]
|
|||
CPUID 8FFFFFFF: 00000000-00000000-00000000-00000000
|
||||
--------------------------------------------------------------------------------
|
||||
x86
|
||||
x86-64-v3
|
||||
general
|
||||
15
|
||||
1
|
||||
|
|
|
@ -8320,6 +8320,7 @@ CPUID 80000023: 00000000-00000000-00000000-00000000
|
|||
CPUID 8FFFFFFF: 00000000-00000000-00000000-00000000
|
||||
--------------------------------------------------------------------------------
|
||||
x86
|
||||
x86-64-v3
|
||||
general
|
||||
15
|
||||
1
|
||||
|
|
|
@ -1024,6 +1024,7 @@ CPUID 80000022: 00000000-00000000-00000000-00000000
|
|||
CPUID 80000023: 00000000-00000000-00000000-00000000
|
||||
--------------------------------------------------------------------------------
|
||||
x86
|
||||
x86-64-v3
|
||||
general
|
||||
15
|
||||
0
|
||||
|
|
|
@ -1024,6 +1024,7 @@ CPUID 80000022: 00000000-00000000-00000000-00000000
|
|||
CPUID 80000023: 00000000-00000000-00000000-00000000
|
||||
--------------------------------------------------------------------------------
|
||||
x86
|
||||
x86-64-v3
|
||||
general
|
||||
15
|
||||
4
|
||||
|
|
|
@ -1072,6 +1072,7 @@ CPUID 80000023: 00000000-00000000-00000000-00000000
|
|||
CPUID 8FFFFFFF: 00000000-00000000-00000000-00000000
|
||||
--------------------------------------------------------------------------------
|
||||
x86
|
||||
x86-64-v3
|
||||
general
|
||||
15
|
||||
4
|
||||
|
|
|
@ -1040,6 +1040,7 @@ CPUID 80000023: 00000000-00000000-00000000-00000000
|
|||
CPUID 8FFFFFFF: 00000000-00000000-00000000-00000000
|
||||
--------------------------------------------------------------------------------
|
||||
x86
|
||||
x86-64-v3
|
||||
general
|
||||
15
|
||||
0
|
||||
|
|
|
@ -1024,6 +1024,7 @@ CPUID 80000022: 00000000-00000000-00000000-00000000
|
|||
CPUID 80000023: 00000000-00000000-00000000-00000000
|
||||
--------------------------------------------------------------------------------
|
||||
x86
|
||||
x86-64-v3
|
||||
general
|
||||
15
|
||||
4
|
||||
|
|
|
@ -1984,6 +1984,7 @@ CPUID 80000022: 00000000-00000000-00000000-00000000
|
|||
CPUID 80000023: 00000000-00000000-00000000-00000000
|
||||
--------------------------------------------------------------------------------
|
||||
x86
|
||||
x86-64-v3
|
||||
general
|
||||
15
|
||||
1
|
||||
|
|
|
@ -2560,6 +2560,7 @@ CPUID 80000028: 00000000-00000000-00000000-00000000
|
|||
CPUID 8FFFFFFF: 00000000-00000000-00000000-00000000
|
||||
--------------------------------------------------------------------------------
|
||||
x86
|
||||
x86-64-v3
|
||||
general
|
||||
15
|
||||
1
|
||||
|
|
|
@ -972,6 +972,7 @@ CPUID 80000027: 00000000-00000000-00000000-00000000
|
|||
CPUID 80000028: 00000000-00000000-00000000-00000000
|
||||
--------------------------------------------------------------------------------
|
||||
x86
|
||||
x86-64-v3
|
||||
general
|
||||
15
|
||||
8
|
||||
|
|
|
@ -948,6 +948,7 @@ CPUID 80000028: 00000000-00000000-00000000-00000000
|
|||
CPUID 8FFFFFFF: 00000000-00000000-00000000-00000000
|
||||
--------------------------------------------------------------------------------
|
||||
x86
|
||||
x86-64-v3
|
||||
general
|
||||
15
|
||||
1
|
||||
|
|
|
@ -1296,6 +1296,7 @@ amd_fn8000001dh[2]=00004143 01c0003f 000007ff 00000002
|
|||
amd_fn8000001dh[3]=0003c163 03c0003f 00003fff 00000001
|
||||
--------------------------------------------------------------------------------
|
||||
x86
|
||||
x86-64-v3
|
||||
general
|
||||
15
|
||||
5
|
||||
|
|
|
@ -1264,6 +1264,7 @@ CPUID 80000028: 00000000-00000000-00000000-00000000
|
|||
CPUID 8FFFFFFF: 00000000-00000000-00000000-00000000
|
||||
--------------------------------------------------------------------------------
|
||||
x86
|
||||
x86-64-v3
|
||||
general
|
||||
15
|
||||
5
|
||||
|
|
|
@ -1280,6 +1280,7 @@ CPUID 80000028: 00000000-00000000-00000000-00000000
|
|||
CPUID 8FFFFFFF: 00000000-00000000-00000000-00000000
|
||||
--------------------------------------------------------------------------------
|
||||
x86
|
||||
x86-64-v3
|
||||
general
|
||||
15
|
||||
4
|
||||
|
|
|
@ -1896,6 +1896,7 @@ CPUID 80000028: 00000000-00000000-00000000-00000000
|
|||
CPUID 8FFFFFFF: 00000000-00000000-00000000-00000000
|
||||
--------------------------------------------------------------------------------
|
||||
x86
|
||||
x86-64-v3
|
||||
general
|
||||
15
|
||||
1
|
||||
|
|
|
@ -15360,6 +15360,7 @@ CPUID 80000028: 00000000-00000000-00000000-00000000
|
|||
CPUID 8FFFFFFF: 00000000-00000000-00000000-00000000
|
||||
--------------------------------------------------------------------------------
|
||||
x86
|
||||
x86-64-v3
|
||||
general
|
||||
15
|
||||
8
|
||||
|
|
|
@ -76,6 +76,7 @@ arm_id_aa64smfr0=0000000000000000
|
|||
arm_id_aa64zfr0=0000000000000000
|
||||
--------------------------------------------------------------------------------
|
||||
ARM
|
||||
ARMv8.0-A
|
||||
efficiency
|
||||
65
|
||||
0
|
||||
|
|
|
@ -76,6 +76,7 @@ arm_id_aa64smfr0=0000000000000000
|
|||
arm_id_aa64zfr0=0000000000000000
|
||||
--------------------------------------------------------------------------------
|
||||
ARM
|
||||
ARMv8.0-A
|
||||
performance
|
||||
65
|
||||
1
|
||||
|
|
|
@ -76,6 +76,7 @@ arm_id_aa64smfr0=0000000000000000
|
|||
arm_id_aa64zfr0=0000110100110021
|
||||
--------------------------------------------------------------------------------
|
||||
ARM
|
||||
ARMv9.2-A
|
||||
general
|
||||
65
|
||||
0
|
||||
|
|
|
@ -76,6 +76,7 @@ intel_fn11[2]=00000000 00000000 00000000 00000000
|
|||
intel_fn11[3]=00000000 00000000 00000000 00000000
|
||||
--------------------------------------------------------------------------------
|
||||
x86
|
||||
x86-64-v3
|
||||
general
|
||||
15
|
||||
0
|
||||
|
|
|
@ -72,6 +72,7 @@ intel_fn11[2]=665b5101 00000000 00000000 003b7040
|
|||
intel_fn11[3]=665b5101 00000000 00000000 003b7040
|
||||
--------------------------------------------------------------------------------
|
||||
x86
|
||||
i686
|
||||
general
|
||||
15
|
||||
2
|
||||
|
|
|
@ -68,6 +68,7 @@ intel_fn4[2]=665b5101 00000000 00000000 007b7040
|
|||
intel_fn4[3]=665b5101 00000000 00000000 007b7040
|
||||
--------------------------------------------------------------------------------
|
||||
x86
|
||||
i686
|
||||
general
|
||||
15
|
||||
2
|
||||
|
|
|
@ -72,6 +72,7 @@ intel_fn11[2]=665b5101 00000000 00000000 007b7040
|
|||
intel_fn11[3]=665b5101 00000000 00000000 007b7040
|
||||
--------------------------------------------------------------------------------
|
||||
x86
|
||||
i686
|
||||
general
|
||||
15
|
||||
2
|
||||
|
|
|
@ -68,6 +68,7 @@ intel_fn4[2]=00000000 00000000 00000000 00000000
|
|||
intel_fn4[3]=00000000 00000000 00000000 00000000
|
||||
--------------------------------------------------------------------------------
|
||||
x86
|
||||
i686
|
||||
general
|
||||
15
|
||||
3
|
||||
|
|
|
@ -72,6 +72,7 @@ intel_fn11[2]=00000040 00000040 00000000 00000000
|
|||
intel_fn11[3]=00000040 00000040 00000000 00000000
|
||||
--------------------------------------------------------------------------------
|
||||
x86
|
||||
i686
|
||||
general
|
||||
15
|
||||
3
|
||||
|
|
|
@ -68,6 +68,7 @@ intel_fn4[2]=665b5001 00000000 00000000 007b7040
|
|||
intel_fn4[3]=665b5001 00000000 00000000 007b7040
|
||||
--------------------------------------------------------------------------------
|
||||
x86
|
||||
i686
|
||||
general
|
||||
15
|
||||
2
|
||||
|
|
|
@ -72,6 +72,7 @@ intel_fn11[2]=665b5001 00000000 00000000 00397040
|
|||
intel_fn11[3]=665b5001 00000000 00000000 00397040
|
||||
--------------------------------------------------------------------------------
|
||||
x86
|
||||
i686
|
||||
general
|
||||
15
|
||||
1
|
||||
|
|
|
@ -76,6 +76,7 @@ intel_fn11[2]=03020101 00000000 00000000 0c040841
|
|||
intel_fn11[3]=03020101 00000000 00000000 0c040841
|
||||
--------------------------------------------------------------------------------
|
||||
x86
|
||||
i686
|
||||
general
|
||||
6
|
||||
8
|
||||
|
|
|
@ -68,6 +68,7 @@ intel_fn4[2]=03020101 00000000 00000000 0c040882
|
|||
intel_fn4[3]=03020101 00000000 00000000 0c040882
|
||||
--------------------------------------------------------------------------------
|
||||
x86
|
||||
i686
|
||||
general
|
||||
6
|
||||
8
|
||||
|
|
|
@ -68,6 +68,7 @@ intel_fn4[2]=03020101 00000000 00000000 0c040842
|
|||
intel_fn4[3]=03020101 00000000 00000000 0c040842
|
||||
--------------------------------------------------------------------------------
|
||||
x86
|
||||
i686
|
||||
general
|
||||
6
|
||||
6
|
||||
|
|
|
@ -68,6 +68,7 @@ intel_fn4[2]=02b3b001 000000f0 00000000 2c04307d
|
|||
intel_fn4[3]=02b3b001 000000f0 00000000 2c04307d
|
||||
--------------------------------------------------------------------------------
|
||||
x86
|
||||
i686
|
||||
general
|
||||
6
|
||||
13
|
||||
|
|
Some files were not shown because too many files have changed in this diff Show more
Loading…
Reference in a new issue