Searched refs:SUnits (Results 1 - 24 of 24) sorted by relevance

/external/llvm/include/llvm/CodeGen/
H A DLatencyPriorityQueue.h33 // SUnits - The SUnits for the current graph.
34 std::vector<SUnit> *SUnits; member in class:llvm::LatencyPriorityQueue
53 SUnits = &sunits;
54 NumNodesSolelyBlocking.resize(SUnits->size(), 0);
58 NumNodesSolelyBlocking.resize(SUnits->size(), 0);
65 SUnits = nullptr;
69 assert(NodeNum < (*SUnits).size());
70 return (*SUnits)[NodeNum].getHeight();
H A DScheduleDAGInstrs.h122 /// is mapped to a set of SUnits. These include all local vreg uses, not
207 /// buildSchedGraph - Build SUnits from the MachineBasicBlock that we are
263 const SUnit *Addr = SUnits.empty() ? nullptr : &SUnits[0];
265 SUnits.push_back(SUnit(MI, (unsigned)SUnits.size()));
266 assert((Addr == nullptr || Addr == &SUnits[0]) &&
267 "SUnits std::vector reallocated on the fly!");
268 SUnits.back().OrigNode = &SUnits
[all...]
H A DResourcePriorityQueue.h39 /// SUnits - The SUnits for the current graph.
40 std::vector<SUnit> *SUnits; member in class:llvm::ResourcePriorityQueue
89 NumNodesSolelyBlocking.resize(SUnits->size(), 0);
95 SUnits = nullptr;
99 assert(NodeNum < (*SUnits).size());
100 return (*SUnits)[NodeNum].getHeight();
H A DScheduleDAG.h96 /// classes which require default constructors. SUnits may not
194 /// as "must alias", meaning that the SUnits at either end of the edge
268 // Preds/Succs - The SUnits before/after us in the graph.
506 virtual void initNodes(std::vector<SUnit> &SUnits) = 0;
559 std::vector<SUnit> SUnits; // The scheduling units. member in class:llvm::SUnit::ScheduleDAG
603 /// VerifyScheduledDAG - Verify that all SUnits were scheduled and that
604 /// their state is consistent. Return the number of scheduled SUnits.
678 return G->SUnits.begin();
681 return G->SUnits.end();
686 /// ordering for SUnits an
693 std::vector<SUnit> &SUnits; member in class:llvm::SUnit::ScheduleDAGTopologicalSort
[all...]
H A DScheduleDFS.h142 void compute(ArrayRef<SUnit> SUnits);
H A DMachineScheduler.h228 /// Topo - A topological ordering for SUnits which permits fast IsReachable
255 AA(C->AA), SchedImpl(std::move(S)), Topo(SUnits, &ExitSU), CurrentTop(),
469 /// ReadyQueue encapsulates vector of "ready" SUnits with basic convenience
/external/llvm/lib/CodeGen/SelectionDAG/
H A DScheduleDAGVLIW.cpp53 /// AvailableQueue - The priority queue to use for the available SUnits.
104 AvailableQueue->initNodes(SUnits);
177 for (unsigned i = 0, e = SUnits.size(); i != e; ++i) {
179 if (SUnits[i].Preds.empty()) {
180 AvailableQueue->push(&SUnits[i]);
181 SUnits[i].isAvailable = true;
188 Sequence.reserve(SUnits.size());
H A DScheduleDAGSDNodes.cpp72 if (!SUnits.empty())
73 Addr = &SUnits[0];
75 SUnits.push_back(SUnit(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();
307 // Cluster loads from "near" addresses into combined SUnits
[all...]
H A DResourcePriorityQueue.cpp171 SUnits = &sunits;
172 NumNodesSolelyBlocking.resize(SUnits->size(), 0);
174 for (unsigned i = 0, e = SUnits->size(); i != e; ++i) {
175 SUnit *SU = &(*SUnits)[i];
H A DScheduleDAGFast.cpp70 /// AvailableQueue - The priority queue to use for the available SUnits.
127 DEBUG(for (unsigned su = 0, e = SUnits.size(); su != e; ++su)
128 SUnits[su].dumpAll(this));
274 LoadSU = &SUnits[LoadNode->getNodeId()];
534 if (!SUnits.empty()) {
535 SUnit *RootSU = &SUnits[DAG->getRoot().getNode()->getNodeId()];
545 Sequence.reserve(SUnits.size());
H A DScheduleDAGRRList.cpp118 /// AvailableQueue - The priority queue to use for the available SUnits.
153 /// Topo - A topological ordering for SUnits which permits fast IsReachable
167 Topo(SUnits, nullptr) {
245 unsigned NumSUnits = SUnits.size();
256 unsigned NumSUnits = SUnits.size();
340 DEBUG(for (unsigned su = 0, e = SUnits.size(); su != e; ++su)
341 SUnits[su].dumpAll(this));
344 AvailableQueue->initNodes(SUnits);
559 SUnit *Def = &SUnits[N->getNodeId()];
990 LoadSU = &SUnits[LoadNod
[all...]
H A DSelectionDAGPrinter.cpp297 GW.emitEdge(nullptr, -1, &SUnits[N->getNodeId()], -1,
/external/llvm/lib/CodeGen/
H A DScheduleDAG.cpp52 SUnits.clear();
381 /// VerifyScheduledDAG - Verify that all SUnits were scheduled and that
387 for (unsigned i = 0, e = SUnits.size(); i != e; ++i) {
388 if (!SUnits[i].isScheduled) {
389 if (SUnits[i].NumPreds == 0 && SUnits[i].NumSuccs == 0) {
395 SUnits[i].dump(this);
399 if (SUnits[i].isScheduled &&
400 (isBottomUp ? SUnits[i].getHeight() : SUnits[
[all...]
H A DAntiDepBreaker.h45 virtual unsigned BreakAntiDependencies(const std::vector<SUnit>& SUnits,
H A DCriticalAntiDepBreaker.h81 unsigned BreakAntiDependencies(const std::vector<SUnit>& SUnits,
H A DPostRASchedulerList.cpp105 /// AvailableQueue - The priority queue to use for the available SUnits.
371 AntiDepBreak->BreakAntiDependencies(SUnits, RegionBegin, RegionEnd,
389 DEBUG(for (unsigned su = 0, e = SUnits.size(); su != e; ++su)
390 SUnits[su].dumpAll(this));
392 AvailableQueue.initNodes(SUnits);
503 for (unsigned i = 0, e = SUnits.size(); i != e; ++i) {
505 if (!SUnits[i].NumPredsLeft && !SUnits[i].isAvailable) {
506 AvailableQueue.push(&SUnits[i]);
507 SUnits[
[all...]
H A DDFAPacketizer.cpp169 for (unsigned i = 0, e = VLIWScheduler->SUnits.size(); i != e; ++i) {
170 SUnit *SU = &VLIWScheduler->SUnits[i];
H A DAggressiveAntiDepBreaker.h145 unsigned BreakAntiDependencies(const std::vector<SUnit>& SUnits,
H A DCriticalAntiDepBreaker.cpp446 BreakAntiDependencies(const std::vector<SUnit>& SUnits, argument
453 if (SUnits.empty()) return 0;
463 for (unsigned i = 0, e = SUnits.size(); i != e; ++i) {
464 const SUnit *SU = &SUnits[i];
583 // Also, if there are dependencies on other SUnits with the
H A DAggressiveAntiDepBreaker.cpp709 const std::vector<SUnit>& SUnits,
722 if (SUnits.empty()) return 0;
729 for (unsigned i = 0, e = SUnits.size(); i != e; ++i) {
730 const SUnit *SU = &SUnits[i];
741 for (unsigned i = 0, e = SUnits.size(); i != e; ++i) {
742 const SUnit *SU = &SUnits[i];
845 // Also, if there are dependencies on other SUnits with the
H A DMachineScheduler.cpp658 DEBUG(for (unsigned su = 0, e = SUnits.size(); su != e; ++su)
659 SUnits[su].dumpAll(this));
723 I = SUnits.begin(), E = SUnits.end(); I != E; ++I) {
725 assert(!SU->isBoundaryNode() && "Boundary node should not be in SUnits");
1000 DEBUG(for (unsigned su = 0, e = SUnits.size(); su != e; ++su)
1001 SUnits[su].dumpAll(this));
1075 DFSResult->resize(SUnits.size());
1076 DFSResult->compute(SUnits);
1298 for (unsigned Idx = 0, End = DAG->SUnits
[all...]
H A DScheduleDAGInstrs.cpp331 // Either insert a new Reg2SUnits entry with an empty SUnits list, or
332 // retrieve the existing SUnits list for this register's uses.
678 /// After initSUnits, the SUnits vector cannot be resized and the scheduler may
687 SUnits.reserve(NumRegionInstrs);
749 PDiffs->init(SUnits.size());
1452 void SchedDFSResult::compute(ArrayRef<SUnit> SUnits) { argument
1458 SI = SUnits.begin(), SE = SUnits.end(); SI != SE; ++SI) {
/external/llvm/lib/Target/Hexagon/
H A DHexagonMachineScheduler.cpp28 for (unsigned su = 0, e = SUnits.size(); su != e; ++su) {
30 if (SUnits[su].getInstr()->isCall())
31 LastSequentialCall = &(SUnits[su]);
33 else if (SUnits[su].getInstr()->isCompare() && LastSequentialCall)
34 SUnits[su].addPred(SDep(LastSequentialCall, SDep::Barrier));
167 for (unsigned su = 0, e = SUnits.size(); su != e; ++su)
168 if (SUnits[su].getHeight() > maxH)
169 maxH = SUnits[su].getHeight();
172 for (unsigned su = 0, e = SUnits.size(); su != e; ++su)
173 if (SUnits[s
[all...]
/external/llvm/lib/Target/R600/
H A DR600MachineScheduler.cpp131 for (unsigned i = 0; i < DAG->SUnits.size(); i++) {
132 const SUnit &S = DAG->SUnits[i];

Completed in 3661 milliseconds