|
gem5
v19.0.0.0
|
#include <remote_gdb.hh>
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 Attributes | |
| struct { | |
| uint64_t x [31] | |
| uint64_t spx | |
| uint64_t pc | |
| uint32_t cpsr | |
| VecElem v [NumVecV8ArchRegs *NumVecElemPerNeonVecReg] | |
| uint32_t fpsr | |
| uint32_t fpcr | |
| } | r |
Additional Inherited Members | |
Protected Attributes inherited from BaseGdbRegCache | |
| BaseRemoteGDB * | gdb |
Definition at line 91 of file remote_gdb.hh.
|
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 105 of file remote_gdb.hh.
References ArmISA::RemoteGDB::AArch32GdbRegCache::r.
|
virtual |
Fill the raw buffer from the registers in the ThreadContext.
Implements BaseGdbRegCache.
Definition at line 202 of file remote_gdb.cc.
References X86ISA::base, DPRINTF, ArmISA::i, ArmISA::INTREG_SPX, ArmISA::INTREG_X0, ArmISA::j, ArmISA::MISCREG_CPSR, ArmISA::MISCREG_FPCR, ArmISA::MISCREG_FPSR, ArmISA::NumVecElemPerNeonVecReg, ArmISA::NumVecV8ArchRegs, ThreadContext::pcState(), MipsISA::r, ThreadContext::readIntReg(), ThreadContext::readMiscRegNoEffect(), ThreadContext::readVecReg(), ArmISA::v, and VecRegClass.
|
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 110 of file remote_gdb.hh.
References BaseGdbRegCache::gdb, and BaseRemoteGDB::name().
|
virtual |
Set the ThreadContext's registers from the values in the raw buffer.
Implements BaseGdbRegCache.
Definition at line 225 of file remote_gdb.cc.
References X86ISA::base, DPRINTF, ThreadContext::getWritableVecReg(), ArmISA::i, ArmISA::INTREG_SPX, ArmISA::INTREG_X0, ArmISA::j, ArmISA::MISCREG_CPSR, ArmISA::MISCREG_FPCR, ArmISA::MISCREG_FPSR, ArmISA::NumVecElemPerNeonVecReg, ArmISA::NumVecV8ArchRegs, ThreadContext::pcState(), MipsISA::r, ThreadContext::setIntReg(), ThreadContext::setMiscRegNoEffect(), ArmISA::v, and VecRegClass.
|
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 106 of file remote_gdb.hh.
References ArmISA::RemoteGDB::AArch32GdbRegCache::getRegs(), ArmISA::RemoteGDB::AArch32GdbRegCache::r, and ArmISA::RemoteGDB::AArch32GdbRegCache::setRegs().
| uint32_t ArmISA::RemoteGDB::AArch64GdbRegCache::cpsr |
Definition at line 99 of file remote_gdb.hh.
| uint32_t ArmISA::RemoteGDB::AArch64GdbRegCache::fpcr |
Definition at line 102 of file remote_gdb.hh.
| uint32_t ArmISA::RemoteGDB::AArch64GdbRegCache::fpsr |
Definition at line 101 of file remote_gdb.hh.
| uint64_t ArmISA::RemoteGDB::AArch64GdbRegCache::pc |
Definition at line 98 of file remote_gdb.hh.
| struct { ... } ArmISA::RemoteGDB::AArch64GdbRegCache::r |
| uint64_t ArmISA::RemoteGDB::AArch64GdbRegCache::spx |
Definition at line 97 of file remote_gdb.hh.
| VecElem ArmISA::RemoteGDB::AArch64GdbRegCache::v[NumVecV8ArchRegs *NumVecElemPerNeonVecReg] |
Definition at line 100 of file remote_gdb.hh.
| uint64_t ArmISA::RemoteGDB::AArch64GdbRegCache::x[31] |
Definition at line 96 of file remote_gdb.hh.