gem5
|
#include <remote_gdb.hh>
Classes | |
class | AArch32GdbRegCache |
class | AArch64GdbRegCache |
Public Member Functions | |
RemoteGDB (System *_system, ThreadContext *tc) | |
BaseGdbRegCache * | gdbRegs () |
Public Member Functions inherited from BaseRemoteGDB | |
bool | breakpoint () |
void | replaceThreadContext (ThreadContext *tc) |
virtual | ~BaseRemoteGDB () |
BaseRemoteGDB (System *system, ThreadContext *context) | |
virtual | ~BaseRemoteGDB () |
void | replaceThreadContext (ThreadContext *tc) |
void | attach (int fd) |
void | detach () |
bool | isattached () |
bool | trap (int type) |
virtual bool | breakpoint () |
std::string | name () |
Protected Member Functions | |
bool | acc (Addr addr, size_t len) |
Protected Member Functions inherited from BaseRemoteGDB | |
int | digit2i (char) |
char | i2digit (int) |
Addr | hex2i (const char **) |
virtual void | mem2hex (char *, const char *, int) |
virtual const char * | hex2mem (char *, const char *, int) |
virtual const char * | break_type (char c) |
bool | cmd_unsupported (GdbCommand::Context &ctx) |
bool | cmd_signal (GdbCommand::Context &ctx) |
bool | cmd_cont (GdbCommand::Context &ctx) |
bool | cmd_async_cont (GdbCommand::Context &ctx) |
bool | cmd_detach (GdbCommand::Context &ctx) |
bool | cmd_reg_r (GdbCommand::Context &ctx) |
bool | cmd_reg_w (GdbCommand::Context &ctx) |
bool | cmd_set_thread (GdbCommand::Context &ctx) |
bool | cmd_mem_r (GdbCommand::Context &ctx) |
bool | cmd_mem_w (GdbCommand::Context &ctx) |
bool | cmd_query_var (GdbCommand::Context &ctx) |
bool | cmd_step (GdbCommand::Context &ctx) |
bool | cmd_async_step (GdbCommand::Context &ctx) |
bool | cmd_clr_hw_bkpt (GdbCommand::Context &ctx) |
bool | cmd_set_hw_bkpt (GdbCommand::Context &ctx) |
uint8_t | getbyte () |
void | putbyte (uint8_t b) |
int | recv (char *data, int len) |
void | send (const char *data) |
virtual bool | read (Addr addr, size_t size, char *data) |
virtual bool | write (Addr addr, size_t size, const char *data) |
template<class T > | |
T | read (Addr addr) |
template<class T > | |
void | write (Addr addr, T data) |
void | clearSingleStep () |
void | setSingleStep () |
PCEventQueue * | getPcEventQueue () |
EventQueue * | getComInstEventQueue () |
void | scheduleInstCommitEvent (Event *ev, int delta) |
Schedule an event which will be triggered "delta" instructions later. More... | |
void | descheduleInstCommitEvent (Event *ev) |
Deschedule an instruction count based event. More... | |
virtual bool | checkBpLen (size_t len) |
void | insertSoftBreak (Addr addr, size_t len) |
void | removeSoftBreak (Addr addr, size_t len) |
virtual void | insertHardBreak (Addr addr, size_t len) |
void | removeHardBreak (Addr addr, size_t len) |
void | clearTempBreakpoint (Addr &bkpt) |
void | setTempBreakpoint (Addr bkpt) |
Protected Attributes | |
AArch32GdbRegCache | regCache32 |
AArch64GdbRegCache | regCache64 |
Protected Attributes inherited from BaseRemoteGDB | |
InputEvent * | inputEvent |
TrapEvent | trapEvent |
GDBListener * | listener |
int | number |
int | fd |
bool | active |
bool | attached |
System * | system |
ThreadContext * | context |
BaseGdbRegCache * | regCachePtr |
SingleStepEvent | singleStepEvent |
break_map_t | hardBreakMap |
Additional Inherited Members | |
Protected Types inherited from BaseRemoteGDB | |
typedef std::map< Addr, HardBreakpoint * > | break_map_t |
typedef break_map_t::iterator | break_iter_t |
Static Protected Attributes inherited from BaseRemoteGDB | |
static std::map< char, GdbCommand > | command_map |
Definition at line 62 of file remote_gdb.hh.
RemoteGDB::RemoteGDB | ( | System * | _system, |
ThreadContext * | tc | ||
) |
Definition at line 167 of file remote_gdb.cc.
|
protectedvirtual |
Implements BaseRemoteGDB.
Definition at line 176 of file remote_gdb.cc.
References BaseRemoteGDB::context, ChunkGenerator::done(), DPRINTF, FullSystem, ThreadContext::getProcessPtr(), PageTableBase::lookup(), ArmISA::PageBytes, Process::pTable, and ArmISA::virtvalid().
|
virtual |
Implements BaseRemoteGDB.
Definition at line 297 of file remote_gdb.cc.
References BaseRemoteGDB::context, ArmISA::inAArch64(), regCache32, and regCache64.
|
protected |
Definition at line 112 of file remote_gdb.hh.
Referenced by gdbRegs().
|
protected |
Definition at line 113 of file remote_gdb.hh.
Referenced by gdbRegs().