From ec1fb83c4969aa78043b4b80417888b6cc1d0ee4 Mon Sep 17 00:00:00 2001
From: Andreas Kloeckner <inform@tiker.net>
Date: Mon, 19 Dec 2016 16:12:39 +0100
Subject: [PATCH] Fix dependency graph drawing for {Call,ReturnFrom}Kernel

---
 loopy/kernel/tools.py | 6 ++++--
 1 file changed, 4 insertions(+), 2 deletions(-)

diff --git a/loopy/kernel/tools.py b/loopy/kernel/tools.py
index 754507026..85a8da936 100644
--- a/loopy/kernel/tools.py
+++ b/loopy/kernel/tools.py
@@ -527,7 +527,9 @@ def get_dot_dependency_graph(kernel, iname_cluster=True, use_insn_id=False):
             lines.append("%s -> %s" % (insn_2, insn_1))
 
     if iname_cluster:
-        from loopy.schedule import EnterLoop, LeaveLoop, RunInstruction, Barrier
+        from loopy.schedule import (
+                EnterLoop, LeaveLoop, RunInstruction, Barrier,
+                CallKernel, ReturnFromKernel)
 
         for sched_item in kernel.schedule:
             if isinstance(sched_item, EnterLoop):
@@ -537,7 +539,7 @@ def get_dot_dependency_graph(kernel, iname_cluster=True, use_insn_id=False):
                 lines.append("}")
             elif isinstance(sched_item, RunInstruction):
                 lines.append(sched_item.insn_id)
-            elif isinstance(sched_item, Barrier):
+            elif isinstance(sched_item, (CallKernel, ReturnFromKernel, Barrier)):
                 pass
             else:
                 raise LoopyError("schedule item not unterstood: %r" % sched_item)
-- 
GitLab