mirror of
https://github.com/yuzu-emu/breakpad
synced 2024-11-26 09:08:10 +00:00
Initial implementation of x86 stackwalker (#9), missing file. r=bryner
git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@13 4c0a9323-5329-0410-9bdc-e9ce6186880e
This commit is contained in:
parent
213800d30c
commit
73badfc376
1 changed files with 15 additions and 1 deletions
|
@ -15,14 +15,28 @@
|
||||||
#ifndef GOOGLE_STACK_FRAME_H__
|
#ifndef GOOGLE_STACK_FRAME_H__
|
||||||
#define GOOGLE_STACK_FRAME_H__
|
#define GOOGLE_STACK_FRAME_H__
|
||||||
|
|
||||||
|
#include <string>
|
||||||
#include <vector>
|
#include <vector>
|
||||||
#include "google/airbag_types.h"
|
#include "google/airbag_types.h"
|
||||||
|
|
||||||
namespace google_airbag {
|
namespace google_airbag {
|
||||||
|
|
||||||
using std::string;
|
using std::string;
|
||||||
|
using std::vector;
|
||||||
|
|
||||||
struct StackFrame {
|
struct StackFrame {
|
||||||
|
// Initialize sensible defaults, or this will be instantiated with
|
||||||
|
// primitive members in an undetermined state.
|
||||||
|
StackFrame()
|
||||||
|
: instruction()
|
||||||
|
, frame_pointer()
|
||||||
|
, module_base()
|
||||||
|
, module_name()
|
||||||
|
, function_base()
|
||||||
|
, function_name()
|
||||||
|
, source_file_name()
|
||||||
|
, source_line() {}
|
||||||
|
|
||||||
// The program counter location relative to the module base
|
// The program counter location relative to the module base
|
||||||
u_int64_t instruction;
|
u_int64_t instruction;
|
||||||
|
|
||||||
|
@ -51,7 +65,7 @@ struct StackFrame {
|
||||||
// TODO(bryner): saved registers
|
// TODO(bryner): saved registers
|
||||||
};
|
};
|
||||||
|
|
||||||
typedef std::vector<StackFrame> StackFrames;
|
typedef vector<StackFrame> StackFrames;
|
||||||
|
|
||||||
} // namespace google_airbag
|
} // namespace google_airbag
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue