diff options
author | Steve Reinhardt <stever@eecs.umich.edu> | 2007-02-12 09:27:32 -0800 |
---|---|---|
committer | Steve Reinhardt <stever@eecs.umich.edu> | 2007-02-12 09:27:32 -0800 |
commit | ad17b3265178deacb2dce7a98033575c0e98f518 (patch) | |
tree | fb837d9a9afa07d4167e94a7920d34a42a3e0171 /src/cpu/simple | |
parent | da1ad46482d80ae45982dc23c09ff13e5d490087 (diff) | |
parent | f78bc80bd75f6f4ebf080620b3aaeaee3b3e46cc (diff) | |
download | gem5-ad17b3265178deacb2dce7a98033575c0e98f518.tar.xz |
Merge zizzer.eecs.umich.edu:/bk/newmem
into vm1.(none):/home/stever/bk/newmem-head
--HG--
extra : convert_revision : 496428e23050122a8a0029e5fddea261bef5729e
Diffstat (limited to 'src/cpu/simple')
-rw-r--r-- | src/cpu/simple/atomic.cc | 11 | ||||
-rw-r--r-- | src/cpu/simple/base.hh | 8 |
2 files changed, 10 insertions, 9 deletions
diff --git a/src/cpu/simple/atomic.cc b/src/cpu/simple/atomic.cc index fa47b0eee..6a536fbcd 100644 --- a/src/cpu/simple/atomic.cc +++ b/src/cpu/simple/atomic.cc @@ -401,15 +401,8 @@ AtomicSimpleCPU::write(T data, Addr addr, unsigned flags, uint64_t *res) #endif } - if (req->isLocked()) { - uint64_t scResult = req->getScResult(); - if (scResult != 0) { - // clear failure counter - thread->setStCondFailures(0); - } - if (res) { - *res = req->getScResult(); - } + if (res) { + *res = req->getScResult(); } } diff --git a/src/cpu/simple/base.hh b/src/cpu/simple/base.hh index c4853b916..a2b624139 100644 --- a/src/cpu/simple/base.hh +++ b/src/cpu/simple/base.hh @@ -329,6 +329,14 @@ class BaseSimpleCPU : public BaseCPU return thread->setMiscRegWithEffect(reg_idx, val); } + unsigned readStCondFailures() { + return thread->readStCondFailures(); + } + + void setStCondFailures(unsigned sc_failures) { + thread->setStCondFailures(sc_failures); + } + #if FULL_SYSTEM Fault hwrei() { return thread->hwrei(); } void ev5_trap(Fault fault) { fault->invoke(tc); } |