calyx icon indicating copy to clipboard operation
calyx copied to clipboard

`-d <alias>` disables all instances of the pass invocation

Open rachitnigam opened this issue 3 years ago • 1 comments

An unintuitive problem that @paili0628 ran into for the #959 pass implementation is that the default pipeline now needs to call dead-group-removal twice. However, the -d <pass> option disables all instances the pass because it is excluded from the pass pipeline. The tests/passes/tdcc tests do -d post-opt which is an alias to -d dead-group-removal -d dead-cell-removal ... which hides the fact that the dead-group-removal pass is being implicitly disabled make the cause of the bug non-obvious.

We probably need to rethink the -d flag a little more and see if it makes sense. Long term, we probably need to re-design the pass manager.

rachitnigam avatar Apr 25 '22 13:04 rachitnigam

ahhh interesting and tricky! Maybe aliases should be more of a first class scheduling concept so disabling them is disabling a particular block in the main compilation chain rather than disabling each of its constituent passes

EclecticGriffin avatar Apr 25 '22 14:04 EclecticGriffin