diff options
author | Andreas Hansson <andreas.hansson@arm.com> | 2013-05-30 12:53:59 -0400 |
---|---|---|
committer | Andreas Hansson <andreas.hansson@arm.com> | 2013-05-30 12:53:59 -0400 |
commit | cb62d39835f4764562e74b0e113437e76e8949ff (patch) | |
tree | 063f91c94bc172d1de2feb6d598febf3efdbbacd /src/mem/noncoherent_bus.cc | |
parent | 91f7b065a9b34ce0d3951001e30a9372d9b9dba9 (diff) | |
download | gem5-cb62d39835f4764562e74b0e113437e76e8949ff.tar.xz |
mem: Tidy up a few variables in the bus
This patch does some minor housekeeping on the bus code, removing
redundant code, and moving the extraction of the destination id to the
top of the functions using it.
Diffstat (limited to 'src/mem/noncoherent_bus.cc')
-rw-r--r-- | src/mem/noncoherent_bus.cc | 12 |
1 files changed, 6 insertions, 6 deletions
diff --git a/src/mem/noncoherent_bus.cc b/src/mem/noncoherent_bus.cc index 5bf5cfd88..cc5d49cab 100644 --- a/src/mem/noncoherent_bus.cc +++ b/src/mem/noncoherent_bus.cc @@ -138,7 +138,7 @@ NoncoherentBus::recvTimingReq(PacketPtr pkt, PortID slave_port_id) // occupy until the header is sent reqLayer.failedTiming(src_port, master_port_id, - clockEdge(Cycles(headerCycles))); + clockEdge(headerCycles)); return false; } @@ -160,9 +160,12 @@ NoncoherentBus::recvTimingResp(PacketPtr pkt, PortID master_port_id) // determine the source port based on the id MasterPort *src_port = masterPorts[master_port_id]; + // determine the destination based on what is stored in the packet + PortID slave_port_id = pkt->getDest(); + // test if the bus should be considered occupied for the current // port - if (!respLayer.tryTiming(src_port, pkt->getDest())) { + if (!respLayer.tryTiming(src_port, slave_port_id)) { DPRINTF(NoncoherentBus, "recvTimingResp: src %s %s 0x%x BUSY\n", src_port->name(), pkt->cmdString(), pkt->getAddr()); return false; @@ -179,11 +182,8 @@ NoncoherentBus::recvTimingResp(PacketPtr pkt, PortID master_port_id) calcPacketTiming(pkt); Tick packetFinishTime = pkt->busLastWordDelay + curTick(); - // determine the destination based on what is stored in the packet - PortID slave_port_id = pkt->getDest(); - // send the packet through the destination slave port - bool success M5_VAR_USED = slavePorts[pkt->getDest()]->sendTimingResp(pkt); + bool success M5_VAR_USED = slavePorts[slave_port_id]->sendTimingResp(pkt); // currently it is illegal to block responses... can lead to // deadlock |