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"
33 DenseMap<Operation *, SmallVector<igraph::InstanceOpInterface, 1>>
43 SmallVectorImpl<hw::HWModuleLike> &mods);
45 SmallVectorImpl<hw::HWModuleLike> &mods,
46 DenseSet<Operation *> &modsSeen);
50 #define GEN_PASS_REGISTRATION
51 #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