diff options
Diffstat (limited to 'src/mem/cache/tags/base.cc')
-rw-r--r-- | src/mem/cache/tags/base.cc | 14 |
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; |