diff --git a/dace/transformation/dataflow/map_expansion.py b/dace/transformation/dataflow/map_expansion.py index 8bc14213b0..0fbded6ff7 100644 --- a/dace/transformation/dataflow/map_expansion.py +++ b/dace/transformation/dataflow/map_expansion.py @@ -136,10 +136,14 @@ def apply(self, graph: dace.SDFGState, sdfg: dace.SDFG): graph.add_edge(entries[-1], edge.src_conn, edge.dst, edge.dst_conn, memlet=copy.deepcopy(edge.data)) graph.remove_edge(edge) - if graph.in_degree(map_entry) == 0: + if graph.in_degree(map_entry) == 0 or all( + e.dst_conn is None or not e.dst_conn.startswith("IN_") + for e in graph.in_edges(map_entry)): graph.add_memlet_path(map_entry, *entries, memlet=dace.Memlet()) else: for edge in graph.in_edges(map_entry): + if edge.dst_conn is None: + continue if not edge.dst_conn.startswith("IN_"): continue