crashreport: __cpuid/__cpuidex are not available on arm64
…and from a quick glance similar features are not exposed to userland applications on arm64: https://docs.kernel.org/arm64/cpu-feature-registers.html "The ARM architecture defines a set of feature registers, which describe the capabilities of the CPU/system. Access to these system registers is restricted from EL0 and there is no reliable way for an application to extract this information to make better decisions at runtime.[…]" Thus the CPU information would have to be gathered from the OS, probably from the Windows registry, at least it should be possible to read the name/model that way… Change-Id: I39e3679a7c4c581d8e3e4f71842d7ea7cdc2ba67 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/138380 Tested-by: Jenkins Reviewed-by: Christian Lohmaier <lohmaier+LibreOffice@googlemail.com>
This commit is contained in:
parent
64c60a6793
commit
de3fcf4bea
1 changed files with 2 additions and 0 deletions
|
@ -346,6 +346,7 @@ void CrashReporter::writeSystemInfo()
|
|||
#elif defined _WIN32
|
||||
void CrashReporter::writeSystemInfo()
|
||||
{
|
||||
#if !defined(_ARM64_)
|
||||
// Get CPU model name and flags.
|
||||
// See https://docs.microsoft.com/en-us/cpp/intrinsics/cpuid-cpuidex
|
||||
// and https://en.wikipedia.org/wiki/CPUID .
|
||||
|
@ -456,6 +457,7 @@ void CrashReporter::writeSystemInfo()
|
|||
}
|
||||
if( !flags.isEmpty())
|
||||
addKeyValue( "CPUFlags", flags.makeStringAndClear(), AddItem );
|
||||
#endif
|
||||
// Get total memory.
|
||||
MEMORYSTATUSEX memoryStatus;
|
||||
memoryStatus.dwLength = sizeof( memoryStatus );
|
||||
|
|
Loading…
Reference in a new issue