| /src/external/apache2/llvm/dist/llvm/include/llvm/CodeGen/ |
| LatencyPriorityQueue.h | 33 // SUnits - The SUnits for the current graph. 34 std::vector<SUnit> *SUnits; 52 void initNodes(std::vector<SUnit> &sunits) override { 53 SUnits = &sunits; 54 NumNodesSolelyBlocking.resize(SUnits->size(), 0); 58 NumNodesSolelyBlocking.resize(SUnits->size(), 0); 65 SUnits = nullptr; 69 assert(NodeNum < (*SUnits).size()) [all...] |
| ResourcePriorityQueue.h | 38 /// SUnits - The SUnits for the current graph. 39 std::vector<SUnit> *SUnits; 81 void initNodes(std::vector<SUnit> &sunits) override; 84 NumNodesSolelyBlocking.resize(SUnits->size(), 0); 90 SUnits = nullptr; 94 assert(NodeNum < (*SUnits).size()); 95 return (*SUnits)[NodeNum].getHeight();
|
| ScheduleDAGInstrs.h | 185 /// A list of SUnits, used in Value2SUsMap, during DAG construction. 239 /// Topo - A topological ordering for SUnits which permits fast IsReachable 311 /// Builds SUnits for the current region. 381 const SUnit *Addr = SUnits.empty() ? nullptr : &SUnits[0]; 383 SUnits.emplace_back(MI, (unsigned)SUnits.size()); 384 assert((Addr == nullptr || Addr == &SUnits[0]) && 385 "SUnits std::vector reallocated on the fly!"); 386 return &SUnits.back() [all...] |
| AntiDepBreaker.h | 44 virtual unsigned BreakAntiDependencies(const std::vector<SUnit> &SUnits,
|
| ScheduleDAG.h | 100 /// require default constructors. SUnits may not/ have null SDep edges. 184 /// "must alias", meaning that the SUnits at either end of the edge have a 509 virtual void initNodes(std::vector<SUnit> &SUnits) = 0; 562 std::vector<SUnit> SUnits; ///< The scheduling units. 604 /// Verifies that all SUnits were scheduled and that their state is 605 /// consistent. Returns the number of scheduled SUnits. 683 return nodes_iterator(G->SUnits.begin()); 686 return nodes_iterator(G->SUnits.end()); 690 /// This class can compute a topological ordering for SUnits and provides 695 /// A reference to the ScheduleDAG's SUnits [all...] |
| ScheduleDFS.h | 141 void compute(ArrayRef<SUnit> SUnits);
|
| MachinePipeliner.h | 119 /// A toplogical ordering of the SUnits, which is needed for changing 120 /// dependences and iterating over the SUnits. 155 std::vector<SUnit> &SUnits; 167 : SUnits(SUs), Blocked(SUs.size()), B(SUs.size()), AdjK(SUs.size()) { 180 B.assign(SUnits.size(), SmallPtrSet<SUnit *, 4>()); 197 RegClassInfo(rci), II_setByPragma(II), Topo(SUnits, &ExitSU) {
|
| /src/external/apache2/llvm/dist/llvm/lib/Target/AMDGPU/ |
| SIMachineScheduler.cpp | 179 NodeNum2Index[SU->NodeNum] = SUnits.size(); 180 SUnits.push_back(SU); 274 for (SUnit* SU : SUnits) { 392 for (SUnit* SU : SUnits) { 410 assert(SUnits.size() == ScheduledSUnits.size() && 412 for (SUnit* SU : SUnits) { 422 for (SUnit* SU : SUnits) { 429 HasLowLatencyNonWaitedParent.assign(SUnits.size(), 0); 468 if (SuccSU->NodeNum >= DAG->SUnits.size()) 494 HasLowLatencyNonWaitedParent.assign(SUnits.size(), 0) [all...] |
| GCNMinRegStrategy.cpp | 60 void initNumPreds(const decltype(ScheduleDAG::SUnits) &SUnits); 80 void GCNMinRegScheduler::initNumPreds(const decltype(ScheduleDAG::SUnits) &SUnits) { 81 NumPreds.resize(SUnits.size()); 82 for (unsigned I = 0; I < SUnits.size(); ++I) 83 NumPreds[I] = SUnits[I].NumPredsLeft; 227 const auto &SUnits = DAG.SUnits; 229 Schedule.reserve(SUnits.size()) [all...] |
| GCNILPSched.cpp | 292 auto &SUnits = const_cast<ScheduleDAG&>(DAG).SUnits; 295 SUSavedCopy.resize(SUnits.size()); 299 for (const SUnit &SU : SUnits) 302 SUNumbers.assign(SUnits.size(), 0); 303 for (const SUnit &SU : SUnits) 313 Schedule.reserve(SUnits.size()); 345 assert(SUnits.size() == Schedule.size()); 350 for (auto &SU : SUnits)
|
| AMDGPUExportClustering.cpp | 118 for (SUnit &SU : DAG->SUnits) {
|
| SIMachineScheduler.h | 63 std::vector<SUnit*> SUnits; 136 int getCost() { return SUnits.size(); } 239 // 1 to SUnits.size() -> Reserved group (you should only add elements to them).
|
| /src/external/apache2/llvm/dist/llvm/lib/CodeGen/SelectionDAG/ |
| ScheduleDAGVLIW.cpp | 53 /// AvailableQueue - The priority queue to use for the available SUnits. 100 AvailableQueue->initNodes(SUnits); 172 for (unsigned i = 0, e = SUnits.size(); i != e; ++i) { 174 if (SUnits[i].Preds.empty()) { 175 AvailableQueue->push(&SUnits[i]); 176 SUnits[i].isAvailable = true; 183 Sequence.reserve(SUnits.size());
|
| ScheduleDAGSDNodes.cpp | 72 if (!SUnits.empty()) 73 Addr = &SUnits[0]; 75 SUnits.emplace_back(N, (unsigned)SUnits.size()); 76 assert((Addr == nullptr || Addr == &SUnits[0]) && 77 "SUnits std::vector reallocated on the fly!"); 78 SUnits.back().OrigNode = &SUnits.back(); 79 SUnit *SU = &SUnits.back(); 320 // Cluster loads from "near" addresses into combined SUnits [all...] |
| ScheduleDAGRRList.cpp | 143 /// AvailableQueue - The priority queue to use for the available SUnits. 180 /// Topo - A topological ordering for SUnits which permits fast IsReachable 194 Topo(SUnits, nullptr) { 278 unsigned NumSUnits = SUnits.size(); 288 unsigned NumSUnits = SUnits.size(); 376 AvailableQueue->initNodes(SUnits); 587 SUnit *Def = &SUnits[N->getNodeId()]; 1005 LoadSU = &SUnits[LoadNode->getNodeId()]; 1023 NewSU = &SUnits[N->getNodeId()]; 1602 if (!SUnits.empty()) [all...] |
| ResourcePriorityQueue.cpp | 167 void ResourcePriorityQueue::initNodes(std::vector<SUnit> &sunits) { 168 SUnits = &sunits; 169 NumNodesSolelyBlocking.resize(SUnits->size(), 0); 171 for (unsigned i = 0, e = SUnits->size(); i != e; ++i) { 172 SUnit *SU = &(*SUnits)[i];
|
| /src/external/apache2/llvm/dist/llvm/lib/Target/Hexagon/ |
| HexagonSubtarget.cpp | 199 for (SUnit &SU : DAG->SUnits) { 212 for (SUnit &SU : DAG->SUnits) { 275 for (unsigned su = 0, e = DAG->SUnits.size(); su != e; ++su) { 277 if (DAG->SUnits[su].getInstr()->isCall()) 278 LastSequentialCall = &DAG->SUnits[su]; 280 else if (DAG->SUnits[su].getInstr()->isCompare() && LastSequentialCall) 281 DAG->addEdge(&DAG->SUnits[su], SDep(LastSequentialCall, SDep::Barrier)); 284 shouldTFRICallBind(HII, DAG->SUnits[su], DAG->SUnits[su+1])) 285 DAG->addEdge(&DAG->SUnits[su], SDep(&DAG->SUnits[su-1], SDep::Barrier)) [all...] |
| /src/external/apache2/llvm/dist/llvm/lib/CodeGen/ |
| CriticalAntiDepBreaker.h | 82 unsigned BreakAntiDependencies(const std::vector<SUnit> &SUnits,
|
| ScheduleDAG.cpp | 65 SUnits.clear(); 393 for (const SUnit &SUnit : SUnits) { 434 return SUnits.size() - DeadNodes; 470 unsigned DAGSize = SUnits.size(); 480 for (SUnit &SU : SUnits) { 514 for (SUnit &SU : SUnits) { 573 WorkList.reserve(SUnits.size()); 583 // Edges to non-SUnits are allowed but ignored (e.g. ExitSU). 613 WorkList.reserve(SUnits.size()); 625 // Edges to non-SUnits are allowed but ignored (e.g. ExitSU) [all...] |
| PostRASchedulerList.cpp | 113 /// AvailableQueue - The priority queue to use for the available SUnits. 395 AntiDepBreak->BreakAntiDependencies(SUnits, RegionBegin, RegionEnd, 417 AvailableQueue.initNodes(SUnits); 534 for (unsigned i = 0, e = SUnits.size(); i != e; ++i) { 536 if (!SUnits[i].NumPredsLeft && !SUnits[i].isAvailable) { 537 AvailableQueue.push(&SUnits[i]); 538 SUnits[i].isAvailable = true; 549 Sequence.reserve(SUnits.size());
|
| MachinePipeliner.cpp | 744 for (auto &SU : SUnits) { 841 for (SUnit &I : SUnits) { 924 for (SUnit &I : SUnits) { 1194 static void swapAntiDependences(std::vector<SUnit> &SUnits) { 1196 for (unsigned i = 0, e = SUnits.size(); i != e; ++i) { 1197 SUnit *SU = &SUnits[i]; 1222 BitVector Added(SUnits.size()); 1224 for (int i = 0, e = SUnits.size(); i != e; ++i) { 1227 for (auto &SI : SUnits[i].Succs) { 1253 for (auto &PI : SUnits[i].Preds) [all...] |
| AggressiveAntiDepBreaker.h | 142 unsigned BreakAntiDependencies(const std::vector<SUnit> &SUnits,
|
| MacroFusion.cpp | 125 for (SUnit &SU : DAG.SUnits) { 156 // For each of the SUnits in the scheduling block, try to fuse the instr in 158 for (SUnit &ISU : DAG->SUnits)
|
| CriticalAntiDepBreaker.cpp | 441 BreakAntiDependencies(const std::vector<SUnit> &SUnits, 448 if (SUnits.empty()) return 0; 458 for (unsigned i = 0, e = SUnits.size(); i != e; ++i) { 459 const SUnit *SU = &SUnits[i]; 579 // Also, if there are dependencies on other SUnits with the
|
| AggressiveAntiDepBreaker.cpp | 746 const std::vector<SUnit> &SUnits, 758 if (SUnits.empty()) return 0; 765 for (unsigned i = 0, e = SUnits.size(); i != e; ++i) { 766 const SUnit *SU = &SUnits[i]; 777 for (unsigned i = 0, e = SUnits.size(); i != e; ++i) { 778 const SUnit *SU = &SUnits[i]; 883 // Also, if there are dependencies on other SUnits with the
|