Don't do checker stuff if the checker is not defined

--HG--
extra : convert_revision : 1c920b050c21e592a386410e4e9f45354f8e4441
This commit is contained in:
Nathan Binkert 2007-06-20 08:15:06 -07:00
parent b47737dde7
commit f65e2710ec
2 changed files with 7 additions and 6 deletions

View file

@ -204,19 +204,17 @@ FullO3CPU<Impl>::FullO3CPU(O3CPU *o3_cpu, Params *params)
_status = Idle;
}
checker = NULL;
if (params->checker) {
#if USE_CHECKER
if (params->checker) {
BaseCPU *temp_checker = params->checker;
checker = dynamic_cast<Checker<DynInstPtr> *>(temp_checker);
#if FULL_SYSTEM
checker->setSystem(params->system);
#endif
#else
panic("Checker enabled but not compiled in!");
#endif // USE_CHECKER
} else {
checker = NULL;
}
#endif // USE_CHECKER
#if !FULL_SYSTEM
thread.resize(number_of_threads);

View file

@ -42,6 +42,7 @@
#include "base/statistics.hh"
#include "base/timebuf.hh"
#include "config/full_system.hh"
#include "config/use_checker.hh"
#include "cpu/activity.hh"
#include "cpu/base.hh"
#include "cpu/simple_thread.hh"
@ -617,11 +618,13 @@ class FullO3CPU : public BaseO3CPU
/** The global sequence number counter. */
InstSeqNum globalSeqNum;//[Impl::MaxThreads];
#if USE_CHECKER
/** Pointer to the checker, which can dynamically verify
* instruction results at run time. This can be set to NULL if it
* is not being used.
*/
Checker<DynInstPtr> *checker;
#endif
#if FULL_SYSTEM
/** Pointer to the system. */