summaryrefslogtreecommitdiff
path: root/src/mem/cache/miss/mshr.hh
diff options
context:
space:
mode:
Diffstat (limited to 'src/mem/cache/miss/mshr.hh')
-rw-r--r--src/mem/cache/miss/mshr.hh11
1 files changed, 11 insertions, 0 deletions
diff --git a/src/mem/cache/miss/mshr.hh b/src/mem/cache/miss/mshr.hh
index 92288cf52..a9380d99a 100644
--- a/src/mem/cache/miss/mshr.hh
+++ b/src/mem/cache/miss/mshr.hh
@@ -105,12 +105,20 @@ class MSHR : public Packet::SenderState
bool deferredNeedsExclusive;
bool pendingInvalidate;
+ /** Is there a pending upgrade that got replaced? */
+ bool replacedPendingUpgrade;
+ bool replacedPendingUpgradeDirty;
/** Thread number of the miss. */
short threadNum;
/** The number of currently allocated targets. */
short ntargets;
+
+ /** Data buffer (if needed). Currently used only for pending
+ * upgrade handling. */
+ uint8_t *data;
+
/**
* Pointer to this MSHR on the ready list.
* @sa MissQueue, MSHRQueue::readyList
@@ -204,6 +212,9 @@ public:
bool promoteDeferredTargets();
+ void handleReplacement(CacheBlk *blk, int blkSize);
+ bool handleReplacedPendingUpgrade(Packet *pkt);
+
/**
* Prints the contents of this MSHR to stderr.
*/