ODS InterfacePass generates canScheduleOn method with a specified interface in a header file and currently we import every pass declaration through PassesDetail.h. Gcc/clang seem to compile when there is an unknown interface class but MSVC emits an error. So this PR avoids InterfacePass in ODS and manually implements canScheduleOn in PrepareForEmission.
ODS InterfacePass generates
canScheduleOn
method with a specified interface in a header file and currently we import every pass declaration through PassesDetail.h. Gcc/clang seem to compile when there is an unknown interface class but MSVC emits an error. So this PR avoidsInterfacePass
in ODS and manually implementscanScheduleOn
in PrepareForEmission.Windows CI: https://github.com/llvm/circt/actions/runs/9497120978