Lines Matching refs:Var
228 DebugVariable Var; member
320 for (const auto &Var : VLocs) { in loadInlocs() local
321 if (Var.second.Kind == DbgValue::Const) { in loadInlocs()
323 emitMOLoc(*Var.second.MO, Var.first, Var.second.Properties)); in loadInlocs()
328 const ValueIDNum &Num = Var.second.ID; in loadInlocs()
334 addUseBeforeDef(Var.first, Var.second.Properties, Num); in loadInlocs()
336 recoverAsEntryValue(Var.first, Var.second.Properties, Num); in loadInlocs()
341 auto NewValue = LocAndProperties{M, Var.second.Properties}; in loadInlocs()
342 auto Result = ActiveVLocs.insert(std::make_pair(Var.first, NewValue)); in loadInlocs()
345 ActiveMLocs[M].insert(Var.first); in loadInlocs()
347 MTracker->emitLoc(M, Var.first, Var.second.Properties)); in loadInlocs()
354 void addUseBeforeDef(const DebugVariable &Var, in addUseBeforeDef() argument
356 UseBeforeDef UBD = {ID, Var, Properties}; in addUseBeforeDef()
358 UseBeforeDefVariables.insert(Var); in addUseBeforeDef()
382 if (!UseBeforeDefVariables.count(Use.Var)) in checkInstForNewValues()
385 PendingDbgValues.push_back(MTracker->emitLoc(L, Use.Var, Use.Properties)); in checkInstForNewValues()
406 bool isEntryValueVariable(const DebugVariable &Var, in isEntryValueVariable() argument
408 if (!Var.getVariable()->isParameter()) in isEntryValueVariable()
411 if (Var.getInlinedAt()) in isEntryValueVariable()
435 bool recoverAsEntryValue(const DebugVariable &Var, in recoverAsEntryValue() argument
444 if (!isEntryValueVariable(Var, Prop.DIExpr)) in recoverAsEntryValue()
457 PendingDbgValues.push_back(emitMOLoc(MO, Var, {NewExpr, Prop.Indirect})); in recoverAsEntryValue()
463 DebugVariable Var(MI.getDebugVariable(), MI.getDebugExpression(), in redefVar() local
471 auto It = ActiveVLocs.find(Var); in redefVar()
473 ActiveMLocs[It->second.Loc].erase(Var); in redefVar()
477 UseBeforeDefVariables.erase(Var); in redefVar()
491 DebugVariable Var(MI.getDebugVariable(), MI.getDebugExpression(), in redefVar() local
494 UseBeforeDefVariables.erase(Var); in redefVar()
497 auto It = ActiveVLocs.find(Var); in redefVar()
499 ActiveMLocs[It->second.Loc].erase(Var); in redefVar()
517 ActiveMLocs[NewLoc].insert(Var); in redefVar()
520 std::make_pair(Var, LocAndProperties{NewLoc, Properties})); in redefVar()
563 for (const auto &Var : ActiveMLocIt->second) { in clobberMloc() local
564 auto &Prop = ActiveVLocs.find(Var)->second.Properties; in clobberMloc()
565 recoverAsEntryValue(Var, Prop, OldValue); in clobberMloc()
573 for (const auto &Var : ActiveMLocIt->second) { in clobberMloc() local
574 auto ActiveVLocIt = ActiveVLocs.find(Var); in clobberMloc()
579 PendingDbgValues.push_back(MTracker->emitLoc(NewLoc, Var, Properties)); in clobberMloc()
587 NewMLocs.insert(Var); in clobberMloc()
593 for (auto &Var : NewMLocs) in clobberMloc() local
594 ActiveMLocs[*NewLoc].insert(Var); in clobberMloc()
626 for (const auto &Var : MovingVars) { in transferMlocs() local
627 auto ActiveVLocIt = ActiveVLocs.find(Var); in transferMlocs()
632 MTracker->emitLoc(Dst, Var, ActiveVLocIt->second.Properties); in transferMlocs()
645 const DebugVariable &Var, in emitMOLoc() argument
647 DebugLoc DL = DILocation::get(Var.getVariable()->getContext(), 0, 0, in emitMOLoc()
648 Var.getVariable()->getScope(), in emitMOLoc()
649 const_cast<DILocation *>(Var.getInlinedAt())); in emitMOLoc()
656 MIB.addMetadata(Var.getVariable()); in emitMOLoc()
857 const DebugVariable &Var, in emitLoc() argument
859 DebugLoc DL = DILocation::get(Var.getVariable()->getContext(), 0, 0, in emitLoc()
860 Var.getVariable()->getScope(), in emitLoc()
861 const_cast<DILocation *>(Var.getInlinedAt())); in emitLoc()
904 if (auto Fragment = Var.getFragment()) { in emitLoc()
908 } else if (auto Size = Var.getVariable()->getSizeInBits()) { in emitLoc()
967 MIB.addMetadata(Var.getVariable()); in emitLoc()
1037 const DILocalVariable *Var = MI.getDebugVariable(); in transferDebugValue() local
1041 assert(Var->isValidLocationForIntrinsic(DebugLoc) && in transferDebugValue()
1044 DebugVariable V(Var, Expr, InlinedAt); in transferDebugValue()
1109 const DILocalVariable *Var = MI.getDebugVariable(); in transferDebugInstrRef() local
1113 assert(Var->isValidLocationForIntrinsic(DebugLoc) && in transferDebugInstrRef()
1116 DebugVariable V(Var, Expr, InlinedAt); in transferDebugInstrRef()
2357 const MachineBasicBlock &MBB, const DebugVariable &Var, in pickVPHILoc() argument
2699 for (const auto &Var : VarsWeCareAbout) { in buildVLocValueMap() local
2713 if (TransferFunc.find(Var) != TransferFunc.end()) in buildVLocValueMap()
2723 AllTheVLocs, Var, Output); in buildVLocValueMap()
2779 pickVPHILoc(*MBB, Var, LiveOutIdx, MOutLocs, Preds); in buildVLocValueMap()
2795 auto TransferIt = VTracker.Vars.find(Var); in buildVLocValueMap()
2859 Var.getFragment() && "Fragment info missing during value prop"); in buildVLocValueMap()
2860 Output[MBB->getNumber()].push_back(std::make_pair(Var, *BlockLiveIn)); in buildVLocValueMap()
2871 const DebugVariable &Var, LiveInsT &Output) { in placePHIsForSingleVarDefinition() argument
2884 auto ValueIt = VLocs.Vars.find(Var); in placePHIsForSingleVarDefinition()
2899 Output[ScopeBlock->getNumber()].push_back({Var, Value}); in placePHIsForSingleVarDefinition()
3135 DebugVariable Var(MI->getDebugVariable(), MI->getDebugExpression(), in emitTransfers() local
3137 Insts.emplace_back(AllVarsNumbering.find(Var)->second, MI); in emitTransfers()
3287 const auto &Var = idx.first; in ExtendRanges() local
3288 const DILocation *ScopeLoc = VTracker->Scopes[Var]; in ExtendRanges()
3295 AllVarsNumbering.insert(std::make_pair(Var, AllVarsNumbering.size())); in ExtendRanges()
3296 ScopeToVars[Scope].insert(Var); in ExtendRanges()