mem: Remove threadId from memory request class

In general, the ThreadID parameter is unnecessary in the memory system
as the ContextID is what is used for the purposes of locks/wakeups.
Since we allocate sequential ContextIDs for each thread on MT-enabled
CPUs, ThreadID is unnecessary as the CPUs can identify the requesting
thread through sideband info (SenderState / LSQ entries) or ContextID
offset from the base ContextID for a cpu.

This is a re-spin of 20264eb after the revert (bd1c6789) and includes
some fixes of that commit.
This commit is contained in:
Mitch Hayenga
2016-04-07 09:30:20 -05:00
parent d99deff8ea
commit c75ff71139
29 changed files with 86 additions and 100 deletions

View File

@@ -177,7 +177,7 @@ ExtMaster::handleEvent(SST::Event* event)
}
auto req = new Request(ev->getAddr(), ev->getSize(), flags, 0);
req->setThreadContext(ev->getGroupId(), 0);
req->setContext(ev->getGroupId());
auto pkt = new Packet(req, cmdO);
pkt->allocate();