Index: src/base/cpu.cc |
diff --git a/src/base/cpu.cc b/src/base/cpu.cc |
index e188406f1a21ff72226b17c2332eb7ccd942dd49..ceacf1f325d2c9a7b4f9fca54b921f99da492ba3 100644 |
--- a/src/base/cpu.cc |
+++ b/src/base/cpu.cc |
@@ -300,6 +300,7 @@ CPU::CPU() |
type_(0), |
implementer_(0), |
architecture_(0), |
+ variant_(0), |
part_(0), |
has_fpu_(false), |
has_cmov_(false), |
@@ -396,6 +397,16 @@ CPU::CPU() |
delete[] implementer; |
} |
+ char* variant = cpu_info.ExtractField("CPU variant"); |
+ if (variant != NULL) { |
+ char* end ; |
+ variant_ = strtol(variant, &end, 0); |
+ if (end == variant) { |
+ variant_ = -1; |
+ } |
+ delete[] variant; |
+ } |
+ |
// Extract part number from the "CPU part" field. |
char* part = cpu_info.ExtractField("CPU part"); |
if (part != NULL) { |
@@ -548,6 +559,16 @@ CPU::CPU() |
delete[] implementer; |
} |
+ char* variant = cpu_info.ExtractField("CPU variant"); |
+ if (variant != NULL) { |
+ char* end ; |
+ variant_ = strtol(variant, &end, 0); |
+ if (end == variant) { |
+ variant_ = -1; |
+ } |
+ delete[] variant; |
+ } |
+ |
// Extract part number from the "CPU part" field. |
char* part = cpu_info.ExtractField("CPU part"); |
if (part != NULL) { |