abstract_mem.cc (12749:223c83ed9979) abstract_mem.cc (13346:67e56546fd5a)
1/*
2 * Copyright (c) 2010-2012,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

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

284 i++;
285 }
286 }
287 }
288
289 return allowStore;
290}
291
1/*
2 * Copyright (c) 2010-2012,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

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

284 i++;
285 }
286 }
287 }
288
289 return allowStore;
290}
291
292static inline void
293tracePacket(System *sys, const char *label, PacketPtr pkt)
294{
295 int size = pkt->getSize();
296#if THE_ISA != NULL_ISA
297 if (size == 1 || size == 2 || size == 4 || size == 8) {
298 DPRINTF(MemoryAccess,"%s from %s of size %i on address %#x data "
299 "%#x %c\n", label, sys->getMasterName(pkt->req->masterId()),
300 size, pkt->getAddr(), pkt->getUintX(TheISA::GuestByteOrder),
301 pkt->req->isUncacheable() ? 'U' : 'C');
302 return;
303 }
304#endif
305 DPRINTF(MemoryAccess, "%s from %s of size %i on address %#x %c\n",
306 label, sys->getMasterName(pkt->req->masterId()),
307 size, pkt->getAddr(), pkt->req->isUncacheable() ? 'U' : 'C');
308 DDUMP(MemoryAccess, pkt->getConstPtr<uint8_t>(), pkt->getSize());
309}
292
293#if TRACING_ON
310
311#if TRACING_ON
294
295#define CASE(A, T) \
296 case sizeof(T): \
297 DPRINTF(MemoryAccess,"%s from %s of size %i on address 0x%x data " \
298 "0x%x %c\n", A, system()->getMasterName(pkt->req->masterId()),\
299 pkt->getSize(), pkt->getAddr(), pkt->get<T>(), \
300 pkt->req->isUncacheable() ? 'U' : 'C'); \
301 break
302
303
304#define TRACE_PACKET(A) \
305 do { \
306 switch (pkt->getSize()) { \
307 CASE(A, uint64_t); \
308 CASE(A, uint32_t); \
309 CASE(A, uint16_t); \
310 CASE(A, uint8_t); \
311 default: \
312 DPRINTF(MemoryAccess, "%s from %s of size %i on address 0x%x %c\n",\
313 A, system()->getMasterName(pkt->req->masterId()), \
314 pkt->getSize(), pkt->getAddr(), \
315 pkt->req->isUncacheable() ? 'U' : 'C'); \
316 DDUMP(MemoryAccess, pkt->getConstPtr<uint8_t>(), pkt->getSize()); \
317 } \
318 } while (0)
319
312# define TRACE_PACKET(A) tracePacket(system(), A, pkt)
320#else
313#else
321
322#define TRACE_PACKET(A)
323
314# define TRACE_PACKET(A)
324#endif
325
326void
327AbstractMemory::access(PacketPtr pkt)
328{
329 if (pkt->cacheResponding()) {
330 DPRINTF(MemoryAccess, "Cache responding to %#llx: not responding\n",
331 pkt->getAddr());

--- 129 unchanged lines hidden ---
315#endif
316
317void
318AbstractMemory::access(PacketPtr pkt)
319{
320 if (pkt->cacheResponding()) {
321 DPRINTF(MemoryAccess, "Cache responding to %#llx: not responding\n",
322 pkt->getAddr());

--- 129 unchanged lines hidden ---