14 #ifndef TOOLS_CIRCT_LEC_LOGICEXPORTER_H
15 #define TOOLS_CIRCT_LEC_LOGICEXPORTER_H
22 #include "mlir/IR/BuiltinOps.h"
23 #include "mlir/Support/LogicalResult.h"
24 #include "llvm/ADT/StringRef.h"
41 mlir::LogicalResult
run(mlir::ModuleOp &module);
A class traversing MLIR IR to extrapolate the logic of a given circuit.
std::string moduleName
The specified module name to look for when traversing the input file.
LogicExporter(llvm::StringRef moduleName, Solver::Circuit *circuit)
mlir::LogicalResult run(mlir::ModuleOp &module)
Initializes the exporting by visiting the builtin module.
Solver::Circuit * circuit
The circuit representation to hold the logical constraints extracted from the IR.
The representation of a circuit within a logical engine.
This file defines an intermediate representation for circuits acting as an abstraction for constraint...