HomeSort by relevance Sort by last modified time
    Searched defs:VNI (Results 1 - 24 of 24) sorted by null

  /external/llvm/lib/CodeGen/
LiveRangeUtils.h 48 VNInfo *VNI = LR.getValNumInfo(i);
50 VNI->id = SplitLRs[eq-1]->getNumValNums();
51 SplitLRs[eq-1]->valnos.push_back(VNI);
53 VNI->id = j;
54 LR.valnos[j++] = VNI;
CalcSpillWeights.cpp 85 const VNInfo *VNI = *I;
86 if (VNI->isUnused())
88 if (VNI->isPHIDef())
91 MachineInstr *MI = LIS.getInstructionFromIndex(VNI->def);
114 LiveQueryResult SrcQ = SrcLI.Query(VNI->def);
115 VNI = SrcQ.valueIn();
116 assert(VNI && "Copy from non-existing value");
117 if (VNI->isPHIDef())
119 MI = LIS.getInstructionFromIndex(VNI->def);
LiveInterval.cpp 67 VNInfo *VNI = LR->getNextValue(Def, VNInfoAllocator);
68 impl().insertAtEnd(Segment(Def, Def.getDeadSlot(), VNI));
69 return VNI;
87 VNInfo *VNI = LR->getNextValue(Def, VNInfoAllocator);
88 segments().insert(I, Segment(Def, Def.getDeadSlot(), VNI));
89 return VNI;
481 VNInfo *VNI = S.valno;
482 if (!Seen.insert(VNI).second)
484 assert(!VNI->isUnused() && "Unused valno used by live segment");
485 VNI->id = (unsigned)valnos.size()
    [all...]
LiveRangeCalc.cpp 137 for (const VNInfo *VNI : SR.valnos) {
138 if (!VNI->isUnused() && !VNI->isPHIDef())
139 MainRange.createDeadDef(VNI->def, *Alloc);
316 if (VNInfo *VNI = Map[Pred].first) {
317 if (TheVNI && TheVNI != VNI)
319 TheVNI = VNI;
329 VNInfo *VNI = LR.extendInBlock(Start, End);
330 setLiveOutValue(Pred, VNI);
331 if (VNI) {
    [all...]
LiveRangeEdit.cpp 51 bool LiveRangeEdit::checkRematerializable(VNInfo *VNI,
58 Remattable.insert(VNI);
63 for (VNInfo *VNI : getParent().valnos) {
64 if (VNI->isUnused())
68 VNInfo *OrigVNI = OrigLI.getVNInfoAt(VNI->def);
338 VNInfo *VNI = NewLI.getNextValue(Idx, LIS.getVNInfoAllocator());
339 NewLI.addSegment(LiveInterval::Segment(Idx, Idx.getDeadSlot(), VNI));
RenameIndependentSubregs.cpp 192 const VNInfo *VNI = SR.getVNInfoAt(Pos);
193 if (VNI == nullptr)
197 unsigned LocalID = SRInfo.ConEQ.getEqClass(VNI);
237 const VNInfo &VNI = *I->valno;
239 unsigned LocalID = SRInfo.ConEQ.getEqClass(&VNI);
268 const VNInfo &VNI = *SR.valnos[I];
269 unsigned LocalID = SRInfo.ConEQ.getEqClass(&VNI);
307 const VNInfo &VNI = *SR.valnos[I];
308 if (VNI.isUnused() || !VNI.isPHIDef()
    [all...]
PHIElimination.cpp 476 VNInfo *VNI = SrcLI.getVNInfoAt(startIdx);
479 if (VNI && VNI->def != startIdx) {
InlineSpiller.cpp 77 // Map from pair of (StackSlot and Original VNI) to a set of spills which
78 // have the same stackslot and have equal values defined by Original VNI.
195 void eliminateRedundantSpills(LiveInterval &LI, VNInfo *VNI);
354 VNInfo *VNI = SpillLI.getVNInfoAt(Idx.getRegSlot());
355 assert(VNI && VNI->def == Idx.getRegSlot() && "Not defined by copy");
402 /// eliminateRedundantSpills - SLI:VNI is known to be on the stack. Remove any
404 void InlineSpiller::eliminateRedundantSpills(LiveInterval &SLI, VNInfo *VNI) {
405 assert(VNI && "Missing value");
407 WorkList.push_back(std::make_pair(&SLI, VNI));
    [all...]
LiveDebugVariables.cpp 226 /// range of VNI.
227 /// End points where VNI is no longer live are added to Kills.
230 /// @param LR Restrict liveness to where LR has the value VNI. May be null.
231 /// @param VNI When LR is not null, this is the value to restrict to.
232 /// @param Kills Append end points of VNI's live range to Kills.
236 LiveRange *LR, const VNInfo *VNI,
543 const VNInfo *VNI, SmallVectorImpl<SlotIndex> *Kills,
551 // Limit to VNI's live range.
553 if (LR && VNI) {
555 if (!Segment || Segment->valno != VNI) {
    [all...]
LiveIntervalAnalysis.cpp 324 VNInfo *VNI = LR->createDeadDef(Begin, getVNInfoAllocator());
325 (void)VNI;
326 DEBUG(dbgs() << ' ' << PrintRegUnit(Unit, TRI) << '#' << VNI->id);
343 for (auto VNI : VNIs) {
344 if (VNI->isUnused())
346 SlotIndex Def = VNI->def;
347 LR.addSegment(LiveRange::Segment(Def, Def.getDeadSlot(), VNI));
364 VNInfo *VNI = WorkList.back().second;
369 // Extend the live range for VNI to be live at Idx.
371 assert(ExtVNI == VNI && "Unexpected existing value number")
    [all...]
MachineBasicBlock.cpp 889 VNInfo *VNI = LI.getVNInfoAt(PrevIndex);
890 assert(VNI &&
892 LI.addSegment(LiveInterval::Segment(StartIndex, EndIndex, VNI));
909 VNInfo *VNI = LI.getVNInfoAt(PrevIndex);
910 assert(VNI && "LiveInterval should have VNInfo where it is live.");
911 LI.addSegment(LiveInterval::Segment(StartIndex, EndIndex, VNI));
    [all...]
SplitKit.cpp 95 const VNInfo *VNI = CurLI.getVNInfoBefore(MBBEnd);
96 if (!VNI)
103 if (!SlotIndex::isEarlierInstr(VNI->def, LIP.second) && VNI->def < MBBEnd)
144 for (const VNInfo *VNI : CurLI->valnos)
145 if (!VNI->isPHIDef() && !VNI->isUnused())
146 UseSlots.push_back(VNI->def);
389 assert(Edit->getParent().getVNInfoAt(Idx) == ParentVNI && "Bad Parent VNI");
393 VNInfo *VNI = LI->getNextValue(Idx, LIS.getVNInfoAllocator())
    [all...]
TwoAddressInstructionPass.cpp     [all...]
MachineVerifier.cpp 219 void report_context(const VNInfo &VNI) const;
489 void MachineVerifier::report_context(const VNInfo &VNI) const {
490 errs() << "- ValNo: " << VNI.id << " (def " << VNI.def << ")\n";
    [all...]
MachineScheduler.cpp     [all...]
RegisterCoalescer.cpp     [all...]
  /external/swiftshader/third_party/LLVM/lib/CodeGen/
LiveRangeCalc.cpp 37 VNInfo *VNI = OverrideVNI ? OverrideVNI : I->Value;
38 assert(VNI && "No live-in value found");
44 I->LI->addRange(LiveRange(Start, I->Kill, VNI));
46 I->LI->addRange(LiveRange(Start, End, VNI));
50 LiveOut[MBB] = LiveOutPair(VNI, (MachineDomTreeNode *)0);
78 VNInfo *VNI = findReachingDefs(LI, KillMBB, Kill, Indexes, DomTree);
81 if (!VNI)
84 updateLiveIns(VNI, Indexes);
123 if (VNInfo *VNI = LiveOut[Pred].first) {
124 if (TheVNI && TheVNI != VNI)
    [all...]
LiveRangeEdit.cpp 44 bool LiveRangeEdit::checkRematerializable(VNInfo *VNI,
52 remattable_.insert(VNI);
61 VNInfo *VNI = *I;
62 if (VNI->isUnused())
64 MachineInstr *DefMI = lis.getInstructionFromIndex(VNI->def);
67 checkRematerializable(VNI, DefMI, tii, aa);
262 if (VNInfo *VNI = LI.getVNInfoAt(Idx)) {
265 LI.removeValNo(VNI);
LiveDebugVariables.cpp 216 /// range of VNI.
217 /// End points where VNI is no longer live are added to Kills.
220 /// @param LI Restrict liveness to where LI has the value VNI. May be null.
221 /// @param VNI When LI is not null, this is the value to restrict to.
222 /// @param Kills Append end points of VNI's live range to Kills.
226 LiveInterval *LI, const VNInfo *VNI,
486 LiveInterval *LI, const VNInfo *VNI,
498 // Limit to VNI's live range.
500 if (LI && VNI) {
502 if (!Range || Range->valno != VNI) {
    [all...]
MachineVerifier.cpp 716 if (const VNInfo *VNI = LI.getVNInfoAt(DefIdx)) {
717 assert(VNI && "NULL valno is not allowed");
718 if (VNI->def != DefIdx && !MO->isEarlyClobber()) {
720 *OS << "Valno " << VNI->id << " is not defined at "
    [all...]
SplitKit.cpp 350 assert(Edit->getParent().getVNInfoAt(Idx) == ParentVNI && "Bad Parent VNI");
354 VNInfo *VNI = LI->getNextValue(Idx, 0, LIS.getVNInfoAllocator());
359 ValueForcePair(VNI, false)));
364 return VNI;
374 // This is a complex mapping, add liveness for VNI
375 SlotIndex Def = VNI->def;
376 LI->addRange(LiveRange(Def, Def.getNextSlot(), VNI));
378 return VNI;
384 VNInfo *VNI = VFP.getPointer();
388 if (!VNI) {
    [all...]
InlineSpiller.cpp 117 SibValueInfo(unsigned Reg, VNInfo *VNI)
119 SpillReg(Reg), SpillVNI(VNI), SpillMBB(0), DefMI(0) {}
165 void propagateSiblingValue(SibValueMap::iterator, VNInfo *VNI = 0);
169 void eliminateRedundantSpills(LiveInterval &LI, VNInfo *VNI);
343 /// @param VNI Dependent value, or NULL to propagate to all saved dependents.
345 VNInfo *VNI) {
346 // When VNI is non-NULL, add it to SVI's deps, and only propagate to that.
348 if (VNI) {
349 FirstDeps.push_back(VNI);
350 SVI->second.Deps.push_back(VNI);
    [all...]
LiveIntervalAnalysis.cpp 659 VNInfo *vni = local
661 vni->setIsPHIDef(true);
662 LiveRange LR(start, end, vni);
770 VNInfo *VNI = li->getVNInfoAt(Idx);
771 if (!VNI) {
780 if (VNI->def == Idx) {
784 VNI = li->getVNInfoAt(Idx);
785 assert(VNI && "Early-clobber tied value not available");
787 WorkList.push_back(std::make_pair(Idx, VNI));
794 VNInfo *VNI = *I
    [all...]
RegisterCoalescer.cpp     [all...]

Completed in 670 milliseconds