dace icon indicating copy to clipboard operation
dace copied to clipboard

Add resolve condition pass

Open luigifusco opened this issue 1 year ago • 0 comments

This pass takes a Python condition as a string (e.g. "flag == True"), parses it and, assuming it always holds throughout the SDFG, it deletes all unsatisfiable branches.

This is a first step towards implementing "specialized SDFGs". While playing with some code-replication inducing transformations I noticed that the graph quickly became too big to work with. This pass can help users generate different specialized SDFGs and work on those. As an example, if flag is an input boolean that is never written two, two SDFGs, one with flag set to true and the other with flag set to false can be created and worked on indipendently.

Creating as draft since multiple design decisions are still unclear to me

luigifusco avatar Sep 06 '24 14:09 luigifusco