Lines Matching refs:LiveRange
314 class V8_EXPORT_PRIVATE LiveRange : public NON_EXPORTED_BASE(ZoneObject) { in NON_EXPORTED_BASE()
323 LiveRange* next() const { return next_; } in NON_EXPORTED_BASE()
387 UsePosition* DetachAt(LifetimePosition position, LiveRange* result, in NON_EXPORTED_BASE()
392 LiveRange* SplitAt(LifetimePosition position, Zone* zone); in NON_EXPORTED_BASE()
416 bool ShouldBeAllocatedBefore(const LiveRange* other) const; in NON_EXPORTED_BASE()
419 LifetimePosition FirstIntersection(LiveRange* other) const; in NON_EXPORTED_BASE()
436 explicit LiveRange(int relative_id, MachineRepresentation rep, in NON_EXPORTED_BASE()
461 LiveRange* next_; in NON_EXPORTED_BASE()
471 DISALLOW_COPY_AND_ASSIGN(LiveRange); in NON_EXPORTED_BASE()
475 class V8_EXPORT_PRIVATE TopLevelLiveRange final : public LiveRange {
667 const LiveRange* range_;
977 LifetimePosition GetSplitPositionForInstruction(const LiveRange* range,
992 LiveRange* SplitRangeAt(LiveRange* range, LifetimePosition pos);
994 bool CanProcessRange(LiveRange* range) const { in CanProcessRange()
1000 LiveRange* SplitBetween(LiveRange* range, LifetimePosition start,
1009 void Spill(LiveRange* range);
1013 LifetimePosition FindOptimalSpillingPos(LiveRange* range,
1044 bool operator()(LiveRange* a, LiveRange* b) { in operator()
1048 using LiveRangeQueue = ZoneMultiset<LiveRange*, LiveRangeOrdering>;
1050 ZoneVector<LiveRange*>& active_live_ranges() { return active_live_ranges_; } in active_live_ranges()
1051 ZoneVector<LiveRange*>& inactive_live_ranges() { in inactive_live_ranges()
1055 void SetLiveRangeAssignedRegister(LiveRange* range, int reg);
1058 void AddToActive(LiveRange* range);
1059 void AddToInactive(LiveRange* range);
1060 void AddToUnhandled(LiveRange* range);
1061 void ActiveToHandled(LiveRange* range);
1062 void ActiveToInactive(LiveRange* range);
1063 void InactiveToHandled(LiveRange* range);
1064 void InactiveToActive(LiveRange* range);
1068 bool TryAllocateFreeReg(LiveRange* range,
1070 bool TryAllocatePreferredReg(LiveRange* range,
1074 void FindFreeRegistersForRange(LiveRange* range,
1076 void ProcessCurrentRange(LiveRange* current);
1077 void AllocateBlockedReg(LiveRange* range);
1078 bool TrySplitAndSpillSplinter(LiveRange* range);
1081 void SpillAfter(LiveRange* range, LifetimePosition pos);
1084 void SpillBetween(LiveRange* range, LifetimePosition start,
1089 void SpillBetweenUntil(LiveRange* range, LifetimePosition start,
1092 void SplitAndSpillIntersecting(LiveRange* range);
1095 ZoneVector<LiveRange*> active_live_ranges_;
1096 ZoneVector<LiveRange*> inactive_live_ranges_;