Process minidumps generated on ARM64 in iOS apps.
Patch by Colin Blundell <blundell@chromium.org>
BUG=542
Review URL: https://breakpad.appspot.com/704002/
git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@1236 4c0a9323-5329-0410-9bdc-e9ce6186880e
diff --git a/src/processor/minidump_processor.cc b/src/processor/minidump_processor.cc
index 17daa99..84c5889 100644
--- a/src/processor/minidump_processor.cc
+++ b/src/processor/minidump_processor.cc
@@ -505,6 +505,11 @@
break;
}
+ case MD_CPU_ARCHITECTURE_ARM64: {
+ info->cpu = "arm64";
+ break;
+ }
+
case MD_CPU_ARCHITECTURE_MIPS: {
info->cpu = "mips";
break;
@@ -668,7 +673,9 @@
default:
// arm and ppc overlap
if (raw_system_info->processor_architecture ==
- MD_CPU_ARCHITECTURE_ARM) {
+ MD_CPU_ARCHITECTURE_ARM ||
+ raw_system_info->processor_architecture ==
+ MD_CPU_ARCHITECTURE_ARM64) {
switch (exception_flags) {
case MD_EXCEPTION_CODE_MAC_ARM_DA_ALIGN:
reason.append("EXC_ARM_DA_ALIGN");
@@ -708,7 +715,8 @@
case MD_EXCEPTION_MAC_BAD_INSTRUCTION:
reason = "EXC_BAD_INSTRUCTION / ";
switch (raw_system_info->processor_architecture) {
- case MD_CPU_ARCHITECTURE_ARM: {
+ case MD_CPU_ARCHITECTURE_ARM:
+ case MD_CPU_ARCHITECTURE_ARM64: {
switch (exception_flags) {
case MD_EXCEPTION_CODE_MAC_ARM_UNDEFINED:
reason.append("EXC_ARM_UNDEFINED");
@@ -887,7 +895,8 @@
case MD_EXCEPTION_MAC_BREAKPOINT:
reason = "EXC_BREAKPOINT / ";
switch (raw_system_info->processor_architecture) {
- case MD_CPU_ARCHITECTURE_ARM: {
+ case MD_CPU_ARCHITECTURE_ARM:
+ case MD_CPU_ARCHITECTURE_ARM64: {
switch (exception_flags) {
case MD_EXCEPTION_CODE_MAC_ARM_DA_ALIGN:
reason.append("EXC_ARM_DA_ALIGN");