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 ---