2c2
< * Copyright (c) 2012-2013, 2015 ARM Limited
---
> * Copyright (c) 2012-2013, 2015-2016 ARM Limited
54c54
< #include "mem/packet.hh"
---
> #include "mem/cache/queue_entry.hh"
56,57c56
< class CacheBlk;
< class MSHRQueue;
---
> class Cache;
64c63
< class MSHR : public Packet::SenderState, public Printable
---
> class MSHR : public QueueEntry, public Printable
68c67
< * Consider the MSHRQueue a friend to avoid making everything public
---
> * Consider the queues friends to avoid making everything public.
69a69,70
> template<typename Entry>
> friend class Queue;
74,79d74
< /** Cycle when ready to issue */
< Tick readyTime;
<
< /** True if the request is uncacheable */
< bool _isUncacheable;
<
116a112,114
> /** True if the entry is just a simple forward from an upper level */
> bool isForward;
>
169,170d166
< /** MSHR list const_iterator. */
< typedef List::const_iterator ConstIterator;
172,192d167
< /** Pointer to queue containing this MSHR. */
< MSHRQueue *queue;
<
< /** Order number assigned by the miss queue. */
< Counter order;
<
< /** Block aligned address of the MSHR. */
< Addr blkAddr;
<
< /** Block size of the cache. */
< unsigned blkSize;
<
< /** True if the request targets the secure memory space. */
< bool isSecure;
<
< /** True if the request has been sent to the bus. */
< bool inService;
<
< /** True if the request is just a simple forward from an upper level */
< bool isForward;
<
215a191,192
> bool sendPacket(Cache &cache);
>
218,221d194
< /** Data buffer (if needed). Currently used only for pending
< * upgrade handling. */
< uint8_t *data;
<
241,242d213
< bool isUncacheable() const { return _isUncacheable; }
<
255c226
< bool markInService(bool pending_modified_resp);
---
> void markInService(bool pending_modified_resp);
306,313d276
< bool isForwardNoResponse() const
< {
< if (getNumTargets() != 1)
< return false;
< const Target *tgt = &targets.front();
< return tgt->source == Target::FromCPU && !tgt->pkt->needsResponse();
< }
<