9 #ifndef CIRCT_DIALECT_MSFT_MSFTPASSES_H
10 #define CIRCT_DIALECT_MSFT_MSFTPASSES_H
15 #include "mlir/Pass/Pass.h"
16 #include "mlir/Pass/PassRegistry.h"
29 DenseMap<Operation *, SmallVector<igraph::InstanceOpInterface, 1>>
39 SmallVectorImpl<hw::HWModuleLike> &mods);
41 SmallVectorImpl<hw::HWModuleLike> &mods,
42 DenseSet<Operation *> &modsSeen);
46 #include "circt/Dialect/MSFT/MSFTPasses.h.inc"
53 #define GEN_PASS_REGISTRATION
54 #include "circt/Dialect/MSFT/MSFTPasses.h.inc"
Default symbol cache implementation; stores associations between names (StringAttr's) to mlir::Operat...
std::unique_ptr< mlir::Pass > createExportTclPass()
std::unique_ptr< mlir::Pass > createLowerConstructsPass()
std::unique_ptr< mlir::Pass > createLowerInstancesPass()
The InstanceGraph op interface, see InstanceGraphInterface.td for more details.
A set of methods which are broadly useful in a number of dialects.
void getAndSortModules(ModuleOp topMod, SmallVectorImpl< hw::HWModuleLike > &mods)
void getAndSortModulesVisitor(hw::HWModuleLike mod, SmallVectorImpl< hw::HWModuleLike > &mods, DenseSet< Operation * > &modsSeen)
DenseMap< Operation *, SmallVector< igraph::InstanceOpInterface, 1 > > moduleInstantiations