summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAnthony Gutierrez <atgutier@umich.edu>2012-09-12 11:35:52 -0400
committerAnthony Gutierrez <atgutier@umich.edu>2012-09-12 11:35:52 -0400
commitc6927ed13868c096a60df6a217f92857799b5be6 (patch)
tree8a266fc19505a3e005d581f9202ae75c4f4fb4d9
parent89a5ba1ef865d5eb58f2325eec5ebbec56b42b08 (diff)
downloadgem5-c6927ed13868c096a60df6a217f92857799b5be6.tar.xz
stats: remove duplicate instruction stats from the commit stage
these stats are duplicates of insts/opsCommitted, cause confusion, and are poorly named.
-rw-r--r--src/cpu/o3/commit.hh4
-rw-r--r--src/cpu/o3/commit_impl.hh24
2 files changed, 6 insertions, 22 deletions
diff --git a/src/cpu/o3/commit.hh b/src/cpu/o3/commit.hh
index d3d1ad347..489656a7d 100644
--- a/src/cpu/o3/commit.hh
+++ b/src/cpu/o3/commit.hh
@@ -447,10 +447,6 @@ class DefaultCommit
/** Updates commit stats based on this instruction. */
void updateComInstStats(DynInstPtr &inst);
- /** Stat for the total number of committed instructions. */
- Stats::Scalar commitCommittedInsts;
- /** Stat for the total number of committed ops. */
- Stats::Scalar commitCommittedOps;
/** Stat for the total number of squashed instructions discarded by commit.
*/
Stats::Scalar commitSquashedInsts;
diff --git a/src/cpu/o3/commit_impl.hh b/src/cpu/o3/commit_impl.hh
index 66474c05f..8a2dcdd1f 100644
--- a/src/cpu/o3/commit_impl.hh
+++ b/src/cpu/o3/commit_impl.hh
@@ -161,14 +161,6 @@ void
DefaultCommit<Impl>::regStats()
{
using namespace Stats;
- commitCommittedInsts
- .name(name() + ".commitCommittedInsts")
- .desc("The number of committed instructions")
- .prereq(commitCommittedInsts);
- commitCommittedOps
- .name(name() + ".commitCommittedOps")
- .desc("The number of committed instructions")
- .prereq(commitCommittedInsts);
commitSquashedInsts
.name(name() + ".commitSquashedInsts")
.desc("The number of squashed insts skipped by commit")
@@ -998,16 +990,6 @@ DefaultCommit<Impl>::commitInsts()
// Set the doneSeqNum to the youngest committed instruction.
toIEW->commitInfo[tid].doneSeqNum = head_inst->seqNum;
- if (!head_inst->isMicroop() || head_inst->isLastMicroop())
- ++commitCommittedInsts;
- ++commitCommittedOps;
-
- // To match the old model, don't count nops and instruction
- // prefetches towards the total commit count.
- if (!head_inst->isNop() && !head_inst->isInstPrefetch()) {
- cpu->instDone(tid, head_inst);
- }
-
if (tid == 0) {
canHandleInterrupts = (!head_inst->isDelayedCommit()) &&
((THE_ISA != ALPHA_ISA) ||
@@ -1369,6 +1351,12 @@ DefaultCommit<Impl>::updateComInstStats(DynInstPtr &inst)
instsCommitted[tid]++;
opsCommitted[tid]++;
+ // To match the old model, don't count nops and instruction
+ // prefetches towards the total commit count.
+ if (!inst->isNop() && !inst->isInstPrefetch()) {
+ cpu->instDone(tid, inst);
+ }
+
//
// Control Instructions
//