gem5
|
#include <stacktrace.hh>
Public Member Functions | |
StackTrace () | |
StackTrace (ThreadContext *tc, const StaticInstPtr &inst) | |
~StackTrace () | |
void | clear () |
bool | valid () const |
bool | trace (ThreadContext *tc, const StaticInstPtr &inst) |
const std::vector< Addr > & | getstack () const |
void | dprintf () |
Static Public Attributes | |
static const int | user = 1 |
static const int | console = 2 |
static const int | unknown = 3 |
Protected Types | |
typedef MipsISA::MachInst | MachInst |
Private Member Functions | |
bool | isEntry (Addr addr) |
bool | decodePrologue (Addr sp, Addr callpc, Addr func, int &size, Addr &ra) |
bool | decodeSave (MachInst inst, int ®, int &disp) |
bool | decodeStack (MachInst inst, int &disp) |
void | trace (ThreadContext *tc, bool is_call) |
Private Attributes | |
ThreadContext * | tc |
std::vector< Addr > | stack |
Definition at line 60 of file stacktrace.hh.
|
protected |
Definition at line 63 of file stacktrace.hh.
StackTrace::StackTrace | ( | ) |
Definition at line 95 of file stacktrace.cc.
StackTrace::StackTrace | ( | ThreadContext * | tc, |
const StaticInstPtr & | inst | ||
) |
Definition at line 100 of file stacktrace.cc.
References trace().
StackTrace::~StackTrace | ( | ) |
Definition at line 106 of file stacktrace.cc.
|
inline |
Definition at line 199 of file stacktrace.cc.
References CopyOut(), decodeSave(), decodeStack(), MipsISA::pc, X86ISA::reg, MipsISA::ReturnAddressReg, and tc.
|
private |
Definition at line 170 of file stacktrace.cc.
Referenced by decodePrologue().
|
private |
Definition at line 129 of file stacktrace.cc.
Referenced by decodePrologue().
|
inline |
Definition at line 105 of file stacktrace.hh.
|
inline |
Definition at line 91 of file stacktrace.hh.
References stack.
|
private |
Definition at line 123 of file stacktrace.cc.
|
private |
Definition at line 111 of file stacktrace.cc.
References stack, tc, and user.
Referenced by StackTrace(), and trace().
|
inline |
Definition at line 110 of file stacktrace.hh.
References clear(), StaticInst::isCall(), StaticInst::isReturn(), trace(), and valid().
|
inline |
|
static |
Definition at line 94 of file stacktrace.hh.
|
private |
Definition at line 66 of file stacktrace.hh.
Referenced by clear(), getstack(), and trace().
|
private |
Definition at line 65 of file stacktrace.hh.
Referenced by clear(), decodePrologue(), trace(), and valid().
|
static |
Definition at line 95 of file stacktrace.hh.
|
static |
Definition at line 93 of file stacktrace.hh.
Referenced by trace().