diff options
author | Steve Reinhardt <steve.reinhardt@amd.com> | 2009-04-15 13:18:24 -0700 |
---|---|---|
committer | Steve Reinhardt <steve.reinhardt@amd.com> | 2009-04-15 13:18:24 -0700 |
commit | 7617dcf736b5b96d44aedccd51550be037e7b937 (patch) | |
tree | c45e67e334b961f1e9df6aecfef0a2061c393162 /src/cpu/thread_state.cc | |
parent | 48d4ca522a2f771188d93a2d5ff54cf505a8ca41 (diff) | |
download | gem5-7617dcf736b5b96d44aedccd51550be037e7b937.tar.xz |
ThreadState: initialize status to Halted in constructor.
This provides a common initial status for all threads independent
of CPU model (unlike the prior situation where CPUs initialized
threads to inconsistent states).
This mostly matters for SE mode; in FS mode, ISA-specific startupCPU()
methods generally handle boot-time initialization of thread contexts
(since the right thing to do is ISA-dependent).
Diffstat (limited to 'src/cpu/thread_state.cc')
-rw-r--r-- | src/cpu/thread_state.cc | 16 |
1 files changed, 8 insertions, 8 deletions
diff --git a/src/cpu/thread_state.cc b/src/cpu/thread_state.cc index b0e719ddf..09af2725a 100644 --- a/src/cpu/thread_state.cc +++ b/src/cpu/thread_state.cc @@ -44,20 +44,20 @@ #if FULL_SYSTEM ThreadState::ThreadState(BaseCPU *cpu, int _tid) - : baseCpu(cpu), _threadId(_tid), lastActivate(0), lastSuspend(0), +#else +ThreadState::ThreadState(BaseCPU *cpu, int _tid, + Process *_process, short _asid) +#endif + : numInst(0), numLoad(0), _status(ThreadContext::Halted), + baseCpu(cpu), _threadId(_tid), lastActivate(0), lastSuspend(0), +#if FULL_SYSTEM profile(NULL), profileNode(NULL), profilePC(0), quiesceEvent(NULL), kernelStats(NULL), physPort(NULL), virtPort(NULL), - microPC(0), nextMicroPC(1), funcExeInst(0), storeCondFailures(0) #else -ThreadState::ThreadState(BaseCPU *cpu, int _tid, Process *_process, - short _asid) - : baseCpu(cpu), _threadId(_tid), lastActivate(0), lastSuspend(0), port(NULL), process(_process), asid(_asid), - microPC(0), nextMicroPC(1), funcExeInst(0), storeCondFailures(0) #endif + microPC(0), nextMicroPC(1), funcExeInst(0), storeCondFailures(0) { - numInst = 0; - numLoad = 0; } ThreadState::~ThreadState() |