thread->setFloatReg(ZeroReg, 0.0);
#endif // ALPHA_ISA
- // keep an instruction count
- numInst++;
- numInsts++;
-
- thread->funcExeInst++;
-
// check for instruction-count-based events
comInstEventQueue[0]->serviceEvents(numInst);
delete dcache_pkt->req;
delete dcache_pkt;
dcache_pkt = NULL;
+
+ // keep an instruction count
+ if (fault == NoFault)
+ countInst();
}
+
postExecute();
advanceInst(fault);
}
} else {
// non-memory instruction: execute completely now
Fault fault = curStaticInst->execute(this, traceData);
+
+ // keep an instruction count
+ if (fault == NoFault)
+ countInst();
+
postExecute();
advanceInst(fault);
}
Fault fault = curStaticInst->completeAcc(pkt, this, traceData);
+ // keep an instruction count
+ if (fault == NoFault)
+ countInst();
+
if (pkt->isRead() && pkt->isLocked()) {
TheISA::handleLockedRead(thread, pkt->req);
}