summaryrefslogtreecommitdiff
path: root/src/mem/cache/tags/base.cc
diff options
context:
space:
mode:
Diffstat (limited to 'src/mem/cache/tags/base.cc')
-rw-r--r--src/mem/cache/tags/base.cc14
1 files changed, 3 insertions, 11 deletions
diff --git a/src/mem/cache/tags/base.cc b/src/mem/cache/tags/base.cc
index 2f8d428c7..1d6ed4663 100644
--- a/src/mem/cache/tags/base.cc
+++ b/src/mem/cache/tags/base.cc
@@ -100,26 +100,18 @@ BaseTags::insertBlock(PacketPtr pkt, CacheBlk *blk)
blk->invalidate();
}
- // Touch block
- blk->isTouched = true;
- blk->refCount = 1;
- blk->tickInserted = curTick();
-
// Previous block, if existed, has been removed, and now we have
// to insert the new one
tagsInUse++;
- // Set tag for new block. Caller is responsible for setting status.
- blk->tag = extractTag(addr);
-
// Deal with what we are bringing in
MasterID master_id = pkt->req->masterId();
assert(master_id < cache->system->maxMasters());
occupancies[master_id]++;
- blk->srcMasterId = master_id;
- // Set task id
- blk->task_id = pkt->req->taskId();
+ // Insert block with tag, src master id and task id
+ blk->insert(extractTag(addr), pkt->isSecure(), master_id,
+ pkt->req->taskId());
// We only need to write into one tag and one data block.
tagAccesses += 1;