summaryrefslogtreecommitdiff
path: root/src/arch/alpha/locked_mem.hh
diff options
context:
space:
mode:
authorAli Saidi <saidi@eecs.umich.edu>2007-03-07 15:04:44 -0500
committerAli Saidi <saidi@eecs.umich.edu>2007-03-07 15:04:44 -0500
commit49527ab55312bf02dfce20c45db8f173b0c2324e (patch)
treeb9212b195a7b253940aaaab5c8b9ef27e43d026e /src/arch/alpha/locked_mem.hh
parentea7bdf9f60c404761dfc568d5291c75747a2dd88 (diff)
parent689cab36c90b56b3c8a7cda16d758acdd89f9de1 (diff)
downloadgem5-49527ab55312bf02dfce20c45db8f173b0c2324e.tar.xz
Merge zizzer:/bk/newmem
into zeep.pool:/tmp/newmem --HG-- extra : convert_revision : f078a05729b5fe464a06a58bc4adcb374f560572
Diffstat (limited to 'src/arch/alpha/locked_mem.hh')
-rw-r--r--src/arch/alpha/locked_mem.hh10
1 files changed, 5 insertions, 5 deletions
diff --git a/src/arch/alpha/locked_mem.hh b/src/arch/alpha/locked_mem.hh
index 56b5ba5ed..df66b92bc 100644
--- a/src/arch/alpha/locked_mem.hh
+++ b/src/arch/alpha/locked_mem.hh
@@ -56,8 +56,8 @@ template <class XC>
inline void
handleLockedRead(XC *xc, Request *req)
{
- xc->setMiscReg(MISCREG_LOCKADDR, req->getPaddr() & ~0xf);
- xc->setMiscReg(MISCREG_LOCKFLAG, true);
+ xc->setMiscRegNoEffect(MISCREG_LOCKADDR, req->getPaddr() & ~0xf);
+ xc->setMiscRegNoEffect(MISCREG_LOCKFLAG, true);
}
@@ -71,13 +71,13 @@ handleLockedWrite(XC *xc, Request *req)
req->setExtraData(2);
} else {
// standard store conditional
- bool lock_flag = xc->readMiscReg(MISCREG_LOCKFLAG);
- Addr lock_addr = xc->readMiscReg(MISCREG_LOCKADDR);
+ bool lock_flag = xc->readMiscRegNoEffect(MISCREG_LOCKFLAG);
+ Addr lock_addr = xc->readMiscRegNoEffect(MISCREG_LOCKADDR);
if (!lock_flag || (req->getPaddr() & ~0xf) != lock_addr) {
// Lock flag not set or addr mismatch in CPU;
// don't even bother sending to memory system
req->setExtraData(0);
- xc->setMiscReg(MISCREG_LOCKFLAG, false);
+ xc->setMiscRegNoEffect(MISCREG_LOCKFLAG, false);
// the rest of this code is not architectural;
// it's just a debugging aid to help detect
// livelock by warning on long sequences of failed