mshr_queue.cc (12727:56c23b54bcb1) | mshr_queue.cc (13351:1d456a63bfbc) |
---|---|
1/* | 1/* |
2 * Copyright (c) 2012-2013, 2015-2016 ARM Limited | 2 * Copyright (c) 2012-2013, 2015-2016, 2018 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 9 * licensed hereunder. You may use the software subject to the license 10 * terms below provided that you ensure that this notice is replicated --- 69 unchanged lines hidden (view full) --- 80 if (!mshr->inService) { 81 assert(mshr == *(mshr->readyIter)); 82 readyList.erase(mshr->readyIter); 83 mshr->readyIter = readyList.insert(readyList.begin(), mshr); 84 } 85} 86 87void | 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 9 * licensed hereunder. You may use the software subject to the license 10 * terms below provided that you ensure that this notice is replicated --- 69 unchanged lines hidden (view full) --- 80 if (!mshr->inService) { 81 assert(mshr == *(mshr->readyIter)); 82 readyList.erase(mshr->readyIter); 83 mshr->readyIter = readyList.insert(readyList.begin(), mshr); 84 } 85} 86 87void |
88MSHRQueue::delay(MSHR *mshr, Tick delay_ticks) 89{ 90 mshr->delay(delay_ticks); 91 auto it = std::find_if(mshr->readyIter, readyList.end(), 92 [mshr] (const MSHR* _mshr) { 93 return mshr->readyTime >= _mshr->readyTime; 94 }); 95 readyList.splice(it, readyList, mshr->readyIter); 96} 97 98void |
|
88MSHRQueue::markInService(MSHR *mshr, bool pending_modified_resp) 89{ 90 mshr->markInService(pending_modified_resp); 91 readyList.erase(mshr->readyIter); 92 _numInService += 1; 93} 94 95void --- 27 unchanged lines hidden --- | 99MSHRQueue::markInService(MSHR *mshr, bool pending_modified_resp) 100{ 101 mshr->markInService(pending_modified_resp); 102 readyList.erase(mshr->readyIter); 103 _numInService += 1; 104} 105 106void --- 27 unchanged lines hidden --- |