[llvm] [AMDGPU] IGroupLP: Avoid DAG manipulation in greedyFind (PR #194827)
Matt Arsenault via llvm-commits
llvm-commits at lists.llvm.org
Wed Apr 29 09:06:51 PDT 2026
================
@@ -322,6 +322,49 @@ class PipelineSolver {
// return the number of edges missed.
int addEdges(SmallVectorImpl<SchedGroup> &SyncPipeline, SUnit *SU, int SGID,
std::list<std::pair<SUnit *, SUnit *>> &AddedEdges);
+
+ /// This class is used to build the edge set implied by an
+ /// assignment of an SUnit to a SchedGroup and to compute the cost
+ /// (edges that cannot be assigned without introducing cycles) of
+ /// the assignment.
+ class EdgeSetBuilder {
+ SUnit *SU;
+ SmallVectorImpl<SchedGroup> &SyncPipeline;
+ bool IsBottomUp;
+ DenseSet<SUnit *> InitialPreds;
----------------
arsenm wrote:
I would expect these sets to be small
https://github.com/llvm/llvm-project/pull/194827
More information about the llvm-commits
mailing list