HomeSort by relevance Sort by last modified time
    Searched refs:SDep (Results 1 - 17 of 17) sorted by null

  /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)

Completed in 746 milliseconds