Lines Matching defs:FnVarLocs

375   FunctionVarLocsBuilder *FnVarLocs;
668 DebugVariable DbgVar = FnVarLocs->getVariable(VarLoc.VariableID);
834 if (const auto *Locs = FnVarLocs->getWedge(&DVR)) {
840 if (const auto *Locs = FnVarLocs->getWedge(&I)) {
855 /// Add variable locations to \p FnVarLocs so that any bits of a variable
875 void run(FunctionVarLocsBuilder *FnVarLocs) {
879 this->FnVarLocs = FnVarLocs;
978 FnVarLocs->addVarLoc(InsertBefore, Var, Expr, FragMemLoc.DL,
1298 FunctionVarLocsBuilder *FnVarLocs;
1309 return static_cast<VariableID>(FnVarLocs->insertVariable(Var));
1385 bool emitPromotedVarLocs(FunctionVarLocsBuilder *FnVarLocs);
1391 /// Run the analysis, adding variable location info to \p FnVarLocs. Returns
1392 /// true if any variable locations have been added to FnVarLocs.
1393 bool run(FunctionVarLocsBuilder *FnVarLocs);
1640 DebugVariable V = FnVarLocs->getVariable(Var);
1956 DebugVariable DbgVar = FnVarLocs->getVariable(Var);
2138 /// dbg.declares to \p FnVarLocs.
2141 /// FnVarLocs->Variables first. TrackedVariablesVectorSize is set to the ID of
2152 Function &Fn, FunctionVarLocsBuilder *FnVarLocs,
2217 {FnVarLocs->insertVariable(DV), *Info});
2256 VariableID ThisVar = FnVarLocs->insertVariable(*It);
2259 VariableID OtherVar = FnVarLocs->insertVariable(*OtherIt);
2268 TrackedVariablesVectorSize = FnVarLocs->getNumVariables() + 1;
2273 FnVarLocs->addSingleLocVar(DebugVariable(DDI), DDI->getExpression(),
2276 FnVarLocs->addSingleLocVar(DebugVariable(DVR), DVR->getExpression(),
2290 FnVarLocs = FnVarLocsBuilder;
2300 Fn, FnVarLocs, *VarsWithStackSlot, UntaggedStoreVars,
2393 DebugVariable Var = FnVarLocs->getVariable(VarLoc.VariableID);
2423 DebugVariable Var = FnVarLocs->getVariable(VarLoc.VariableID);
2424 FnVarLocs->addSingleLocVar(Var, VarLoc.Expr, VarLoc.DL, VarLoc.Values);
2434 DebugVariable Var = FnVarLocs->getVariable(VarLoc.VariableID);
2444 FnVarLocs->setWedge(InsertBefore, std::move(NewDefs));
2447 InsertedAnyIntrinsics |= emitPromotedVarLocs(FnVarLocs);
2453 FunctionVarLocsBuilder *FnVarLocs) {
2456 // variables into FnVarLocs location defs. No analysis required for these.
2464 FnVarLocs->addVarLoc(InsertBefore, DebugVariable(Record),
2492 FunctionVarLocsBuilder &FnVarLocs) {
2496 // FnVarLocs, because wedges in FnVarLocs may only be separated by debug
2506 const auto *Locs = FnVarLocs.getWedge(WedgePosition);
2519 getAggregate(FnVarLocs.getVariable(RIt->VariableID));
2568 FnVarLocs.setWedge(WedgePosition, std::move(NewDefsReversed));
2590 FunctionVarLocsBuilder &FnVarLocs) {
2596 // FnVarLocs, because wedges in FnVarLocs may only be separated by debug
2601 const auto *Locs = FnVarLocs.getWedge(WedgePosition);
2613 DebugVariable Key(FnVarLocs.getVariable(Loc.VariableID).getVariable(),
2633 FnVarLocs.setWedge(WedgePosition, std::move(NewDefs));
2649 FunctionVarLocsBuilder &FnVarLocs) {
2684 // FnVarLocs, because wedges in FnVarLocs may only be separated by debug
2689 const auto *Locs = FnVarLocs.getWedge(WedgePosition);
2701 DebugAggregate Aggr{FnVarLocs.getVariable(Loc.VariableID).getVariable(),
2703 DebugVariable Var = FnVarLocs.getVariable(Loc.VariableID);
2720 FnVarLocs.setWedge(WedgePosition, std::move(NewDefs));
2734 FunctionVarLocsBuilder &FnVarLocs) {
2736 MadeChanges |= removeRedundantDbgLocsUsingBackwardScan(BB, FnVarLocs);
2738 MadeChanges |= removeUndefDbgLocsFromEntryBlock(BB, FnVarLocs);
2739 MadeChanges |= removeRedundantDbgLocsUsingForwardScan(BB, FnVarLocs);
2768 FunctionVarLocsBuilder *FnVarLocs) {
2780 Changed = Pass.run(FnVarLocs);
2786 Pass.run(FnVarLocs);
2793 removeRedundantDbgLocs(&BB, *FnVarLocs);