diff options
author | Andreas Hansson <andreas.hansson@arm.com> | 2015-01-22 05:01:27 -0500 |
---|---|---|
committer | Andreas Hansson <andreas.hansson@arm.com> | 2015-01-22 05:01:27 -0500 |
commit | 0c2ffd2daa5a38b69c2061b304d8998a29343cca (patch) | |
tree | 51ce59dfc8a6e41910c48d3298ab480433376d27 | |
parent | 00536b0efc6d437fdf0cc0374b818b27ba32d217 (diff) | |
download | gem5-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.cc | 22 | ||||
-rw-r--r-- | src/mem/bridge.hh | 17 |
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 */ |