diff --git a/hercules_opt/src/gcm.rs b/hercules_opt/src/gcm.rs
index 271bfaf1da55f6c8ab342d06853532eb5ce99fff..b13c919abe4f7f99874185f110e7a145c9327d5e 100644
--- a/hercules_opt/src/gcm.rs
+++ b/hercules_opt/src/gcm.rs
@@ -290,7 +290,7 @@ fn basic_blocks(
                     .collect();
                 for mutator in reverse_postorder.iter() {
                     let mutator_early = schedule_early[mutator.idx()].unwrap();
-                    if dom.does_dom(root_early, mutator_early)
+                    if dom.does_prop_dom(root_early, mutator_early)
                         && (root_early != mutator_early
                             || root_block_iterated_users.contains(&mutator))
                         && mutating_objects(function, func_id, *mutator, objects)