gem5  v20.1.0.0
Public Member Functions | Private Member Functions | Private Attributes | List of all members
SparcISA::RemoteGDB::SPARCGdbRegCache Class Reference

#include <remote_gdb.hh>

Inheritance diagram for SparcISA::RemoteGDB::SPARCGdbRegCache:
BaseGdbRegCache

Public Member Functions

char * data () const
 Return the pointer to the raw bytes buffer containing the register values. More...
 
size_t size () const
 Return the size of the raw buffer, in bytes (i.e., half of the number of digits in the g/G packet). More...
 
void getRegs (ThreadContext *)
 Fill the raw buffer from the registers in the ThreadContext. More...
 
void setRegs (ThreadContext *) const
 Set the ThreadContext's registers from the values in the raw buffer. More...
 
const std::string name () const
 Return the name to use in places like DPRINTF. More...
 
- Public Member Functions inherited from BaseGdbRegCache
 BaseGdbRegCache (BaseRemoteGDB *g)
 
virtual ~BaseGdbRegCache ()
 

Private Member Functions

 BaseGdbRegCache (BaseRemoteGDB *g)
 

Private Attributes

struct {
   uint32_t   gpr [32]
 
   uint32_t   hole [32]
 
   uint32_t   y
 
   uint32_t   psr
 
   uint32_t   wim
 
   uint32_t   tbr
 
   uint32_t   pc
 
   uint32_t   npc
 
   uint32_t   fsr
 
   uint32_t   csr
 
r
 

Additional Inherited Members

- Protected Attributes inherited from BaseGdbRegCache
BaseRemoteGDBgdb
 

Detailed Description

Definition at line 48 of file remote_gdb.hh.

Member Function Documentation

◆ BaseGdbRegCache()

BaseGdbRegCache::BaseGdbRegCache
inlineprivate

Definition at line 119 of file remote_gdb.hh.

◆ data()

char* SparcISA::RemoteGDB::SPARCGdbRegCache::data ( ) const
inlinevirtual

Return the pointer to the raw bytes buffer containing the register values.

Each byte of this buffer is literally encoded as two hex digits in the g or G RSP packet.

Implements BaseGdbRegCache.

Definition at line 65 of file remote_gdb.hh.

References r.

◆ getRegs()

void RemoteGDB::SPARCGdbRegCache::getRegs ( ThreadContext )
virtual

◆ name()

const std::string SparcISA::RemoteGDB::SPARCGdbRegCache::name ( ) const
inlinevirtual

Return the name to use in places like DPRINTF.

Having each concrete superclass redefine this member is useful in situations where the class of the regCache can change on the fly.

Implements BaseGdbRegCache.

Definition at line 70 of file remote_gdb.hh.

References BaseGdbRegCache::gdb, and BaseRemoteGDB::name().

◆ setRegs()

void RemoteGDB::SPARCGdbRegCache::setRegs ( ThreadContext ) const
virtual

Set the ThreadContext's registers from the values in the raw buffer.

Implements BaseGdbRegCache.

Definition at line 206 of file remote_gdb.cc.

References BaseRemoteGDB::context(), ArmISA::i, MipsISA::pc, ThreadContext::pcState(), MipsISA::r, and ThreadContext::setIntReg().

◆ size()

size_t SparcISA::RemoteGDB::SPARCGdbRegCache::size ( ) const
inlinevirtual

Return the size of the raw buffer, in bytes (i.e., half of the number of digits in the g/G packet).

Implements BaseGdbRegCache.

Definition at line 66 of file remote_gdb.hh.

References r.

Member Data Documentation

◆ csr

uint32_t SparcISA::RemoteGDB::SPARCGdbRegCache::csr

Definition at line 62 of file remote_gdb.hh.

◆ fsr

uint32_t SparcISA::RemoteGDB::SPARCGdbRegCache::fsr

Definition at line 61 of file remote_gdb.hh.

◆ gpr

uint32_t SparcISA::RemoteGDB::SPARCGdbRegCache::gpr[32]

Definition at line 53 of file remote_gdb.hh.

◆ hole

uint32_t SparcISA::RemoteGDB::SPARCGdbRegCache::hole[32]

Definition at line 54 of file remote_gdb.hh.

◆ npc

uint32_t SparcISA::RemoteGDB::SPARCGdbRegCache::npc

Definition at line 60 of file remote_gdb.hh.

◆ pc

uint32_t SparcISA::RemoteGDB::SPARCGdbRegCache::pc

Definition at line 59 of file remote_gdb.hh.

Referenced by getRegs().

◆ psr

uint32_t SparcISA::RemoteGDB::SPARCGdbRegCache::psr

Definition at line 56 of file remote_gdb.hh.

◆ r

struct { ... } SparcISA::RemoteGDB::SPARCGdbRegCache::r

Referenced by data(), getRegs(), and size().

◆ tbr

uint32_t SparcISA::RemoteGDB::SPARCGdbRegCache::tbr

Definition at line 58 of file remote_gdb.hh.

◆ wim

uint32_t SparcISA::RemoteGDB::SPARCGdbRegCache::wim

Definition at line 57 of file remote_gdb.hh.

◆ y

uint32_t SparcISA::RemoteGDB::SPARCGdbRegCache::y

Definition at line 55 of file remote_gdb.hh.


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

Generated on Wed Sep 30 2020 14:03:11 for gem5 by doxygen 1.8.17