write_queue_entry.cc (12334:e0ab29a34764) | write_queue_entry.cc (12345:70c783a93195) |
---|---|
1/* | 1/* |
2 * Copyright (c) 2012-2013, 2015-2016 ARM Limited | 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 9 * licensed hereunder. You may use the software subject to the license 10 * terms below provided that you ensure that this notice is replicated --- 95 unchanged lines hidden (view full) --- 106 inService = false; 107 108 // we should never have more than a single target for cacheable 109 // writes (writebacks and clean evictions) 110 panic_if(!_isUncacheable && !targets.empty(), 111 "Write queue entry %#llx should never have more than one " 112 "cacheable target", blkAddr); 113 panic_if(!((target->isWrite() && _isUncacheable) || | 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 --- 95 unchanged lines hidden (view full) --- 106 inService = false; 107 108 // we should never have more than a single target for cacheable 109 // writes (writebacks and clean evictions) 110 panic_if(!_isUncacheable && !targets.empty(), 111 "Write queue entry %#llx should never have more than one " 112 "cacheable target", blkAddr); 113 panic_if(!((target->isWrite() && _isUncacheable) || |
114 (target->isEviction() && !_isUncacheable)), 115 "Write queue entry %#llx should either be uncacheable write or " 116 "a cacheable eviction"); | 114 (target->isEviction() && !_isUncacheable) || 115 target->cmd == MemCmd::WriteClean), 116 "Write queue entry %#llx should be an uncacheable write or " 117 "a cacheable eviction or a writeclean"); |
117 118 targets.add(target, when_ready, _order); 119} 120 121void 122WriteQueueEntry::deallocate() 123{ 124 assert(targets.empty()); --- 44 unchanged lines hidden --- | 118 119 targets.add(target, when_ready, _order); 120} 121 122void 123WriteQueueEntry::deallocate() 124{ 125 assert(targets.empty()); --- 44 unchanged lines hidden --- |