[Mlir-commits] [mlir] [mlir][c] Enable creating and setting greedy rewrite confing. (PR #162429)
Oleksandr Alex Zinenko
llvmlistbot at llvm.org
Wed Oct 8 03:08:59 PDT 2025
================
@@ -256,6 +314,38 @@ void mlir::python::populateRewriteSubmodule(nb::module_ &m) {
},
nb::keep_alive<1, 3>());
#endif // MLIR_ENABLE_PDL_IN_PATTERNMATCH
+
+ nb::class_<PyGreedyRewriteDriverConfig>(m, "GreedyRewriteDriverConfig")
+ .def(nb::init<>(), "Create a greedy rewrite driver config with defaults")
+ .def("set_max_iterations", &PyGreedyRewriteDriverConfig::setMaxIterations,
+ "max_iterations"_a, "Set maximum number of iterations")
+ .def("set_max_num_rewrites", &PyGreedyRewriteDriverConfig::setMaxNumRewrites,
+ "max_num_rewrites"_a, "Set maximum number of rewrites per iteration")
+ .def("set_use_top_down_traversal", &PyGreedyRewriteDriverConfig::setUseTopDownTraversal,
+ "use_top_down"_a, "Set whether to use top-down traversal")
+ .def("enable_folding", &PyGreedyRewriteDriverConfig::enableFolding,
+ "enable"_a, "Enable or disable folding")
+ .def("set_strictness", &PyGreedyRewriteDriverConfig::setStrictness,
+ "strictness"_a, "Set rewrite strictness level")
+ .def("set_region_simplification_level", &PyGreedyRewriteDriverConfig::setRegionSimplificationLevel,
+ "level"_a, "Set region simplification level")
+ .def("enable_constant_cse", &PyGreedyRewriteDriverConfig::enableConstantCSE,
+ "enable"_a, "Enable or disable constant CSE")
+ .def("get_max_iterations", &PyGreedyRewriteDriverConfig::getMaxIterations,
----------------
ftynse wrote:
Can we turn these into properties? `def_prop` IIRC
https://github.com/llvm/llvm-project/pull/162429
More information about the Mlir-commits
mailing list