queued.hh (12727:56c23b54bcb1) queued.hh (13416:d90887d0c889)
1/*
2 * Copyright (c) 2014-2015 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

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

110 Stats::Scalar pfInCache;
111 Stats::Scalar pfRemovedFull;
112 Stats::Scalar pfSpanPage;
113
114 public:
115 QueuedPrefetcher(const QueuedPrefetcherParams *p);
116 virtual ~QueuedPrefetcher();
117
1/*
2 * Copyright (c) 2014-2015 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

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

110 Stats::Scalar pfInCache;
111 Stats::Scalar pfRemovedFull;
112 Stats::Scalar pfSpanPage;
113
114 public:
115 QueuedPrefetcher(const QueuedPrefetcherParams *p);
116 virtual ~QueuedPrefetcher();
117
118 Tick notify(const PacketPtr &pkt);
118 void notify(const PacketPtr &pkt) override;
119 PacketPtr insert(AddrPriority& info, bool is_secure);
120
121 // Note: This should really be pure virtual, but doesnt go well with params
122 virtual void calculatePrefetch(const PacketPtr &pkt,
123 std::vector<AddrPriority> &addresses) = 0;
124 PacketPtr getPacket();
125
126 Tick nextPrefetchReadyTime() const
127 {
128 return pfq.empty() ? MaxTick : pfq.front().tick;
129 }
130
131 void regStats();
132};
133
134#endif //__MEM_CACHE_PREFETCH_QUEUED_HH__
135
119 PacketPtr insert(AddrPriority& info, bool is_secure);
120
121 // Note: This should really be pure virtual, but doesnt go well with params
122 virtual void calculatePrefetch(const PacketPtr &pkt,
123 std::vector<AddrPriority> &addresses) = 0;
124 PacketPtr getPacket();
125
126 Tick nextPrefetchReadyTime() const
127 {
128 return pfq.empty() ? MaxTick : pfq.front().tick;
129 }
130
131 void regStats();
132};
133
134#endif //__MEM_CACHE_PREFETCH_QUEUED_HH__
135