From c8c4f66889686d621abe9393306d3aea1fda3782 Mon Sep 17 00:00:00 2001 From: Andreas Hansson Date: Thu, 23 Apr 2015 13:37:46 -0400 Subject: [PATCH] misc: Appease gcc 5.1 This patch fixes a few small issues to ensure gem5 compiles when using gcc 5.1. First, the GDB_REG_BYTES in the RemoteGDB header are, rather surprisingly, flagged as unused for both ARM and X86. Removing them, however, causes compilation errors as they are actually used in the source file. Moving the constant into the class definition fixes the issue. Possibly a gcc bug. Second, we have an unused EthPktData constructor using auto_ptr, and the latter is deprecated. Since the code is never used it is simply removed. --- src/arch/arm/remote_gdb.hh | 6 +++--- src/arch/x86/remote_gdb.hh | 8 ++++---- src/dev/etherpkt.hh | 4 ---- 3 files changed, 7 insertions(+), 11 deletions(-) diff --git a/src/arch/arm/remote_gdb.hh b/src/arch/arm/remote_gdb.hh index 56a50a133..1e6420633 100644 --- a/src/arch/arm/remote_gdb.hh +++ b/src/arch/arm/remote_gdb.hh @@ -76,9 +76,6 @@ enum { GDB64_NUMREGS = 98 }; -const int GDB_REG_BYTES = std::max(GDB64_NUMREGS * sizeof(uint64_t), - GDB32_NUMREGS * sizeof(uint32_t)); - class RemoteGDB : public BaseRemoteGDB { protected: @@ -89,6 +86,9 @@ class RemoteGDB : public BaseRemoteGDB void setregs(); public: + const int GDB_REG_BYTES = std::max(GDB64_NUMREGS * sizeof(uint64_t), + GDB32_NUMREGS * sizeof(uint32_t)); + RemoteGDB(System *_system, ThreadContext *tc); }; } // namespace ArmISA diff --git a/src/arch/x86/remote_gdb.hh b/src/arch/x86/remote_gdb.hh index f09d1e012..0f41055cd 100644 --- a/src/arch/x86/remote_gdb.hh +++ b/src/arch/x86/remote_gdb.hh @@ -111,6 +111,10 @@ class RemoteGDB : public BaseRemoteGDB GDB64_NUMREGS = (GDB64_GS_32 + 1) / 2 + 1 }; + const int GDB_REG_BYTES = + std::max(RemoteGDB::GDB32_NUMREGS * sizeof(uint32_t), + RemoteGDB::GDB64_NUMREGS * sizeof(uint64_t)); + RemoteGDB(System *system, ThreadContext *context); bool acc(Addr addr, size_t len); @@ -122,10 +126,6 @@ class RemoteGDB : public BaseRemoteGDB bool checkBpLen(size_t len) { return len == 1; } }; -const int GDB_REG_BYTES = - std::max(RemoteGDB::GDB32_NUMREGS * sizeof(uint32_t), - RemoteGDB::GDB64_NUMREGS * sizeof(uint64_t)); - } #endif // __ARCH_X86_REMOTEGDB_HH__ diff --git a/src/dev/etherpkt.hh b/src/dev/etherpkt.hh index 16576d329..febd303a1 100644 --- a/src/dev/etherpkt.hh +++ b/src/dev/etherpkt.hh @@ -68,10 +68,6 @@ class EthPacketData : data(new uint8_t[size]), length(0) { } - EthPacketData(std::auto_ptr d, int l) - : data(d.release()), length(l) - { } - ~EthPacketData() { if (data) delete [] data; } public: -- 2.30.2