From: Gabe Black Date: Sun, 23 Aug 2009 21:15:15 +0000 (-0700) Subject: Atomic CPU: Respect the NO_ACCESS request flag. X-Git-Tag: Calvin_Submission~31 X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=ce63e5036496334d8c9cad0879cd55002ed64955;p=gem5.git Atomic CPU: Respect the NO_ACCESS request flag. --- diff --git a/src/cpu/simple/atomic.cc b/src/cpu/simple/atomic.cc index bab4b8b51..83da618f8 100644 --- a/src/cpu/simple/atomic.cc +++ b/src/cpu/simple/atomic.cc @@ -324,7 +324,7 @@ AtomicSimpleCPU::read(Addr addr, T &data, unsigned flags) Fault fault = thread->dtb->translateAtomic(req, tc, BaseTLB::Read); // Now do the access. - if (fault == NoFault) { + if (fault == NoFault && !req->getFlags().isSet(Request::NO_ACCESS)) { Packet pkt = Packet(req, req->isLLSC() ? MemCmd::LoadLockedReq : MemCmd::ReadReq, Packet::Broadcast); @@ -481,7 +481,7 @@ AtomicSimpleCPU::write(T data, Addr addr, unsigned flags, uint64_t *res) } } - if (do_access) { + if (do_access && !req->getFlags().isSet(Request::NO_ACCESS)) { Packet pkt = Packet(req, cmd, Packet::Broadcast); pkt.dataStatic(dataPtr);