73  m.doc() = 
"CIRCT Python Native Extension";
 
   75  llvm::sys::PrintStackTraceOnErrorSignal(
"");
 
   76  LLVMEnablePrettyStackTrace();
 
   80      [](nb::object capsule) {
 
   82        auto wrappedCapsule = capsule.attr(MLIR_PYTHON_CAPI_PTR_ATTR);
 
   83        MlirContext context = mlirPythonCapsuleToContext(wrappedCapsule.ptr());
 
   87        MlirDialectHandle 
comb = mlirGetDialectHandle__comb__();
 
   88        mlirDialectHandleRegisterDialect(
comb, context);
 
   89        mlirDialectHandleLoadDialect(
comb, context);
 
   91        MlirDialectHandle 
debug = mlirGetDialectHandle__debug__();
 
   92        mlirDialectHandleRegisterDialect(
debug, context);
 
   93        mlirDialectHandleLoadDialect(
debug, context);
 
   95        MlirDialectHandle 
emit = mlirGetDialectHandle__emit__();
 
   96        mlirDialectHandleRegisterDialect(
emit, context);
 
   97        mlirDialectHandleLoadDialect(
emit, context);
 
   99        MlirDialectHandle 
esi = mlirGetDialectHandle__esi__();
 
  100        mlirDialectHandleRegisterDialect(
esi, context);
 
  101        mlirDialectHandleLoadDialect(
esi, context);
 
  103        MlirDialectHandle 
msft = mlirGetDialectHandle__msft__();
 
  104        mlirDialectHandleRegisterDialect(
msft, context);
 
  105        mlirDialectHandleLoadDialect(
msft, context);
 
  107        MlirDialectHandle 
hw = mlirGetDialectHandle__hw__();
 
  108        mlirDialectHandleRegisterDialect(
hw, context);
 
  109        mlirDialectHandleLoadDialect(
hw, context);
 
  111        MlirDialectHandle 
hwarith = mlirGetDialectHandle__hwarith__();
 
  112        mlirDialectHandleRegisterDialect(
hwarith, context);
 
  113        mlirDialectHandleLoadDialect(
hwarith, context);
 
  115        MlirDialectHandle index = mlirGetDialectHandle__index__();
 
  116        mlirDialectHandleRegisterDialect(index, context);
 
  117        mlirDialectHandleLoadDialect(index, context);
 
  119        MlirDialectHandle scf = mlirGetDialectHandle__scf__();
 
  120        mlirDialectHandleRegisterDialect(scf, context);
 
  121        mlirDialectHandleLoadDialect(scf, context);
 
  123        MlirDialectHandle 
om = mlirGetDialectHandle__om__();
 
  124        mlirDialectHandleRegisterDialect(
om, context);
 
  125        mlirDialectHandleLoadDialect(
om, context);
 
  127        MlirDialectHandle pipeline = mlirGetDialectHandle__pipeline__();
 
  128        mlirDialectHandleRegisterDialect(pipeline, context);
 
  129        mlirDialectHandleLoadDialect(pipeline, context);
 
  131        MlirDialectHandle 
rtg = mlirGetDialectHandle__rtg__();
 
  132        mlirDialectHandleRegisterDialect(
rtg, context);
 
  133        mlirDialectHandleLoadDialect(
rtg, context);
 
  135#ifdef CIRCT_INCLUDE_TESTS 
  136        MlirDialectHandle 
rtgtest = mlirGetDialectHandle__rtgtest__();
 
  137        mlirDialectHandleRegisterDialect(
rtgtest, context);
 
  138        mlirDialectHandleLoadDialect(
rtgtest, context);
 
  141        MlirDialectHandle 
seq = mlirGetDialectHandle__seq__();
 
  142        mlirDialectHandleRegisterDialect(
seq, context);
 
  143        mlirDialectHandleLoadDialect(
seq, context);
 
  145        MlirDialectHandle 
sv = mlirGetDialectHandle__sv__();
 
  146        mlirDialectHandleRegisterDialect(
sv, context);
 
  147        mlirDialectHandleLoadDialect(
sv, context);
 
  149        MlirDialectHandle 
synth = mlirGetDialectHandle__synth__();
 
  150        mlirDialectHandleRegisterDialect(
synth, context);
 
  151        mlirDialectHandleLoadDialect(
synth, context);
 
  153        MlirDialectHandle 
fsm = mlirGetDialectHandle__fsm__();
 
  154        mlirDialectHandleRegisterDialect(
fsm, context);
 
  155        mlirDialectHandleLoadDialect(
fsm, context);
 
  157        MlirDialectHandle 
handshake = mlirGetDialectHandle__handshake__();
 
  158        mlirDialectHandleRegisterDialect(
handshake, context);
 
  159        mlirDialectHandleLoadDialect(
handshake, context);
 
  161        MlirDialectHandle kanagawa = mlirGetDialectHandle__kanagawa__();
 
  162        mlirDialectHandleRegisterDialect(kanagawa, context);
 
  163        mlirDialectHandleLoadDialect(kanagawa, context);
 
  165        MlirDialectHandle 
ltl = mlirGetDialectHandle__ltl__();
 
  166        mlirDialectHandleRegisterDialect(
ltl, context);
 
  167        mlirDialectHandleLoadDialect(
ltl, context);
 
  169        MlirDialectHandle 
verif = mlirGetDialectHandle__verif__();
 
  170        mlirDialectHandleRegisterDialect(
verif, context);
 
  171        mlirDialectHandleLoadDialect(
verif, context);
 
  173        MlirDialectHandle smt = mlirGetDialectHandle__smt__();
 
  174        mlirDialectHandleRegisterDialect(smt, context);
 
  175        mlirDialectHandleLoadDialect(smt, context);
 
  177      "Register CIRCT dialects on a PyMlirContext.");
 
  179  m.def(
"export_verilog", [](MlirModule mod, nb::object fileObject) {
 
  181    nb::gil_scoped_release();
 
  185  m.def(
"export_split_verilog", [](MlirModule mod, std::string directory) {
 
  186    auto cDirectory = mlirStringRefCreateFromCString(directory.c_str());
 
  190  nb::module_ 
synth = m.def_submodule(
"_synth", 
"synth API");
 
  192  nb::module_ 
esi = m.def_submodule(
"_esi", 
"ESI API");
 
  194  nb::module_ 
msft = m.def_submodule(
"_msft", 
"MSFT API");
 
  196  nb::module_ 
hw = m.def_submodule(
"_hw", 
"HW API");
 
  198  nb::module_ 
seq = m.def_submodule(
"_seq", 
"Seq API");
 
  200  nb::module_ 
om = m.def_submodule(
"_om", 
"OM API");
 
  202  nb::module_ 
rtg = m.def_submodule(
"_rtg", 
"RTG API");
 
  204#ifdef CIRCT_INCLUDE_TESTS 
  205  nb::module_ 
rtgtest = m.def_submodule(
"_rtgtest", 
"RTGTest API");
 
  206  circt::python::populateDialectRTGTestSubmodule(
rtgtest);
 
  208  nb::module_ 
sv = m.def_submodule(
"_sv", 
"SV API");
 
  210  nb::module_ support = m.def_submodule(
"_support", 
"CIRCT support");