Searched refs:VNI (Results 1 - 23 of 23) sorted by relevance

/freebsd-11-stable/contrib/llvm-project/llvm/lib/CodeGen/
H A DLiveRangeUtils.h47 VNInfo *VNI = LR.getValNumInfo(i); local
49 VNI->id = SplitLRs[eq-1]->getNumValNums();
50 SplitLRs[eq-1]->valnos.push_back(VNI);
52 VNI->id = j;
53 LR.valnos[j++] = VNI;
H A DLiveInterval.cpp94 VNInfo *VNI = ForVNI ? ForVNI : LR->getNextValue(Def, *VNInfoAllocator); local
95 impl().insertAtEnd(Segment(Def, Def.getDeadSlot(), VNI));
96 return VNI;
115 VNInfo *VNI = ForVNI ? ForVNI : LR->getNextValue(Def, *VNInfoAllocator); local
116 segments().insert(I, Segment(Def, Def.getDeadSlot(), VNI));
117 return VNI;
378 VNInfo *LiveRange::createDeadDef(VNInfo *VNI) { argument
381 return CalcLiveRangeUtilSet(this).createDeadDef(VNI->def, nullptr, VNI);
383 return CalcLiveRangeUtilVector(this).createDeadDef(VNI
[all...]
H A DLiveRangeCalc.cpp138 for (const VNInfo *VNI : SR.valnos) {
139 if (!VNI->isUnused() && !VNI->isPHIDef())
140 MainRange.createDeadDef(VNI->def, *Alloc);
389 if (VNInfo *VNI = Map[Pred].first) {
390 if (TheVNI && TheVNI != VNI)
392 TheVNI = VNI;
403 VNInfo *VNI = EP.first; local
405 setLiveOutValue(Pred, EP.second ? &UndefVNI : VNI);
406 if (VNI) {
554 VNInfo *VNI = LR.getNextValue(Start, *Alloc); local
[all...]
H A DSplitKit.cpp122 const VNInfo *VNI = CurLI.getVNInfoBefore(MBBEnd); local
123 if (!VNI)
130 if (!SlotIndex::isEarlierInstr(VNI->def, LIP.second) && VNI->def < MBBEnd)
170 for (const VNInfo *VNI : CurLI->valnos)
171 if (!VNI->isPHIDef() && !VNI->isUnused())
172 UseSlots.push_back(VNI->def);
415 void SplitEditor::addDeadDef(LiveInterval &LI, VNInfo *VNI, bool Original) { argument
417 LI.createDeadDef(VNI);
466 VNInfo *VNI = LI->getNextValue(Idx, LIS.getVNInfoAllocator()); local
495 VNInfo *VNI = VFP.getPointer(); local
705 VNInfo *VNI = defFromParent(OpenIdx, ParentVNI, Idx, *MI->getParent(), MI); local
722 VNInfo *VNI = defFromParent(OpenIdx, ParentVNI, Idx, *MI->getParent(), local
739 VNInfo *VNI = defFromParent(OpenIdx, ParentVNI, Last, MBB, local
784 VNInfo *VNI = defFromParent(0, ParentVNI, Boundary, *MI->getParent(), local
804 VNInfo *VNI = defFromParent(0, ParentVNI, Idx, *MI->getParent(), MI); local
820 VNInfo *VNI = defFromParent(0, ParentVNI, Start, MBB, local
1180 VNInfo *VNI = LI.extendInBlock(BlockStart, std::min(BlockEnd, End)); local
1200 VNInfo *VNI = LI.extendInBlock(BlockStart, std::min(BlockEnd, End)); local
1452 const VNInfo &VNI = *WorkList.back(); local
[all...]
H A DLiveIntervals.cpp341 VNInfo *VNI = LR->createDeadDef(Begin, getVNInfoAllocator()); local
342 (void)VNI;
343 LLVM_DEBUG(dbgs() << ' ' << printRegUnit(Unit, TRI) << '#' << VNI->id);
357 for (VNInfo *VNI : VNIs) {
358 if (VNI->isUnused())
360 SlotIndex Def = VNI->def;
361 LR.addSegment(LiveRange::Segment(Def, Def.getDeadSlot(), VNI));
392 VNInfo *VNI = WorkList.back().second; local
397 // Extend the live range for VNI to be live at Idx.
399 assert(ExtVNI == VNI
472 VNInfo *VNI = LRQ.valueIn(); local
581 VNInfo *VNI = LRQ.valueIn(); local
635 VNInfo *VNI = LRQ.valueOutOrDead(); local
1559 VNInfo *VNI = LR.getNextValue(instrIdx.getRegSlot(), VNInfoAllocator); local
1564 VNInfo *VNI = LR.getNextValue(instrIdx.getRegSlot(), VNInfoAllocator); local
1648 VNInfo *VNI = LI.getVNInfoAt(Pos); local
[all...]
H A DCalcSpillWeights.cpp93 const VNInfo *VNI = *I; local
94 if (VNI->isUnused())
96 if (VNI->isPHIDef())
99 MachineInstr *MI = LIS.getInstructionFromIndex(VNI->def);
122 LiveQueryResult SrcQ = SrcLI.Query(VNI->def);
123 VNI = SrcQ.valueIn();
124 assert(VNI && "Copy from non-existing value");
125 if (VNI->isPHIDef())
127 MI = LIS.getInstructionFromIndex(VNI->def);
H A DRenameIndependentSubregs.cpp192 const VNInfo *VNI = SR.getVNInfoAt(Pos); local
193 if (VNI == nullptr)
197 unsigned LocalID = SRInfo.ConEQ.getEqClass(VNI);
234 const VNInfo *VNI = SR.getVNInfoAt(Pos); local
235 if (VNI == nullptr)
239 unsigned LocalID = SRInfo.ConEQ.getEqClass(VNI);
280 const VNInfo &VNI = *SR.valnos[I]; local
281 unsigned LocalID = SRInfo.ConEQ.getEqClass(&VNI);
319 const VNInfo &VNI = *SR.valnos[I]; local
320 if (VNI
[all...]
H A DInlineSpiller.cpp106 // Map from pair of (StackSlot and Original VNI) to a set of spills which
107 // have the same stackslot and have equal values defined by Original VNI.
218 void eliminateRedundantSpills(LiveInterval &LI, VNInfo *VNI);
375 VNInfo *VNI = SpillLI.getVNInfoAt(Idx.getRegSlot()); local
376 assert(VNI && VNI->def == Idx.getRegSlot() && "Not defined by copy");
423 /// eliminateRedundantSpills - SLI:VNI is known to be on the stack. Remove any
425 void InlineSpiller::eliminateRedundantSpills(LiveInterval &SLI, VNInfo *VNI) { argument
426 assert(VNI && "Missing value");
428 WorkList.push_back(std::make_pair(&SLI, VNI));
490 markValueUsed(LiveInterval *LI, VNInfo *VNI) argument
669 VNInfo *VNI = *I; local
1184 VNInfo *VNI = LI.getVNInfoAt(Idx); local
[all...]
H A DLiveRangeEdit.cpp70 bool LiveRangeEdit::checkRematerializable(VNInfo *VNI, argument
77 Remattable.insert(VNI);
82 for (VNInfo *VNI : getParent().valnos) {
83 if (VNI->isUnused())
87 VNInfo *OrigVNI = OrigLI.getVNInfoAt(VNI->def);
365 VNInfo *VNI = NewLI.getNextValue(Idx, LIS.getVNInfoAllocator()); local
366 NewLI.addSegment(LiveInterval::Segment(Idx, Idx.getDeadSlot(), VNI));
H A DRegisterCoalescer.cpp1105 for (auto VNI : IntB.valnos) {
1106 if (VNI->isUnused())
1108 if (PVal->def < VNI->def && VNI->def < LIS->getMBBEndIdx(Pred)) {
1447 // VNI is in ValNo - remove any segments in this SubRange that have this ValNo
1598 VNInfo *VNI = DstLI.getVNInfoAt(RegIndex); local
1599 DstLI.MergeValueNumberInto(VNI, PrevVNI);
2322 /// Find the ultimate value that VNI was copied from.
2323 std::pair<const VNInfo*,unsigned> followCopyChain(const VNInfo *VNI) const;
2447 const VNInfo *VNI) cons
2527 VNInfo *VNI = LR.getValNumInfo(ValNo); local
2828 VNInfo *VNI = LR.getValNumInfo(ValNo); local
2894 VNInfo *VNI = LR.getValNumInfo(i); local
3135 VNInfo *VNI = LR.getValNumInfo(i); local
3149 VNInfo *VNI = LR.getValNumInfo(i); local
3160 VNInfo *VNI = LR.getValNumInfo(i); local
[all...]
H A DMachineVerifier.cpp254 void report_context(const VNInfo &VNI) const;
539 void MachineVerifier::report_context(const VNInfo &VNI) const {
540 errs() << "- ValNo: " << VNI.id << " (def " << VNI.def << ")\n";
1894 if (const VNInfo *VNI = LR.getVNInfoAt(DefIdx)) {
1895 assert(VNI && "NULL valno is not allowed");
1896 if (VNI->def != DefIdx) {
1902 report_context(*VNI);
2386 const VNInfo *VNI, unsigned Reg,
2388 if (VNI
2385 verifyLiveRangeValue(const LiveRange &LR, const VNInfo *VNI, unsigned Reg, LaneBitmask LaneMask) argument
2482 const VNInfo *VNI = S.valno; local
[all...]
H A DLiveDebugVariables.cpp302 /// range of VNI. End points where VNI is no longer live are added to Kills.
309 /// \param LR Restrict liveness to where LR has the value VNI. May be null.
310 /// \param VNI When LR is not null, this is the value to restrict to.
311 /// \param [out] Kills Append end points of VNI's live range to Kills.
314 LiveRange *LR, const VNInfo *VNI,
734 const VNInfo *VNI, SmallVectorImpl<SlotIndex> *Kills,
741 // Limit to VNI's live range.
743 if (LR && VNI) {
745 if (!Segment || Segment->valno != VNI) {
733 extendDef(SlotIndex Idx, DbgValueLocation Loc, LiveRange *LR, const VNInfo *VNI, SmallVectorImpl<SlotIndex> *Kills, LiveIntervals &LIS) argument
874 const VNInfo *VNI = nullptr; local
[all...]
H A DPHIElimination.cpp492 VNInfo *VNI = SrcLI.getVNInfoAt(startIdx); local
495 if (VNI && VNI->def != startIdx) {
H A DMachineBasicBlock.cpp1038 VNInfo *VNI = LI.getVNInfoAt(PrevIndex);
1039 assert(VNI &&
1041 LI.addSegment(LiveInterval::Segment(StartIndex, EndIndex, VNI));
1058 VNInfo *VNI = LI.getVNInfoAt(PrevIndex);
1059 assert(VNI && "LiveInterval should have VNInfo where it is live.");
1060 LI.addSegment(LiveInterval::Segment(StartIndex, EndIndex, VNI));
H A DStackColoring.cpp853 VNInfo *VNI = Intervals[Slot]->getValNumInfo(0); local
855 LiveInterval::Segment(Starts[Slot], ThisIndex, VNI));
869 VNInfo *VNI = Intervals[i]->getValNumInfo(0); local
870 Intervals[i]->addSegment(LiveInterval::Segment(Starts[i], EndIdx, VNI));
H A DSplitKit.h331 /// 4. (VNI, false) The value is mapped to a single new value.
353 /// Add a segment to the interval LI for the value number VNI. If LI has
359 void addDeadDef(LiveInterval &LI, VNInfo *VNI, bool Original);
H A DMachineScheduler.cpp1134 VNInfo *VNI; local
1138 VNI = LI.getVNInfoBefore(LIS->getMBBEndIdx(BB));
1141 VNI = LRQ.valueIn();
1144 assert(VNI && "No live value at use.");
1153 if (LRQ.valueIn() == VNI) {
H A DTwoAddressInstructionPass.cpp1582 VNInfo *VNI = LI.getNextValue(LastCopyIdx, LIS->getVNInfoAllocator()); local
1585 LI.addSegment(LiveInterval::Segment(LastCopyIdx, endIdx, VNI));
/freebsd-11-stable/contrib/llvm-project/llvm/include/llvm/CodeGen/
H A DLiveInterval.h250 for (const VNInfo *VNI : Other.valnos)
251 createValueCopy(VNI, Allocator);
315 /// containsValue - Returns true if VNI belongs to this range.
316 bool containsValue(const VNInfo *VNI) const {
317 return VNI && VNI->id < getNumValNums() && VNI == getValNumInfo(VNI->id);
323 VNInfo *VNI =
325 valnos.push_back(VNI);
[all...]
H A DLiveRangeCalc.h52 /// redundant, it can be computed as: MDT[Indexes.getMBBFromIndex(VNI->def)].
249 /// setLiveOutValue - Indicate that VNI is live out from MBB. The
253 /// VNI may be null only if MBB is a live-through block also passed to
255 void setLiveOutValue(MachineBasicBlock *MBB, VNInfo *VNI) { argument
257 Map[MBB] = LiveOutPair(VNI, nullptr);
H A DLiveRangeEdit.h195 /// checkRematerializable - Manually add VNI to the list of rematerializable
197 bool checkRematerializable(VNInfo *VNI, const MachineInstr *DefMI,
H A DLiveIntervals.h299 /// Returns true if VNI is killed by any PHI-def values in LI.
301 bool hasPHIKill(const LiveInterval &LI, const VNInfo *VNI) const;
/freebsd-11-stable/contrib/llvm-project/llvm/lib/DebugInfo/PDB/Native/
H A DPDBFileBuilder.cpp111 uint32_t VNI = getStringTableBuilder().insert(VName); local
116 Desc.VNameIndex = VNI;

Completed in 238 milliseconds