From: Joel Hestness Date: Thu, 13 Sep 2012 02:40:28 +0000 (-0500) Subject: Base CPU: Initialize profileEvent to NULL X-Git-Tag: stable_2013_06_16~422 X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=16dcb723c11afb91cc3428294bd3106425114949;p=gem5.git 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. --- diff --git a/src/cpu/base.cc b/src/cpu/base.cc index 98ddde293..1add92d1f 100644 --- a/src/cpu/base.cc +++ b/src/cpu/base.cc @@ -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); }