diff options
author | mark@chromium.org <mark@chromium.org@4c0a9323-5329-0410-9bdc-e9ce6186880e> | 2013-11-23 01:45:20 +0000 |
---|---|---|
committer | mark@chromium.org <mark@chromium.org@4c0a9323-5329-0410-9bdc-e9ce6186880e> | 2013-11-23 01:45:20 +0000 |
commit | e9165f4353a50aee322ad4caf2f499d26d77ed6f (patch) | |
tree | 4cbc9e273536afe43f9b68cb617036170b381af8 /src/processor/stackwalker.cc | |
parent | Generate minidumps for 64-bit ARM apps on iOS. (diff) | |
download | breakpad-e9165f4353a50aee322ad4caf2f499d26d77ed6f.tar.xz |
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
Diffstat (limited to 'src/processor/stackwalker.cc')
-rw-r--r-- | src/processor/stackwalker.cc | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/src/processor/stackwalker.cc b/src/processor/stackwalker.cc index 8a6b422d..2ca8f166 100644 --- a/src/processor/stackwalker.cc +++ b/src/processor/stackwalker.cc @@ -53,6 +53,7 @@ #include "processor/stackwalker_x86.h" #include "processor/stackwalker_amd64.h" #include "processor/stackwalker_arm.h" +#include "processor/stackwalker_arm64.h" #include "processor/stackwalker_mips.h" namespace google_breakpad { @@ -239,6 +240,7 @@ Stackwalker* Stackwalker::StackwalkerForCPU( break; case MD_CONTEXT_ARM: + { int fp_register = -1; if (system_info->os_short == "ios") fp_register = MD_CONTEXT_ARM_REG_IOS_FP; @@ -247,6 +249,14 @@ Stackwalker* Stackwalker::StackwalkerForCPU( fp_register, memory, modules, frame_symbolizer); break; + } + + case MD_CONTEXT_ARM64: + cpu_stackwalker = new StackwalkerARM64(system_info, + context->GetContextARM64(), + memory, modules, + frame_symbolizer); + break; } BPLOG_IF(ERROR, !cpu_stackwalker) << "Unknown CPU type " << HexString(cpu) << |