bridge.hh (4965:ad0e792a5c78) bridge.hh (4986:b7c82ad6b3ef)
1/*
2 * Copyright (c) 2006 The Regents of The University of Michigan
3 * All rights reserved.
4 *
5 * Redistribution and use in source and binary forms, with or without
6 * modification, are permitted provided that the following conditions are
7 * met: redistributions of source code must retain the above copyright
8 * notice, this list of conditions and the following disclaimer;

--- 64 unchanged lines hidden (view full) ---

73 /** Pass ranges from one side of the bridge to the other? */
74 std::vector<Range<Addr> > filterRanges;
75
76 class PacketBuffer : public Packet::SenderState {
77
78 public:
79 Tick ready;
80 PacketPtr pkt;
1/*
2 * Copyright (c) 2006 The Regents of The University of Michigan
3 * All rights reserved.
4 *
5 * Redistribution and use in source and binary forms, with or without
6 * modification, are permitted provided that the following conditions are
7 * met: redistributions of source code must retain the above copyright
8 * notice, this list of conditions and the following disclaimer;

--- 64 unchanged lines hidden (view full) ---

73 /** Pass ranges from one side of the bridge to the other? */
74 std::vector<Range<Addr> > filterRanges;
75
76 class PacketBuffer : public Packet::SenderState {
77
78 public:
79 Tick ready;
80 PacketPtr pkt;
81 bool nackedHere;
81 Packet::SenderState *origSenderState;
82 short origSrc;
83 bool expectResponse;
84
85 PacketBuffer(PacketPtr _pkt, Tick t, bool nack = false)
82 Packet::SenderState *origSenderState;
83 short origSrc;
84 bool expectResponse;
85
86 PacketBuffer(PacketPtr _pkt, Tick t, bool nack = false)
86 : ready(t), pkt(_pkt),
87 origSenderState(_pkt->senderState), origSrc(_pkt->getSrc()),
87 : ready(t), pkt(_pkt), nackedHere(nack),
88 origSenderState(_pkt->senderState),
89 origSrc(nack ? _pkt->getDest() : _pkt->getSrc() ),
88 expectResponse(_pkt->needsResponse() && !nack)
89
90 {
90 expectResponse(_pkt->needsResponse() && !nack)
91
92 {
91 if (!pkt->isResponse() && !nack && !pkt->wasNacked())
93 if (!pkt->isResponse() && !nack)
92 pkt->senderState = this;
93 }
94
95 void fixResponse(PacketPtr pkt)
96 {
97 assert(pkt->senderState == this);
98 pkt->setDest(origSrc);
99 pkt->senderState = origSenderState;

--- 114 unchanged lines hidden ---
94 pkt->senderState = this;
95 }
96
97 void fixResponse(PacketPtr pkt)
98 {
99 assert(pkt->senderState == this);
100 pkt->setDest(origSrc);
101 pkt->senderState = origSenderState;

--- 114 unchanged lines hidden ---