I noticed that checkpoints dumped from m5.debug and m5.opt had
differences, which is no longer the case (other than addresses
encoded in names).
cpu/full_cpu/smt.hh:
Get rid of unused SMT_MAX_CPUS.
sim/debug.cc:
Use AutoDelete for DebugBreakEvent.
sim/serialize.cc:
sim/serialize.hh:
Move constructor & destructor to header so they can be inlined.
--HG--
extra : convert_revision :
bc68c2c9b053b1de0d655ed555734419fafd0b83
/**
* @file
- * Defines SMT_MAX_CPUS and SMT_MAX_THREADS.
+ * Defines SMT_MAX_THREADS.
*/
#ifndef __SMT_HH__
#define __SMT_HH__
-#ifndef SMT_MAX_CPUS
-/** The maximum number of cpus in any one system. */
-#define SMT_MAX_CPUS 4
-#endif
-
#ifndef SMT_MAX_THREADS
/** The number of TPUs in any processor. */
#define SMT_MAX_THREADS 4
DebugBreakEvent::DebugBreakEvent(EventQueue *q, Tick _when)
: Event(q)
{
+ setFlags(AutoDelete);
schedule(_when, -20000);
}
DebugBreakEvent::process()
{
debug_break();
- delete this;
}
Serializer *Serializeable::serializer = NULL;
-Serializeable::Serializeable()
- : serialized(false)
-{ }
-
-Serializeable::~Serializeable()
-{ }
-
void
Serializeable::mark()
{
void nameOut(std::ostream& os, const std::string &_name);
public:
- Serializeable();
- virtual ~Serializeable();
+ Serializeable() : serialized(false) {}
+ virtual ~Serializeable() {}
// manditory virtual function, so objects must provide names
virtual std::string name() const = 0;