diff --git a/hercules_ir/src/dot.rs b/hercules_ir/src/dot.rs
index 29686a9b6036d18631a80db67ea7c3b8bc1f2ace..3ccee06c351b752f8fb779919f9f609617aafbf5 100644
--- a/hercules_ir/src/dot.rs
+++ b/hercules_ir/src/dot.rs
@@ -57,7 +57,7 @@ fn write_node<W: std::fmt::Write>(
                 let (value_name, visited) =
                     write_node(i, value.idx(), module, constants, visited, w)?;
                 write!(w, "{} [label=\"return\"];\n", name)?;
-                write!(w, "{} -> {};\n", control_name, name)?;
+                write!(w, "{} -> {} [style=\"dashed\"];\n", control_name, name)?;
                 write!(w, "{} -> {};\n", value_name, name)?;
                 visited
             }
@@ -81,7 +81,7 @@ fn write_node<W: std::fmt::Write>(
                 let (right_name, visited) =
                     write_node(i, right.idx(), module, constants, visited, w)?;
                 write!(w, "{} [label=\"add\"];\n", name)?;
-                write!(w, "{} -> {};\n", control_name, name)?;
+                write!(w, "{} -> {} [style=\"dashed\"];\n", control_name, name)?;
                 write!(w, "{} -> {};\n", left_name, name)?;
                 write!(w, "{} -> {};\n", right_name, name)?;
                 visited
@@ -105,7 +105,7 @@ fn write_node<W: std::fmt::Write>(
                     name,
                     module.functions[function.idx()].name
                 )?;
-                write!(w, "{} -> {};\n", control_name, name)?;
+                write!(w, "{} -> {} [style=\"dashed\"];\n", control_name, name)?;
                 write!(
                     w,
                     "{} -> start_{}_0 [lhead={}];\n",