Open Berke-Ates opened 1 month ago
@phschaad FYI
It seems that the way the work-depth analysis for an SDFG was implemented, it is a destructive analysis (breaking loop cycles). I will indirectly fix this by transitioning the analysis into one that uses control flow lifting to perform the analysis on loop regions. This avoids the issue altogether. An intermediate quickfix is to create a deepcopy of the SDFG and performing analysis on that instead.
Describe the bug Using
scope_work_depth()
on an SDFG with loops removes the backedges in the state machine.To Reproduce Steps to reproduce the behavior:
out.sdfg
Expected behavior
scope_work_depth()
should not modify the passed SDFG.Screenshots The SDFG on the left is the sample SDFG and the SDFG on right has been analysed with
scope_work_depth()
.