Merge pull request #6583 from lioncash/enum-class

CPUDetect: Make CPUVendor enum an enum class
This commit is contained in:
JosJuice 2018-04-02 09:17:34 +02:00 committed by GitHub
commit 9d1c4401e5
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
3 changed files with 11 additions and 11 deletions

View File

@ -57,7 +57,7 @@ void CPUInfo::Detect()
OS64bit = true;
CPU64bit = true;
Mode64bit = true;
vendor = VENDOR_ARM;
vendor = CPUVendor::ARM;
// Get the information about the CPU
num_cores = sysconf(_SC_NPROCESSORS_CONF);

View File

@ -7,17 +7,17 @@
#include <string>
enum CPUVendor
enum class CPUVendor
{
VENDOR_INTEL = 0,
VENDOR_AMD = 1,
VENDOR_ARM = 2,
VENDOR_OTHER = 3,
Intel,
AMD,
ARM,
Other,
};
struct CPUInfo
{
CPUVendor vendor = VENDOR_INTEL;
CPUVendor vendor = CPUVendor::Intel;
char cpu_string[0x41] = {};
char brand_string[0x21] = {};

View File

@ -84,11 +84,11 @@ void CPUInfo::Detect()
__cpuid(cpu_id, 0x80000000);
u32 max_ex_fn = cpu_id[0];
if (!strcmp(brand_string, "GenuineIntel"))
vendor = VENDOR_INTEL;
vendor = CPUVendor::Intel;
else if (!strcmp(brand_string, "AuthenticAMD"))
vendor = VENDOR_AMD;
vendor = CPUVendor::AMD;
else
vendor = VENDOR_OTHER;
vendor = CPUVendor::Other;
// Set reasonable default brand string even if brand string not available.
strcpy(cpu_string, brand_string);
@ -198,7 +198,7 @@ void CPUInfo::Detect()
if (ht)
{
// New mechanism for modern Intel CPUs.
if (vendor == VENDOR_INTEL)
if (vendor == CPUVendor::Intel)
{
__cpuidex(cpu_id, 0x00000004, 0x00000000);
int cores_x_package = ((cpu_id[0] >> 26) & 0x3F) + 1;