cpu.cc (9608:e2b6b86fda03) cpu.cc (9814:7ad2b0186a32)
1/*
1/*
2 * Copyright (c) 2011 ARM Limited
2 * Copyright (c) 2011,2013 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

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

137CheckerCPU::unserialize(Checkpoint *cp, const string &section)
138{
139}
140
141Fault
142CheckerCPU::readMem(Addr addr, uint8_t *data, unsigned size, unsigned flags)
143{
144 Fault fault = NoFault;
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

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

137CheckerCPU::unserialize(Checkpoint *cp, const string &section)
138{
139}
140
141Fault
142CheckerCPU::readMem(Addr addr, uint8_t *data, unsigned size, unsigned flags)
143{
144 Fault fault = NoFault;
145 unsigned blockSize = dcachePort->peerBlockSize();
146 int fullSize = size;
145 int fullSize = size;
147 Addr secondAddr = roundDown(addr + size - 1, blockSize);
146 Addr secondAddr = roundDown(addr + size - 1, cacheLineSize());
148 bool checked_flags = false;
149 bool flags_match = true;
150 Addr pAddr = 0x0;
151
152
153 if (secondAddr > addr)
154 size = secondAddr - addr;
155

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

231CheckerCPU::writeMem(uint8_t *data, unsigned size,
232 Addr addr, unsigned flags, uint64_t *res)
233{
234 Fault fault = NoFault;
235 bool checked_flags = false;
236 bool flags_match = true;
237 Addr pAddr = 0x0;
238
147 bool checked_flags = false;
148 bool flags_match = true;
149 Addr pAddr = 0x0;
150
151
152 if (secondAddr > addr)
153 size = secondAddr - addr;
154

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

230CheckerCPU::writeMem(uint8_t *data, unsigned size,
231 Addr addr, unsigned flags, uint64_t *res)
232{
233 Fault fault = NoFault;
234 bool checked_flags = false;
235 bool flags_match = true;
236 Addr pAddr = 0x0;
237
239 unsigned blockSize = dcachePort->peerBlockSize();
240 int fullSize = size;
241
238 int fullSize = size;
239
242 Addr secondAddr = roundDown(addr + size - 1, blockSize);
240 Addr secondAddr = roundDown(addr + size - 1, cacheLineSize());
243
244 if (secondAddr > addr)
245 size = secondAddr - addr;
246
247 // Need to account for a multiple access like Atomic and Timing CPUs
248 while (1) {
249 memReq = new Request();
250 memReq->setVirt(0, addr, size, flags, masterId, thread->pcState().instAddr());

--- 105 unchanged lines hidden ---
241
242 if (secondAddr > addr)
243 size = secondAddr - addr;
244
245 // Need to account for a multiple access like Atomic and Timing CPUs
246 while (1) {
247 memReq = new Request();
248 memReq->setVirt(0, addr, size, flags, masterId, thread->pcState().instAddr());

--- 105 unchanged lines hidden ---