diff options
author | Kevin Lim <ktlim@umich.edu> | 2006-10-26 14:37:19 -0400 |
---|---|---|
committer | Kevin Lim <ktlim@umich.edu> | 2006-10-26 14:37:19 -0400 |
commit | e912080d12666482a942eae354e783c3d666c6c9 (patch) | |
tree | 434cd7969db4b0a43ae2cfc4fd31579c21c79f17 /src/cpu | |
parent | 6824cdf6602ec51c16fe322504377848911c6f00 (diff) | |
parent | eda7148af25e8e106e8983fb37952263dcae5275 (diff) | |
download | gem5-e912080d12666482a942eae354e783c3d666c6c9.tar.xz |
Merge ktlim@zizzer:/bk/newmem
into zamp.eecs.umich.edu:/z/ktlim2/clean/o3-merge/newmem
--HG--
extra : convert_revision : 30a912cf5d3f205a6301d291dd1799da21663056
Diffstat (limited to 'src/cpu')
-rw-r--r-- | src/cpu/simple/atomic.cc | 11 |
1 files changed, 7 insertions, 4 deletions
diff --git a/src/cpu/simple/atomic.cc b/src/cpu/simple/atomic.cc index 25c478ae9..edba55b0d 100644 --- a/src/cpu/simple/atomic.cc +++ b/src/cpu/simple/atomic.cc @@ -183,11 +183,14 @@ AtomicSimpleCPU::unserialize(Checkpoint *cp, const string §ion) void AtomicSimpleCPU::resume() { - changeState(SimObject::Running); - if (thread->status() == ThreadContext::Active) { + if (_status != SwitchedOut && _status != Idle) { assert(system->getMemoryMode() == System::Atomic); - if (!tickEvent.scheduled()) - tickEvent.schedule(curTick); + + changeState(SimObject::Running); + if (thread->status() == ThreadContext::Active) { + if (!tickEvent.scheduled()) + tickEvent.schedule(curTick); + } } } |