gem5
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Public Member Functions | Private Attributes | List of all members
X86ISA::RemoteGDB::AMD64GdbRegCache Class Reference

#include <remote_gdb.hh>

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

Private Attributes

struct {
   uint64_t   rax
 
   uint64_t   rbx
 
   uint64_t   rcx
 
   uint64_t   rdx
 
   uint64_t   rsi
 
   uint64_t   rdi
 
   uint64_t   rbp
 
   uint64_t   rsp
 
   uint64_t   r8
 
   uint64_t   r9
 
   uint64_t   r10
 
   uint64_t   r11
 
   uint64_t   r12
 
   uint64_t   r13
 
   uint64_t   r14
 
   uint64_t   r15
 
   uint64_t   rip
 
   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 BaseRemoteGDB::BaseGdbRegCache
BaseRemoteGDBgdb
 

Detailed Description

Definition at line 95 of file remote_gdb.hh.

Member Function Documentation

char* X86ISA::RemoteGDB::AMD64GdbRegCache::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 BaseRemoteGDB::BaseGdbRegCache.

Definition at line 131 of file remote_gdb.hh.

References r.

void RemoteGDB::AMD64GdbRegCache::getRegs ( ThreadContext )
virtual
const std::string X86ISA::RemoteGDB::AMD64GdbRegCache::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 BaseRemoteGDB::BaseGdbRegCache.

Definition at line 136 of file remote_gdb.hh.

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

void RemoteGDB::AMD64GdbRegCache::setRegs ( ThreadContext ) const
virtual
size_t X86ISA::RemoteGDB::AMD64GdbRegCache::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 BaseRemoteGDB::BaseGdbRegCache.

Definition at line 132 of file remote_gdb.hh.

References r.

Member Data Documentation

uint32_t X86ISA::RemoteGDB::AMD64GdbRegCache::cs

Definition at line 118 of file remote_gdb.hh.

uint32_t X86ISA::RemoteGDB::AMD64GdbRegCache::ds

Definition at line 120 of file remote_gdb.hh.

uint32_t X86ISA::RemoteGDB::AMD64GdbRegCache::eflags

Definition at line 117 of file remote_gdb.hh.

uint32_t X86ISA::RemoteGDB::AMD64GdbRegCache::es

Definition at line 121 of file remote_gdb.hh.

uint32_t X86ISA::RemoteGDB::AMD64GdbRegCache::fs

Definition at line 122 of file remote_gdb.hh.

uint32_t X86ISA::RemoteGDB::AMD64GdbRegCache::gs

Definition at line 123 of file remote_gdb.hh.

struct { ... } X86ISA::RemoteGDB::AMD64GdbRegCache::r

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

uint64_t X86ISA::RemoteGDB::AMD64GdbRegCache::r10

Definition at line 110 of file remote_gdb.hh.

uint64_t X86ISA::RemoteGDB::AMD64GdbRegCache::r11

Definition at line 111 of file remote_gdb.hh.

uint64_t X86ISA::RemoteGDB::AMD64GdbRegCache::r12

Definition at line 112 of file remote_gdb.hh.

uint64_t X86ISA::RemoteGDB::AMD64GdbRegCache::r13

Definition at line 113 of file remote_gdb.hh.

uint64_t X86ISA::RemoteGDB::AMD64GdbRegCache::r14

Definition at line 114 of file remote_gdb.hh.

uint64_t X86ISA::RemoteGDB::AMD64GdbRegCache::r15

Definition at line 115 of file remote_gdb.hh.

uint64_t X86ISA::RemoteGDB::AMD64GdbRegCache::r8

Definition at line 108 of file remote_gdb.hh.

uint64_t X86ISA::RemoteGDB::AMD64GdbRegCache::r9

Definition at line 109 of file remote_gdb.hh.

uint64_t X86ISA::RemoteGDB::AMD64GdbRegCache::rax

Definition at line 100 of file remote_gdb.hh.

uint64_t X86ISA::RemoteGDB::AMD64GdbRegCache::rbp

Definition at line 106 of file remote_gdb.hh.

uint64_t X86ISA::RemoteGDB::AMD64GdbRegCache::rbx

Definition at line 101 of file remote_gdb.hh.

uint64_t X86ISA::RemoteGDB::AMD64GdbRegCache::rcx

Definition at line 102 of file remote_gdb.hh.

uint64_t X86ISA::RemoteGDB::AMD64GdbRegCache::rdi

Definition at line 105 of file remote_gdb.hh.

uint64_t X86ISA::RemoteGDB::AMD64GdbRegCache::rdx

Definition at line 103 of file remote_gdb.hh.

uint64_t X86ISA::RemoteGDB::AMD64GdbRegCache::rip

Definition at line 116 of file remote_gdb.hh.

uint64_t X86ISA::RemoteGDB::AMD64GdbRegCache::rsi

Definition at line 104 of file remote_gdb.hh.

uint64_t X86ISA::RemoteGDB::AMD64GdbRegCache::rsp

Definition at line 107 of file remote_gdb.hh.

uint32_t X86ISA::RemoteGDB::AMD64GdbRegCache::ss

Definition at line 119 of file remote_gdb.hh.


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

Generated on Fri Jun 9 2017 13:04:42 for gem5 by doxygen 1.8.6