Lines Matching refs:new_record
397 TraceInfo* new_record = new TraceInfo;
399 traceInfoMap[head_inst->seqNum] = new_record;
402 new_record->instNum = head_inst->seqNum;
403 new_record->commit = commit;
404 new_record->type = head_inst->isLoad() ? Record::LOAD :
409 new_record->reqFlags = head_inst->memReqFlags;
410 new_record->virtAddr = head_inst->effAddr;
411 new_record->asid = head_inst->asid;
412 new_record->physAddr = head_inst->physEffAddr;
414 new_record->size = head_inst->effSize;
415 new_record->pc = head_inst->instAddr();
418 new_record->executeTick = exec_info_ptr->executeTick;
419 new_record->toCommitTick = exec_info_ptr->toCommitTick;
420 new_record->commitTick = curTick();
423 new_record->numDepts = 0;
424 new_record->compDelay = -1;
433 depTrace.push_back(new_record);
435 new_record->instNum);
454 new_record->physRegDepList.push_back(*dep_set_it);
456 "%lli\n", new_record->instNum, *dep_set_it);
459 compDelayPhysRegDep(reg_dep, new_record);
473 "%lli is skipped\n",new_record->instNum, *dep_set_it);
483 updateCommitOrderDep(new_record, false);
485 updateCommitOrderDep(new_record, true);
495 if (new_record->robDepList.empty() && new_record->physRegDepList.empty()) {
496 updateIssueOrderDep(new_record);
500 depTrace.push_back(new_record);
502 (commit ? "committed" : "squashed"), new_record->instNum);
522 ElasticTrace::updateCommitOrderDep(TraceInfo* new_record,
525 assert(new_record->isStore());
542 assignRobDep(past_record, new_record);
551 assignRobDep(past_record, new_record);
563 ElasticTrace::updateIssueOrderDep(TraceInfo* new_record)
574 if (new_record->isLoad()) {
576 execute_tick = new_record->executeTick;
578 } else if (new_record->isStore()) {
584 execute_tick = new_record->toCommitTick;
599 assignRobDep(past_record, new_record);
609 ElasticTrace::assignRobDep(TraceInfo* past_record, TraceInfo* new_record) {
611 new_record->typeToStr(), new_record->instNum,
614 new_record->robDepList.push_back(past_record->instNum);
615 // Update new_record's compute delay with respect to the past record
616 compDelayRob(past_record, new_record);
678 ElasticTrace::compDelayRob(TraceInfo* past_record, TraceInfo* new_record)
682 // inst. pointed to by new_record.
687 new_record->instNum, past_record->instNum);
691 execution_tick = new_record->getExecuteTick();
694 if (new_record->isStore()) {
712 if (new_record->compDelay == -1)
713 new_record->compDelay = comp_delay;
715 new_record->compDelay = std::min(comp_delay, new_record->compDelay);
717 new_record->compDelay);
722 TraceInfo* new_record)
726 // inst. pointed to by new_record.
731 " %lli.\n", new_record->instNum, past_record->instNum);
735 execution_tick = new_record->getExecuteTick();
753 if (new_record->compDelay == -1)
754 new_record->compDelay = comp_delay;
756 new_record->compDelay = std::min(comp_delay, new_record->compDelay);
758 new_record->compDelay);