aboutsummaryrefslogtreecommitdiff
path: root/src/processor/stackwalker_amd64.h
diff options
context:
space:
mode:
authorSiyangXie@gmail.com <SiyangXie@gmail.com@4c0a9323-5329-0410-9bdc-e9ce6186880e>2012-10-10 21:41:52 +0000
committerSiyangXie@gmail.com <SiyangXie@gmail.com@4c0a9323-5329-0410-9bdc-e9ce6186880e>2012-10-10 21:41:52 +0000
commitbab770045bb2cdedce4046400544904fc40c6703 (patch)
tree48e0bf03581bbe0d393746a9051d564ae9e29c53 /src/processor/stackwalker_amd64.h
parentMake Linux signal handler more robust. (diff)
downloadbreakpad-bab770045bb2cdedce4046400544904fc40c6703.tar.xz
Refactor the logic of resolving source line info into helper class.
http://breakpad.appspot.com/459002/ git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@1068 4c0a9323-5329-0410-9bdc-e9ce6186880e
Diffstat (limited to 'src/processor/stackwalker_amd64.h')
-rw-r--r--src/processor/stackwalker_amd64.h24
1 files changed, 12 insertions, 12 deletions
diff --git a/src/processor/stackwalker_amd64.h b/src/processor/stackwalker_amd64.h
index cde95208..3e41c123 100644
--- a/src/processor/stackwalker_amd64.h
+++ b/src/processor/stackwalker_amd64.h
@@ -38,6 +38,7 @@
#ifndef PROCESSOR_STACKWALKER_AMD64_H__
#define PROCESSOR_STACKWALKER_AMD64_H__
+#include <vector>
#include "google_breakpad/common/breakpad_types.h"
#include "google_breakpad/common/minidump_format.h"
@@ -55,12 +56,11 @@ class StackwalkerAMD64 : public Stackwalker {
// register state corresponding to the innermost called frame to be
// included in the stack. The other arguments are passed directly through
// to the base Stackwalker constructor.
- StackwalkerAMD64(const SystemInfo *system_info,
- const MDRawContextAMD64 *context,
- MemoryRegion *memory,
- const CodeModules *modules,
- SymbolSupplier *supplier,
- SourceLineResolverInterface *resolver);
+ StackwalkerAMD64(const SystemInfo* system_info,
+ const MDRawContextAMD64* context,
+ MemoryRegion* memory,
+ const CodeModules* modules,
+ StackFrameSymbolizer* frame_symbolizer);
private:
// A STACK CFI-driven frame walker for the AMD64
@@ -69,21 +69,21 @@ class StackwalkerAMD64 : public Stackwalker {
// Implementation of Stackwalker, using amd64 context (stack pointer in %rsp,
// stack base in %rbp) and stack conventions (saved stack pointer at 0(%rbp))
virtual StackFrame* GetContextFrame();
- virtual StackFrame* GetCallerFrame(const CallStack *stack);
+ virtual StackFrame* GetCallerFrame(const CallStack* stack);
// Use cfi_frame_info (derived from STACK CFI records) to construct
// the frame that called frames.back(). The caller takes ownership
// of the returned frame. Return NULL on failure.
- StackFrameAMD64 *GetCallerByCFIFrameInfo(const vector<StackFrame *> &frames,
- CFIFrameInfo *cfi_frame_info);
+ StackFrameAMD64* GetCallerByCFIFrameInfo(const vector<StackFrame*> &frames,
+ CFIFrameInfo* cfi_frame_info);
// Scan the stack for plausible return addresses. The caller takes ownership
- // of the returned frame. Return NULL on failure.
- StackFrameAMD64 *GetCallerByStackScan(const vector<StackFrame *> &frames);
+ // of the returned frame. Return NULL on failure.
+ StackFrameAMD64* GetCallerByStackScan(const vector<StackFrame*> &frames);
// Stores the CPU context corresponding to the innermost stack frame to
// be returned by GetContextFrame.
- const MDRawContextAMD64 *context_;
+ const MDRawContextAMD64* context_;
// Our register map, for cfi_walker_.
static const CFIWalker::RegisterSet cfi_register_map_[];