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

/external/llvm/lib/CodeGen/
H A DLiveRangeCalc.cpp114 VNInfo *VNI = OverrideVNI ? OverrideVNI : I->Value; local
115 assert(VNI && "No live-in value found");
121 I->LI->addRange(LiveRange(Start, I->Kill, VNI));
123 I->LI->addRange(LiveRange(Start, End, VNI));
127 LiveOut[MBB] = LiveOutPair(VNI, (MachineDomTreeNode *)0);
153 VNInfo *VNI = findReachingDefs(LI, KillMBB, Kill, PhysReg);
156 if (!VNI)
159 updateLiveIns(VNI);
210 if (VNInfo *VNI = LiveOut[Pred].first) {
211 if (TheVNI && TheVNI != VNI)
223 VNInfo *VNI = LI->extendInBlock(Start, End); local
325 VNInfo *VNI = I->LI->getNextValue(Start, *Alloc); local
[all...]
H A DInlineSpiller.cpp117 SibValueInfo(unsigned Reg, VNInfo *VNI) argument
119 SpillReg(Reg), SpillVNI(VNI), SpillMBB(0), DefMI(0) {}
164 void propagateSiblingValue(SibValueMap::iterator, VNInfo *VNI = 0);
168 void eliminateRedundantSpills(LiveInterval &LI, VNInfo *VNI);
341 /// @param VNI Dependent value, or NULL to propagate to all saved dependents.
343 VNInfo *VNI) {
344 // When VNI is non-NULL, add it to SVI's deps, and only propagate to that.
346 if (VNI) {
347 FirstDeps.push_back(VNI);
348 SVI->second.Deps.push_back(VNI);
342 propagateSiblingValue(SibValueMap::iterator SVI, VNInfo *VNI) argument
495 VNInfo *VNI; local
641 VNInfo *VNI = *VI; local
668 VNInfo *VNI = SpillLI.getVNInfoAt(Idx.getRegSlot()); local
738 eliminateRedundantSpills(LiveInterval &SLI, VNInfo *VNI) argument
801 markValueUsed(LiveInterval *LI, VNInfo *VNI) argument
938 VNInfo *VNI = *I; local
1214 VNInfo *VNI = NewLI.getNextValue(Idx, LIS.getVNInfoAllocator()); local
[all...]
H A DLiveRangeCalc.h49 /// redundant, it can be computed as: MDT[Indexes.getMBBFromIndex(VNI->def)].
122 /// updateLiveIns - Add liveness as specified in the LiveIn vector, using VNI
124 void updateLiveIns(VNInfo *VNI);
201 /// setLiveOutValue - Indicate that VNI is live out from MBB. The
205 /// VNI may be null only if MBB is a live-through block also passed to
207 void setLiveOutValue(MachineBasicBlock *MBB, VNInfo *VNI) { argument
209 LiveOut[MBB] = LiveOutPair(VNI, (MachineDomTreeNode *)0);
H A DLiveInterval.cpp57 VNInfo *VNI = getNextValue(Def, VNInfoAllocator); local
58 ranges.push_back(LiveRange(Def, Def.getDeadSlot(), VNI));
59 return VNI;
67 VNInfo *VNI = getNextValue(Def, VNInfoAllocator); local
68 ranges.insert(I, LiveRange(Def, Def.getDeadSlot(), VNI));
69 return VNI;
216 VNInfo *VNI = I->valno;
217 if (!Seen.insert(VNI))
219 assert(!VNI->isUnused() && "Unused valno used by live range");
220 VNI
[all...]
H A DSplitKit.cpp97 const VNInfo *VNI = CurLI->getVNInfoBefore(MBBEnd); local
98 if (!VNI)
105 if (!SlotIndex::isEarlierInstr(VNI->def, LSP.second) && VNI->def < MBBEnd)
377 assert(Edit->getParent().getVNInfoAt(Idx) == ParentVNI && "Bad Parent VNI");
381 VNInfo *VNI = LI->getNextValue(Idx, LIS.getVNInfoAllocator()); local
386 ValueForcePair(VNI, false)));
391 return VNI;
401 // This is a complex mapping, add liveness for VNI
402 SlotIndex Def = VNI
411 VNInfo *VNI = VFP.getPointer(); local
491 VNInfo *VNI = defFromParent(OpenIdx, ParentVNI, Idx, *MI->getParent(), MI); local
508 VNInfo *VNI = defFromParent(OpenIdx, ParentVNI, Idx, *MI->getParent(), local
524 VNInfo *VNI = defFromParent(OpenIdx, ParentVNI, Last, MBB, local
569 VNInfo *VNI = defFromParent(0, ParentVNI, Boundary, *MI->getParent(), local
589 VNInfo *VNI = defFromParent(0, ParentVNI, Idx, *MI->getParent(), MI); local
604 VNInfo *VNI = defFromParent(0, ParentVNI, Start, MBB, local
638 VNInfo *VNI = Copies[i]; local
743 VNInfo *VNI = *VI; local
818 VNInfo *VNI = *VI; local
892 VNInfo *VNI = LI->extendInBlock(BlockStart, std::min(BlockEnd, End)); local
912 VNInfo *VNI = LI->extendInBlock(BlockStart, std::min(BlockEnd, End)); local
[all...]
H A DMachineVerifier.cpp1059 if (const VNInfo *VNI = LI.getVNInfoAt(DefIdx)) {
1060 assert(VNI && "NULL valno is not allowed");
1061 if (VNI->def != DefIdx) {
1063 *OS << "Valno " << VNI->id << " is not defined at "
1321 VNInfo *VNI) {
1322 if (VNI->isUnused())
1325 const VNInfo *DefVNI = LI.getVNInfoAt(VNI->def);
1329 *OS << "Valno #" << VNI->id << '\n';
1333 if (DefVNI != VNI) {
1335 *OS << "Valno #" << VNI
1320 verifyLiveIntervalValue(const LiveInterval &LI, VNInfo *VNI) argument
1405 const VNInfo *VNI = I->valno; local
[all...]
H A DLiveRangeEdit.cpp45 bool LiveRangeEdit::checkRematerializable(VNInfo *VNI, argument
52 Remattable.insert(VNI);
59 VNInfo *VNI = *I; local
60 if (VNI->isUnused())
62 MachineInstr *DefMI = LIS.getInstructionFromIndex(VNI->def);
65 checkRematerializable(VNI, DefMI, aa);
269 if (VNInfo *VNI = LI.getVNInfoAt(Idx)) {
272 LI.removeValNo(VNI);
H A DRegisterCoalescer.cpp1120 static unsigned ComputeUltimateVN(VNInfo *VNI, argument
1126 unsigned VN = VNI->id;
1135 DenseMap<VNInfo*, VNInfo*>::iterator I = ThisFromOther.find(VNI);
1137 NewVNInfo.push_back(VNI);
1164 // VNI is the definition of B. LR is the life range of A that includes
1170 VNInfo *VNI,
1176 MachineInstr *MI = li.getInstructionFromIndex(VNI->def);
1217 SrcInt.getVNInfoBefore(VNI->def))
1255 VNInfo *VNI = *i; local
1256 if (VNI
1167 RegistersDefinedFromSameValue(LiveIntervals &li, const TargetRegisterInfo &tri, CoalescerPair &CP, VNInfo *VNI, VNInfo *OtherVNI, SmallVector<MachineInstr*, 8> &DupCopies) argument
1284 VNInfo *VNI = *i; local
1315 VNInfo *VNI = *i; local
1325 VNInfo *VNI = *i; local
[all...]
H A DLiveIntervalAnalysis.cpp588 VNInfo *VNI = Intv->createDeadDef(Begin, getVNInfoAllocator()); local
589 (void)VNI;
590 DEBUG(dbgs() << ' ' << PrintRegUnit(Unit, TRI) << '#' << VNI->id);
624 VNInfo *VNI = LRQ.valueIn(); local
625 if (!VNI) {
639 WorkList.push_back(std::make_pair(Idx, VNI));
646 VNInfo *VNI = *I; local
647 if (VNI->isUnused())
649 NewLI.addRange(LiveRange(VNI->def, VNI
658 VNInfo *VNI = WorkList.back().second; local
703 VNInfo *VNI = *I; local
[all...]
H A DCalcSpillWeights.cpp95 const VNInfo *VNI = *I; local
96 if (VNI->isUnused())
98 if (VNI->isPHIDef())
101 MachineInstr *MI = LIS.getInstructionFromIndex(VNI->def);
H A DLiveDebugVariables.cpp216 /// 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) {
485 extendDef(SlotIndex Idx, unsigned LocNo, LiveInterval *LI, const VNInfo *VNI, SmallVectorImpl<SlotIndex> *Kills, LiveIntervals &LIS, MachineDominatorTree &MDT, UserValueScopes &UVS) argument
646 const VNInfo *VNI = 0; local
661 const VNInfo *VNI = LI->getVNInfoAt(Idx); local
[all...]
H A DScheduleDAGInstrs.cpp462 VNInfo *VNI = LRQ.valueIn(); local
464 // VNI will be valid because MachineOperand::readsReg() is checked by caller.
465 assert(VNI && "No value to read by operand");
466 MachineInstr *Def = LIS->getInstructionFromIndex(VNI->def);
/external/llvm/include/llvm/CodeGen/
H A DLiveInterval.h225 /// containsValue - Returns true if VNI belongs to this interval.
226 bool containsValue(const VNInfo *VNI) const {
227 return VNI && VNI->id < getNumValNums() && VNI == getValNumInfo(VNI->id);
233 VNInfo *VNI =
235 valnos.push_back(VNI);
236 return VNI;
248 VNInfo *VNI
[all...]
H A DLiveRangeEdit.h147 /// checkRematerializable - Manually add VNI to the list of rematerializable
149 bool checkRematerializable(VNInfo *VNI, const MachineInstr *DefMI,
H A DLiveIntervalAnalysis.h249 /// Returns true if VNI is killed by any PHI-def values in LI.
251 bool hasPHIKill(const LiveInterval &LI, const VNInfo *VNI) const;

Completed in 96 milliseconds