/third_party/skia/third_party/externals/swiftshader/third_party/llvm-10.0/llvm/lib/CodeGen/ |
D | MacroFusion.cpp | 35 static bool isHazard(const SDep &Dep) { in isHazard() 36 return Dep.getKind() == SDep::Anti || Dep.getKind() == SDep::Output; in isHazard() 40 for (const SDep &SI : SU.Preds) in getPredClusterSU() 58 for (SDep &SI : FirstSU.Succs) in fuseInstructionPair() 62 for (SDep &SI : SecondSU.Preds) in fuseInstructionPair() 71 if (!DAG.addEdge(&SecondSU, SDep(&FirstSU, SDep::Cluster))) in fuseInstructionPair() 83 for (SDep &SI : FirstSU.Succs) in fuseInstructionPair() 87 for (SDep &SI : SecondSU.Preds) in fuseInstructionPair() 100 for (const SDep &SI : FirstSU.Succs) { in fuseInstructionPair() 107 DAG.addEdge(SU, SDep(&SecondSU, SDep::Artificial)); in fuseInstructionPair() [all …]
|
D | ScheduleDAG.cpp | 75 LLVM_DUMP_METHOD void SDep::dump(const TargetRegisterInfo *TRI) const { in dump() 107 bool SUnit::addPred(const SDep &D, bool Required) { in addPred() 109 for (SDep &PredDep : Preds) { in addPred() 120 SDep ForwardD = PredDep; in addPred() 122 for (SDep &SuccDep : PredSU->Succs) { in addPred() 134 SDep P = D; in addPred() 138 if (D.getKind() == SDep::Data) { in addPred() 175 void SUnit::removePred(const SDep &D) { in removePred() 177 SmallVectorImpl<SDep>::iterator I = llvm::find(Preds, D); in removePred() 181 SDep P = D; in removePred() [all …]
|
D | ScheduleDAGInstrs.cpp | 254 SDep Dep; in addPhysRegDataDeps() 256 Dep = SDep(SU, SDep::Artificial); in addPhysRegDataDeps() 261 Dep = SDep(SU, SDep::Data, *Alias); in addPhysRegDataDeps() 303 SDep::Kind Kind = MO.isUse() ? SDep::Anti : SDep::Output; in addPhysRegDeps() 312 (Kind != SDep::Output || !MO.isDead() || in addPhysRegDeps() 314 if (Kind == SDep::Anti) in addPhysRegDeps() 315 DefSU->addPred(SDep(SU, Kind, /*Reg=*/*Alias)); in addPhysRegDeps() 317 SDep Dep(SU, Kind, /*Reg=*/*Alias); in addPhysRegDeps() 444 SDep Dep(SU, SDep::Data, Reg); in addVRegDefDeps() 487 SDep Dep(SU, SDep::Output, Reg); in addVRegDefDeps() [all …]
|
D | MachinePipeliner.cpp | 613 if (SI.getKind() == SDep::Order) { in isSuccOrder() 702 SDep Dep(Load, SDep::Barrier); in addLoopCarriedDependences() 712 SDep Dep(Load, SDep::Barrier); in addLoopCarriedDependences() 720 SDep Dep(Load, SDep::Barrier); in addLoopCarriedDependences() 727 SDep Dep(Load, SDep::Barrier); in addLoopCarriedDependences() 739 SDep Dep(Load, SDep::Barrier); in addLoopCarriedDependences() 756 SmallVector<SDep, 4> RemoveDeps; in updatePhiDependences() 783 SDep Dep(SU, SDep::Anti, Reg); in updatePhiDependences() 791 I.addPred(SDep(SU, SDep::Barrier)); in updatePhiDependences() 803 SDep Dep(SU, SDep::Data, Reg); in updatePhiDependences() [all …]
|
D | AggressiveAntiDepBreaker.cpp | 265 static void AntiDepEdges(const SUnit *SU, std::vector<const SDep *> &Edges) { in AntiDepEdges() 269 if ((P->getKind() == SDep::Anti) || (P->getKind() == SDep::Output)) { in AntiDepEdges() 279 const SDep *Next = nullptr; in CriticalPathStep() 291 (NextDepth == PredTotalLatency && P->getKind() == SDep::Anti)) { in CriticalPathStep() 832 std::vector<const SDep *> Edges; in BreakAntiDependencies() 851 const SDep *Edge = Edges[i]; in BreakAntiDependencies() 854 if ((Edge->getKind() != SDep::Anti) && in BreakAntiDependencies() 855 (Edge->getKind() != SDep::Output)) continue; in BreakAntiDependencies() 897 (P->getKind() != SDep::Anti || P->getReg() != AntiDepReg) : in BreakAntiDependencies() 898 (P->getKind() == SDep::Data && P->getReg() == AntiDepReg)) { in BreakAntiDependencies() [all …]
|
D | CriticalAntiDepBreaker.cpp | 145 static const SDep *CriticalPathStep(const SUnit *SU) { in CriticalPathStep() 146 const SDep *Next = nullptr; in CriticalPathStep() 157 (NextDepth == PredTotalLatency && P->getKind() == SDep::Anti)) { in CriticalPathStep() 565 if (const SDep *Edge = CriticalPathStep(CriticalPathSU)) { in BreakAntiDependencies() 569 if (Edge->getKind() == SDep::Anti) { in BreakAntiDependencies() 591 (P->getKind() != SDep::Anti || P->getReg() != AntiDepReg) : in BreakAntiDependencies() 592 (P->getKind() == SDep::Data && P->getReg() == AntiDepReg)) { in BreakAntiDependencies()
|
D | MachineScheduler.cpp | 620 void ScheduleDAGMI::releaseSucc(SUnit *SU, SDep *SuccEdge) { in releaseSucc() 649 for (SDep &Succ : SU->Succs) in releaseSuccessors() 657 void ScheduleDAGMI::releasePred(SUnit *SU, SDep *PredEdge) { in releasePred() 686 for (SDep &Pred : SU->Preds) in releasePredecessors() 1581 DAG->addEdge(SUb, SDep(SUa, SDep::Cluster))) { in clusterNeighboringMemOps() 1588 for (const SDep &Succ : SUa->Succs) { in clusterNeighboringMemOps() 1593 DAG->addEdge(Succ.getSUnit(), SDep(SUb, SDep::Artificial)); in clusterNeighboringMemOps() 1611 for (const SDep &Pred : SU.Preds) { in apply() 1768 for (const SDep &Succ : LastLocalSU->Succs) { in constrainLocalCopy() 1769 if (Succ.getKind() != SDep::Data || Succ.getReg() != LocalReg) in constrainLocalCopy() [all …]
|
/third_party/skia/third_party/externals/swiftshader/third_party/llvm-10.0/llvm/include/llvm/CodeGen/ |
D | ScheduleDAG.h | 49 class SDep { 101 SDep() : Dep(nullptr, Data) {} in SDep() function 104 SDep(SUnit *S, Kind kind, unsigned Reg) in SDep() function 123 SDep(SUnit *S, OrderKind kind) in SDep() function 129 bool overlaps(const SDep &Other) const; 131 bool operator==(const SDep &Other) const { 135 bool operator!=(const SDep &Other) const { 256 SmallVector<SDep, 4> Preds; ///< All sunit predecessors. 257 SmallVector<SDep, 4> Succs; ///< All sunit successors. 259 typedef SmallVectorImpl<SDep>::iterator pred_iterator; [all …]
|
D | MachinePipeliner.h | 246 bool isBackedge(SUnit *Source, const SDep &Dep) { in isBackedge() 247 if (Dep.getKind() != SDep::Anti) in isBackedge() 252 bool isLoopCarriedDep(SUnit *Source, const SDep &Dep, bool isSucc = true); 256 unsigned getDistance(SUnit *U, SUnit *V, const SDep &Dep) { in getDistance() 259 if (V->getInstr()->isPHI() && Dep.getKind() == SDep::Anti) in getDistance() 334 for (const SDep &Succ : Nodes[i]->Succs) in NodeSet() 532 int earliestCycleInChain(const SDep &Dep); 536 int latestCycleInChain(const SDep &Dep);
|
D | TargetSubtargetInfo.h | 42 class SDep; variable 229 virtual void adjustSchedDependency(SUnit *def, SUnit *use, SDep &dep) const {} in adjustSchedDependency()
|
/third_party/skia/third_party/externals/swiftshader/third_party/llvm-10.0/llvm/lib/CodeGen/SelectionDAG/ |
D | ScheduleDAGFast.cpp | 88 void AddPred(SUnit *SU, const SDep &D) { in AddPred() 94 void RemovePred(SUnit *SU, const SDep &D) { in RemovePred() 99 void ReleasePred(SUnit *SU, SDep *PredEdge); 139 void ScheduleDAGFast::ReleasePred(SUnit *SU, SDep *PredEdge) { in ReleasePred() 162 for (SDep &Pred : SU->Preds) { in ReleasePredecessors() 192 for (SDep &Succ : SU->Succs) { in ScheduleNodeBottomUp() 277 SDep ChainPred; in CopyAndMoveSuccessors() 278 SmallVector<SDep, 4> ChainSuccs; in CopyAndMoveSuccessors() 279 SmallVector<SDep, 4> LoadPreds; in CopyAndMoveSuccessors() 280 SmallVector<SDep, 4> NodePreds; in CopyAndMoveSuccessors() [all …]
|
D | ScheduleDAGRRList.cpp | 225 void AddPredQueued(SUnit *SU, const SDep &D) { in AddPredQueued() 233 void AddPred(SUnit *SU, const SDep &D) { in AddPred() 241 void RemovePred(SUnit *SU, const SDep &D) { in RemovePred() 252 void ReleasePred(SUnit *SU, const SDep *PredEdge); 259 void CapturePred(SDep *PredEdge); 398 void ScheduleDAGRRList::ReleasePred(SUnit *SU, const SDep *PredEdge) { in ReleasePred() 556 for (SDep &Pred : SU->Preds) { in ReleasePredecessors() 770 for (SDep &Succ : SU->Succs) { in ScheduleNodeBottomUp() 820 void ScheduleDAGRRList::CapturePred(SDep *PredEdge) { in CapturePred() 839 for (SDep &Pred : SU->Preds) { in UnscheduleNodeBottomUp() [all …]
|
D | ResourcePriorityQueue.cpp | 69 for (SDep &Pred : SU->Preds) { in numberRCValPredInSU() 107 for (const SDep &Succ : SU->Succs) { in numberRCValSuccInSU() 144 for (const SDep &Succ : SU->Succs) in numberCtrlDepsInSU() 153 for (SDep &Pred : SU->Preds) in numberCtrlPredInSU() 212 for (const SDep &Pred : SU->Preds) { in getSingleUnscheduledPred() 229 for (const SDep &Succ : SU->Succs) in push() 268 for (const SDep &Succ : Packet[i]->Succs) { in isResourceAvailable() 498 for (SDep &Pred : SU->Preds) { in scheduledNode() 513 for (const SDep &Succ : SU->Succs) { in scheduledNode()
|
D | ScheduleDAGSDNodes.cpp | 503 SDep Dep = isChain ? SDep(OpSU, SDep::Barrier) in AddSchedEdges() 504 : SDep(OpSU, SDep::Data, PhysReg); in AddSchedEdges() 643 unsigned OpIdx, SDep& dep) const{ in computeOperandLatency() 648 if (dep.getKind() != SDep::Data) in computeOperandLatency()
|
D | ScheduleDAGVLIW.cpp | 85 void releaseSucc(SUnit *SU, const SDep &D); 113 void ScheduleDAGVLIW::releaseSucc(SUnit *SU, const SDep &D) { in releaseSucc()
|
/third_party/skia/third_party/externals/swiftshader/third_party/llvm-10.0/llvm/lib/Target/Hexagon/ |
D | HexagonSubtarget.cpp | 132 SmallVector<SDep, 4> Erase; in apply() 134 if (D.getKind() == SDep::Output && D.getReg() == Hexagon::USR_OVF) in apply() 152 for (SDep &SI : SU.Succs) { in apply() 153 if (SI.getKind() != SDep::Order || SI.getLatency() != 0) in apply() 162 for (SDep &PI : SI.getSUnit()->Preds) { in apply() 163 if (PI.getSUnit() != &SU || PI.getKind() != SDep::Order) in apply() 211 DAG->addEdge(&DAG->SUnits[su], SDep(LastSequentialCall, SDep::Barrier)); in apply() 215 DAG->addEdge(&DAG->SUnits[su], SDep(&DAG->SUnits[su-1], SDep::Barrier)); in apply() 252 DAG->addEdge(&DAG->SUnits[su], SDep(LastVRegUse[*AI], SDep::Barrier)); in apply() 302 SDep A(&S0, SDep::Artificial); in apply() [all …]
|
D | HexagonVLIWPacketizer.cpp | 297 SDep::Kind DepType, unsigned DepReg) { in isCallDependent() 311 if (DepType == SDep::Data) { in isCallDependent() 320 static bool isRegDependence(const SDep::Kind DepType) { in isRegDependence() 321 return DepType == SDep::Data || DepType == SDep::Anti || in isRegDependence() 322 DepType == SDep::Output; in isRegDependence() 370 SDep::Kind DepType, MachineBasicBlock::iterator &MII, in promoteToDotCur() 372 assert(DepType == SDep::Data); in promoteToDotCur() 452 SDep::Kind DepType, MachineBasicBlock::iterator &MII, in promoteToDotNew() 454 assert(DepType == SDep::Data); in promoteToDotNew() 527 if (PI.getKind() != SDep::Anti && in updateOffset() [all …]
|
D | HexagonVLIWPacketizer.h | 109 bool isCallDependent(const MachineInstr &MI, SDep::Kind DepType, 111 bool promoteToDotCur(MachineInstr &MI, SDep::Kind DepType, 119 bool promoteToDotNew(MachineInstr &MI, SDep::Kind DepType,
|
D | HexagonSubtarget.h | 37 class SDep; variable 214 void adjustSchedDependency(SUnit *def, SUnit *use, SDep& dep) const override; 270 void updateLatency(MachineInstr &SrcInst, MachineInstr &DstInst, SDep &Dep)
|
D | HexagonMachineScheduler.cpp | 292 for (const SDep &PI : SU->Preds) { in releaseTopNode() 646 for (const SDep &SI : SU->Succs) in SchedulingCost() 652 for (const SDep &PI : SU->Preds) in SchedulingCost() 706 for (const SDep &PI : SU->Preds) { in SchedulingCost() 715 for (const SDep &SI : SU->Succs) { in SchedulingCost()
|
/third_party/skia/third_party/externals/swiftshader/third_party/llvm-10.0/llvm/lib/Target/AMDGPU/ |
D | AMDGPUSubtarget.cpp | 720 SDep &Dep) const { in adjustSchedDependency() 721 if (Dep.getKind() != SDep::Kind::Data || !Dep.getReg() || in adjustSchedDependency() 786 for (const SDep &SI : SU.Preds) { in apply() 788 SUa->addPred(SDep(SI.getSUnit(), SDep::Artificial)); in apply() 792 for (const SDep &SI : SUa->Succs) { in apply() 794 SI.getSUnit()->addPred(SDep(&SU, SDep::Artificial)); in apply() 828 for (const SDep &SI : Succs[I]->Succs) { in canAddEdge() 841 for (const SDep &SI : SU->Preds) in canAddEdge() 864 if (SU->addPred(SDep(From, SDep::Artificial), false)) in linkSALUChain() 867 for (SDep &SI : From->Succs) { in linkSALUChain() [all …]
|
D | SIMachineScheduler.cpp | 443 for (SDep& Succ : SU->Succs) { in undoSchedule() 453 void SIScheduleBlock::undoReleaseSucc(SUnit *SU, SDep *SuccEdge) { in undoReleaseSucc() 463 void SIScheduleBlock::releaseSucc(SUnit *SU, SDep *SuccEdge) { in releaseSucc() 484 for (SDep& Succ : SU->Succs) { in releaseSuccessors() 516 for (SDep& Succ : SU->Succs) { in nodeScheduled() 665 PredDep.getKind() == llvm::SDep::Data) in hasDataDependencyPred() 819 for (SDep& PredDep : SU->Preds) { in colorComputeReservedDependencies() 861 for (SDep& SuccDep : SU->Succs) { in colorComputeReservedDependencies() 945 for (SDep& SuccDep : SU->Succs) { in colorEndsAccordingToDependencies() 1015 for (SDep& SuccDep : SU->Succs) { in colorMergeConstantLoadsNextGroup() [all …]
|
D | GCNMinRegStrategy.cpp | 94 for (auto SDep : SU->Succs) { in getReadySuccessors() local 96 for (auto PDep : SDep.getSUnit()->Preds) { in getReadySuccessors() 187 S.getKind() != SDep::Data) in bumpPredsPriority()
|
D | GCNILPSched.cpp | 65 for (const SDep &Pred : SU->Preds) { in CalcNodeSethiUllmanNumber() 109 for (const SDep &Succ : SU->Succs) { in closestSucc() 124 for (const SDep &Pred : SU->Preds) { in calcMaxScratches()
|
D | R600Packetizer.cpp | 195 const SDep &Dep = SUJ->Succs[i]; in isLegalToPacketizeTogether() 198 if (Dep.getKind() == SDep::Anti) in isLegalToPacketizeTogether() 200 if (Dep.getKind() == SDep::Output) in isLegalToPacketizeTogether()
|