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.
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:
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
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);
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__
: data(new uint8_t[size]), length(0)
{ }
- EthPacketData(std::auto_ptr<uint8_t> d, int l)
- : data(d.release()), length(l)
- { }
-
~EthPacketData() { if (data) delete [] data; }
public: