|
gem5 [DEVELOP-FOR-25.0]
|
#include <remote_gdb.hh>
Classes | |
| class | MipsGdbRegCache |
Public Member Functions | |
| RemoteGDB (System *_system, ListenSocketConfig _listen_config) | |
| BaseGdbRegCache * | gdbRegs () |
| std::vector< std::string > | availableFeatures () const |
| bool | getXferFeaturesRead (const std::string &annex, std::string &output) |
| Get an XML target description. | |
Public Member Functions inherited from gem5::BaseRemoteGDB | |
| bool | breakpoint () |
| void | replaceThreadContext (ThreadContext *tc) |
| bool | trap (ContextID id, int type) |
| virtual | ~BaseRemoteGDB () |
| BaseRemoteGDB (System *system, ListenSocketConfig _listen_config) | |
| Interface to other parts of the simulator. | |
| virtual | ~BaseRemoteGDB () |
| std::string | name () |
| void | listen () |
| void | connect () |
| const ListenSocket & | hostSocket () 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, GDBSignal sig, const std::string &stopReason="") |
| bool | sendMessage (std::string message) |
| void | scheduleTrapEvent (ContextID id, GDBSignal type, int delta, std::string stopReason) |
Protected Member Functions | |
| bool | acc (Addr addr, size_t len) |
Protected Member Functions inherited from gem5::BaseRemoteGDB | |
| void | incomingData (int revent) |
| void | incomingConnection (int revent) |
| uint8_t | getbyte () |
| bool | try_getbyte (uint8_t *c, int timeout=-1) |
| void | putbyte (uint8_t b) |
| void | recv (std::vector< char > &bp) |
| void | send (const char *data) |
| void | send (const std::string &data) |
| template<typename ... Args> | |
| void | send (const char *format, const Args &...args) |
| void | processCommands (GDBSignal sig=GDBSignal::ZERO) |
| virtual bool | readBlob (Addr vaddr, size_t size, char *data) |
| virtual bool | writeBlob (Addr vaddr, size_t size, const char *data) |
| bool | read (Addr vaddr, size_t size, char *data) |
| bool | write (Addr vaddr, size_t size, const char *data) |
| template<class T> | |
| T | read (Addr addr) |
| template<class T> | |
| void | write (Addr addr, T data) |
| void | singleStep () |
| void | clearSingleStep () |
| void | setSingleStep () |
| void | scheduleInstCommitEvent (Event *ev, int delta, ThreadContext *_tc) |
| Schedule an event which will be triggered "delta" instructions later. | |
| void | scheduleInstCommitEvent (Event *ev, int delta) |
| void | descheduleInstCommitEvent (Event *ev) |
| Deschedule an instruction count based event. | |
| virtual void | insertSoftBreak (Addr addr, size_t kind) |
| virtual void | removeSoftBreak (Addr addr, size_t kind) |
| virtual void | insertHardBreak (Addr addr, size_t kind) |
| virtual void | removeHardBreak (Addr addr, size_t kind) |
| void | sendTPacket (GDBSignal sig, ContextID id, const std::string &stopReason) |
| void | sendSPacket (GDBSignal sig) |
| void | sendOPacket (const std::string message) |
| bool | cmdUnsupported (GdbCommand::Context &ctx) |
| bool | cmdSignal (GdbCommand::Context &ctx) |
| bool | cmdCont (GdbCommand::Context &ctx) |
| bool | cmdAsyncCont (GdbCommand::Context &ctx) |
| bool | cmdDetach (GdbCommand::Context &ctx) |
| bool | cmdRegR (GdbCommand::Context &ctx) |
| bool | cmdRegW (GdbCommand::Context &ctx) |
| bool | cmdSetThread (GdbCommand::Context &ctx) |
| bool | cmdIsThreadAlive (GdbCommand::Context &ctx) |
| bool | cmdMemR (GdbCommand::Context &ctx) |
| bool | cmdMemW (GdbCommand::Context &ctx) |
| bool | cmdQueryVar (GdbCommand::Context &ctx) |
| bool | cmdStep (GdbCommand::Context &ctx) |
| bool | cmdAsyncStep (GdbCommand::Context &ctx) |
| bool | cmdClrHwBkpt (GdbCommand::Context &ctx) |
| bool | cmdSetHwBkpt (GdbCommand::Context &ctx) |
| bool | cmdDumpPageTable (GdbCommand::Context &ctx) |
| bool | cmdMultiLetter (GdbCommand::Context &ctx) |
| bool | cmdMultiUnsupported (GdbMultiLetterCommand::Context &ctx) |
| bool | cmdReplyEmpty (GdbMultiLetterCommand::Context &ctx) |
| bool | cmdVKill (GdbMultiLetterCommand::Context &ctx) |
| bool | queryC (QuerySetCommand::Context &ctx) |
| bool | querySupported (QuerySetCommand::Context &ctx) |
| bool | queryXfer (QuerySetCommand::Context &ctx) |
| bool | querySymbol (QuerySetCommand::Context &ctx) |
| bool | queryRcmd (QuerySetCommand::Context &ctx) |
| bool | queryAttached (QuerySetCommand::Context &ctx) |
| bool | queryFThreadInfo (QuerySetCommand::Context &ctx) |
| bool | querySThreadInfo (QuerySetCommand::Context &ctx) |
| 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 |
| virtual bool | checkBpKind (size_t kind) |
Protected Attributes | |
| MipsGdbRegCache | regCache |
Protected Attributes inherited from gem5::BaseRemoteGDB | |
| friend | IncomingConnectionEvent |
| friend | IncomingDataEvent |
| IncomingConnectionEvent * | incomingConnectionEvent |
| IncomingDataEvent * | incomingDataEvent |
| ListenSocketPtr | listener |
| int | fd |
| bool | attached = false |
| bool | threadSwitching = false |
| System * | sys |
| std::map< ContextID, ThreadContext * > | threads |
| ThreadContext * | tc = nullptr |
| BaseGdbRegCache * | regCachePtr = nullptr |
| MemberEventWrapper<&BaseRemoteGDB::connect > | connectEvent |
| MemberEventWrapper<&BaseRemoteGDB::detach > | disconnectEvent |
| gem5::BaseRemoteGDB::TrapEvent | trapEvent |
| MemberEventWrapper<&BaseRemoteGDB::singleStep > | singleStepEvent |
| size_t | threadInfoIdx = 0 |
Additional Inherited Members | |
Static Public Member Functions inherited from gem5::BaseRemoteGDB | |
| template<class GDBStub, class ... Args> | |
| static BaseRemoteGDB * | build (ListenSocketConfig listen_config, Args... args) |
Protected Types inherited from gem5::BaseRemoteGDB | |
| typedef SocketEvent<&BaseRemoteGDB::incomingConnection > | IncomingConnectionEvent |
| typedef SocketEvent<&BaseRemoteGDB::incomingData > | IncomingDataEvent |
Static Protected Attributes inherited from gem5::BaseRemoteGDB | |
| static std::map< char, GdbCommand > | commandMap |
| static std::map< std::string, GdbMultiLetterCommand > | multiLetterMap |
| static std::map< std::string, QuerySetCommand > | queryMap |
Definition at line 46 of file remote_gdb.hh.
| gem5::MipsISA::RemoteGDB::RemoteGDB | ( | System * | _system, |
| ListenSocketConfig | _listen_config ) |
|
protectedvirtual |
Implements gem5::BaseRemoteGDB.
References gem5::X86ISA::addr, and gem5::ArmISA::len.
|
inlinevirtual |
Reimplemented from gem5::BaseRemoteGDB.
Definition at line 86 of file remote_gdb.hh.
|
virtual |
Implements gem5::BaseRemoteGDB.
|
virtual |
Get an XML target description.
| [in] | annex | the XML filename |
| [out] | output | set to the decoded XML |
Reimplemented from gem5::BaseRemoteGDB.
References gem5::output().
|
protected |
Definition at line 80 of file remote_gdb.hh.