Home
last modified time | relevance | path

Searched refs:LiveRange (Results 1 – 20 of 20) sorted by relevance

/external/v8/src/
Dlithium-allocator.h242 friend class LiveRange; // Assigns to start_. variable
272 friend class LiveRange; variable
277 class LiveRange: public ZoneObject {
281 explicit LiveRange(int id);
285 LiveRange* parent() const { return parent_; } in parent()
286 LiveRange* TopLevel() { return (parent_ == NULL) ? this : parent_; } in TopLevel()
287 LiveRange* next() const { return next_; } in next()
320 void SplitAt(LifetimePosition position, LiveRange* result);
353 bool ShouldBeAllocatedBefore(const LiveRange* other) const;
356 LifetimePosition FirstIntersection(LiveRange* other);
[all …]
Dlithium-allocator.cc125 void LiveRange::Verify() const { in Verify()
135 bool LiveRange::HasOverlap(UseInterval* target) const { in HasOverlap()
152 LiveRange::LiveRange(int id) in LiveRange() function in v8::internal::LiveRange
169 void LiveRange::set_assigned_register(int reg, RegisterKind register_kind) { in set_assigned_register()
177 void LiveRange::MakeSpilled() { in MakeSpilled()
186 bool LiveRange::HasAllocatedSpillOperand() const { in HasAllocatedSpillOperand()
191 void LiveRange::SetSpillOperand(LOperand* operand) { in SetSpillOperand()
199 UsePosition* LiveRange::NextUsePosition(LifetimePosition start) { in NextUsePosition()
210 UsePosition* LiveRange::NextUsePositionRegisterIsBeneficial( in NextUsePositionRegisterIsBeneficial()
220 UsePosition* LiveRange::NextRegisterPosition(LifetimePosition start) { in NextRegisterPosition()
[all …]
Dhydrogen.h49 class LiveRange; variable
1106 void TraceLiveRange(LiveRange* range, const char* type);
Dhydrogen.cc5929 const Vector<LiveRange*>* fixed_d = allocator->fixed_double_live_ranges(); in TraceLiveRanges()
5934 const Vector<LiveRange*>* fixed = allocator->fixed_live_ranges(); in TraceLiveRanges()
5939 const ZoneList<LiveRange*>* live_ranges = allocator->live_ranges(); in TraceLiveRanges()
5946 void HTracer::TraceLiveRange(LiveRange* range, const char* type) { in TraceLiveRange()
/external/llvm/include/llvm/CodeGen/
DLiveInterval.h148 struct LiveRange { struct
153 LiveRange(SlotIndex S, SlotIndex E, VNInfo *V) in LiveRange() argument
172 bool operator<(const LiveRange &LR) const { argument
175 bool operator==(const LiveRange &LR) const {
183 LiveRange(); // DO NOT IMPLEMENT
186 template <> struct isPodLike<LiveRange> { static const bool value = true; };
188 raw_ostream& operator<<(raw_ostream& os, const LiveRange &LR);
191 inline bool operator<(SlotIndex V, const LiveRange &LR) {
195 inline bool operator<(const LiveRange &LR, SlotIndex V) {
205 typedef SmallVector<LiveRange,4> Ranges;
[all …]
DLiveIntervalAnalysis.h155 LiveRange addLiveRangeToEndOfBlock(unsigned reg,
219 LiveRange* findEnteringRange(LiveInterval &li, in findEnteringRange()
229 LiveRange* findExitingRange(LiveInterval &li, in findExitingRange()
/external/llvm/lib/CodeGen/
DSplitter.cpp130 LiveRange *preHeaderRange = in applyIncoming()
151 getNewLI()->addRange(LiveRange(copyDefIdx, in applyIncoming()
167 LiveRange *outRange = ls.lis->findEnteringRange(li, outBlock); in applyOutgoing()
190 getNewLI()->addRange(LiveRange(ls.lis->getMBBStartIdx(outBlock), in applyOutgoing()
196 void copyRange(LiveRange &lr) { in copyRange()
203 LiveRange loopRange(lsr.second.first, lsr.second.second, in copyRange()
218 LiveRange *defRange = in copyRanges()
224 LiveRange *useRange = in copyRanges()
236 LiveRange *enteringRange = in copyRanges()
526 li.addRange(LiveRange(lis->getMBBStartIdx(preHeader), in insertPreHeader()
[all …]
DLiveInterval.cpp249 LiveInterval::addRangeFrom(LiveRange LR, iterator From) { in addRangeFrom()
359 ranges.insert(llvm::next(I), LiveRange(End, OldEnd, ValNo)); in removeRange()
483 LiveRange Tmp = *I; in MergeRangesInAsValue()
504 LiveRange Tmp = *I; in MergeValueInAsValue()
587 const LiveRange &LR = RHS.ranges[i]; in Copy()
588 addRange(LiveRange(LR.start, LR.end, getValNumInfo(LR.valno->id))); in Copy()
622 raw_ostream& llvm::operator<<(raw_ostream& os, const LiveRange &LR) { in operator <<()
626 void LiveRange::dump() const { in dump()
675 void LiveRange::print(raw_ostream &os) const { in print()
DSplitter.h26 struct LiveRange;
83 std::pair<bool, SlotPair> getLoopSubRange(const LiveRange &lr,
DLiveIntervalAnalysis.cpp157 const LiveRange &range = li.ranges.front(); in conflictsWithPhysReg()
275 const LiveRange *OldLR = in isPartialRedef()
335 LiveRange LR(defIndex, killIdx, ValNo); in handleVirtualRegisterDef()
346 LiveRange NewLR(defIndex, getMBBEndIdx(mbb), ValNo); in handleVirtualRegisterDef()
365 LiveRange LR(getMBBStartIdx(aliveBlock), getMBBEndIdx(aliveBlock), ValNo); in handleVirtualRegisterDef()
386 LiveRange LR(Start, killIdx, ValNo); in handleVirtualRegisterDef()
418 const LiveRange *OldLR = in handleVirtualRegisterDef()
440 LiveRange LR(DefIndex, RedefIndex, ValNo); in handleVirtualRegisterDef()
447 interval.addRange(LiveRange(RedefIndex, RedefIndex.getStoreIndex(), in handleVirtualRegisterDef()
470 LiveRange LR(defIndex, killIndex, ValNo); in handleVirtualRegisterDef()
[all …]
DStrongPHIElimination.cpp350 LiveRange *DestLR = DestLI.begin(); in runOnMachineFunction()
358 LiveRange NewLR(DestLR->start, DestLR->end, NewVNI); in runOnMachineFunction()
757 DestLI.addRange(LiveRange(MBBStartIndex, in InsertCopiesForPHI()
784 CopyLI.addRange(LiveRange(MBBStartIndex, in InsertCopiesForPHI()
812 LiveRange OldLR = *LRI; in MergeLIsAndRename()
821 LiveRange LR(OldLR.start, OldLR.end, NewVN); in MergeLIsAndRename()
DSplitKit.cpp353 LI->addRange(LiveRange(Def, Def.getNextSlot(), OldVNI)); in defValue()
360 LI->addRange(LiveRange(Def, Def.getNextSlot(), VNI)); in defValue()
376 Edit->get(RegIdx)->addRange(LiveRange(Def, Def.getNextSlot(), VNI)); in markComplexMapped()
409 LI->addRange(LiveRange(Start, I->Kill, VNI)); in extendRange()
412 LI->addRange(LiveRange(Start, LIS.getMBBEndIdx(MBB), VNI)); in extendRange()
555 LI->addRange(LiveRange(Start, I->Kill, VNI)); in updateSSA()
557 LI->addRange(LiveRange(Start, LIS.getMBBEndIdx(MBB), VNI)); in updateSSA()
586 LI->addRange(LiveRange(Start, I->Kill.isValid() ? in updateSSA()
817 LI->addRange(LiveRange(Start, End, VNI)); in transferValues()
DSpiller.cpp148 newLI->addRange(LiveRange(loadIndex, endIndex, loadVNI)); in trivialSpillEverywhere()
162 newLI->addRange(LiveRange(beginIndex, storeIndex, storeVNI)); in trivialSpillEverywhere()
DRegisterCoalescer.cpp396 IntB.addRange(LiveRange(FillerStart, FillerEnd, BValNo)); in AdjustCopiesBackFrom()
405 SRLI.addRange(LiveRange(FillerStart, FillerEnd, in AdjustCopiesBackFrom()
662 IntB.addRange(LiveRange(AI->start, AI->end, ValNo)); in RemoveCopyByCommutingDef()
875 if (const LiveRange *LR = LI.getLiveRangeContaining(DefIdx)) in RemoveCopyFlag()
885 if (const LiveRange *LR = LI.getLiveRangeContaining(DefIdx)) in RemoveCopyFlag()
1204 LiveRange *LR, in RegistersDefinedFromSameValue()
1332 LiveRange *lr = RHS.getLiveRangeContaining(VNI->def.getPrevSlot()); in JoinIntervals()
1359 LiveRange *lr = LHS.getLiveRangeContaining(VNI->def.getPrevSlot()); in JoinIntervals()
DLiveIntervalUnion.h38 overlap(const LiveRange &VRSeg, in overlap()
DInlineSpiller.cpp713 NewLI.addRange(LiveRange(DefIdx, UseIdx.getDefIndex(), DefVNI)); in reMaterializeFor()
859 NewLI.addRange(LiveRange(LoadIdx, Idx, LoadVNI)); in insertReload()
874 NewLI.addRange(LiveRange(Idx, StoreIdx, StoreVNI)); in insertSpill()
DRegAllocLinearScan.cpp457 const LiveRange &range = cur.ranges.front(); in attemptTrivialCoalescing()
662 const LiveRange &LR = *I; in linearScan()
DRenderMachineFunction.cpp472 LiveRange *lr = &*lrItr; in resetPressureAndLiveStates()
DLiveDebugVariables.cpp463 LiveRange *Range = LI->getLiveRangeContaining(Start); in extendDef()
/external/llvm/test/CodeGen/Generic/
DbadCallArgLRLLVM.ll6 ; so no LiveRange has been created for its return value.