Deleted Added
sdiff udiff text old ( 12680:91f4d6668b4f ) new ( 12749:223c83ed9979 )
full compact
1/*
2 * Copyright (c) 2013 - 2016 ARM Limited
3 * All rights reserved
4 *
5 * The license below extends only to copyright in the software and shall
6 * not be construed as granting a license to any other intellectual
7 * property including but not limited to intellectual property relating
8 * to a hardware implementation of the functionality of the software

--- 648 unchanged lines hidden (view full) ---

657 unsigned blk_size = owner.cacheLineSize();
658 Addr blk_offset = (node_ptr->physAddr & (Addr)(blk_size - 1));
659 if (!(blk_offset + node_ptr->size <= blk_size)) {
660 node_ptr->size = blk_size - blk_offset;
661 ++numSplitReqs;
662 }
663
664 // Create a request and the packet containing request
665 Request* req = new Request(node_ptr->physAddr, node_ptr->size,
666 node_ptr->flags, masterID, node_ptr->seqNum,
667 ContextID(0));
668 req->setPC(node_ptr->pc);
669 // If virtual address is valid, set the asid and virtual address fields
670 // of the request.
671 if (node_ptr->virtAddr != 0) {
672 req->setVirt(node_ptr->asid, node_ptr->virtAddr, node_ptr->size,
673 node_ptr->flags, masterID, node_ptr->pc);
674 req->setPaddr(node_ptr->physAddr);
675 req->setReqInstSeqNum(node_ptr->seqNum);

--- 477 unchanged lines hidden (view full) ---

1153}
1154
1155bool
1156TraceCPU::FixedRetryGen::send(Addr addr, unsigned size, const MemCmd& cmd,
1157 Request::FlagsType flags, Addr pc)
1158{
1159
1160 // Create new request
1161 Request* req = new Request(addr, size, flags, masterID);
1162 req->setPC(pc);
1163
1164 // If this is not done it triggers assert in L1 cache for invalid contextId
1165 req->setContext(ContextID(0));
1166
1167 // Embed it in a packet
1168 PacketPtr pkt = new Packet(req, cmd);
1169

--- 49 unchanged lines hidden (view full) ---

1219 }
1220
1221}
1222
1223bool
1224TraceCPU::IcachePort::recvTimingResp(PacketPtr pkt)
1225{
1226 // All responses on the instruction fetch side are ignored. Simply delete
1227 // the request and packet to free allocated memory
1228 delete pkt->req;
1229 delete pkt;
1230
1231 return true;
1232}
1233
1234void
1235TraceCPU::IcachePort::recvReqRetry()
1236{

--- 8 unchanged lines hidden (view full) ---

1245}
1246
1247bool
1248TraceCPU::DcachePort::recvTimingResp(PacketPtr pkt)
1249{
1250 // Handle the responses for data memory requests which is done inside the
1251 // elastic data generator
1252 owner->dcacheRecvTimingResp(pkt);
1253 // After processing the response delete the request and packet to free
1254 // memory
1255 delete pkt->req;
1256 delete pkt;
1257
1258 return true;
1259}
1260
1261void
1262TraceCPU::DcachePort::recvReqRetry()
1263{

--- 256 unchanged lines hidden ---