[llvm] [SandboxVec][DAG] Fix unscheduled succs when nodes are scheduled (PR #184946)

Jan Patrick Lehr via llvm-commits llvm-commits at lists.llvm.org
Fri Mar 6 04:25:55 PST 2026


================
@@ -537,12 +537,18 @@ void DependencyGraph::notifySetUse(const Use &U, Value *NewSrc) {
   // NewSrc if needed.
   if (auto *CurrSrcI = dyn_cast<Instruction>(U.get())) {
     if (auto *CurrSrcN = getNode(CurrSrcI)) {
-      CurrSrcN->decrUnscheduledSuccs();
+      // If CurrSrcN is scheduled there is no point in updating UnscheduleSuccs.
+      if (!CurrSrcN->scheduled()) {
+        CurrSrcN->decrUnscheduledSuccs();
+      }
     }
   }
   if (auto *NewSrcI = dyn_cast<Instruction>(NewSrc)) {
     if (auto *NewSrcN = getNode(NewSrcI)) {
-      ++NewSrcN->UnscheduledSuccs;
+      // If CurrSrcN is scheduled there is no point in updating UnscheduleSuccs.
+      if (!NewSrcN->scheduled()) {
+        ++NewSrcN->UnscheduledSuccs;
+      }
----------------
jplehr wrote:

```suggestion
      if (!NewSrcN->scheduled())
        ++NewSrcN->UnscheduledSuccs;
```

https://github.com/llvm/llvm-project/pull/184946


More information about the llvm-commits mailing list