diff --git a/loopy/kernel/instruction.py b/loopy/kernel/instruction.py
index 2e81c2e382561bafd18b49c81fae31905eb10e8e..1f1b842a2b6bd803b7fa0ffa37daea3a1d76cb6e 100644
--- a/loopy/kernel/instruction.py
+++ b/loopy/kernel/instruction.py
@@ -222,6 +222,10 @@ class InstructionBase(ImmutableRecord):
         if within_inames_is_final is None:
             within_inames_is_final = False
 
+        if isinstance(depends_on, str):
+            depends_on = frozenset(
+                    s.strip() for s in depends_on.split() if s.strip())
+
         if depends_on_is_final is None:
             depends_on_is_final = False