write_queue_entry.cc (12727:56c23b54bcb1) | write_queue_entry.cc (12823:ba630bc7a36d) |
---|---|
1/* 2 * Copyright (c) 2012-2013, 2015-2017 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 --- 52 unchanged lines hidden (view full) --- 61inline void 62WriteQueueEntry::TargetList::add(PacketPtr pkt, Tick readyTime, 63 Counter order) 64{ 65 emplace_back(pkt, readyTime, order); 66} 67 68bool | 1/* 2 * Copyright (c) 2012-2013, 2015-2017 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 --- 52 unchanged lines hidden (view full) --- 61inline void 62WriteQueueEntry::TargetList::add(PacketPtr pkt, Tick readyTime, 63 Counter order) 64{ 65 emplace_back(pkt, readyTime, order); 66} 67 68bool |
69WriteQueueEntry::TargetList::checkFunctional(PacketPtr pkt) | 69WriteQueueEntry::TargetList::trySatisfyFunctional(PacketPtr pkt) |
70{ 71 for (auto& t : *this) { | 70{ 71 for (auto& t : *this) { |
72 if (pkt->checkFunctional(t.pkt)) { | 72 if (pkt->trySatisfyFunctional(t.pkt)) { |
73 return true; 74 } 75 } 76 77 return false; 78} 79 80void --- 36 unchanged lines hidden (view full) --- 117void 118WriteQueueEntry::deallocate() 119{ 120 assert(targets.empty()); 121 inService = false; 122} 123 124bool | 73 return true; 74 } 75 } 76 77 return false; 78} 79 80void --- 36 unchanged lines hidden (view full) --- 117void 118WriteQueueEntry::deallocate() 119{ 120 assert(targets.empty()); 121 inService = false; 122} 123 124bool |
125WriteQueueEntry::checkFunctional(PacketPtr pkt) | 125WriteQueueEntry::trySatisfyFunctional(PacketPtr pkt) |
126{ 127 // For printing, we treat the WriteQueueEntry as a whole as single 128 // entity. For other requests, we iterate over the individual 129 // targets since that's where the actual data lies. 130 if (pkt->isPrint()) { | 126{ 127 // For printing, we treat the WriteQueueEntry as a whole as single 128 // entity. For other requests, we iterate over the individual 129 // targets since that's where the actual data lies. 130 if (pkt->isPrint()) { |
131 pkt->checkFunctional(this, blkAddr, isSecure, blkSize, nullptr); | 131 pkt->trySatisfyFunctional(this, blkAddr, isSecure, blkSize, nullptr); |
132 return false; 133 } else { | 132 return false; 133 } else { |
134 return targets.checkFunctional(pkt); | 134 return targets.trySatisfyFunctional(pkt); |
135 } 136} 137 138bool 139WriteQueueEntry::sendPacket(BaseCache &cache) 140{ 141 return cache.sendWriteQueuePacket(this); 142} --- 22 unchanged lines hidden --- | 135 } 136} 137 138bool 139WriteQueueEntry::sendPacket(BaseCache &cache) 140{ 141 return cache.sendWriteQueuePacket(this); 142} --- 22 unchanged lines hidden --- |