16 #include "mlir/Pass/Pass.h"
20 #define GEN_PASS_DEF_FINALIZEIR
21 #include "circt/Dialect/FIRRTL/Passes.h.inc"
25 using namespace circt;
28 :
public circt::firrtl::impl::FinalizeIRBase<FinalizeIRPass> {
29 void runOnOperation()
override;
34 void FinalizeIRPass::runOnOperation() {
36 for (
auto verbatim : llvm::make_early_inc_range(
37 getOperation().getBodyRegion().getOps<sv::VerbatimOp>()))
38 if (
auto outputFile = verbatim->getAttrOfType<hw::OutputFileAttr>(
39 hw::OutputFileAttr::getMnemonic()))
40 if (!outputFile.isDirectory() &&
41 outputFile.getExcludeFromFilelist().getValue())
46 return std::make_unique<FinalizeIRPass>();
std::unique_ptr< mlir::Pass > createFinalizeIRPass()
The InstanceGraph op interface, see InstanceGraphInterface.td for more details.