gem5
v21.2.1.0
|
#include <remote_gdb.hh>
Classes | |
class | AArch32GdbRegCache |
class | AArch64GdbRegCache |
Public Member Functions | |
RemoteGDB (System *_system, int _port) | |
BaseGdbRegCache * | gdbRegs () override |
bool | checkBpLen (size_t len) override |
std::vector< std::string > | availableFeatures () const override |
bool | getXferFeaturesRead (const std::string &annex, std::string &output) override |
Get an XML target description. More... | |
![]() | |
bool | breakpoint () |
void | replaceThreadContext (ThreadContext *tc) |
bool | trap (ContextID id, int type) |
virtual | ~BaseRemoteGDB () |
BaseRemoteGDB (System *system, int _port) | |
Interface to other parts of the simulator. More... | |
virtual | ~BaseRemoteGDB () |
std::string | name () |
void | listen () |
void | connect () |
int | port () const |
void | attach (int fd) |
void | detach () |
bool | isAttached () |
void | addThreadContext (ThreadContext *_tc) |
void | replaceThreadContext (ThreadContext *_tc) |
bool | selectThreadContext (ContextID id) |
void | trap (ContextID id, int signum) |
Protected Member Functions | |
bool | acc (Addr addr, size_t len) override |
![]() | |
ThreadContext * | context () |
System * | system () |
void | encodeBinaryData (const std::string &unencoded, std::string &encoded) const |
void | encodeXferResponse (const std::string &unencoded, std::string &encoded, size_t offset, size_t unencoded_length) const |
Protected Attributes | |
AArch32GdbRegCache | regCache32 |
AArch64GdbRegCache | regCache64 |
Additional Inherited Members | |
![]() | |
template<class GDBStub , class ... Args> | |
static BaseRemoteGDB * | build (Args... args) |
Definition at line 63 of file remote_gdb.hh.
gem5::RemoteGDB::RemoteGDB | ( | System * | _system, |
int | _port | ||
) |
Definition at line 190 of file remote_gdb.cc.
|
overrideprotectedvirtual |
Implements gem5::BaseRemoteGDB.
Definition at line 199 of file remote_gdb.cc.
References gem5::BaseRemoteGDB::context(), gem5::ChunkGenerator::done(), DPRINTF, gem5::FullSystem, gem5::ThreadContext::getProcessPtr(), gem5::ArmISA::len, gem5::EmulationPageTable::lookup(), gem5::ArmISA::PageBytes, gem5::Process::pTable, gem5::tryTranslate(), and gem5::ArmISA::va.
|
inlineoverridevirtual |
Reimplemented from gem5::BaseRemoteGDB.
Definition at line 125 of file remote_gdb.hh.
|
overridevirtual |
Reimplemented from gem5::BaseRemoteGDB.
Definition at line 365 of file remote_gdb.cc.
References gem5::ArmISA::len.
|
overridevirtual |
Implements gem5::BaseRemoteGDB.
Definition at line 356 of file remote_gdb.cc.
References gem5::BaseRemoteGDB::context(), gem5::ArmISA::inAArch64(), regCache32, and regCache64.
|
overridevirtual |
Get an XML target description.
[in] | annex | the XML filename |
[out] | output | set to the decoded XML |
Blobs e.g. gdb_xml_riscv_target are generated by adding GdbXml(<xml_file_name>, <blob_name>) to src/arch/riscv/Sconscript.
Import using #include blobs/<blob_name>.hh
Reimplemented from gem5::BaseRemoteGDB.
Definition at line 331 of file remote_gdb.cc.
References gem5::BaseRemoteGDB::context(), GDB_XML, gem5::ArmISA::inAArch64(), and gem5::output().
|
protected |
Definition at line 117 of file remote_gdb.hh.
Referenced by gdbRegs().
|
protected |
Definition at line 118 of file remote_gdb.hh.
Referenced by gdbRegs().