diff options
Diffstat (limited to 'src')
-rw-r--r-- | src/arch/arm/remote_gdb.cc | 8 | ||||
-rw-r--r-- | src/arch/arm/remote_gdb.hh | 9 |
2 files changed, 4 insertions, 13 deletions
diff --git a/src/arch/arm/remote_gdb.cc b/src/arch/arm/remote_gdb.cc index f1919372b..a395cd913 100644 --- a/src/arch/arm/remote_gdb.cc +++ b/src/arch/arm/remote_gdb.cc @@ -209,10 +209,6 @@ RemoteGDB::AArch64GdbRegCache::getRegs(ThreadContext *context) r.v[i + 2] = context->readFloatRegBits(i + 0); r.v[i + 3] = context->readFloatRegBits(i + 1); } - - for (int i = 0; i < 32; i ++) { - r.vec[i] = context->readVecReg(RegId(VecRegClass,i)); - } } void @@ -235,10 +231,6 @@ RemoteGDB::AArch64GdbRegCache::setRegs(ThreadContext *context) const context->setFloatRegBits(i + 0, r.v[i + 2]); context->setFloatRegBits(i + 1, r.v[i + 3]); } - - for (int i = 0; i < 32; i ++) { - context->setVecReg(RegId(VecRegClass, i), r.vec[i]); - } } void diff --git a/src/arch/arm/remote_gdb.hh b/src/arch/arm/remote_gdb.hh index e5d50ee13..e59d7b045 100644 --- a/src/arch/arm/remote_gdb.hh +++ b/src/arch/arm/remote_gdb.hh @@ -51,7 +51,7 @@ #include <algorithm> #include "arch/arm/utility.hh" -#include "arch/generic/vec_reg.hh" +#include "base/compiler.hh" #include "base/remote_gdb.hh" class System; @@ -74,7 +74,7 @@ class RemoteGDB : public BaseRemoteGDB uint32_t fpr[8*3]; uint32_t fpscr; uint32_t cpsr; - } r; + } M5_ATTR_PACKED r; public: char *data() const { return (char *)&r; } size_t size() const { return sizeof(r); } @@ -95,10 +95,9 @@ class RemoteGDB : public BaseRemoteGDB uint64_t x[31]; uint64_t spx; uint64_t pc; - uint64_t cpsr; + uint32_t cpsr; uint32_t v[32*4]; - ArmISA::VecRegContainer vec[32]; - } r; + } M5_ATTR_PACKED r; public: char *data() const { return (char *)&r; } size_t size() const { return sizeof(r); } |