From 40b1a7051700dca032b2747ce9fe57486089ad4e Mon Sep 17 00:00:00 2001
From: Russel Arbore <russel.jma@gmail.com>
Date: Mon, 3 Feb 2025 10:37:12 -0600
Subject: [PATCH] fix

---
 hercules_opt/src/forkify.rs | 24 ++++++++++++++----------
 1 file changed, 14 insertions(+), 10 deletions(-)

diff --git a/hercules_opt/src/forkify.rs b/hercules_opt/src/forkify.rs
index 65ccb586..082f1ae9 100644
--- a/hercules_opt/src/forkify.rs
+++ b/hercules_opt/src/forkify.rs
@@ -349,19 +349,23 @@ pub fn forkify_loop(
             };
             let reduce_id = edit.add_node(reduce);
 
-            if edit.get_schedule(init).contains(&Schedule::ParallelReduce)
-                || edit
-                    .get_schedule(continue_latch)
-                    .contains(&Schedule::ParallelReduce)
+            if (!edit.get_node(init).is_reduce()
+                && edit.get_schedule(init).contains(&Schedule::ParallelReduce))
+                || (!edit.get_node(continue_latch).is_reduce()
+                    && edit
+                        .get_schedule(continue_latch)
+                        .contains(&Schedule::ParallelReduce))
             {
                 edit = edit.add_schedule(reduce_id, Schedule::ParallelReduce)?;
             }
-            if edit
-                .get_schedule(init)
-                .contains(&Schedule::TightAssociative)
-                || edit
-                    .get_schedule(continue_latch)
-                    .contains(&Schedule::TightAssociative)
+            if (!edit.get_node(init).is_reduce()
+                && edit
+                    .get_schedule(init)
+                    .contains(&Schedule::TightAssociative))
+                || (!edit.get_node(continue_latch).is_reduce()
+                    && edit
+                        .get_schedule(continue_latch)
+                        .contains(&Schedule::TightAssociative))
             {
                 edit = edit.add_schedule(reduce_id, Schedule::TightAssociative)?;
             }
-- 
GitLab