From 31a19066520dde51c271a6a0b4c43932ae1a7857 Mon Sep 17 00:00:00 2001 From: KWSys Upstream Date: Mon, 6 May 2024 08:57:50 -0400 Subject: KWSys 2024-05-06 (307037cf) Code extracted from: https://gitlab.kitware.com/utils/kwsys.git at commit 307037cfdf7b24cf3b5b845cd8584caed8bfef69 (master). Upstream Shortlog ----------------- Juan Ramos (2): ff14b4f5 SystemInformation: Fix find logic a347a66b SystemInformation: Implement HasFPU on Apple processors --- SystemInformation.cxx | 9 +++++++-- 1 file 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(tempInt32); + } } } } else { -- cgit v0.12