From e9430231accacdb872bc4c82feb9a6a64d57941b Mon Sep 17 00:00:00 2001 From: Pavel Labath Date: Thu, 31 Oct 2019 11:05:47 +0100 Subject: [PATCH] minidump: Add an "arm64" constant This is the "official" constant for arm64. We also have another constant for arm64 (called BP_ARM64), which was used by breakpad while there was no official constant for arm64 available. --- llvm/include/llvm/BinaryFormat/MinidumpConstants.def | 1 + llvm/lib/ObjectYAML/MinidumpYAML.cpp | 1 + llvm/unittests/ObjectYAML/MinidumpYAMLTest.cpp | 4 ++-- 3 files changed, 4 insertions(+), 2 deletions(-) diff --git a/llvm/include/llvm/BinaryFormat/MinidumpConstants.def b/llvm/include/llvm/BinaryFormat/MinidumpConstants.def index c04a10d..543305f 100644 --- a/llvm/include/llvm/BinaryFormat/MinidumpConstants.def +++ b/llvm/include/llvm/BinaryFormat/MinidumpConstants.def @@ -96,6 +96,7 @@ HANDLE_MDMP_ARCH(0x0007, Alpha64) // PROCESSOR_ARCHITECTURE_ALPHA64 HANDLE_MDMP_ARCH(0x0008, MSIL) // PROCESSOR_ARCHITECTURE_MSIL HANDLE_MDMP_ARCH(0x0009, AMD64) // PROCESSOR_ARCHITECTURE_AMD64 HANDLE_MDMP_ARCH(0x000a, X86Win64) // PROCESSOR_ARCHITECTURE_IA32_ON_WIN64 +HANDLE_MDMP_ARCH(0x000c, ARM64) // PROCESSOR_ARCHITECTURE_ARM64 HANDLE_MDMP_ARCH(0x8001, BP_SPARC) // Breakpad-defined value for SPARC HANDLE_MDMP_ARCH(0x8002, BP_PPC64) // Breakpad-defined value for PPC64 HANDLE_MDMP_ARCH(0x8003, BP_ARM64) // Breakpad-defined value for ARM64 diff --git a/llvm/lib/ObjectYAML/MinidumpYAML.cpp b/llvm/lib/ObjectYAML/MinidumpYAML.cpp index aa73822..77ea42c 100644 --- a/llvm/lib/ObjectYAML/MinidumpYAML.cpp +++ b/llvm/lib/ObjectYAML/MinidumpYAML.cpp @@ -336,6 +336,7 @@ static void streamMapping(yaml::IO &IO, SystemInfoStream &Stream) { IO.mapOptional("CPU", Info.CPU.X86); break; case ProcessorArchitecture::ARM: + case ProcessorArchitecture::ARM64: case ProcessorArchitecture::BP_ARM64: IO.mapOptional("CPU", Info.CPU.Arm); break; diff --git a/llvm/unittests/ObjectYAML/MinidumpYAMLTest.cpp b/llvm/unittests/ObjectYAML/MinidumpYAMLTest.cpp index ca7fff1..a3c9e7e 100644 --- a/llvm/unittests/ObjectYAML/MinidumpYAMLTest.cpp +++ b/llvm/unittests/ObjectYAML/MinidumpYAMLTest.cpp @@ -33,7 +33,7 @@ TEST(MinidumpYAML, Basic) { --- !minidump Streams: - Type: SystemInfo - Processor Arch: BP_ARM64 + Processor Arch: ARM64 Platform ID: Linux CPU: CPUID: 0x05060708 @@ -53,7 +53,7 @@ Streams: auto ExpectedSysInfo = File.getSystemInfo(); ASSERT_THAT_EXPECTED(ExpectedSysInfo, Succeeded()); const SystemInfo &SysInfo = *ExpectedSysInfo; - EXPECT_EQ(ProcessorArchitecture::BP_ARM64, SysInfo.ProcessorArch); + EXPECT_EQ(ProcessorArchitecture::ARM64, SysInfo.ProcessorArch); EXPECT_EQ(OSPlatform::Linux, SysInfo.PlatformId); EXPECT_EQ(0x05060708u, SysInfo.CPU.Arm.CPUID); -- 2.7.4