/external/llvm/include/llvm/CodeGen/ |
ScheduleDAG.h | 43 /// SDep - Scheduling dependency. This represents one direction of an 45 class SDep { 95 /// SDep - Construct a null SDep. This is only for use by container 97 /// have null SDep edges. 98 SDep() : Dep(nullptr, Data) {} 100 /// SDep - Construct an SDep with the specified values. 101 SDep(SUnit *S, Kind kind, unsigned Reg) 109 "SDep::Anti and SDep::Output must use a non-zero Reg!") [all...] |
MachineScheduler.h | 285 bool addEdge(SUnit *SuccSU, const SDep &PredDep); 338 void releaseSucc(SUnit *SU, SDep *SuccEdge); 340 void releasePred(SUnit *SU, SDep *PredEdge);
|
/external/llvm/include/llvm/Target/ |
TargetSubtargetInfo.h | 26 class SDep; 139 virtual void adjustSchedDependency(SUnit *def, SUnit *use, SDep &dep) const {}
|
/external/llvm/lib/CodeGen/ |
ScheduleDAG.cpp | 65 bool SUnit::addPred(const SDep &D, bool Required) { 67 for (SmallVectorImpl<SDep>::iterator I = Preds.begin(), E = Preds.end(); 78 SDep ForwardD = *I; 80 for (SmallVectorImpl<SDep>::iterator II = PredSU->Succs.begin(), 93 SDep P = D; 97 if (D.getKind() == SDep::Data) { 133 void SUnit::removePred(const SDep &D) { 135 for (SmallVectorImpl<SDep>::iterator I = Preds.begin(), E = Preds.end(); 139 SDep P = D; 142 SmallVectorImpl<SDep>::iterator Succ = std::find(N->Succs.begin() [all...] |
ScheduleDAGInstrs.cpp | 272 SDep Dep; 274 Dep = SDep(SU, SDep::Artificial); 279 Dep = SDep(SU, SDep::Data, *Alias); 305 SDep::Kind Kind = MO.isUse() ? SDep::Anti : SDep::Output; 315 (Kind != SDep::Output || !MO.isDead() || 317 if (Kind == SDep::Anti [all...] |
AggressiveAntiDepBreaker.cpp | 254 static void AntiDepEdges(const SUnit *SU, std::vector<const SDep*>& Edges) { 258 if ((P->getKind() == SDep::Anti) || (P->getKind() == SDep::Output)) { 268 const SDep *Next = nullptr; 280 (NextDepth == PredTotalLatency && P->getKind() == SDep::Anti)) { 803 std::vector<const SDep *> Edges; 822 const SDep *Edge = Edges[i]; 825 if ((Edge->getKind() != SDep::Anti) && 826 (Edge->getKind() != SDep::Output)) continue; 868 (P->getKind() != SDep::Anti || P->getReg() != AntiDepReg) [all...] |
CriticalAntiDepBreaker.cpp | 130 static const SDep *CriticalPathStep(const SUnit *SU) { 131 const SDep *Next = nullptr; 142 (NextDepth == PredTotalLatency && P->getKind() == SDep::Anti)) { 540 if (const SDep *Edge = CriticalPathStep(CriticalPathSU)) { 544 if (Edge->getKind() == SDep::Anti) { 566 (P->getKind() != SDep::Anti || P->getReg() != AntiDepReg) : 567 (P->getKind() == SDep::Data && P->getReg() == AntiDepReg)) {
|
MachineScheduler.cpp | 522 bool ScheduleDAGMI::addEdge(SUnit *SuccSU, const SDep &PredDep) { 539 void ScheduleDAGMI::releaseSucc(SUnit *SU, SDep *SuccEdge) { 578 void ScheduleDAGMI::releasePred(SUnit *SU, SDep *PredEdge) { [all...] |
PostRASchedulerList.cpp | 179 void ReleaseSucc(SUnit *SU, SDep *SuccEdge); 435 void SchedulePostRATDList::ReleaseSucc(SUnit *SU, SDep *SuccEdge) {
|
/external/llvm/lib/CodeGen/SelectionDAG/ |
ScheduleDAGFast.cpp | 88 void AddPred(SUnit *SU, const SDep &D) { 94 void RemovePred(SUnit *SU, const SDep &D) { 99 void ReleasePred(SUnit *SU, SDep *PredEdge); 140 void ScheduleDAGFast::ReleasePred(SUnit *SU, SDep *PredEdge) { 281 SDep ChainPred; 282 SmallVector<SDep, 4> ChainSuccs; 283 SmallVector<SDep, 4> LoadPreds; 284 SmallVector<SDep, 4> NodePreds; 285 SmallVector<SDep, 4> NodeSuccs; 310 const SDep &Pred = LoadPreds[i] [all...] |
ScheduleDAGVLIW.cpp | 87 void releaseSucc(SUnit *SU, const SDep &D); 116 void ScheduleDAGVLIW::releaseSucc(SUnit *SU, const SDep &D) {
|
ScheduleDAGRRList.cpp | 199 void AddPred(SUnit *SU, const SDep &D) { 207 void RemovePred(SUnit *SU, const SDep &D) { 218 void ReleasePred(SUnit *SU, const SDep *PredEdge); 225 void CapturePred(SDep *PredEdge); 365 void ScheduleDAGRRList::ReleasePred(SUnit *SU, const SDep *PredEdge) { 791 void ScheduleDAGRRList::CapturePred(SDep *PredEdge) { [all...] |
ScheduleDAGSDNodes.h | 32 /// SDNode-based scheduling graphs do not use SDep::Anti or SDep::Output 103 unsigned OpIdx, SDep& dep) const;
|
ScheduleDAGSDNodes.cpp | 488 SDep Dep = isChain ? SDep(OpSU, SDep::Barrier) 489 : SDep(OpSU, SDep::Data, PhysReg); 628 unsigned OpIdx, SDep& dep) const{ 633 if (dep.getKind() != SDep::Data) [all...] |
/external/llvm/lib/Target/Hexagon/ |
HexagonVLIWPacketizer.cpp | 144 bool IsCallDependent(MachineInstr* MI, SDep::Kind DepType, unsigned DepReg); 145 bool PromoteToDotNew(MachineInstr* MI, SDep::Kind DepType, 320 SDep::Kind DepType, 352 if (IsIndirectCall(MI) && (DepType == SDep::Data)) { 362 static bool IsRegDependence(const SDep::Kind DepType) { 363 return (DepType == SDep::Data || DepType == SDep::Anti || 364 DepType == SDep::Output); 429 SDep::Kind DepType, MachineBasicBlock::iterator &MII, 432 assert (DepType == SDep::Data) [all...] |
HexagonMachineScheduler.cpp | 34 SUnits[su].addPred(SDep(LastSequentialCall, SDep::Barrier));
|
/external/llvm/lib/Target/R600/ |
R600Packetizer.cpp | 201 const SDep &Dep = SUJ->Succs[i]; 204 if (Dep.getKind() == SDep::Anti) 206 if (Dep.getKind() == SDep::Output)
|