Home
last modified time | relevance | path

Searched refs:Clusters (Results 1 – 8 of 8) sorted by relevance

/freebsd/contrib/llvm-project/llvm/lib/CodeGen/
H A DSwitchLoweringUtils.cpp23 uint64_t SwitchCG::getJumpTableRange(const CaseClusterVector &Clusters, in getJumpTableRange() argument
26 const APInt &LowCase = Clusters[First].Low->getValue(); in getJumpTableRange()
27 const APInt &HighCase = Clusters[Last].High->getValue(); in getJumpTableRange()
46 void SwitchCG::SwitchLowering::findJumpTables(CaseClusterVector &Clusters, in findJumpTables() argument
54 assert(!Clusters.empty()); in findJumpTables()
55 for (CaseCluster &C : Clusters) in findJumpTables()
57 for (unsigned i = 1, e = Clusters.size(); i < e; ++i) in findJumpTables()
58 assert(Clusters[i - 1].High->getValue().slt(Clusters[i].Low->getValue())); in findJumpTables()
69 const int64_t N = Clusters.size(); in findJumpTables()
76 const APInt &Hi = Clusters[i].High->getValue(); in findJumpTables()
[all …]
H A DMacroFusion.cpp77 auto &Clusters = DAG.getClusters(); in fuseInstructionPair() local
79 FirstSU.ParentClusterIdx = Clusters.size(); in fuseInstructionPair()
80 SecondSU.ParentClusterIdx = Clusters.size(); in fuseInstructionPair()
83 Clusters.push_back(Cluster); in fuseInstructionPair()
H A DMachineScheduler.cpp2106 EquivalenceClasses<SUnit *> Clusters; in clusterNeighboringMemOps() local
2154 Clusters.unionSets(SUa, SUb); in clusterNeighboringMemOps()
2198 for (const EquivalenceClasses<SUnit *>::ECValue *I : Clusters) { in clusterNeighboringMemOps()
2203 for (SUnit *MemberI : Clusters.members(*I)) { in clusterNeighboringMemOps()
/freebsd/contrib/llvm-project/llvm/include/llvm/CodeGen/
H A DSwitchLoweringUtils.h90 void sortAndRangeify(CaseClusterVector &Clusters);
241 uint64_t getJumpTableRange(const CaseClusterVector &Clusters, unsigned First,
281 void findJumpTables(CaseClusterVector &Clusters, const SwitchInst *SI,
285 bool buildJumpTable(const CaseClusterVector &Clusters, unsigned First,
290 void findBitTestClusters(CaseClusterVector &Clusters, const SwitchInst *SI);
294 bool buildBitTests(CaseClusterVector &Clusters, unsigned First, unsigned Last,
H A DScheduleDAGInstrs.h184 SmallVector<ClusterInfo> Clusters; variable
390 SmallVector<ClusterInfo> &getClusters() { return Clusters; } in getClusters()
394 return Idx != InvalidClusterId ? &Clusters[Idx] : nullptr; in getCluster()
/freebsd/contrib/llvm-project/llvm/lib/CodeGen/GlobalISel/
H A DIRTranslator.cpp710 CaseClusterVector Clusters; in translateSwitch() local
711 Clusters.reserve(SI.getNumCases()); in translateSwitch()
719 Clusters.push_back(CaseCluster::range(CaseVal, CaseVal, Succ, Prob)); in translateSwitch()
727 sortAndRangeify(Clusters); in translateSwitch()
732 if (Clusters.empty()) { in translateSwitch()
739 SL->findJumpTables(Clusters, &SI, std::nullopt, DefaultMBB, nullptr, nullptr); in translateSwitch()
740 SL->findBitTestClusters(Clusters, &SI); in translateSwitch()
744 for (const CaseCluster &C : Clusters) { in translateSwitch()
760 assert(!Clusters.empty()); in translateSwitch()
762 CaseClusterIt First = Clusters.begin(); in translateSwitch()
[all …]
/freebsd/contrib/llvm-project/llvm/lib/CodeGen/SelectionDAG/
H A DSelectionDAGBuilder.cpp12407 const SwitchInst &SI, CaseClusterVector &Clusters, in peelDominantCaseCluster() argument
12411 if (SwitchPeelThreshold > 100 || !FuncInfo.BPI || Clusters.size() < 2 || in peelDominantCaseCluster()
12419 for (unsigned Index = 0; Index < Clusters.size(); ++Index) { in peelDominantCaseCluster()
12420 CaseCluster &CC = Clusters[Index]; in peelDominantCaseCluster()
12441 auto PeeledCaseIt = Clusters.begin() + PeeledCaseIndex; in peelDominantCaseCluster()
12446 Clusters.erase(PeeledCaseIt); in peelDominantCaseCluster()
12447 for (CaseCluster &CC : Clusters) { in peelDominantCaseCluster()
12461 CaseClusterVector Clusters; in visitSwitch() local
12462 Clusters.reserve(SI.getNumCases()); in visitSwitch()
12469 Clusters.push_back(CaseCluster::range(CaseVal, CaseVal, Succ, Prob)); in visitSwitch()
[all …]
H A DSelectionDAGBuilder.h215 SwitchCG::CaseClusterVector &Clusters,