summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAndreas Hansson <andreas.hansson@arm.com>2015-01-22 05:01:27 -0500
committerAndreas Hansson <andreas.hansson@arm.com>2015-01-22 05:01:27 -0500
commit0c2ffd2daa5a38b69c2061b304d8998a29343cca (patch)
tree51ce59dfc8a6e41910c48d3298ab480433376d27
parent00536b0efc6d437fdf0cc0374b818b27ba32d217 (diff)
downloadgem5-0c2ffd2daa5a38b69c2061b304d8998a29343cca.tar.xz
mem: Remove unused RequestState in the bridge
This patch removes the bridge sender state as the Crossbar now takes care of remembering its own routing decisions.
-rw-r--r--src/mem/bridge.cc22
-rw-r--r--src/mem/bridge.hh17
2 files changed, 0 insertions, 39 deletions
diff --git a/src/mem/bridge.cc b/src/mem/bridge.cc
index b26da57e3..a21d123a1 100644
--- a/src/mem/bridge.cc
+++ b/src/mem/bridge.cc
@@ -207,15 +207,6 @@ Bridge::BridgeSlavePort::retryStalledReq()
void
Bridge::BridgeMasterPort::schedTimingReq(PacketPtr pkt, Tick when)
{
- // If we expect to see a response, we need to restore the source
- // and destination field that is potentially changed by a second
- // crossbar
- if (!pkt->memInhibitAsserted() && pkt->needsResponse()) {
- // Update the sender state so we can deal with the response
- // appropriately
- pkt->pushSenderState(new RequestState(pkt->getSrc()));
- }
-
// If we're about to put this packet at the head of the queue, we
// need to schedule an event to do the transmit. Otherwise there
// should already be an event scheduled for sending the head
@@ -233,19 +224,6 @@ Bridge::BridgeMasterPort::schedTimingReq(PacketPtr pkt, Tick when)
void
Bridge::BridgeSlavePort::schedTimingResp(PacketPtr pkt, Tick when)
{
- // This is a response for a request we forwarded earlier. The
- // corresponding request state should be stored in the packet's
- // senderState field.
- RequestState *req_state =
- dynamic_cast<RequestState*>(pkt->popSenderState());
- assert(req_state != NULL);
- pkt->setDest(req_state->origSrc);
- delete req_state;
-
- // the bridge sets the destination irrespective of it is valid or
- // not, as it is checked in the crossbar
- DPRINTF(Bridge, "response, new dest %d\n", pkt->getDest());
-
// If we're about to put this packet at the head of the queue, we
// need to schedule an event to do the transmit. Otherwise there
// should already be an event scheduled for sending the head
diff --git a/src/mem/bridge.hh b/src/mem/bridge.hh
index a79d67484..e6fa498cb 100644
--- a/src/mem/bridge.hh
+++ b/src/mem/bridge.hh
@@ -75,23 +75,6 @@ class Bridge : public MemObject
protected:
/**
- * A bridge request state stores packets along with their sender
- * state and original source. It has enough information to also
- * restore the response once it comes back to the bridge.
- */
- class RequestState : public Packet::SenderState
- {
-
- public:
-
- const PortID origSrc;
-
- RequestState(PortID orig_src) : origSrc(orig_src)
- { }
-
- };
-
- /**
* A deferred packet stores a packet along with its scheduled
* transmission time
*/