diff options
author | Ali Saidi <saidi@eecs.umich.edu> | 2008-07-01 10:24:09 -0400 |
---|---|---|
committer | Ali Saidi <saidi@eecs.umich.edu> | 2008-07-01 10:24:09 -0400 |
commit | 9bd0bfe559d8c9633c5686ccf100ab921eb6eda2 (patch) | |
tree | a07c23f26f2c0d7816baf4e212a0c97e6b15a656 /src/cpu/simple/base.hh | |
parent | 96bbccc36bad7c6f67b1cb70965eab3a621c7270 (diff) | |
download | gem5-9bd0bfe559d8c9633c5686ccf100ab921eb6eda2.tar.xz |
After a checkpoint (and thus a stats reset), the not_idle_fraction/notIdleFraction statistic is really wrong.
The notIdleFraction statistic isn't updated when the statistics reset, probably because the cpu Status information
was pulled into the atomic and timing cpus. This changeset pulls Status back into the BaseSimpleCPU object. Anyone
care to comment on the odd naming of the Status instance? It shouldn't just be status because that is confusing
with Port::Status, but _status seems a bit strage too.
Diffstat (limited to 'src/cpu/simple/base.hh')
-rw-r--r-- | src/cpu/simple/base.hh | 14 |
1 files changed, 14 insertions, 0 deletions
diff --git a/src/cpu/simple/base.hh b/src/cpu/simple/base.hh index 918965fdb..62bb31de8 100644 --- a/src/cpu/simple/base.hh +++ b/src/cpu/simple/base.hh @@ -129,6 +129,20 @@ class BaseSimpleCPU : public BaseCPU protected: int cpuId; + enum Status { + Idle, + Running, + IcacheRetry, + IcacheWaitResponse, + IcacheWaitSwitch, + DcacheRetry, + DcacheWaitResponse, + DcacheWaitSwitch, + SwitchedOut + }; + + Status _status; + public: #if FULL_SYSTEM |