CIRCT
18.0.0git
|
A class traversing MLIR IR to extrapolate the logic of a given circuit. More...
#include <LogicExporter.h>
Public Member Functions | |
LogicExporter (llvm::StringRef moduleName, Solver::Circuit *circuit) | |
mlir::LogicalResult | run (mlir::ModuleOp &module) |
Initializes the exporting by visiting the builtin module. More... | |
mlir::LogicalResult | run (hw::HWModuleOp &module) |
Private Attributes | |
std::string | moduleName |
The specified module name to look for when traversing the input file. More... | |
Solver::Circuit * | circuit |
The circuit representation to hold the logical constraints extracted from the IR. More... | |
A class traversing MLIR IR to extrapolate the logic of a given circuit.
This class implements a MLIR exporter which searches the IR for the specified hw.module
describing a circuit. It will then traverse its operations and collect the underlying logical constraints within an abstract circuit representation.
Definition at line 35 of file LogicExporter.h.
|
inline |
Definition at line 37 of file LogicExporter.h.
LogicalResult LogicExporter::run | ( | hw::HWModuleOp & | module | ) |
Definition at line 226 of file LogicExporter.cpp.
mlir::LogicalResult circt::LogicExporter::run | ( | mlir::ModuleOp & | module | ) |
Initializes the exporting by visiting the builtin module.
Referenced by circt::Solver::Circuit::addInstance().
|
private |
The circuit representation to hold the logical constraints extracted from the IR.
Definition at line 52 of file LogicExporter.h.
|
private |
The specified module name to look for when traversing the input file.
Definition at line 49 of file LogicExporter.h.