diff --git a/hercules_opt/src/gcm.rs b/hercules_opt/src/gcm.rs
index 446b31849b20fd3fa3d5361a74c15f0514d1dbad..f240589300520d680c1e126ba93728977f1d17e8 100644
--- a/hercules_opt/src/gcm.rs
+++ b/hercules_opt/src/gcm.rs
@@ -486,11 +486,10 @@ fn basic_blocks(
         // Look between the LCA and the schedule early location to place the
         // node.
         let schedule_early = schedule_early[id.idx()].unwrap();
+        // If the node has no users, then it doesn't really matter where we
+        // place it - just place it at the early placement.
         let schedule_late = lca.unwrap_or(schedule_early);
-        let mut chain = dom
-            // If the node has no users, then it doesn't really matter where we
-            // place it - just place it at the early placement.
-            .chain(schedule_late, schedule_early);
+        let mut chain = dom.chain(schedule_late, schedule_early);
 
         if let Some(mut location) = chain.next() {
             while let Some(control_node) = chain.next() {
diff --git a/juno_samples/cava/src/cpu.sch b/juno_samples/cava/src/cpu.sch
index 635de17a475ed696f0c6fa3e6293da3660cb7215..6cd33a3b1054069264ba6406ba37f2b11031f095 100644
--- a/juno_samples/cava/src/cpu.sch
+++ b/juno_samples/cava/src/cpu.sch
@@ -123,9 +123,9 @@ simpl!(fuse5);
 
 delete-uncalled(*);
 simpl!(*);
-xdot[true](fuse1);
 
-simpl!(fuse1);
+
+fork-split(fuse1);
 unforkify(fuse1);
 fork-split(fuse2);
 unforkify(fuse2);