gem5  v22.1.0.0
Public Member Functions | Private Member Functions | Private Attributes | List of all members
gem5::X86ISA::RemoteGDB::X86GdbRegCache Class Reference

#include <remote_gdb.hh>

Inheritance diagram for gem5::X86ISA::RemoteGDB::X86GdbRegCache:
gem5::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 gem5::BaseGdbRegCache
 BaseGdbRegCache (BaseRemoteGDB *g)
 
virtual ~BaseGdbRegCache ()
 

Private Member Functions

 BaseGdbRegCache (BaseRemoteGDB *g)
 

Private Attributes

struct {
   uint32_t   eax
 
   uint32_t   ecx
 
   uint32_t   edx
 
   uint32_t   ebx
 
   uint32_t   esp
 
   uint32_t   ebp
 
   uint32_t   esi
 
   uint32_t   edi
 
   uint32_t   eip
 
   uint32_t   eflags
 
   uint32_t   cs
 
   uint32_t   ss
 
   uint32_t   ds
 
   uint32_t   es
 
   uint32_t   fs
 
   uint32_t   gs
 
r
 

Additional Inherited Members

- Protected Attributes inherited from gem5::BaseGdbRegCache
BaseRemoteGDBgdb
 

Detailed Description

Definition at line 62 of file remote_gdb.hh.

Member Function Documentation

◆ BaseGdbRegCache()

gem5::BaseGdbRegCache::BaseGdbRegCache
inlineprivate

Definition at line 134 of file remote_gdb.hh.

◆ data()

char* gem5::X86ISA::RemoteGDB::X86GdbRegCache::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 gem5::BaseGdbRegCache.

Definition at line 86 of file remote_gdb.hh.

References r.

◆ getRegs()

void gem5::RemoteGDB::X86GdbRegCache::getRegs ( ThreadContext )
virtual

◆ name()

const std::string gem5::X86ISA::RemoteGDB::X86GdbRegCache::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 gem5::BaseGdbRegCache.

Definition at line 91 of file remote_gdb.hh.

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

◆ setRegs()

void gem5::RemoteGDB::X86GdbRegCache::setRegs ( ThreadContext ) const
virtual

◆ size()

size_t gem5::X86ISA::RemoteGDB::X86GdbRegCache::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 gem5::BaseGdbRegCache.

Definition at line 87 of file remote_gdb.hh.

References r.

Member Data Documentation

◆ cs

uint32_t gem5::X86ISA::RemoteGDB::X86GdbRegCache::cs

Definition at line 78 of file remote_gdb.hh.

◆ ds

uint32_t gem5::X86ISA::RemoteGDB::X86GdbRegCache::ds

Definition at line 80 of file remote_gdb.hh.

◆ eax

uint32_t gem5::X86ISA::RemoteGDB::X86GdbRegCache::eax

Definition at line 68 of file remote_gdb.hh.

◆ ebp

uint32_t gem5::X86ISA::RemoteGDB::X86GdbRegCache::ebp

Definition at line 73 of file remote_gdb.hh.

◆ ebx

uint32_t gem5::X86ISA::RemoteGDB::X86GdbRegCache::ebx

Definition at line 71 of file remote_gdb.hh.

◆ ecx

uint32_t gem5::X86ISA::RemoteGDB::X86GdbRegCache::ecx

Definition at line 69 of file remote_gdb.hh.

◆ edi

uint32_t gem5::X86ISA::RemoteGDB::X86GdbRegCache::edi

Definition at line 75 of file remote_gdb.hh.

◆ edx

uint32_t gem5::X86ISA::RemoteGDB::X86GdbRegCache::edx

Definition at line 70 of file remote_gdb.hh.

◆ eflags

uint32_t gem5::X86ISA::RemoteGDB::X86GdbRegCache::eflags

Definition at line 77 of file remote_gdb.hh.

◆ eip

uint32_t gem5::X86ISA::RemoteGDB::X86GdbRegCache::eip

Definition at line 76 of file remote_gdb.hh.

◆ es

uint32_t gem5::X86ISA::RemoteGDB::X86GdbRegCache::es

Definition at line 81 of file remote_gdb.hh.

◆ esi

uint32_t gem5::X86ISA::RemoteGDB::X86GdbRegCache::esi

Definition at line 74 of file remote_gdb.hh.

◆ esp

uint32_t gem5::X86ISA::RemoteGDB::X86GdbRegCache::esp

Definition at line 72 of file remote_gdb.hh.

◆ fs

uint32_t gem5::X86ISA::RemoteGDB::X86GdbRegCache::fs

Definition at line 82 of file remote_gdb.hh.

◆ gs

uint32_t gem5::X86ISA::RemoteGDB::X86GdbRegCache::gs

Definition at line 83 of file remote_gdb.hh.

◆ 

struct { ... } gem5::X86ISA::RemoteGDB::X86GdbRegCache::r

Referenced by data(), and size().

◆ ss

uint32_t gem5::X86ISA::RemoteGDB::X86GdbRegCache::ss

Definition at line 79 of file remote_gdb.hh.


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

Generated on Wed Dec 21 2022 10:25:05 for gem5 by doxygen 1.9.1