/external/v8/src/ |
lithium-allocator.h | 242 friend class LiveRange; // Assigns to start_. 272 friend class LiveRange; 277 class LiveRange: public ZoneObject { 281 explicit LiveRange(int id); 285 LiveRange* parent() const { return parent_; } 286 LiveRange* TopLevel() { return (parent_ == NULL) ? this : parent_; } 287 LiveRange* next() const { return next_; } 320 void SplitAt(LifetimePosition position, LiveRange* result); 353 bool ShouldBeAllocatedBefore(const LiveRange* other) const; 356 LifetimePosition FirstIntersection(LiveRange* other) [all...] |
lithium-allocator.cc | 125 void LiveRange::Verify() const { 135 bool LiveRange::HasOverlap(UseInterval* target) const { 152 LiveRange::LiveRange(int id) 169 void LiveRange::set_assigned_register(int reg, RegisterKind register_kind) { 177 void LiveRange::MakeSpilled() { 186 bool LiveRange::HasAllocatedSpillOperand() const { 191 void LiveRange::SetSpillOperand(LOperand* operand) { 199 UsePosition* LiveRange::NextUsePosition(LifetimePosition start) { 210 UsePosition* LiveRange::NextUsePositionRegisterIsBeneficial [all...] |
hydrogen.h | 49 class LiveRange; [all...] |
hydrogen.cc | [all...] |
/external/llvm/include/llvm/CodeGen/ |
LiveInterval.h | 10 // This file implements the LiveRange and LiveInterval classes. Given some 16 // individual range is represented as an instance of LiveRange, and the whole 146 /// LiveRange structure - This represents a simple register range in the 149 struct LiveRange { 154 LiveRange(SlotIndex S, SlotIndex E, VNInfo *V) 173 bool operator<(const LiveRange &LR) const { 176 bool operator==(const LiveRange &LR) const { 184 LiveRange(); // DO NOT IMPLEMENT 187 template <> struct isPodLike<LiveRange> { static const bool value = true; }; 189 raw_ostream& operator<<(raw_ostream& os, const LiveRange &LR) [all...] |
LiveIntervalAnalysis.h | 155 LiveRange addLiveRangeToEndOfBlock(unsigned reg, 219 LiveRange* findEnteringRange(LiveInterval &li, 229 LiveRange* findExitingRange(LiveInterval &li,
|
/external/llvm/lib/CodeGen/ |
Splitter.h | 26 struct LiveRange; 83 std::pair<bool, SlotPair> getLoopSubRange(const LiveRange &lr,
|
LiveRangeCalc.cpp | 44 I->LI->addRange(LiveRange(Start, I->Kill, VNI)); 46 I->LI->addRange(LiveRange(Start, End, VNI)); 248 I->LI->addRange(LiveRange(Start, I->Kill, VNI)); 250 I->LI->addRange(LiveRange(Start, End, VNI));
|
Splitter.cpp | 130 LiveRange *preHeaderRange = 151 getNewLI()->addRange(LiveRange(copyDefIdx, 167 LiveRange *outRange = ls.lis->findEnteringRange(li, outBlock); 190 getNewLI()->addRange(LiveRange(ls.lis->getMBBStartIdx(outBlock), 196 void copyRange(LiveRange &lr) { 203 LiveRange loopRange(lsr.second.first, lsr.second.second, 218 LiveRange *defRange = 224 LiveRange *useRange = 236 LiveRange *enteringRange = 526 li.addRange(LiveRange(lis->getMBBStartIdx(preHeader) [all...] |
LiveInterval.cpp | 10 // This file implements the LiveRange and LiveInterval classes. Given some 16 // individual range is represented as an instance of LiveRange, and the whole 228 LiveInterval::addRangeFrom(LiveRange LR, iterator From) { 294 /// the range must be in a single LiveRange in its entirety. 297 // Find the LiveRange containing this span. 302 // If the span we are removing is at the start of the LiveRange, adjust it. 320 ranges.erase(I); // Removed the whole LiveRange. 326 // Otherwise if the span we are removing is at the end of the LiveRange, 333 // Otherwise, we are splitting the LiveRange into two pieces. 338 ranges.insert(llvm::next(I), LiveRange(End, OldEnd, ValNo)) [all...] |
LiveIntervalUnion.h | 38 overlap(const LiveRange &VRSeg,
|
LiveIntervalAnalysis.cpp | 157 const LiveRange &range = li.ranges.front(); 275 const LiveRange *OldLR = 346 LiveRange LR(defIndex, killIdx, ValNo); 357 LiveRange NewLR(defIndex, getMBBEndIdx(mbb), ValNo); 376 LiveRange LR(getMBBStartIdx(aliveBlock), getMBBEndIdx(aliveBlock), ValNo); 397 LiveRange LR(Start, killIdx, ValNo); 429 const LiveRange *OldLR = 451 LiveRange LR(DefIndex, RedefIndex, ValNo); 458 interval.addRange(LiveRange(RedefIndex, RedefIndex.getStoreIndex(), 481 LiveRange LR(defIndex, killIndex, ValNo) [all...] |
Spiller.cpp | 148 newLI->addRange(LiveRange(loadIndex, endIndex, loadVNI)); 162 newLI->addRange(LiveRange(beginIndex, storeIndex, storeVNI));
|
StrongPHIElimination.cpp | 351 LiveRange *DestLR = DestLI.begin(); 359 LiveRange NewLR(DestLR->start, DestLR->end, NewVNI); 758 DestLI.addRange(LiveRange(MBBStartIndex, 785 CopyLI.addRange(LiveRange(MBBStartIndex, 813 LiveRange OldLR = *LRI; 822 LiveRange LR(OldLR.start, OldLR.end, NewVN); [all...] |
RegisterCoalescer.cpp | 473 // Get the LiveRange in IntB that this value number starts with. 517 // Okay, we can merge them. We need to insert a new liverange: 520 IntB.addRange(LiveRange(FillerStart, FillerEnd, BValNo)); 529 SRLI.addRange(LiveRange(FillerStart, FillerEnd, 786 IntB.addRange(LiveRange(AI->start, AI->end, ValNo)); [all...] |
InlineSpiller.cpp | 581 LiveRange *SrcLR = SrcLI.getLiveRangeContaining(VNI->def.getUseIndex()); [all...] |
SplitKit.cpp | 194 assert(LVI->start == LVI->valno->def && "Dangling LiveRange start"); 225 // A LiveRange that starts in the middle of the block must be a def. 226 assert(LVI->start == LVI->valno->def && "Dangling LiveRange start"); 369 LI->addRange(LiveRange(Def, Def.getNextSlot(), OldVNI)); 376 LI->addRange(LiveRange(Def, Def.getNextSlot(), VNI)); 396 Edit->get(RegIdx)->addRange(LiveRange(Def, Def.getNextSlot(), VNI)); 839 LI->addRange(LiveRange(Start, End, VNI)); [all...] |
RegAllocLinearScan.cpp | 456 const LiveRange &range = cur.ranges.front(); 661 const LiveRange &LR = *I; [all...] |
LiveDebugVariables.cpp | 501 LiveRange *Range = LI->getLiveRangeContaining(Start); [all...] |
RenderMachineFunction.cpp | 472 LiveRange *lr = &*lrItr; [all...] |