The CommMonitor did not support tryTiming, which resulted in gem5
panicing if the CommMonitor was used.
With this change, we update the CommMonitor pass through the
tryTiming() calls.
Change-Id: I86810170e5e10a0c5d63af76fc4a6ab70710d2fb
Reviewed-by: Nikos Nikoleris <nikos.nikoleris@arm.com>
Reviewed-by: Andreas Sandberg <andreas.sandberg@arm.com>
Reviewed-on: https://gem5-review.googlesource.com/c/15736
Reviewed-by: Jason Lowe-Power <jason@lowepower.com>
Maintainer: Nikos Nikoleris <nikos.nikoleris@arm.com>
Maintainer: Jason Lowe-Power <jason@lowepower.com>
/*
- * Copyright (c) 2012-2013, 2015 ARM Limited
+ * Copyright (c) 2012-2013, 2015, 2018 ARM Limited
* Copyright (c) 2016 Google Inc.
* Copyright (c) 2017, Centre National de la Recherche Scientifique
* All rights reserved.
masterPort.sendRetryResp();
}
+bool
+CommMonitor::tryTiming(PacketPtr pkt)
+{
+ return masterPort.tryTiming(pkt);
+}
+
void
CommMonitor::recvRangeChange()
{
/*
- * Copyright (c) 2012-2013, 2015 ARM Limited
+ * Copyright (c) 2012-2013, 2015, 2018 ARM Limited
* Copyright (c) 2016 Google Inc.
* Copyright (c) 2017, Centre National de la Recherche Scientifique
* All rights reserved.
mon.recvRespRetry();
}
+ bool tryTiming(PacketPtr pkt)
+ {
+ return mon.tryTiming(pkt);
+ }
+
private:
CommMonitor& mon;
void recvRangeChange();
+ bool tryTiming(PacketPtr pkt);
+
/** Stats declarations, all in a struct for convenience. */
struct MonitorStats
{