summaryrefslogtreecommitdiff
path: root/src/mem/cache/tags/fa_lru.cc
diff options
context:
space:
mode:
Diffstat (limited to 'src/mem/cache/tags/fa_lru.cc')
-rw-r--r--src/mem/cache/tags/fa_lru.cc5
1 files changed, 5 insertions, 0 deletions
diff --git a/src/mem/cache/tags/fa_lru.cc b/src/mem/cache/tags/fa_lru.cc
index a38d0bf34..1f2909e31 100644
--- a/src/mem/cache/tags/fa_lru.cc
+++ b/src/mem/cache/tags/fa_lru.cc
@@ -80,10 +80,12 @@ FALRU::FALRU(const Params *p)
head->prev = nullptr;
head->next = &(blks[1]);
head->inCache = cacheMask;
+ head->data = &dataBlks[0];
tail->prev = &(blks[numBlocks-2]);
tail->next = nullptr;
tail->inCache = 0;
+ tail->data = &dataBlks[(numBlocks-1)*blkSize];
unsigned index = (1 << 17) / blkSize;
unsigned j = 0;
@@ -100,6 +102,9 @@ FALRU::FALRU(const Params *p)
blks[i].next = &(blks[i+1]);
blks[i].set = 0;
blks[i].way = i;
+
+ // Associate a data chunk to the block
+ blks[i].data = &dataBlks[blkSize*i];
}
assert(j == numCaches);
assert(index == numBlocks);