44 #ifndef __ARCH_ARM_REMOTE_GDB_HH__
45 #define __ARCH_ARM_REMOTE_GDB_HH__
80 char *
data()
const {
return (
char *)&
r; }
81 size_t size()
const {
return sizeof(
r); }
87 return gdb->
name() +
".AArch32GdbRegCache";
106 char *
data()
const {
return (
char *)&
r; }
107 size_t size()
const {
return sizeof(
r); }
113 return gdb->
name() +
".AArch64GdbRegCache";
127 return {
"qXfer:features:read+"};
130 std::string &
output)
override;
const std::string name() const
Return the name to use in places like DPRINTF.
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).
void setRegs(ThreadContext *) const
Set the ThreadContext's registers from the values in the raw buffer.
void getRegs(ThreadContext *)
Fill the raw buffer from the registers in the ThreadContext.
struct gem5::ArmISA::RemoteGDB::AArch32GdbRegCache::GEM5_PACKED r
char * data() const
Return the pointer to the raw bytes buffer containing the register values.
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).
void setRegs(ThreadContext *) const
Set the ThreadContext's registers from the values in the raw buffer.
void getRegs(ThreadContext *)
Fill the raw buffer from the registers in the ThreadContext.
struct gem5::ArmISA::RemoteGDB::AArch64GdbRegCache::GEM5_PACKED r
const std::string name() const
Return the name to use in places like DPRINTF.
char * data() const
Return the pointer to the raw bytes buffer containing the register values.
bool checkBpKind(size_t kind) override
RemoteGDB(System *_system, int _port)
bool acc(Addr addr, size_t len) override
BaseGdbRegCache * gdbRegs() override
bool getXferFeaturesRead(const std::string &annex, std::string &output) override
Get an XML target description.
AArch64GdbRegCache regCache64
AArch32GdbRegCache regCache32
std::vector< std::string > availableFeatures() const override
Concrete subclasses of this abstract class represent how the register values are transmitted on the w...
ThreadContext is the external interface to all thread state for anything outside of the CPU.
BaseGdbRegCache(BaseRemoteGDB *g)
const int NumVecV8ArchRegs
constexpr unsigned NumVecElemPerNeonVecReg
Reference material can be found at the JEDEC website: UFS standard http://www.jedec....
uint64_t Addr
Address type This will probably be moved somewhere else in the near future.
static void output(const char *filename)
VecElem v[NumVecV8ArchRegs *NumVecElemPerNeonVecReg]