gem5  v22.1.0.0
Classes | Public Member Functions | Protected Member Functions | Protected Attributes | List of all members
gem5::ArmISA::RemoteGDB Class Reference

#include <remote_gdb.hh>

Inheritance diagram for gem5::ArmISA::RemoteGDB:
gem5::BaseRemoteGDB gem5::fastmodel::FastmodelRemoteGDB

Classes

class  AArch32GdbRegCache
 
class  AArch64GdbRegCache
 

Public Member Functions

 RemoteGDB (System *_system, int _port)
 
BaseGdbRegCachegdbRegs () override
 
bool checkBpKind (size_t kind) override
 
std::vector< std::string > availableFeatures () const override
 
bool getXferFeaturesRead (const std::string &annex, std::string &output) override
 Get an XML target description. More...
 
- Public Member Functions inherited from gem5::BaseRemoteGDB
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, const std::string &stopReason="")
 
bool sendMessage (std::string message)
 
void scheduleTrapEvent (ContextID id, int type, int delta, std::string stopReason)
 

Protected Member Functions

bool acc (Addr addr, size_t len) override
 
- Protected Member Functions inherited from gem5::BaseRemoteGDB
ThreadContextcontext ()
 
Systemsystem ()
 
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

- Static Public Member Functions inherited from gem5::BaseRemoteGDB
template<class GDBStub , class ... Args>
static BaseRemoteGDBbuild (int port, Args... args)
 

Detailed Description

Definition at line 63 of file remote_gdb.hh.

Constructor & Destructor Documentation

◆ RemoteGDB()

gem5::RemoteGDB::RemoteGDB ( System _system,
int  _port 
)

Definition at line 204 of file remote_gdb.cc.

Member Function Documentation

◆ acc()

bool gem5::RemoteGDB::acc ( Addr  addr,
size_t  len 
)
overrideprotectedvirtual

◆ availableFeatures()

std::vector<std::string> gem5::ArmISA::RemoteGDB::availableFeatures ( ) const
inlineoverridevirtual

Reimplemented from gem5::BaseRemoteGDB.

Definition at line 125 of file remote_gdb.hh.

◆ checkBpKind()

bool gem5::RemoteGDB::checkBpKind ( size_t  kind)
overridevirtual

Reimplemented from gem5::BaseRemoteGDB.

Definition at line 382 of file remote_gdb.cc.

◆ gdbRegs()

BaseGdbRegCache * gem5::RemoteGDB::gdbRegs ( )
overridevirtual

◆ getXferFeaturesRead()

bool gem5::RemoteGDB::getXferFeaturesRead ( const std::string &  annex,
std::string &  output 
)
overridevirtual

Get an XML target description.

Parameters
[in]annexthe XML filename
[out]outputset to the decoded XML
Returns
true if the given annex was found

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 348 of file remote_gdb.cc.

References gem5::BaseRemoteGDB::context(), GDB_XML, gem5::ArmISA::inAArch64(), and gem5::output().

Member Data Documentation

◆ regCache32

AArch32GdbRegCache gem5::ArmISA::RemoteGDB::regCache32
protected

Definition at line 117 of file remote_gdb.hh.

Referenced by gdbRegs().

◆ regCache64

AArch64GdbRegCache gem5::ArmISA::RemoteGDB::regCache64
protected

Definition at line 118 of file remote_gdb.hh.

Referenced by gdbRegs().


The documentation for this class was generated from the following files:

Generated on Wed Dec 21 2022 10:23:36 for gem5 by doxygen 1.9.1