From ac94020e536b0f2a06467c82331fd6c859779aa1 Mon Sep 17 00:00:00 2001 From: Matt Wala <wala1@illinois.edu> Date: Sat, 30 May 2020 22:31:53 -0500 Subject: [PATCH] Revert "Use pytools.compute_topological_order" This reverts commit 16f058b3f6d8a805d75e152fef17ded1169f2346. --- loopy/kernel/tools.py | 18 ++++++++++++------ 1 file changed, 12 insertions(+), 6 deletions(-) diff --git a/loopy/kernel/tools.py b/loopy/kernel/tools.py index bccff71bd..ac1e00bae 100644 --- a/loopy/kernel/tools.py +++ b/loopy/kernel/tools.py @@ -1422,15 +1422,21 @@ def draw_dependencies_as_unicode_arrows( def stringify_instruction_list(kernel): # {{{ topological sort - from pytools.graph import compute_topological_order + printed_insn_ids = set() + printed_insn_order = [] - dep_graph = {} - for insn in kernel.instructions: - dep_graph[insn.id] = natsorted(insn.depends_on) + def insert_insn_into_order(insn): + if insn.id in printed_insn_ids: + return + printed_insn_ids.add(insn.id) - printed_insn_order = compute_topological_order(dep_graph) + for dep_id in natsorted(insn.depends_on): + insert_insn_into_order(kernel.id_to_insn[dep_id]) - del dep_graph + printed_insn_order.append(insn) + + for insn in kernel.instructions: + insert_insn_into_order(insn) # }}} -- GitLab