pagetable_walker.cc (9524:d6ffa982a68b) pagetable_walker.cc (9542:683991c46ac8)
1/*
2 * Copyright (c) 2012 ARM Limited
3 * All rights reserved.
4 *
5 * The license below extends only to copyright in the software and shall
6 * not be construed as granting a license to any other intellectual
7 * property including but not limited to intellectual property relating
8 * to a hardware implementation of the functionality of the software

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

118{
119 return walker->recvTimingResp(pkt);
120}
121
122bool
123Walker::recvTimingResp(PacketPtr pkt)
124{
125 WalkerSenderState * senderState =
1/*
2 * Copyright (c) 2012 ARM Limited
3 * All rights reserved.
4 *
5 * The license below extends only to copyright in the software and shall
6 * not be construed as granting a license to any other intellectual
7 * property including but not limited to intellectual property relating
8 * to a hardware implementation of the functionality of the software

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

118{
119 return walker->recvTimingResp(pkt);
120}
121
122bool
123Walker::recvTimingResp(PacketPtr pkt)
124{
125 WalkerSenderState * senderState =
126 dynamic_cast<WalkerSenderState *>(pkt->senderState);
127 pkt->senderState = senderState->saved;
126 dynamic_cast<WalkerSenderState *>(pkt->popSenderState());
128 WalkerState * senderWalk = senderState->senderWalk;
129 bool walkComplete = senderWalk->recvPacket(pkt);
130 delete senderState;
131 if (walkComplete) {
132 std::list<WalkerState *>::iterator iter;
133 for (iter = currStates.begin(); iter != currStates.end(); iter++) {
134 WalkerState * walkerState = *(iter);
135 if (walkerState == senderWalk) {

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

164 if (walkerState->isRetrying()) {
165 walkerState->retry();
166 }
167 }
168}
169
170bool Walker::sendTiming(WalkerState* sendingState, PacketPtr pkt)
171{
127 WalkerState * senderWalk = senderState->senderWalk;
128 bool walkComplete = senderWalk->recvPacket(pkt);
129 delete senderState;
130 if (walkComplete) {
131 std::list<WalkerState *>::iterator iter;
132 for (iter = currStates.begin(); iter != currStates.end(); iter++) {
133 WalkerState * walkerState = *(iter);
134 if (walkerState == senderWalk) {

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

163 if (walkerState->isRetrying()) {
164 walkerState->retry();
165 }
166 }
167}
168
169bool Walker::sendTiming(WalkerState* sendingState, PacketPtr pkt)
170{
172 pkt->senderState = new WalkerSenderState(sendingState, pkt->senderState);
171 pkt->pushSenderState(new WalkerSenderState(sendingState));
173 return port.sendTimingReq(pkt);
174}
175
176BaseMasterPort &
177Walker::getMasterPort(const std::string &if_name, PortID idx)
178{
179 if (if_name == "port")
180 return port;

--- 513 unchanged lines hidden ---
172 return port.sendTimingReq(pkt);
173}
174
175BaseMasterPort &
176Walker::getMasterPort(const std::string &if_name, PortID idx)
177{
178 if (if_name == "port")
179 return port;

--- 513 unchanged lines hidden ---