changeset 18411ccc4f3c in /z/repo/gem5
details: http://repo.gem5.org/gem5?cmd=changeset;node=18411ccc4f3c
description:
mem: Remove unused cache squash functionality
This patch removes the unused squash function from the MSHR queue, and
the associated (and also unused) threadNum member from the MSHR.
diffstat:
src/mem/cache/cache.cc | 3 ---
src/mem/cache/mshr.cc | 3 +--
src/mem/cache/mshr.hh | 3 ---
src/mem/cache/mshr_queue.cc | 24 ------------------------
src/mem/cache/mshr_queue.hh | 9 +--------
5 files changed, 2 insertions(+), 40 deletions(-)
diffs (106 lines):
diff -r 4f8703832608 -r 18411ccc4f3c src/mem/cache/cache.cc
--- a/src/mem/cache/cache.cc Mon Dec 28 11:14:15 2015 -0500
+++ b/src/mem/cache/cache.cc Mon Dec 28 11:14:16 2015 -0500
@@ -807,9 +807,6 @@
assert(pkt->req->masterId() < system->maxMasters());
mshr_hits[pkt->cmdToIndex()][pkt->req->masterId()]++;
- if (mshr->threadNum != 0/*pkt->req->threadId()*/) {
- mshr->threadNum = -1;
- }
// We use forward_time here because it is the same
// considering new targets. We have multiple
// requests for the same address here. It
diff -r 4f8703832608 -r 18411ccc4f3c src/mem/cache/mshr.cc
--- a/src/mem/cache/mshr.cc Mon Dec 28 11:14:15 2015 -0500
+++ b/src/mem/cache/mshr.cc Mon Dec 28 11:14:16 2015 -0500
@@ -67,7 +67,7 @@
queue(NULL), order(0), blkAddr(0),
blkSize(0), isSecure(false), inService(false),
isForward(false), allocOnFill(false),
- threadNum(InvalidThreadID), data(NULL)
+ data(NULL)
{
}
@@ -216,7 +216,6 @@
_isUncacheable = target->req->isUncacheable();
inService = false;
downstreamPending = false;
- threadNum = 0;
assert(targets.isReset());
// Don't know of a case where we would allocate a new MSHR for a
// snoop (mem-side request), so set source according to request here
diff -r 4f8703832608 -r 18411ccc4f3c src/mem/cache/mshr.hh
--- a/src/mem/cache/mshr.hh Mon Dec 28 11:14:15 2015 -0500
+++ b/src/mem/cache/mshr.hh Mon Dec 28 11:14:16 2015 -0500
@@ -184,9 +184,6 @@
assert(inService); return postDowngrade;
}
- /** Thread number of the miss. */
- ThreadID threadNum;
-
private:
/** Data buffer (if needed). Currently used only for pending
diff -r 4f8703832608 -r 18411ccc4f3c src/mem/cache/mshr_queue.cc
--- a/src/mem/cache/mshr_queue.cc Mon Dec 28 11:14:15 2015 -0500
+++ b/src/mem/cache/mshr_queue.cc Mon Dec 28 11:14:16 2015 -0500
@@ -239,30 +239,6 @@
return was_full && !isFull();
}
-void
-MSHRQueue::squash(int threadNum)
-{
- for (auto i = allocatedList.begin(); i != allocatedList.end();) {
- MSHR *mshr = *i;
- if (mshr->threadNum == threadNum) {
- while (mshr->hasTargets()) {
- mshr->popTarget();
- assert(0/*target->req->threadId()*/ == threadNum);
- }
- assert(!mshr->hasTargets());
- assert(mshr->getNumTargets()==0);
- if (!mshr->inService) {
- i = deallocateOne(mshr);
- } else {
- //mshr->pkt->flags &= ~CACHE_LINE_FILL;
- ++i;
- }
- } else {
- ++i;
- }
- }
-}
-
DrainState
MSHRQueue::drain()
{
diff -r 4f8703832608 -r 18411ccc4f3c src/mem/cache/mshr_queue.hh
--- a/src/mem/cache/mshr_queue.hh Mon Dec 28 11:14:15 2015 -0500
+++ b/src/mem/cache/mshr_queue.hh Mon Dec 28 11:14:16 2015 -0500
@@ -170,7 +170,7 @@
/**
* Remove a MSHR from the queue. Returns an iterator into the
- * allocatedList for faster squash implementation.
+ * allocatedList.
* @param mshr The MSHR to remove.
* @return An iterator to the next entry in the allocatedList.
*/
@@ -200,13 +200,6 @@
void markPending(MSHR *mshr);
/**
- * Squash outstanding requests with the given thread number. If a request
- * is in service, just squashes the targets.
- * @param threadNum The thread to squash.
- */
- void squash(int threadNum);
-
- /**
* Deallocate top target, possibly freeing the MSHR
* @return if MSHR queue is no longer full
*/
_______________________________________________
gem5-dev mailing list
[email protected]
http://m5sim.org/mailman/listinfo/gem5-dev