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; --- 230 unchanged lines hidden (view full) --- 239 // same as what was in the request that got sent to memory; there 240 // is no verification that it is the same as what is in memory. 241 // This is because the LSQ would have to be snooped in the CPU to 242 // verify this data. 243 if (unverifiedReq && 244 !(unverifiedReq->isUncacheable()) && 245 (!(unverifiedReq->isLocked()) || 246 ((unverifiedReq->isLocked()) && |
247 unverifiedReq->getExtraData() == 1))) { |
248 T inst_data; 249/* 250 // This code would work if the LSQ allowed for snooping. 251 PacketPtr pkt = new Packet(memReq, Packet::ReadReq, Packet::Broadcast); 252 pkt.dataStatic(&inst_data); 253 254 dcachePort->sendFunctional(pkt); 255 --- 8 unchanged lines hidden (view full) --- 264 handleError(); 265 } 266 } 267 268 // Assume the result was the same as the one passed in. This checker 269 // doesn't check if the SC should succeed or fail, it just checks the 270 // value. 271 if (res && unverifiedReq->scResultValid()) |
272 *res = unverifiedReq->getExtraData(); |
273 274 return NoFault; 275} 276 277 278#ifndef DOXYGEN_SHOULD_SKIP_THIS 279template 280Fault --- 118 unchanged lines hidden --- |