/external/llvm/include/llvm/CodeGen/ |
D | LiveInterval.h | 154 class LiveRange { 222 LiveRange(bool UseSegmentSet = false) 228 LiveRange(const LiveRange &Other, BumpPtrAllocator &Allocator) { in LiveRange() function 273 return const_cast<LiveRange*>(this)->find(Pos); in find() 344 void MergeSegmentsInAsValue(const LiveRange &RHS, VNInfo *LHSValNo); 351 void MergeValueInAsValue(const LiveRange &RHS, 420 bool overlaps(const LiveRange &other) const { in overlaps() 431 bool overlaps(const LiveRange &Other, const CoalescerPair &CP, 441 bool overlapsFrom(const LiveRange &Other, const_iterator I) const; 447 bool covers(const LiveRange &Other) const; [all …]
|
D | LiveIntervalAnalysis.h | 97 SmallVector<LiveRange*, 0> RegUnitRanges; 174 void extendToIndices(LiveRange &LR, ArrayRef<SlotIndex> Indices); 184 void pruneValue(LiveRange &LR, SlotIndex Kill, 221 bool isLiveInToMBB(const LiveRange &LR, in isLiveInToMBB() 226 bool isLiveOutOfMBB(const LiveRange &LR, in isLiveOutOfMBB() 374 LiveRange &getRegUnit(unsigned Unit) { in getRegUnit() 375 LiveRange *LR = RegUnitRanges[Unit]; in getRegUnit() 379 RegUnitRanges[Unit] = LR = new LiveRange(UseSegmentSetForPhysRegs); in getRegUnit() 387 LiveRange *getCachedRegUnit(unsigned Unit) { in getCachedRegUnit() 391 const LiveRange *getCachedRegUnit(unsigned Unit) const { in getCachedRegUnit() [all …]
|
/external/swiftshader/third_party/llvm-7.0/llvm/include/llvm/CodeGen/ |
D | LiveInterval.h | 157 class LiveRange { 227 LiveRange(bool UseSegmentSet = false) 233 LiveRange(const LiveRange &Other, BumpPtrAllocator &Allocator) { in LiveRange() function 240 void assign(const LiveRange &Other, BumpPtrAllocator &Allocator) { in assign() 285 return const_cast<LiveRange*>(this)->find(Pos); in find() 360 void MergeSegmentsInAsValue(const LiveRange &RHS, VNInfo *LHSValNo); 367 void MergeValueInAsValue(const LiveRange &RHS, 436 bool overlaps(const LiveRange &other) const { in overlaps() 447 bool overlaps(const LiveRange &Other, const CoalescerPair &CP, 457 bool overlapsFrom(const LiveRange &Other, const_iterator StartPos) const; [all …]
|
D | LiveIntervals.h | 97 SmallVector<LiveRange*, 0> RegUnitRanges; 184 void extendToIndices(LiveRange &LR, ArrayRef<SlotIndex> Indices, 187 void extendToIndices(LiveRange &LR, ArrayRef<SlotIndex> Indices) { in extendToIndices() 198 void pruneValue(LiveRange &LR, SlotIndex Kill, 245 bool isLiveInToMBB(const LiveRange &LR, in isLiveInToMBB() 250 bool isLiveOutOfMBB(const LiveRange &LR, in isLiveOutOfMBB() 393 LiveRange &getRegUnit(unsigned Unit) { in getRegUnit() 394 LiveRange *LR = RegUnitRanges[Unit]; in getRegUnit() 398 RegUnitRanges[Unit] = LR = new LiveRange(UseSegmentSetForPhysRegs); in getRegUnit() 406 LiveRange *getCachedRegUnit(unsigned Unit) { in getCachedRegUnit() [all …]
|
D | LiveIntervalUnion.h | 91 void unify(LiveInterval &VirtReg, const LiveRange &Range); 94 void extract(LiveInterval &VirtReg, const LiveRange &Range); 111 const LiveRange *LR = nullptr; 112 LiveRange::const_iterator LRI; ///< current position in LR 120 void reset(unsigned NewUserTag, const LiveRange &NewLR, in reset() 133 Query(const LiveRange &LR, const LiveIntervalUnion &LIU): in Query() 138 void init(unsigned NewUserTag, const LiveRange &NewLR, in init()
|
/external/llvm/lib/CodeGen/ |
D | LiveInterval.cpp | 53 LiveRange *LR; 56 CalcLiveRangeUtilBase(LiveRange *LR) : LR(LR) {} in CalcLiveRangeUtilBase() 59 typedef LiveRange::Segment Segment; 235 typedef CalcLiveRangeUtilBase<CalcLiveRangeUtilVector, LiveRange::iterator, 236 LiveRange::Segments> CalcLiveRangeUtilVectorBase; 240 CalcLiveRangeUtilVector(LiveRange *LR) : CalcLiveRangeUtilVectorBase(LR) {} in CalcLiveRangeUtilVector() 245 LiveRange::Segments &segmentsColl() { return LR->segments; } in segmentsColl() 263 LiveRange::SegmentSet::iterator, 264 LiveRange::SegmentSet> CalcLiveRangeUtilSetBase; 268 CalcLiveRangeUtilSet(LiveRange *LR) : CalcLiveRangeUtilSetBase(LR) {} in CalcLiveRangeUtilSet() [all …]
|
D | LiveIntervalAnalysis.cpp | 151 if (LiveRange *LR = RegUnitRanges[i]) in print() 258 void LiveIntervals::computeRegUnitRange(LiveRange &LR, unsigned Unit) { in computeRegUnitRange() 318 LiveRange *LR = RegUnitRanges[Unit]; in computeLiveInRegUnits() 321 LR = RegUnitRanges[Unit] = new LiveRange(UseSegmentSetForPhysRegs); in computeLiveInRegUnits() 341 static void createSegmentsForValues(LiveRange &LR, in createSegmentsForValues() 347 LR.addSegment(LiveRange::Segment(Def, Def.getDeadSlot(), VNI)); in createSegmentsForValues() 353 static void extendSegmentsToUses(LiveRange &LR, const SlotIndexes &Indexes, in extendSegmentsToUses() 355 const LiveRange &OldRange) { in extendSegmentsToUses() 391 LR.addSegment(LiveRange::Segment(BlockStart, Idx, VNI)); in extendSegmentsToUses() 452 LiveRange NewLR; in shrinkToUses() [all …]
|
D | LiveRangeCalc.h | 80 LiveRange &LR; 94 LiveInBlock(LiveRange &LR, MachineDomTreeNode *node, SlotIndex kill) in LiveInBlock() 114 bool findReachingDefs(LiveRange &LR, MachineBasicBlock &UseMBB, 132 void extendToUses(LiveRange &LR, unsigned Reg, LaneBitmask LaneMask); 172 void extend(LiveRange &LR, SlotIndex Use, unsigned PhysReg = 0); 177 void createDeadDefs(LiveRange &LR, unsigned Reg); 183 void extendToUses(LiveRange &LR, unsigned PhysReg) { in extendToUses() 230 void addLiveInBlock(LiveRange &LR,
|
D | SafeStackColoring.h | 49 struct LiveRange { struct 53 bool Overlaps(const LiveRange &Other) const { in Overlaps() argument 56 void Join(const LiveRange &Other) { bv |= Other.bv; } in Join() argument 78 SmallVector<LiveRange, 8> LiveRanges; 112 const LiveRange &getLiveRange(AllocaInst *AI); 116 LiveRange getFullLiveRange() { in getFullLiveRange() 118 LiveRange R; in getFullLiveRange() 142 const StackColoring::LiveRange &R) {
|
D | SafeStackLayout.h | 25 StackColoring::LiveRange Range; 27 const StackColoring::LiveRange &Range) in StackRegion() 36 StackColoring::LiveRange Range; 49 const StackColoring::LiveRange &Range);
|
D | LiveIntervalUnion.cpp | 29 void LiveIntervalUnion::unify(LiveInterval &VirtReg, const LiveRange &Range) { in unify() 35 LiveRange::const_iterator RegPos = Range.begin(); in unify() 36 LiveRange::const_iterator RegEnd = Range.end(); in unify() 56 void LiveIntervalUnion::extract(LiveInterval &VirtReg, const LiveRange &Range) { in extract() 62 LiveRange::const_iterator RegPos = Range.begin(); in extract() 63 LiveRange::const_iterator RegEnd = Range.end(); in extract()
|
D | LiveRegMatrix.cpp | 104 const LiveRange &Range) { in assign() 121 const LiveRange &Range) { in unassign() 164 const LiveRange &Range) { in checkRegUnitInterference() 165 const LiveRange &UnitRange = LIS->getRegUnit(Unit); in checkRegUnitInterference()
|
/external/swiftshader/third_party/llvm-7.0/llvm/lib/CodeGen/ |
D | LiveInterval.cpp | 68 LiveRange *LR; 71 CalcLiveRangeUtilBase(LiveRange *LR) : LR(LR) {} in CalcLiveRangeUtilBase() 74 using Segment = LiveRange::Segment; 284 CalcLiveRangeUtilBase<CalcLiveRangeUtilVector, LiveRange::iterator, 285 LiveRange::Segments>; 289 CalcLiveRangeUtilVector(LiveRange *LR) : CalcLiveRangeUtilVectorBase(LR) {} in CalcLiveRangeUtilVector() 294 LiveRange::Segments &segmentsColl() { return LR->segments; } in segmentsColl() 312 CalcLiveRangeUtilBase<CalcLiveRangeUtilSet, LiveRange::SegmentSet::iterator, 313 LiveRange::SegmentSet>; 317 CalcLiveRangeUtilSet(LiveRange *LR) : CalcLiveRangeUtilSetBase(LR) {} in CalcLiveRangeUtilSet() [all …]
|
D | LiveIntervals.cpp | 118 for (LiveRange *LR : RegUnitRanges) in releaseMemory() 160 if (LiveRange *LR = RegUnitRanges[Unit]) in print() 264 void LiveIntervals::computeRegUnitRange(LiveRange &LR, unsigned Unit) { in computeRegUnitRange() 331 LiveRange *LR = RegUnitRanges[Unit]; in computeLiveInRegUnits() 334 LR = RegUnitRanges[Unit] = new LiveRange(UseSegmentSetForPhysRegs); in computeLiveInRegUnits() 351 static void createSegmentsForValues(LiveRange &LR, in createSegmentsForValues() 357 LR.addSegment(LiveRange::Segment(Def, Def.getDeadSlot(), VNI)); in createSegmentsForValues() 361 void LiveIntervals::extendSegmentsToUses(LiveRange &Segments, in extendSegmentsToUses() 370 -> const LiveRange& { in extendSegmentsToUses() 383 const LiveRange &OldRange = getSubRange(LI, LaneMask); in extendSegmentsToUses() [all …]
|
D | LiveRangeCalc.h | 76 using EntryInfoMap = DenseMap<LiveRange *, std::pair<BitVector, BitVector>>; 103 LiveRange &LR; 117 LiveInBlock(LiveRange &LR, MachineDomTreeNode *node, SlotIndex kill) in LiveInBlock() 129 bool isDefOnEntry(LiveRange &LR, ArrayRef<SlotIndex> Undefs, 149 bool findReachingDefs(LiveRange &LR, MachineBasicBlock &UseMBB, 174 void extendToUses(LiveRange &LR, unsigned Reg, LaneBitmask LaneMask, 212 void extend(LiveRange &LR, SlotIndex Use, unsigned PhysReg, 218 void createDeadDefs(LiveRange &LR, unsigned Reg); 224 void extendToUses(LiveRange &LR, unsigned PhysReg) { in extendToUses() 271 void addLiveInBlock(LiveRange &LR,
|
D | SafeStackColoring.h | 59 struct LiveRange { struct 65 bool Overlaps(const LiveRange &Other) const { in Overlaps() argument 69 void Join(const LiveRange &Other) { bv |= Other.bv; } in Join() argument 94 SmallVector<LiveRange, 8> LiveRanges; 128 const LiveRange &getLiveRange(AllocaInst *AI); 132 LiveRange getFullLiveRange() { in getFullLiveRange() 134 LiveRange R; in getFullLiveRange() 158 const StackColoring::LiveRange &R) {
|
D | LiveRegMatrix.cpp | 111 TRI, VirtReg, PhysReg, [&](unsigned Unit, const LiveRange &Range) { in assign() 128 [&](unsigned Unit, const LiveRange &Range) { in unassign() 171 const LiveRange &Range) { in checkRegUnitInterference() 172 const LiveRange &UnitRange = LIS->getRegUnit(Unit); in checkRegUnitInterference() 178 LiveIntervalUnion::Query &LiveRegMatrix::query(const LiveRange &LR, in query() 200 [&](unsigned Unit, const LiveRange &LR) { in checkInterference() 213 LiveRange::Segment Seg(Start, End, &valno); in checkInterference() 214 LiveRange LR; in checkInterference()
|
D | LiveIntervalUnion.cpp | 30 void LiveIntervalUnion::unify(LiveInterval &VirtReg, const LiveRange &Range) { in unify() 36 LiveRange::const_iterator RegPos = Range.begin(); in unify() 37 LiveRange::const_iterator RegEnd = Range.end(); in unify() 57 void LiveIntervalUnion::extract(LiveInterval &VirtReg, const LiveRange &Range) { in extract() 63 LiveRange::const_iterator RegPos = Range.begin(); in extract() 64 LiveRange::const_iterator RegEnd = Range.end(); in extract() 140 LiveRange::const_iterator LREnd = LR->end(); in collectInterferingVRegs()
|
D | SafeStackLayout.h | 31 StackColoring::LiveRange Range; 34 const StackColoring::LiveRange &Range) in StackRegion() 44 StackColoring::LiveRange Range; 60 const StackColoring::LiveRange &Range);
|
D | LiveRangeCalc.cpp | 66 LiveRange &LR, const MachineOperand &MO) { in createDeadDef() 133 LiveRange &MainRange = LI; in constructMainRangeFromSubranges() 147 void LiveRangeCalc::createDeadDefs(LiveRange &LR, unsigned Reg) { in createDeadDefs() 156 void LiveRangeCalc::extendToUses(LiveRange &LR, unsigned Reg, LaneBitmask Mask, in extendToUses() 241 void LiveRangeCalc::extend(LiveRange &LR, SlotIndex Use, unsigned PhysReg, in extend() 276 bool LiveRangeCalc::isDefOnEntry(LiveRange &LR, ArrayRef<SlotIndex> Undefs, in isDefOnEntry() 313 LiveRange::iterator UB = std::upper_bound(LR.begin(), LR.end(), in isDefOnEntry() 316 LiveRange::Segment &Seg = *std::prev(UB); in isDefOnEntry() 346 bool LiveRangeCalc::findReachingDefs(LiveRange &LR, MachineBasicBlock &UseMBB, in findReachingDefs() 554 LiveRange &LR = I.LR; in updateSSA()
|
/external/v8/src/compiler/ |
D | register-allocator.h | 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 { [all …]
|
D | register-allocator.cc | 29 void RemoveElement(ZoneVector<LiveRange*>* v, LiveRange* range) { in RemoveElement() 101 explicit LiveRangeBound(LiveRange* range, bool skip) in LiveRangeBound() 110 LiveRange* const range_; 121 LiveRange* cur_cover_; 122 LiveRange* pred_cover_; 140 for (LiveRange *i = range; i != nullptr; i = i->next(), ++curr) { in Initialize() 396 LiveRange::LiveRange(int relative_id, MachineRepresentation rep, in LiveRange() function in v8::internal::compiler::LiveRange 415 void LiveRange::VerifyPositions() const { in VerifyPositions() 430 void LiveRange::VerifyIntervals() const { in VerifyIntervals() 442 void LiveRange::set_assigned_register(int reg) { in set_assigned_register() [all …]
|
/external/swiftshader/third_party/LLVM/include/llvm/CodeGen/ |
D | LiveInterval.h | 149 struct LiveRange { struct 154 LiveRange(SlotIndex S, SlotIndex E, VNInfo *V) in LiveRange() argument 173 bool operator<(const LiveRange &LR) const { argument 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); 192 inline bool operator<(SlotIndex V, const LiveRange &LR) { 196 inline bool operator<(const LiveRange &LR, SlotIndex V) { 206 typedef SmallVector<LiveRange,4> Ranges; [all …]
|
/external/swiftshader/third_party/subzero/src/ |
D | IceOperand.cpp | 104 void LiveRange::addSegment(InstNumberT Start, InstNumberT End, CfgNode *Node) { in addSegment() 127 bool LiveRange::endsBefore(const LiveRange &Other) const { in endsBefore() 137 bool LiveRange::overlaps(const LiveRange &Other, bool UseTrimmed) const { in overlaps() 156 bool LiveRange::overlapsInst(InstNumberT OtherBegin, bool UseTrimmed) const { in overlapsInst() 174 LiveRange Temp; in overlapsInst() 187 bool LiveRange::containsValue(InstNumberT Value, bool IsDest) const { in containsValue() 196 void LiveRange::trim(InstNumberT Lower) { in trim() 632 void LiveRange::dump(Ostream &Str) const { in dump() 644 Ostream &operator<<(Ostream &Str, const LiveRange &L) { in operator <<()
|
/external/swiftshader/third_party/LLVM/lib/CodeGen/ |
D | Splitter.cpp | 130 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 …]
|