From a17658beaacabe018be78c32aafe8415cdb16df0 Mon Sep 17 00:00:00 2001 From: Iru Cai Date: Thu, 28 Feb 2019 17:07:16 +0800 Subject: invisispec-1.0 source --- src/cpu/base_dyn_inst_impl.hh | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+) (limited to 'src/cpu/base_dyn_inst_impl.hh') diff --git a/src/cpu/base_dyn_inst_impl.hh b/src/cpu/base_dyn_inst_impl.hh index f55bd8ed5..f5bcff2df 100644 --- a/src/cpu/base_dyn_inst_impl.hh +++ b/src/cpu/base_dyn_inst_impl.hh @@ -87,6 +87,7 @@ void BaseDynInst::initVars() { memData = NULL; + vldData = NULL; effAddr = 0; physEffAddrLow = 0; physEffAddrHigh = 0; @@ -132,6 +133,9 @@ BaseDynInst::initVars() #endif reqToVerify = NULL; + postReq = NULL; + postSreqLow = NULL; + postSreqHigh = NULL; } template @@ -141,6 +145,10 @@ BaseDynInst::~BaseDynInst() delete [] memData; } + if (vldData) { + delete [] vldData; + } + if (traceData) { delete traceData; } @@ -160,6 +168,19 @@ BaseDynInst::~BaseDynInst() if (reqToVerify) delete reqToVerify; + + if (needDeletePostReq()){ + if (postReq){ + delete postReq; + postReq = NULL; + } + if (postSreqLow) { + delete postSreqLow; + delete postSreqHigh; + postSreqLow = NULL; + postSreqHigh = NULL; + } + } } #ifdef DEBUG -- cgit v1.2.3