Lines Matching refs:VL
441 VarLoc VL(MI, LS); in CreateEntryLoc() local
442 assert(VL.Locs.size() == 1 && in CreateEntryLoc()
443 VL.Locs[0].Kind == MachineLocKind::RegisterKind); in CreateEntryLoc()
444 VL.EVKind = EntryValueLocKind::EntryValueKind; in CreateEntryLoc()
445 VL.Expr = EntryExpr; in CreateEntryLoc()
446 VL.Locs[0].Value.RegNo = Reg; in CreateEntryLoc()
447 return VL; in CreateEntryLoc()
457 VarLoc VL(MI, LS); in CreateEntryBackupLoc() local
458 assert(VL.Locs.size() == 1 && in CreateEntryBackupLoc()
459 VL.Locs[0].Kind == MachineLocKind::RegisterKind); in CreateEntryBackupLoc()
460 VL.EVKind = EntryValueLocKind::EntryValueBackupKind; in CreateEntryBackupLoc()
461 VL.Expr = EntryExpr; in CreateEntryBackupLoc()
462 return VL; in CreateEntryBackupLoc()
472 VarLoc VL(MI, LS); in CreateEntryCopyBackupLoc() local
473 assert(VL.Locs.size() == 1 && in CreateEntryCopyBackupLoc()
474 VL.Locs[0].Kind == MachineLocKind::RegisterKind); in CreateEntryCopyBackupLoc()
475 VL.EVKind = EntryValueLocKind::EntryValueCopyBackupKind; in CreateEntryCopyBackupLoc()
476 VL.Expr = EntryExpr; in CreateEntryCopyBackupLoc()
477 VL.Locs[0].Value.RegNo = NewReg; in CreateEntryCopyBackupLoc()
478 return VL; in CreateEntryCopyBackupLoc()
485 VarLoc VL = OldVL; in CreateCopyLoc() local
486 for (MachineLoc &ML : VL.Locs) in CreateCopyLoc()
490 return VL; in CreateCopyLoc()
499 VarLoc VL = OldVL; in CreateSpillLoc() local
500 for (MachineLoc &ML : VL.Locs) in CreateSpillLoc()
504 return VL; in CreateSpillLoc()
728 LocIndices insert(const VarLoc &VL) { in insert() argument
729 LocIndices &Indices = Var2Indices[VL]; in insert()
739 if (VL.EVKind == VarLoc::EntryValueLocKind::NonEntryValueKind) { in insert()
740 VL.getDescribingRegs(Locations); in insert()
746 if (VL.containsSpillLocs()) { in insert()
750 } else if (VL.EVKind != VarLoc::EntryValueLocKind::EntryValueKind) { in insert()
759 Vars.push_back(VL); in insert()
764 LocIndices getAllIndices(const VarLoc &VL) const { in getAllIndices()
765 auto IndIt = Var2Indices.find(VL); in getAllIndices()
849 void erase(const VarLoc &VL);
857 void insert(LocIndices VarLocIDs, const VarLoc &VL);
1039 void VarLocBasedLDV::OpenRangesSet::erase(const VarLoc &VL) { in erase() argument
1041 auto DoErase = [VL, this](DebugVariable VarToErase) { in erase()
1042 auto *EraseFrom = VL.isEntryBackupLoc() ? &EntryValuesBackupVars : &Vars; in erase()
1052 DebugVariable Var = VL.Var; in erase()
1079 const VarLoc &VL = VarLocIDs[LocIndex(Location, ID)]; in erase() local
1080 auto *EraseFrom = VL.isEntryBackupLoc() ? &EntryValuesBackupVars : &Vars; in erase()
1081 EraseFrom->erase(VL.Var); in erase()
1082 LocIndices VLI = VarLocIDs.getAllIndices(VL); in erase()
1104 const VarLoc &VL) { in insert() argument
1105 auto *InsertInto = VL.isEntryBackupLoc() ? &EntryValuesBackupVars : &Vars; in insert()
1108 InsertInto->insert({VL.Var, VarLocIDs}); in insert()
1143 const VarLoc &VL = VarLocIDs[ItIdx]; in collectIDsForRegs() local
1144 LocIndices LI = VarLocIDs.getAllIndices(VL); in collectIDsForRegs()
1203 for (const VarLoc &VL : VarLocs) { in printVarLocInMBB() local
1204 Out << " Var: " << VL.Var.getVariable()->getName(); in printVarLocInMBB()
1206 VL.dump(TRI, Out); in printVarLocInMBB()
1296 const VarLoc &VL = VarLocIDs[LocIndex::fromRawInteger(ID)]; in removeEntryValue() local
1297 if (VL.isEntryValueCopyBackupReg(Reg) && in removeEntryValue()
1299 VL.MI.getDebugOperand(0).getReg() == SrcRegOp->getReg()) in removeEntryValue()
1347 VarLoc VL(MI, LS); in transferDebugValue() local
1349 OpenRanges.erase(VL); in transferDebugValue()
1351 LocIndices IDs = VarLocIDs.insert(VL); in transferDebugValue()
1353 OpenRanges.insert(IDs, VL); in transferDebugValue()
1360 VarLoc VL(MI, LS); in transferDebugValue() local
1361 OpenRanges.erase(VL); in transferDebugValue()
1396 const VarLoc &VL = VarLocIDs[Idx]; in emitEntryValues() local
1397 if (!VL.Var.getVariable()->isParameter()) in emitEntryValues()
1400 auto DebugVar = VL.Var; in emitEntryValues()
1431 auto ProcessVarLoc = [&MI, &OpenRanges, &Transfers, &VarLocIDs](VarLoc &VL) { in insertTransferDebugPair() argument
1432 LocIndices LocIds = VarLocIDs.insert(VL); in insertTransferDebugPair()
1435 OpenRanges.erase(VL); in insertTransferDebugPair()
1439 OpenRanges.insert(LocIds, VL); in insertTransferDebugPair()
1453 VarLoc VL = VarLoc::CreateCopyLoc(OldVarLoc, OldLoc, NewReg); in insertTransferDebugPair() local
1454 ProcessVarLoc(VL); in insertTransferDebugPair()
1457 VL.dump(TRI); in insertTransferDebugPair()
1465 VarLoc VL = VarLoc::CreateSpillLoc( in insertTransferDebugPair() local
1467 ProcessVarLoc(VL); in insertTransferDebugPair()
1470 VL.dump(TRI); in insertTransferDebugPair()
1479 VarLoc VL = VarLoc::CreateCopyLoc(OldVarLoc, OldLoc, NewReg); in insertTransferDebugPair() local
1480 ProcessVarLoc(VL); in insertTransferDebugPair()
1483 VL.dump(TRI); in insertTransferDebugPair()
1662 const VarLoc &VL = VarLocIDs[Idx]; in transferSpillOrRestoreInst() local
1663 assert(VL.containsSpillLocs() && "Broken VarLocSet?"); in transferSpillOrRestoreInst()
1664 if (VL.usesSpillLoc(*Loc)) { in transferSpillOrRestoreInst()
1676 unsigned SpillLocIdx = VL.getSpillLocIdx(*Loc); in transferSpillOrRestoreInst()
1677 VarLoc::MachineLoc OldLoc = VL.Locs[SpillLocIdx]; in transferSpillOrRestoreInst()
1678 VarLoc UndefVL = VarLoc::CreateCopyLoc(VL, OldLoc, 0); in transferSpillOrRestoreInst()
1709 const VarLoc &VL = VarLocIDs[Idx]; in transferSpillOrRestoreInst() local
1712 assert(VL.usesReg(Reg) && "Broken VarLocSet?"); in transferSpillOrRestoreInst()
1714 << VL.Var.getVariable()->getName() << ")\n"); in transferSpillOrRestoreInst()
1715 LocIdx = VL.getRegIdx(Reg); in transferSpillOrRestoreInst()
1717 assert(TKind == TransferKind::TransferRestore && VL.containsSpillLocs() && in transferSpillOrRestoreInst()
1719 if (!VL.usesSpillLoc(*Loc)) in transferSpillOrRestoreInst()
1723 << VL.Var.getVariable()->getName() << ")\n"); in transferSpillOrRestoreInst()
1724 LocIdx = VL.getSpillLocIdx(*Loc); in transferSpillOrRestoreInst()
1726 VarLoc::MachineLoc MLoc = VL.Locs[LocIdx]; in transferSpillOrRestoreInst()
1776 const VarLoc &VL = VarLocIDs[Idx]; in transferRegisterCopy() local
1777 if (VL.isEntryValueBackupReg(SrcReg)) { in transferRegisterCopy()
1780 VarLoc::CreateEntryCopyBackupLoc(VL.MI, LS, VL.Expr, DestReg); in transferRegisterCopy()
1782 OpenRanges.erase(VL); in transferRegisterCopy()
1818 for (VarLoc &VL : VarLocs) { in transferTerminator()
1821 VL.dump(TRI); in transferTerminator()
1953 for (const VarLoc &VL : VarLocs) in join()
1955 << VL.Var.getVariable()->getName() << "\n"; in join()
2267 const VarLoc &VL = VarLocIDs[TR.LocationID]; in ExtendRanges() local
2268 MachineInstr *MI = VL.BuildDbgValue(MF); in ExtendRanges()
2279 const VarLoc &VL = VarLocIDs[TR.second]; in ExtendRanges() local
2280 MachineInstr *MI = VL.BuildDbgValue(MF); in ExtendRanges()