diff options
Diffstat (limited to 'src/arch/arm')
-rw-r--r-- | src/arch/arm/remote_gdb.cc | 6 | ||||
-rw-r--r-- | src/arch/arm/remote_gdb.hh | 15 |
2 files changed, 16 insertions, 5 deletions
diff --git a/src/arch/arm/remote_gdb.cc b/src/arch/arm/remote_gdb.cc index b0f6d8e5e..eefe62b42 100644 --- a/src/arch/arm/remote_gdb.cc +++ b/src/arch/arm/remote_gdb.cc @@ -165,7 +165,7 @@ using namespace std; using namespace ArmISA; RemoteGDB::RemoteGDB(System *_system, ThreadContext *tc) - : BaseRemoteGDB(_system, tc) + : BaseRemoteGDB(_system, tc), regCache32(this), regCache64(this) { } @@ -297,7 +297,7 @@ RemoteGDB::BaseGdbRegCache* RemoteGDB::gdbRegs() { if (inAArch64(context)) - return new AArch64GdbRegCache(this); + return ®Cache32; else - return new AArch32GdbRegCache(this); + return ®Cache64; } diff --git a/src/arch/arm/remote_gdb.hh b/src/arch/arm/remote_gdb.hh index 13ceac17f..acd6f32d2 100644 --- a/src/arch/arm/remote_gdb.hh +++ b/src/arch/arm/remote_gdb.hh @@ -79,7 +79,11 @@ class RemoteGDB : public BaseRemoteGDB size_t size() const { return sizeof(r); } void getRegs(ThreadContext*); void setRegs(ThreadContext*) const; - const std::string name() const { return gdb->name() + ".AArch32GdbRegCache"; } + const std::string + name() const + { + return gdb->name() + ".AArch32GdbRegCache"; + } }; class AArch64GdbRegCache : public BaseGdbRegCache @@ -98,9 +102,16 @@ class RemoteGDB : public BaseRemoteGDB size_t size() const { return sizeof(r); } void getRegs(ThreadContext*); void setRegs(ThreadContext*) const; - const std::string name() const { return gdb->name() + ".AArch64GdbRegCache"; } + const std::string + name() const + { + return gdb->name() + ".AArch64GdbRegCache"; + } }; + AArch32GdbRegCache regCache32; + AArch64GdbRegCache regCache64; + public: RemoteGDB(System *_system, ThreadContext *tc); BaseGdbRegCache *gdbRegs(); |