diff options
author | Clint Smullen <cws3k@cs.virginia.edu> | 2008-11-10 11:51:18 -0800 |
---|---|---|
committer | Clint Smullen <cws3k@cs.virginia.edu> | 2008-11-10 11:51:18 -0800 |
commit | 1adfe5c7f3368c4225ff685ddcd66b6280c7599f (patch) | |
tree | 8732797923445ea09d9eac84ff371a33cef2d171 /src/cpu/ozone | |
parent | 9c49bc7b00aa24b0488a83039ae8762d8f8094c5 (diff) | |
download | gem5-1adfe5c7f3368c4225ff685ddcd66b6280c7599f.tar.xz |
O3CPU: Make the instcount debugging stuff per-cpu.
This is to prevent the assertion from firing if you have a large multicore.
Also make sure that it's not compiled in when NDEBUG is defined
Diffstat (limited to 'src/cpu/ozone')
-rw-r--r-- | src/cpu/ozone/base_dyn_inst.cc | 4 | ||||
-rw-r--r-- | src/cpu/ozone/cpu.hh | 5 | ||||
-rw-r--r-- | src/cpu/ozone/cpu_impl.hh | 3 |
3 files changed, 8 insertions, 4 deletions
diff --git a/src/cpu/ozone/base_dyn_inst.cc b/src/cpu/ozone/base_dyn_inst.cc index 5a3a69dff..e0570fd16 100644 --- a/src/cpu/ozone/base_dyn_inst.cc +++ b/src/cpu/ozone/base_dyn_inst.cc @@ -33,7 +33,3 @@ // Explicit instantiation template class BaseDynInst<OzoneImpl>; - -template <> -int -BaseDynInst<OzoneImpl>::instcount = 0; diff --git a/src/cpu/ozone/cpu.hh b/src/cpu/ozone/cpu.hh index cc371ed93..6b5e7282d 100644 --- a/src/cpu/ozone/cpu.hh +++ b/src/cpu/ozone/cpu.hh @@ -287,6 +287,11 @@ class OzoneCPU : public BaseCPU // main simulation loop (one cycle) void tick(); +#ifndef NDEBUG + /** Count of total number of dynamic instructions in flight. */ + int instcount; +#endif + std::set<InstSeqNum> snList; std::set<Addr> lockAddrList; private: diff --git a/src/cpu/ozone/cpu_impl.hh b/src/cpu/ozone/cpu_impl.hh index 93848c03f..1402f4b72 100644 --- a/src/cpu/ozone/cpu_impl.hh +++ b/src/cpu/ozone/cpu_impl.hh @@ -95,6 +95,9 @@ OzoneCPU<Impl>::OzoneCPU(Params *p) : BaseCPU(p), thread(this, 0, p->workload[0], 0), tickEvent(this, p->width), #endif +#ifndef NDEBUG + instcount(0), +#endif comm(5, 5) { frontEnd = new FrontEnd(p); |