Lines Matching refs:VarLoc
290 struct VarLoc { struct in __anon87d824590111::VarLocBasedLDV
335 VarLoc(const MachineInstr &MI, LexicalScopes &LS) in VarLoc() function
364 static VarLoc CreateEntryLoc(const MachineInstr &MI, LexicalScopes &LS, in CreateEntryLoc() argument
366 VarLoc VL(MI, LS); in CreateEntryLoc()
378 static VarLoc CreateEntryBackupLoc(const MachineInstr &MI, in CreateEntryBackupLoc() argument
381 VarLoc VL(MI, LS); in CreateEntryBackupLoc()
391 static VarLoc CreateEntryCopyBackupLoc(const MachineInstr &MI, in CreateEntryCopyBackupLoc() argument
395 VarLoc VL(MI, LS); in CreateEntryCopyBackupLoc()
405 static VarLoc CreateCopyLoc(const MachineInstr &MI, LexicalScopes &LS, in CreateCopyLoc() argument
407 VarLoc VL(MI, LS); in CreateCopyLoc()
415 static VarLoc CreateSpillLoc(const MachineInstr &MI, unsigned SpillBase, in CreateSpillLoc() argument
417 VarLoc VL(MI, LS); in CreateSpillLoc()
544 bool operator==(const VarLoc &Other) const { in operator ==() argument
550 bool operator<(const VarLoc &Other) const { in operator <() argument
563 std::map<VarLoc, LocIndex::u32_index_t> Var2Index;
567 SmallDenseMap<LocIndex::u32_location_t, std::vector<VarLoc>> Loc2Vars;
570 static LocIndex::u32_location_t getLocationForVar(const VarLoc &VL) { in getLocationForVar()
572 case VarLoc::RegisterKind: in getLocationForVar()
576 case VarLoc::SpillLocKind: in getLocationForVar()
578 case VarLoc::EntryValueBackupKind: in getLocationForVar()
579 case VarLoc::EntryValueCopyBackupKind: in getLocationForVar()
588 LocIndex insert(const VarLoc &VL) { in insert()
600 const VarLoc &operator[](LocIndex ID) const { in operator []()
652 void erase(const VarLoc &VL);
659 void insert(LocIndex VarLocID, const VarLoc &VL);
665 const VarLoc &VarL = Map[Idx]; in insertFromLocSet()
759 Optional<VarLoc::SpillLoc> isRestoreInstruction(const MachineInstr &MI,
764 VarLoc::SpillLoc extractSpillBaseRegAndOffset(const MachineInstr &MI);
775 VarLocMap &VarLocIDs, const VarLoc &EntryVL);
833 void VarLocBasedLDV::OpenRangesSet::erase(const VarLoc &VL) { in erase()
871 const VarLoc *VL = &VarLocIDs[LocIndex::fromRawInteger(ID)]; in erase()
878 const VarLoc &VL) { in insert()
965 const VarLoc &VL = VarLocIDs[LocIndex::fromRawInteger(VLL)]; in printVarLocInMBB()
975 VarLocBasedLDV::VarLoc::SpillLoc
998 const VarLoc &EntryVL) { in removeEntryValue()
1035 const VarLoc &VL = VarLocIDs[LocIndex::fromRawInteger(ID)]; in removeEntryValue()
1065 const VarLoc &EntryVL = VarLocIDs[*EntryValBackupID]; in transferDebugValue()
1078 VarLoc VL(MI, LS); in transferDebugValue()
1092 VarLoc VL(MI, LS); in transferDebugValue()
1109 const VarLoc &VL = VarLocIDs[Idx]; in emitEntryValues()
1122 const VarLoc &EntryVL = VarLocIDs[*EntryValBackupID]; in emitEntryValues()
1123 VarLoc EntryLoc = in emitEntryValues()
1124 VarLoc::CreateEntryLoc(EntryVL.MI, LS, EntryVL.Expr, EntryVL.Loc.RegNo); in emitEntryValues()
1142 auto ProcessVarLoc = [&MI, &OpenRanges, &Transfers, &VarLocIDs](VarLoc &VL) { in insertTransferDebugPair()
1164 VarLoc VL = VarLoc::CreateCopyLoc(*DebugInstr, LS, NewReg); in insertTransferDebugPair()
1175 VarLoc::SpillLoc SpillLocation = extractSpillBaseRegAndOffset(MI); in insertTransferDebugPair()
1176 VarLoc VL = VarLoc::CreateSpillLoc(*DebugInstr, SpillLocation.SpillBase, in insertTransferDebugPair()
1190 VarLoc VL = VarLoc::CreateCopyLoc(*DebugInstr, LS, NewReg); in insertTransferDebugPair()
1324 Optional<VarLocBasedLDV::VarLoc::SpillLoc>
1353 Optional<VarLoc::SpillLoc> Loc; in transferSpillOrRestoreInst()
1365 const VarLoc &VL = VarLocIDs[Idx]; in transferSpillOrRestoreInst()
1366 assert(VL.Kind == VarLoc::SpillLocKind && "Broken VarLocSet?"); in transferSpillOrRestoreInst()
1379 VarLoc UndefVL = VarLoc::CreateCopyLoc(VL.MI, LS, 0); in transferSpillOrRestoreInst()
1410 const VarLoc &VL = VarLocIDs[Idx]; in transferSpillOrRestoreInst()
1417 VL.Kind == VarLoc::SpillLocKind && "Broken VarLocSet?"); in transferSpillOrRestoreInst()
1473 const VarLoc &VL = VarLocIDs[Idx]; in transferRegisterCopy()
1476 VarLoc EntryValLocCopyBackup = in transferRegisterCopy()
1477 VarLoc::CreateEntryCopyBackupLoc(VL.MI, LS, VL.Expr, DestReg); in transferRegisterCopy()
1695 const VarLoc &DiffIt = VarLocIDs[LocIndex::fromRawInteger(ID)]; in flushPendingLocs()
1779 VarLoc EntryValLocAsBackup = VarLoc::CreateEntryBackupLoc(MI, LS, NewExpr); in recordEntryValue()
1942 const VarLoc &VL = VarLocIDs[TR.LocationID]; in ExtendRanges()