/external/llvm/include/llvm/CodeGen/ |
D | LiveInterval.h | 46 class VNInfo { 57 VNInfo(unsigned i, SlotIndex d) in VNInfo() function 62 VNInfo(unsigned i, const VNInfo &orig) in VNInfo() function 67 void copyFrom(VNInfo &src) { in copyFrom() 88 VNInfo *const EarlyVal; 89 VNInfo *const LateVal; 94 LiveQueryResult(VNInfo *EarlyVal, VNInfo *LateVal, SlotIndex EndPoint, in LiveQueryResult() 102 VNInfo *valueIn() const { in valueIn() 120 VNInfo *valueOut() const { in valueOut() 126 VNInfo *valueOutOrDead() const { in valueOutOrDead() [all …]
|
D | LiveRangeEdit.h | 81 SmallPtrSet<const VNInfo*,4> Remattable; 85 SmallPtrSet<const VNInfo*,4> Rematted; 190 bool checkRematerializable(VNInfo *VNI, const MachineInstr *DefMI, 195 VNInfo *ParentVNI; // parent_'s value at the remat location. 198 explicit Remat(VNInfo *ParentVNI) : ParentVNI(ParentVNI), OrigMI(nullptr) {} in Remat() 204 bool canRematerializeAt(Remat &RM, VNInfo *OrigVNI, SlotIndex UseIdx, 220 void markRematerialized(const VNInfo *ParentVNI) { in markRematerialized() 225 bool didRematerialize(const VNInfo *ParentVNI) const { in didRematerialize()
|
/external/swiftshader/third_party/llvm-7.0/llvm/include/llvm/CodeGen/ |
D | LiveInterval.h | 53 class VNInfo { 64 VNInfo(unsigned i, SlotIndex d) : id(i), def(d) {} in VNInfo() function 67 VNInfo(unsigned i, const VNInfo &orig) : id(i), def(orig.def) {} in VNInfo() function 70 void copyFrom(VNInfo &src) { in copyFrom() 91 VNInfo *const EarlyVal; 92 VNInfo *const LateVal; 97 LiveQueryResult(VNInfo *EarlyVal, VNInfo *LateVal, SlotIndex EndPoint, in LiveQueryResult() 105 VNInfo *valueIn() const { in valueIn() 123 VNInfo *valueOut() const { in valueOut() 129 VNInfo *valueOutOrDead() const { in valueOutOrDead() [all …]
|
D | LiveRangeEdit.h | 91 SmallPtrSet<const VNInfo *, 4> Remattable; 95 SmallPtrSet<const VNInfo *, 4> Rematted; 198 bool checkRematerializable(VNInfo *VNI, const MachineInstr *DefMI, 203 VNInfo *ParentVNI; // parent_'s value at the remat location. 207 explicit Remat(VNInfo *ParentVNI) : ParentVNI(ParentVNI) {} in Remat() 213 bool canRematerializeAt(Remat &RM, VNInfo *OrigVNI, SlotIndex UseIdx, 227 void markRematerialized(const VNInfo *ParentVNI) { in markRematerialized() 232 bool didRematerialize(const VNInfo *ParentVNI) const { in didRematerialize()
|
/external/swiftshader/third_party/LLVM/include/llvm/CodeGen/ |
D | LiveInterval.h | 42 class VNInfo { 64 VNInfo(unsigned i, SlotIndex d, MachineInstr *c) in VNInfo() function 69 VNInfo(unsigned i, const VNInfo &orig) in VNInfo() function 74 void copyFrom(VNInfo &src) { in copyFrom() 85 void mergeFlags(const VNInfo *VNI) { in mergeFlags() 152 VNInfo *valno; // identifier for the value contained in this interval. 154 LiveRange(SlotIndex S, SlotIndex E, VNInfo *V) in LiveRange() 207 typedef SmallVector<VNInfo*,4> VNInfoList; 283 inline VNInfo *getValNumInfo(unsigned ValNo) { 286 inline const VNInfo *getValNumInfo(unsigned ValNo) const { [all …]
|
/external/swiftshader/third_party/LLVM/lib/CodeGen/ |
D | LiveRangeCalc.h | 45 typedef std::pair<VNInfo*, MachineDomTreeNode*> LiveOutPair; 86 VNInfo *Value; 103 VNInfo *findReachingDefs(LiveInterval *LI, 116 VNInfo::Allocator *Alloc); 120 void updateLiveIns(VNInfo *VNI, SlotIndexes*); 142 VNInfo::Allocator *Alloc); 161 VNInfo::Allocator *Alloc); 171 VNInfo::Allocator *Alloc); 192 void setLiveOutValue(MachineBasicBlock *MBB, VNInfo *VNI) { in setLiveOutValue() 221 VNInfo::Allocator *Alloc);
|
D | LiveInterval.cpp | 137 void LiveInterval::markValNoForDeletion(VNInfo *ValNo) { in markValNoForDeletion() 150 SmallPtrSet<VNInfo*, 8> Seen; in RenumberValues() 153 VNInfo *VNI = I->valno; in RenumberValues() 168 VNInfo *ValNo = I->valno; in extendIntervalEndTo() 198 VNInfo *ValNo = I->valno; in extendIntervalStartTo() 279 VNInfo *LiveInterval::extendInBlock(SlotIndex StartIdx, SlotIndex Kill) { in extendInBlock() 303 VNInfo *ValNo = I->valno; in removeRange() 343 void LiveInterval::removeValNo(VNInfo *ValNo) { in removeValNo() 358 VNInfo *LiveInterval::findDefinedVNInfoForRegInt(SlotIndex Idx) const { in findDefinedVNInfoForRegInt() 374 SmallVector<VNInfo*, 16> &NewVNInfo, in join() argument [all …]
|
D | InlineSpiller.cpp | 81 SmallPtrSet<VNInfo*, 8> UsedValues; 100 VNInfo *SpillVNI; 115 TinyPtrVector<VNInfo*> Deps; 117 SibValueInfo(unsigned Reg, VNInfo *VNI) in SibValueInfo() 127 typedef DenseMap<VNInfo*, SibValueInfo> SibValueMap; 164 MachineInstr *traceSiblingValue(unsigned, VNInfo*, VNInfo*); 165 void propagateSiblingValue(SibValueMap::iterator, VNInfo *VNI = 0); 169 void eliminateRedundantSpills(LiveInterval &LI, VNInfo *VNI); 171 void markValueUsed(LiveInterval*, VNInfo*); 345 VNInfo *VNI) { in propagateSiblingValue() [all …]
|
D | LiveRangeCalc.cpp | 30 void LiveRangeCalc::updateLiveIns(VNInfo *OverrideVNI, SlotIndexes *Indexes) { in updateLiveIns() 37 VNInfo *VNI = OverrideVNI ? OverrideVNI : I->Value; in updateLiveIns() 61 VNInfo::Allocator *Alloc) { in extend() 78 VNInfo *VNI = findReachingDefs(LI, KillMBB, Kill, Indexes, DomTree); in extend() 93 VNInfo::Allocator *Alloc) { in calculateValues() 101 VNInfo *LiveRangeCalc::findReachingDefs(LiveInterval *LI, in findReachingDefs() 111 VNInfo *TheVNI = 0; in findReachingDefs() 123 if (VNInfo *VNI = LiveOut[Pred].first) { in findReachingDefs() 136 VNInfo *VNI = LI->extendInBlock(Start, End); in findReachingDefs() 173 VNInfo::Allocator *Alloc) { in updateSSA() [all …]
|
D | LiveRangeEdit.h | 68 SmallPtrSet<const VNInfo*,4> remattable_; 72 SmallPtrSet<const VNInfo*,4> rematted_; 145 bool checkRematerializable(VNInfo *VNI, const MachineInstr *DefMI, 150 VNInfo *ParentVNI; // parent_'s value at the remat location. 152 explicit Remat(VNInfo *ParentVNI) : ParentVNI(ParentVNI), OrigMI(0) {} in Remat() 178 void markRematerialized(const VNInfo *ParentVNI) { in markRematerialized() 183 bool didRematerialize(const VNInfo *ParentVNI) const { in didRematerialize()
|
D | SplitKit.h | 36 class VNInfo; variable 264 typedef PointerIntPair<VNInfo*, 1> ValueForcePair; 298 VNInfo *defValue(unsigned RegIdx, const VNInfo *ParentVNI, SlotIndex Idx); 304 void forceRecompute(unsigned RegIdx, const VNInfo *ParentVNI); 308 VNInfo *defFromParent(unsigned RegIdx, 309 VNInfo *ParentVNI, 316 void removeBackCopies(SmallVectorImpl<VNInfo*> &Copies);
|
D | SplitKit.cpp | 345 VNInfo *SplitEditor::defValue(unsigned RegIdx, in defValue() 346 const VNInfo *ParentVNI, in defValue() 354 VNInfo *VNI = LI->getNextValue(Idx, 0, LIS.getVNInfoAllocator()); in defValue() 367 if (VNInfo *OldVNI = InsP.first->second.getPointer()) { in defValue() 381 void SplitEditor::forceRecompute(unsigned RegIdx, const VNInfo *ParentVNI) { in forceRecompute() 384 VNInfo *VNI = VFP.getPointer(); in forceRecompute() 401 VNInfo *SplitEditor::defFromParent(unsigned RegIdx, in defFromParent() 402 VNInfo *ParentVNI, in defFromParent() 429 VNInfo *VNI = defValue(RegIdx, ParentVNI, Def); in defFromParent() 457 VNInfo *ParentVNI = Edit->getParent().getVNInfoAt(Idx); in enterIntvBefore() [all …]
|
D | RegisterCoalescer.cpp | 135 VNInfo *AValNo, VNInfo *BValNo); 432 VNInfo *BValNo = BLR->valno; in AdjustCopiesBackFrom() 445 VNInfo *AValNo = ALR->valno; in AdjustCopiesBackFrom() 571 VNInfo *AValNo, in HasOtherReachingDefs() 572 VNInfo *BValNo) { in HasOtherReachingDefs() 637 VNInfo *BValNo = IntB.getVNInfoAt(CopyIdx); in RemoveCopyByCommutingDef() 644 VNInfo *AValNo = IntA.getVNInfoAt(CopyIdx.getUseIndex()); in RemoveCopyByCommutingDef() 769 VNInfo *DVNI = IntB.getVNInfoAt(DefIdx); in RemoveCopyByCommutingDef() 780 VNInfo *ValNo = BValNo; in RemoveCopyByCommutingDef() 805 VNInfo *ValNo = SrcLR->valno; in ReMaterializeTrivialDef() [all …]
|
/external/llvm/lib/CodeGen/ |
D | SplitKit.cpp | 95 const VNInfo *VNI = CurLI.getVNInfoBefore(MBBEnd); in computeLastInsertPoint() 144 for (const VNInfo *VNI : CurLI->valnos) in analyzeUses() 384 VNInfo *SplitEditor::defValue(unsigned RegIdx, in defValue() 385 const VNInfo *ParentVNI, in defValue() 393 VNInfo *VNI = LI->getNextValue(Idx, LIS.getVNInfoAllocator()); in defValue() 406 if (VNInfo *OldVNI = InsP.first->second.getPointer()) { in defValue() 420 void SplitEditor::forceRecompute(unsigned RegIdx, const VNInfo *ParentVNI) { in forceRecompute() 423 VNInfo *VNI = VFP.getPointer(); in forceRecompute() 441 VNInfo *SplitEditor::defFromParent(unsigned RegIdx, in defFromParent() 442 VNInfo *ParentVNI, in defFromParent() [all …]
|
D | SplitKit.h | 38 class VNInfo; variable 299 typedef PointerIntPair<VNInfo*, 1> ValueForcePair; 333 VNInfo *defValue(unsigned RegIdx, const VNInfo *ParentVNI, SlotIndex Idx); 339 void forceRecompute(unsigned RegIdx, const VNInfo *ParentVNI); 343 VNInfo *defFromParent(unsigned RegIdx, 344 VNInfo *ParentVNI, 351 void removeBackCopies(SmallVectorImpl<VNInfo*> &Copies); 360 SmallVectorImpl<VNInfo *> &BackCopies);
|
D | LiveInterval.cpp | 62 VNInfo *createDeadDef(SlotIndex Def, VNInfo::Allocator &VNInfoAllocator) { in createDeadDef() 67 VNInfo *VNI = LR->getNextValue(Def, VNInfoAllocator); in createDeadDef() 87 VNInfo *VNI = LR->getNextValue(Def, VNInfoAllocator); in createDeadDef() 92 VNInfo *extendInBlock(SlotIndex StartIdx, SlotIndex Use) { in extendInBlock() 114 VNInfo *ValNo = I->valno; in extendSegmentEndTo() 142 VNInfo *ValNo = I->valno; in extendSegmentStartTo() 323 VNInfo *LiveRange::createDeadDef(SlotIndex Def, in createDeadDef() 324 VNInfo::Allocator &VNInfoAllocator) { in createDeadDef() 465 void LiveRange::markValNoForDeletion(VNInfo *ValNo) { in markValNoForDeletion() 478 SmallPtrSet<VNInfo*, 8> Seen; in RenumberValues() [all …]
|
D | LiveRangeCalc.h | 41 VNInfo::Allocator *Alloc; 45 typedef std::pair<VNInfo*, MachineDomTreeNode*> LiveOutPair; 92 VNInfo *Value; 156 VNInfo::Allocator*); 216 void setLiveOutValue(MachineBasicBlock *MBB, VNInfo *VNI) { in setLiveOutValue()
|
D | RegisterCoalescer.cpp | 183 VNInfo *AValNo, VNInfo *BValNo); 500 VNInfo *BValNo = BS->valno; in adjustCopiesBackFrom() 512 VNInfo *AValNo = AS->valno; in adjustCopiesBackFrom() 558 VNInfo *SubBValNo = S.getVNInfoAt(CopyIdx); in adjustCopiesBackFrom() 560 VNInfo *SubValSNo = S.getVNInfoAt(AValNo->def.getPrevSlot()); in adjustCopiesBackFrom() 587 VNInfo *AValNo, in hasOtherReachingDefs() 588 VNInfo *BValNo) { in hasOtherReachingDefs() 614 static void addSegmentsWithValNo(LiveRange &Dst, VNInfo *DstValNo, in addSegmentsWithValNo() 615 const LiveRange &Src, const VNInfo *SrcValNo) in addSegmentsWithValNo() 656 VNInfo *BValNo = IntB.getVNInfoAt(CopyIdx); in removeCopyByCommutingDef() [all …]
|
D | InlineSpiller.cpp | 80 typedef MapVector<std::pair<int, VNInfo *>, SmallPtrSet<MachineInstr *, 16>> 89 bool isSpillCandBB(unsigned OrigReg, VNInfo &OrigVNI, MachineBasicBlock &BB, 104 void runHoistSpills(unsigned OrigReg, VNInfo &OrigVNI, 158 SmallPtrSet<VNInfo*, 8> UsedValues; 195 void eliminateRedundantSpills(LiveInterval &LI, VNInfo *VNI); 197 void markValueUsed(LiveInterval*, VNInfo*); 354 VNInfo *VNI = SpillLI.getVNInfoAt(Idx.getRegSlot()); in hoistSpillInsideBB() 360 VNInfo *SrcVNI = SrcLI.getVNInfoAt(Idx); in hoistSpillInsideBB() 371 VNInfo *OrigVNI = OrigLI.getVNInfoAt(Idx); in hoistSpillInsideBB() 404 void InlineSpiller::eliminateRedundantSpills(LiveInterval &SLI, VNInfo *VNI) { in eliminateRedundantSpills() [all …]
|
/external/swiftshader/third_party/llvm-7.0/llvm/lib/CodeGen/ |
D | LiveInterval.cpp | 88 VNInfo *createDeadDef(SlotIndex Def, VNInfo::Allocator *VNInfoAllocator, in createDeadDef() 89 VNInfo *ForVNI) { in createDeadDef() 95 VNInfo *VNI = ForVNI ? ForVNI : LR->getNextValue(Def, *VNInfoAllocator); in createDeadDef() 116 VNInfo *VNI = ForVNI ? ForVNI : LR->getNextValue(Def, *VNInfoAllocator); in createDeadDef() 121 VNInfo *extendInBlock(SlotIndex StartIdx, SlotIndex Use) { in extendInBlock() 136 std::pair<VNInfo*,bool> extendInBlock(ArrayRef<SlotIndex> Undefs, in extendInBlock() 162 VNInfo *ValNo = I->valno; in extendSegmentEndTo() 190 VNInfo *ValNo = I->valno; in extendSegmentStartTo() 373 VNInfo *LiveRange::createDeadDef(SlotIndex Def, VNInfo::Allocator &VNIAlloc) { in createDeadDef() 381 VNInfo *LiveRange::createDeadDef(VNInfo *VNI) { in createDeadDef() [all …]
|
D | SplitKit.h | 302 using ValueForcePair = PointerIntPair<VNInfo *, 1>; 343 void addDeadDef(LiveInterval &LI, VNInfo *VNI, bool Original); 353 VNInfo *defValue(unsigned RegIdx, const VNInfo *ParentVNI, SlotIndex Idx, 360 void forceRecompute(unsigned RegIdx, const VNInfo &ParentVNI); 364 void forceRecomputeVNI(const VNInfo &ParentVNI); 368 VNInfo *defFromParent(unsigned RegIdx, 369 VNInfo *ParentVNI, 376 void removeBackCopies(SmallVectorImpl<VNInfo*> &Copies); 385 SmallVectorImpl<VNInfo *> &BackCopies);
|
D | SplitKit.cpp | 123 const VNInfo *VNI = CurLI.getVNInfoBefore(MBBEnd); in computeLastInsertPoint() 171 for (const VNInfo *VNI : CurLI->valnos) in analyzeUses() 416 void SplitEditor::addDeadDef(LiveInterval &LI, VNInfo *VNI, bool Original) { in addDeadDef() 429 VNInfo *PV = PS.getVNInfoAt(Def); in addDeadDef() 457 VNInfo *SplitEditor::defValue(unsigned RegIdx, in defValue() 458 const VNInfo *ParentVNI, in defValue() 467 VNInfo *VNI = LI->getNextValue(Idx, LIS.getVNInfoAllocator()); in defValue() 481 if (VNInfo *OldVNI = InsP.first->second.getPointer()) { in defValue() 494 void SplitEditor::forceRecompute(unsigned RegIdx, const VNInfo &ParentVNI) { in forceRecompute() 496 VNInfo *VNI = VFP.getPointer(); in forceRecompute() [all …]
|
D | LiveRangeCalc.h | 50 VNInfo::Allocator *Alloc = nullptr; 54 using LiveOutPair = std::pair<VNInfo *, MachineDomTreeNode *>; 115 VNInfo *Value = nullptr; 196 MachineDominatorTree *MDT, VNInfo::Allocator *VNIA); 257 void setLiveOutValue(MachineBasicBlock *MBB, VNInfo *VNI) { in setLiveOutValue()
|
D | RegisterCoalescer.cpp | 200 VNInfo *AValNo, VNInfo *BValNo); 534 VNInfo *BValNo = BS->valno; in adjustCopiesBackFrom() 546 VNInfo *AValNo = AS->valno; in adjustCopiesBackFrom() 599 VNInfo *SubBValNo = S.getVNInfoAt(CopyIdx); in adjustCopiesBackFrom() 601 VNInfo *SubValSNo = S.getVNInfoAt(AValNo->def.getPrevSlot()); in adjustCopiesBackFrom() 638 VNInfo *AValNo, in hasOtherReachingDefs() 639 VNInfo *BValNo) { in hasOtherReachingDefs() 665 static void addSegmentsWithValNo(LiveRange &Dst, VNInfo *DstValNo, in addSegmentsWithValNo() 666 const LiveRange &Src, const VNInfo *SrcValNo) { in addSegmentsWithValNo() 706 VNInfo *BValNo = IntB.getVNInfoAt(CopyIdx); in removeCopyByCommutingDef() [all …]
|
D | InlineSpiller.cpp | 107 MapVector<std::pair<int, VNInfo *>, SmallPtrSet<MachineInstr *, 16>>; 115 bool isSpillCandBB(LiveInterval &OrigLI, VNInfo &OrigVNI, 130 void runHoistSpills(LiveInterval &OrigLI, VNInfo &OrigVNI, 182 SmallPtrSet<VNInfo*, 8> UsedValues; 215 void eliminateRedundantSpills(LiveInterval &LI, VNInfo *VNI); 217 void markValueUsed(LiveInterval*, VNInfo*); 372 VNInfo *VNI = SpillLI.getVNInfoAt(Idx.getRegSlot()); in hoistSpillInsideBB() 378 VNInfo *SrcVNI = SrcLI.getVNInfoAt(Idx); in hoistSpillInsideBB() 389 VNInfo *OrigVNI = OrigLI.getVNInfoAt(Idx); in hoistSpillInsideBB() 422 void InlineSpiller::eliminateRedundantSpills(LiveInterval &SLI, VNInfo *VNI) { in eliminateRedundantSpills() [all …]
|