Base CPU: Initialize profileEvent to NULL

The profileEvent pointer is tested against NULL in various places, but
it is not initialized unless running in full-system mode. In SE mode, this
can result in segmentation faults when profileEvent default intializes to
something other than NULL.
This commit is contained in:
Joel Hestness
2012-09-12 21:40:28 -05:00
parent aa8bcd15ec
commit 16dcb723c1

View File

@@ -118,7 +118,7 @@ BaseCPU::BaseCPU(Params *p, bool is_checker)
: MemObject(p), instCnt(0), _cpuId(p->cpu_id),
_instMasterId(p->system->getMasterId(name() + ".inst")),
_dataMasterId(p->system->getMasterId(name() + ".data")),
interrupts(p->interrupts),
interrupts(p->interrupts), profileEvent(NULL),
numThreads(p->numThreads), system(p->system)
{
// if Python did not provide a valid ID, do it here
@@ -225,7 +225,6 @@ BaseCPU::BaseCPU(Params *p, bool is_checker)
}
if (FullSystem) {
profileEvent = NULL;
if (params()->profile)
profileEvent = new ProfileEvent(this, params()->profile);
}