summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--SystemInformation.cxx9
1 files changed, 7 insertions, 2 deletions
diff --git a/SystemInformation.cxx b/SystemInformation.cxx
index 5e07e80..428d649 100644
--- a/SystemInformation.cxx
+++ b/SystemInformation.cxx
@@ -4646,7 +4646,7 @@ bool SystemInformationImplementation::ParseSysCtl()
err = sysctlbyname("hw.machine", &tempBuff, &len, nullptr, 0);
if (err == 0) {
std::string machineBuf(tempBuff);
- if (machineBuf.find_first_of("Power") != std::string::npos) {
+ if (machineBuf.find("Power") != std::string::npos) {
this->ChipID.Vendor = "IBM";
err = kw_sysctlbyname_int32("hw.cputype", &tempInt32);
@@ -4660,10 +4660,15 @@ bool SystemInformationImplementation::ParseSysCtl()
}
this->FindManufacturer();
- } else if (machineBuf.find_first_of("arm64") != std::string::npos) {
+ } else if (machineBuf.find("arm64") != std::string::npos) {
this->ChipID.Vendor = "Apple";
this->FindManufacturer();
+
+ err = kw_sysctlbyname_int32("hw.optional.floatingpoint", &tempInt32);
+ if (err == 0) {
+ this->Features.HasFPU = static_cast<bool>(tempInt32);
+ }
}
}
} else {