From: André Hentschel Subject: [2/2] ntdll: Get available CPU info from FreeBSD on ARM Message-Id: <55148591.8050808@dawncrow.de> Date: Thu, 26 Mar 2015 23:17:53 +0100 --- dlls/ntdll/nt.c | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/dlls/ntdll/nt.c b/dlls/ntdll/nt.c index a0de705..3601c0f 100644 --- a/dlls/ntdll/nt.c +++ b/dlls/ntdll/nt.c @@ -1123,6 +1123,19 @@ static inline void get_cpuinfo(SYSTEM_CPU_INFORMATION* info) } fclose(f); } +#elif defined(__FreeBSD__) + size_t valsize; + char buf[8]; + int value; + + valsize = sizeof(buf); + if (!sysctlbyname("hw.machine_arch", &buf, &valsize, NULL, 0) && + sscanf(buf, "armv%i", &value) == 1) + info->Level = value; + + valsize = sizeof(value); + if (!sysctlbyname("hw.floatingpoint", &value, &valsize, NULL, 0)) + user_shared_data->ProcessorFeatures[PF_ARM_VFP_32_REGISTERS_AVAILABLE] = value; #else FIXME("CPU Feature detection not implemented.\n"); #endif -- 1.9.1