diff options
author | Kevin Lim <ktlim@umich.edu> | 2006-05-25 11:50:42 -0400 |
---|---|---|
committer | Kevin Lim <ktlim@umich.edu> | 2006-05-25 11:50:42 -0400 |
commit | 32509d83878816cd870cea1ccbb8a9eb46a1e3f6 (patch) | |
tree | 0f929cba3e705d60625830548cbbb3a2c4d9af62 /cpu/cpu_exec_context.cc | |
parent | 3fe35232322daef87a0b85d7f3ca4c18330ed7c4 (diff) | |
download | gem5-32509d83878816cd870cea1ccbb8a9eb46a1e3f6.tar.xz |
Fix up kernel stats, allow them to not be used as well.
arch/alpha/ev5.cc:
Fix up some stuff I missed in the last kernel stats checkin.
cpu/checker/cpu.cc:
Allow the checker to disable its kernel stats.
cpu/cpu_exec_context.cc:
Allow CPUExecContext to be created without kernelStats.
cpu/cpu_exec_context.hh:
Allow CPUExecContext to be created without kernelStats. Default usage leaves kernelStats on.
--HG--
extra : convert_revision : 8ed5bffd3a5b6275baa07fb4ea385eeab1a0456a
Diffstat (limited to 'cpu/cpu_exec_context.cc')
-rw-r--r-- | cpu/cpu_exec_context.cc | 15 |
1 files changed, 11 insertions, 4 deletions
diff --git a/cpu/cpu_exec_context.cc b/cpu/cpu_exec_context.cc index 78ce058e8..e30295ef8 100644 --- a/cpu/cpu_exec_context.cc +++ b/cpu/cpu_exec_context.cc @@ -53,8 +53,9 @@ using namespace std; // constructor #if FULL_SYSTEM CPUExecContext::CPUExecContext(BaseCPU *_cpu, int _thread_num, System *_sys, - AlphaITB *_itb, AlphaDTB *_dtb, - FunctionalMemory *_mem) + AlphaITB *_itb, AlphaDTB *_dtb, + FunctionalMemory *_mem, + bool use_kernel_stats) : _status(ExecContext::Unallocated), cpu(_cpu), thread_num(_thread_num), cpu_id(-1), lastActivate(0), lastSuspend(0), mem(_mem), itb(_itb), dtb(_dtb), system(_sys), memctrl(_sys->memctrl), physmem(_sys->physmem), @@ -79,6 +80,12 @@ CPUExecContext::CPUExecContext(BaseCPU *_cpu, int _thread_num, System *_sys, static ProfileNode dummyNode; profileNode = &dummyNode; profilePC = 3; + + if (use_kernel_stats) { + kernelStats = new Kernel::Statistics(system); + } else { + kernelStats = NULL; + } } #else CPUExecContext::CPUExecContext(BaseCPU *_cpu, int _thread_num, @@ -279,8 +286,8 @@ void CPUExecContext::regStats(const string &name) { #if FULL_SYSTEM - kernelStats = new Kernel::Statistics(system); - kernelStats->regStats(name + ".kern"); + if (kernelStats) + kernelStats->regStats(name + ".kern"); #endif } |