/external/swiftshader/third_party/LLVM/include/llvm/CodeGen/ |
D | SlotIndexes.h | 82 class SlotIndex { 84 friend struct DenseMapInfo<SlotIndex>; 90 SlotIndex(IndexListEntry *entry, unsigned slot) 107 static inline unsigned getHashValue(const SlotIndex &v) { 119 static inline SlotIndex getEmptyKey() { 120 return SlotIndex(0, 1); 123 static inline SlotIndex getTombstoneKey() { 124 return SlotIndex(0, 2); 128 SlotIndex() : lie(0, 0) {} 131 SlotIndex(const SlotIndex &li, Slot s) [all …]
|
D | LiveInterval.h | 61 SlotIndex def; 64 VNInfo(unsigned i, SlotIndex d, MachineInstr *c) in VNInfo() 150 SlotIndex start; // Start point of the interval (inclusive) 151 SlotIndex end; // End point of the interval (exclusive) 154 LiveRange(SlotIndex S, SlotIndex E, VNInfo *V) in LiveRange() 162 bool contains(SlotIndex I) const { in contains() 168 bool containsRange(SlotIndex S, SlotIndex E) const { in containsRange() 192 inline bool operator<(SlotIndex V, const LiveRange &LR) { 196 inline bool operator<(const LiveRange &LR, SlotIndex V) { 249 iterator advanceTo(iterator I, SlotIndex Pos) { [all …]
|
D | LiveIntervalAnalysis.h | 180 SlotIndex getZeroIndex() const { in getZeroIndex() 184 SlotIndex getInvalidIndex() const { in getInvalidIndex() 195 SlotIndex getInstructionIndex(const MachineInstr *instr) const { in getInstructionIndex() 200 MachineInstr* getInstructionFromIndex(SlotIndex index) const { in getInstructionFromIndex() 205 SlotIndex getMBBStartIdx(const MachineBasicBlock *mbb) const { in getMBBStartIdx() 210 SlotIndex getMBBEndIdx(const MachineBasicBlock *mbb) const { in getMBBEndIdx() 234 MachineBasicBlock* getMBBFromIndex(SlotIndex index) const { in getMBBFromIndex() 238 SlotIndex InsertMachineInstrInMaps(MachineInstr *MI) { in InsertMachineInstrInMaps() 254 bool findLiveInMBBs(SlotIndex Start, SlotIndex End, in findLiveInMBBs() 332 SlotIndex MIIdx, [all …]
|
/external/swiftshader/third_party/llvm-7.0/llvm/include/llvm/CodeGen/ |
D | SlotIndexes.h | 84 class SlotIndex { 113 SlotIndex(IndexListEntry *entry, unsigned slot) 142 SlotIndex() = default; 145 SlotIndex(const SlotIndex &li, Slot s) : lie(li.listEntry(), unsigned(s)) { 166 bool operator==(SlotIndex other) const { 170 bool operator!=(SlotIndex other) const { 176 bool operator<(SlotIndex other) const { 181 bool operator<=(SlotIndex other) const { 187 bool operator>(SlotIndex other) const { 193 bool operator>=(SlotIndex other) const { [all …]
|
D | LiveInterval.h | 61 SlotIndex def; 64 VNInfo(unsigned i, SlotIndex d) : id(i), def(d) {} in VNInfo() 84 void markUnused() { def = SlotIndex(); } in markUnused() 93 const SlotIndex EndPoint; 97 LiveQueryResult(VNInfo *EarlyVal, VNInfo *LateVal, SlotIndex EndPoint, in LiveQueryResult() 147 SlotIndex endPoint() const { in endPoint() 163 SlotIndex start; // Start point of the interval (inclusive) 164 SlotIndex end; // End point of the interval (exclusive) 170 Segment(SlotIndex S, SlotIndex E, VNInfo *V) in Segment() 176 bool contains(SlotIndex I) const { in contains() [all …]
|
D | LiveIntervals.h | 73 SmallVector<SlotIndex, 8> RegMaskSlots; 184 void extendToIndices(LiveRange &LR, ArrayRef<SlotIndex> Indices, 185 ArrayRef<SlotIndex> Undefs); 187 void extendToIndices(LiveRange &LR, ArrayRef<SlotIndex> Indices) { in extendToIndices() 198 void pruneValue(LiveRange &LR, SlotIndex Kill, 199 SmallVectorImpl<SlotIndex> *EndPoints); 205 LLVM_ATTRIBUTE_UNUSED void pruneValue(LiveInterval &, SlotIndex, in pruneValue() argument 206 SmallVectorImpl<SlotIndex> *) { in pruneValue() argument 226 SlotIndex getInstructionIndex(const MachineInstr &Instr) const { in getInstructionIndex() 231 MachineInstr* getInstructionFromIndex(SlotIndex index) const { in getInstructionFromIndex() [all …]
|
/external/llvm/include/llvm/CodeGen/ |
D | SlotIndexes.h | 91 class SlotIndex { 120 SlotIndex(IndexListEntry *entry, unsigned slot) 149 SlotIndex() : lie(nullptr, 0) {} 152 SlotIndex(const SlotIndex &li, Slot s) : lie(li.listEntry(), unsigned(s)) { 173 bool operator==(SlotIndex other) const { 177 bool operator!=(SlotIndex other) const { 183 bool operator<(SlotIndex other) const { 188 bool operator<=(SlotIndex other) const { 194 bool operator>(SlotIndex other) const { 200 bool operator>=(SlotIndex other) const { [all …]
|
D | LiveInterval.h | 54 SlotIndex def; 57 VNInfo(unsigned i, SlotIndex d) in VNInfo() 81 void markUnused() { def = SlotIndex(); } in markUnused() 90 const SlotIndex EndPoint; 94 LiveQueryResult(VNInfo *EarlyVal, VNInfo *LateVal, SlotIndex EndPoint, in LiveQueryResult() 144 SlotIndex endPoint() const { in endPoint() 161 SlotIndex start; // Start point of the interval (inclusive) 162 SlotIndex end; // End point of the interval (exclusive) 167 Segment(SlotIndex S, SlotIndex E, VNInfo *V) in Segment() 173 bool contains(SlotIndex I) const { in contains() [all …]
|
D | LiveIntervalAnalysis.h | 72 SmallVector<SlotIndex, 8> RegMaskSlots; 174 void extendToIndices(LiveRange &LR, ArrayRef<SlotIndex> Indices); 184 void pruneValue(LiveRange &LR, SlotIndex Kill, 185 SmallVectorImpl<SlotIndex> *EndPoints); 202 SlotIndex getInstructionIndex(const MachineInstr &Instr) const { in getInstructionIndex() 207 MachineInstr* getInstructionFromIndex(SlotIndex index) const { in getInstructionFromIndex() 212 SlotIndex getMBBStartIdx(const MachineBasicBlock *mbb) const { in getMBBStartIdx() 217 SlotIndex getMBBEndIdx(const MachineBasicBlock *mbb) const { in getMBBEndIdx() 231 MachineBasicBlock* getMBBFromIndex(SlotIndex index) const { in getMBBFromIndex() 242 SlotIndex InsertMachineInstrInMaps(MachineInstr &MI) { in InsertMachineInstrInMaps() [all …]
|
/external/swiftshader/third_party/LLVM/lib/CodeGen/ |
D | SplitKit.h | 50 SmallVector<SlotIndex, 8> UseSlots; 71 SlotIndex FirstInstr; ///< First instr accessing current reg. 72 SlotIndex LastInstr; ///< Last instr accessing current reg. 73 SlotIndex FirstDef; ///< First non-phi valno->def, or SlotIndex(). 80 return SlotIndex::isSameInstr(FirstInstr, LastInstr); in isOneInstr() 92 SmallVector<std::pair<SlotIndex, SlotIndex>, 8> LastSplitPoint; 110 SlotIndex computeLastSplitPoint(unsigned Num); 140 SlotIndex getLastSplitPoint(unsigned Num) { in getLastSplitPoint() 153 bool isOriginalEndpoint(SlotIndex Idx) const; 253 typedef IntervalMap<SlotIndex, unsigned> RegAssignMap; [all …]
|
D | SplitKit.cpp | 61 SlotIndex SplitAnalysis::computeLastSplitPoint(unsigned Num) { in computeLastSplitPoint() 64 std::pair<SlotIndex, SlotIndex> &LSP = LastSplitPoint[Num]; in computeLastSplitPoint() 122 SlotIndex::isSameInstr), in analyzeUses() 158 SmallVectorImpl<SlotIndex>::const_iterator UseI, UseE; in calcLiveBlockInfo() 167 SlotIndex Start, Stop; in calcLiveBlockInfo() 202 SlotIndex LastStop = LVI->end; in calcLiveBlockInfo() 263 SlotIndex Stop = LIS.getMBBEndIdx(MFI); in countLiveBlocks() 276 bool SplitAnalysis::isOriginalEndpoint(SlotIndex Idx) const { in isOriginalEndpoint() 347 SlotIndex Idx) { in defValue() 368 SlotIndex Def = OldVNI->def; in defValue() [all …]
|
D | SlotIndexes.cpp | 79 SlotIndex blockStartIndex(back(), SlotIndex::LOAD); in runOnMachineFunction() 88 push_back(createEntry(mi, index += SlotIndex::InstrDist)); in runOnMachineFunction() 91 mi2iMap.insert(std::make_pair(mi, SlotIndex(back(), SlotIndex::LOAD))); in runOnMachineFunction() 97 push_back(createEntry(0, index += SlotIndex::InstrDist)); in runOnMachineFunction() 100 MBBRanges[mbb->getNumber()].second = SlotIndex(back(), SlotIndex::LOAD); in runOnMachineFunction() 123 index += SlotIndex::InstrDist; in renumberIndexes() 131 const unsigned Space = SlotIndex::InstrDist/2; in renumberIndexes() 167 void SlotIndex::print(raw_ostream &os) const { in print() 175 void SlotIndex::dump() const { in dump()
|
D | LiveDebugVariables.cpp | 72 typedef IntervalMap<SlotIndex, unsigned, 4> LocMap; 128 void insertDebugValue(MachineBasicBlock *MBB, SlotIndex Idx, unsigned LocNo, 204 void addDef(SlotIndex Idx, const MachineOperand &LocMO) { in addDef() 225 void extendDef(SlotIndex Idx, unsigned LocNo, 227 SmallVectorImpl<SlotIndex> *Kills, 239 const SmallVectorImpl<SlotIndex> &Kills, 240 SmallVectorImpl<std::pair<SlotIndex, unsigned> > &NewDefs, 310 bool handleDebugValue(MachineInstr *MI, SlotIndex Idx); 441 bool LDVImpl::handleDebugValue(MachineInstr *MI, SlotIndex Idx) { in handleDebugValue() 469 SlotIndex Idx = MBBI == MBB->begin() ? in collectDebugValues() [all …]
|
D | LiveIntervalAnalysis.cpp | 158 SlotIndex idx = range.start.getBaseIndex(); in conflictsWithPhysReg() 159 SlotIndex end = range.end.getPrevSlot().getBaseIndex().getNextIndex(); in conflictsWithPhysReg() 171 SlotIndex lastIdx = end.getPrevIndex(); in conflictsWithPhysReg() 222 for (SlotIndex index = I->start.getBaseIndex(), in conflictsWithAliasRef() 269 bool LiveIntervals::isPartialRedef(SlotIndex MIIdx, MachineOperand &MO, in isPartialRedef() 274 SlotIndex RedefIndex = MIIdx.getDefIndex(); in isPartialRedef() 286 SlotIndex MIIdx, in handleVirtualRegisterDef() 299 SlotIndex defIndex = MIIdx.getDefIndex(); in handleVirtualRegisterDef() 335 SlotIndex killIdx; in handleVirtualRegisterDef() 386 SlotIndex Start = getMBBStartIdx(Kill->getParent()); in handleVirtualRegisterDef() [all …]
|
D | LiveRangeCalc.h | 83 SlotIndex Kill; 88 LiveInBlock(LiveInterval *li, MachineDomTreeNode *node, SlotIndex kill) in LiveInBlock() 105 SlotIndex Kill, 158 SlotIndex Kill, 208 SlotIndex Kill = SlotIndex()) {
|
/external/swiftshader/third_party/llvm-7.0/llvm/lib/CodeGen/ |
D | SplitKit.h | 57 SmallVector<std::pair<SlotIndex, SlotIndex>, 8> LastInsertPoint; 59 SlotIndex computeLastInsertPoint(const LiveInterval &CurLI, 66 SlotIndex getLastInsertPoint(const LiveInterval &CurLI, in getLastInsertPoint() 110 SlotIndex FirstInstr; ///< First instr accessing current reg. 111 SlotIndex LastInstr; ///< Last instr accessing current reg. 112 SlotIndex FirstDef; ///< First non-phi valno->def, or SlotIndex(). 119 return SlotIndex::isSameInstr(FirstInstr, LastInstr); in isOneInstr() 131 SmallVector<SlotIndex, 8> UseSlots; 180 bool isOriginalEndpoint(SlotIndex Idx) const; 184 ArrayRef<SlotIndex> getUseSlots() const { return UseSlots; } in getUseSlots() [all …]
|
D | LiveIntervals.cpp | 171 for (SlotIndex Idx : RegMaskSlots) in print() 326 SlotIndex Begin = Indexes->getMBBStartIdx(&MBB); in computeLiveInRegUnits() 356 SlotIndex Def = VNI->def; in createSegmentsForValues() 387 SlotIndex Idx = WorkList.back().first; in extendSegmentsToUses() 391 SlotIndex BlockStart = Indexes->getMBBStartIdx(MBB); in extendSegmentsToUses() 405 SlotIndex Stop = Indexes->getMBBEndIdx(Pred); in extendSegmentsToUses() 421 SlotIndex Stop = Indexes->getMBBEndIdx(Pred); in extendSegmentsToUses() 432 SmallVector<SlotIndex,8> Undefs; in extendSegmentsToUses() 466 SlotIndex Idx = getInstructionIndex(UseMI).getRegSlot(); in shrinkToUses() 507 SlotIndex Def = VNI->def; in computeDeadValues() [all …]
|
D | SlotIndexes.cpp | 74 SlotIndex blockStartIndex(&indexList.back(), SlotIndex::Slot_Block); in runOnMachineFunction() 81 indexList.push_back(createEntry(&MI, index += SlotIndex::InstrDist)); in runOnMachineFunction() 85 &MI, SlotIndex(&indexList.back(), SlotIndex::Slot_Block))); in runOnMachineFunction() 89 indexList.push_back(createEntry(nullptr, index += SlotIndex::InstrDist)); in runOnMachineFunction() 92 MBBRanges[MBB.getNumber()].second = SlotIndex(&indexList.back(), in runOnMachineFunction() 93 SlotIndex::Slot_Block); in runOnMachineFunction() 113 SlotIndex MIIndex = mi2iItr->second; in removeMachineInstrFromMaps() 126 SlotIndex MIIndex = mi2iItr->second; in removeSingleMachineInstrFromMaps() 158 index += SlotIndex::InstrDist; in renumberIndexes() 166 const unsigned Space = SlotIndex::InstrDist/2; in renumberIndexes() [all …]
|
D | SplitKit.cpp | 76 SlotIndex 80 std::pair<SlotIndex, SlotIndex> &LIP = LastInsertPoint[Num]; in computeLastInsertPoint() 81 SlotIndex MBBEnd = LIS.getMBBEndIdx(&MBB); in computeLastInsertPoint() 131 if (!SlotIndex::isEarlierInstr(VNI->def, LIP.second) && VNI->def < MBBEnd) in computeLastInsertPoint() 142 SlotIndex LIP = getLastInsertPoint(CurLI, MBB); in getLastInsertPointIter() 186 SlotIndex::isSameInstr), in analyzeUses() 221 SmallVectorImpl<SlotIndex>::const_iterator UseI, UseE; in calcLiveBlockInfo() 231 SlotIndex Start, Stop; in calcLiveBlockInfo() 266 SlotIndex LastStop = LVI->end; in calcLiveBlockInfo() 328 SlotIndex Stop = LIS.getMBBEndIdx(&*MFI); in countLiveBlocks() [all …]
|
D | LiveRangeCalc.h | 112 SlotIndex Kill; 117 LiveInBlock(LiveRange &LR, MachineDomTreeNode *node, SlotIndex kill) in LiveInBlock() 129 bool isDefOnEntry(LiveRange &LR, ArrayRef<SlotIndex> Undefs, 150 SlotIndex Use, unsigned PhysReg, 151 ArrayRef<SlotIndex> Undefs); 212 void extend(LiveRange &LR, SlotIndex Use, unsigned PhysReg, 213 ArrayRef<SlotIndex> Undefs); 273 SlotIndex Kill = SlotIndex()) { 292 ArrayRef<SlotIndex> Defs,
|
D | LiveDebugVariables.cpp | 136 using LocMap = IntervalMap<SlotIndex, DbgValueLocation, 4>; 167 SmallSet<SlotIndex, 2> trimmedDefs; 170 void insertDebugValue(MachineBasicBlock *MBB, SlotIndex StartIdx, 171 SlotIndex StopIdx, 263 void addDef(SlotIndex Idx, const MachineOperand &LocMO, bool IsIndirect) { in addDef() 284 void extendDef(SlotIndex Idx, DbgValueLocation Loc, 286 SmallVectorImpl<SlotIndex> *Kills, 299 const SmallVectorImpl<SlotIndex> &Kills, 300 SmallVectorImpl<std::pair<SlotIndex, DbgValueLocation>> &NewDefs, 366 bool handleDebugValue(MachineInstr &MI, SlotIndex Idx); [all …]
|
/external/llvm/lib/CodeGen/ |
D | SplitKit.h | 51 SmallVector<std::pair<SlotIndex, SlotIndex>, 8> LastInsertPoint; 53 SlotIndex computeLastInsertPoint(const LiveInterval &CurLI, 60 SlotIndex getLastInsertPoint(const LiveInterval &CurLI, in getLastInsertPoint() 104 SlotIndex FirstInstr; ///< First instr accessing current reg. 105 SlotIndex LastInstr; ///< Last instr accessing current reg. 106 SlotIndex FirstDef; ///< First non-phi valno->def, or SlotIndex(). 113 return SlotIndex::isSameInstr(FirstInstr, LastInstr); in isOneInstr() 125 SmallVector<SlotIndex, 8> UseSlots; 174 bool isOriginalEndpoint(SlotIndex Idx) const; 178 ArrayRef<SlotIndex> getUseSlots() const { return UseSlots; } in getUseSlots() [all …]
|
D | LiveIntervalAnalysis.cpp | 313 SlotIndex Begin = Indexes->getMBBStartIdx(MBB); in computeLiveInRegUnits() 346 SlotIndex Def = VNI->def; in createSegmentsForValues() 351 typedef SmallVector<std::pair<SlotIndex, VNInfo*>, 16> ShrinkToUsesWorkList; 363 SlotIndex Idx = WorkList.back().first; in extendSegmentsToUses() 367 SlotIndex BlockStart = Indexes.getMBBStartIdx(MBB); in extendSegmentsToUses() 381 SlotIndex Stop = Indexes.getMBBEndIdx(Pred); in extendSegmentsToUses() 397 SlotIndex Stop = Indexes.getMBBEndIdx(Pred); in extendSegmentsToUses() 431 SlotIndex Idx = getInstructionIndex(*UseMI).getRegSlot(); in shrinkToUses() 471 SlotIndex Def = VNI->def; in computeDeadValues() 516 SlotIndex LastIdx; in shrinkToUses() [all …]
|
D | SplitKit.cpp | 48 SlotIndex 52 std::pair<SlotIndex, SlotIndex> &LIP = LastInsertPoint[Num]; in computeLastInsertPoint() 53 SlotIndex MBBEnd = LIS.getMBBEndIdx(&MBB); in computeLastInsertPoint() 103 if (!SlotIndex::isEarlierInstr(VNI->def, LIP.second) && VNI->def < MBBEnd) in computeLastInsertPoint() 114 SlotIndex LIP = getLastInsertPoint(CurLI, MBB); in getLastInsertPointIter() 159 SlotIndex::isSameInstr), in analyzeUses() 195 SmallVectorImpl<SlotIndex>::const_iterator UseI, UseE; in calcLiveBlockInfo() 205 SlotIndex Start, Stop; in calcLiveBlockInfo() 240 SlotIndex LastStop = LVI->end; in calcLiveBlockInfo() 302 SlotIndex Stop = LIS.getMBBEndIdx(&*MFI); in countLiveBlocks() [all …]
|
D | SlotIndexes.cpp | 74 SlotIndex blockStartIndex(&indexList.back(), SlotIndex::Slot_Block); in runOnMachineFunction() 81 indexList.push_back(createEntry(&MI, index += SlotIndex::InstrDist)); in runOnMachineFunction() 85 &MI, SlotIndex(&indexList.back(), SlotIndex::Slot_Block))); in runOnMachineFunction() 89 indexList.push_back(createEntry(nullptr, index += SlotIndex::InstrDist)); in runOnMachineFunction() 92 MBBRanges[MBB.getNumber()].second = SlotIndex(&indexList.back(), in runOnMachineFunction() 93 SlotIndex::Slot_Block); in runOnMachineFunction() 116 index += SlotIndex::InstrDist; in renumberIndexes() 124 const unsigned Space = SlotIndex::InstrDist/2; in renumberIndexes() 154 SlotIndex startIdx; in repairIndexesInRange() 160 SlotIndex endIdx; in repairIndexesInRange() [all …]
|