Deleted Added
sdiff udiff text old ( 3230:e86a03911728 ) new ( 3281:d0f7a2e1573f )
full compact
1/*
2 * Copyright (c) 2001-2005 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;

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

196PhysicalMemory::doFunctionalAccess(Packet *pkt)
197{
198 assert(pkt->getAddr() + pkt->getSize() <= params()->addrRange.size());
199
200 if (pkt->isRead()) {
201 if (pkt->req->isLocked()) {
202 trackLoadLocked(pkt->req);
203 }
204 memcpy(pkt->getPtr<uint8_t>(),
205 pmemAddr + pkt->getAddr() - params()->addrRange.start,
206 pkt->getSize());
207 }
208 else if (pkt->isWrite()) {
209 if (writeOK(pkt->req)) {
210 memcpy(pmemAddr + pkt->getAddr() - params()->addrRange.start,
211 pkt->getPtr<uint8_t>(), pkt->getSize());
212 }
213 }
214 else if (pkt->isInvalidate()) {
215 //upgrade or invalidate
216 pkt->flags |= SATISFIED;
217 }

--- 221 unchanged lines hidden ---