summaryrefslogtreecommitdiff
path: root/mlir/lib/CAPI/IR/Pass.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'mlir/lib/CAPI/IR/Pass.cpp')
-rw-r--r--mlir/lib/CAPI/IR/Pass.cpp17
1 files changed, 15 insertions, 2 deletions
diff --git a/mlir/lib/CAPI/IR/Pass.cpp b/mlir/lib/CAPI/IR/Pass.cpp
index d242baae99c0..a6c9fbd08d45 100644
--- a/mlir/lib/CAPI/IR/Pass.cpp
+++ b/mlir/lib/CAPI/IR/Pass.cpp
@@ -44,8 +44,21 @@ MlirLogicalResult mlirPassManagerRunOnOp(MlirPassManager passManager,
return wrap(unwrap(passManager)->run(unwrap(op)));
}
-void mlirPassManagerEnableIRPrinting(MlirPassManager passManager) {
- return unwrap(passManager)->enableIRPrinting();
+void mlirPassManagerEnableIRPrinting(MlirPassManager passManager,
+ bool printBeforeAll, bool printAfterAll,
+ bool printModuleScope,
+ bool printAfterOnlyOnChange,
+ bool printAfterOnlyOnFailure) {
+ auto shouldPrintBeforePass = [printBeforeAll](Pass *, Operation *) {
+ return printBeforeAll;
+ };
+ auto shouldPrintAfterPass = [printAfterAll](Pass *, Operation *) {
+ return printAfterAll;
+ };
+ return unwrap(passManager)
+ ->enableIRPrinting(shouldPrintBeforePass, shouldPrintAfterPass,
+ printModuleScope, printAfterOnlyOnChange,
+ printAfterOnlyOnFailure);
}
void mlirPassManagerEnableVerifier(MlirPassManager passManager, bool enable) {