[llvm] [mlir:bazel] Expose "expsensive pattern API checks" as build flag. (PR #216673)
Ingo Müller via llvm-commits
llvm-commits at lists.llvm.org
Mon Aug 17 02:49:05 PDT 2026
https://github.com/ingomueller-net created https://github.com/llvm/llvm-project/pull/216673
This PR exposes the `MLIR_ENABLE_EXPENSIVE_PATTERN_API_CHECKS` definition as a build flag in the Bazel build. This makes it more easy to run these expensive checks as a CI task. The new flag can be used as follows:
```
bazelisk build \
-- at llvm-project//mlir:enable_expensive_pattern_api_checks \
${BUILD_TARGETS}
```
>From 5f5722efb3c9fc5d590beea7619ce710dc96018c Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Ingo=20M=C3=BCller?= <ingomueller at google.com>
Date: Mon, 17 Aug 2026 11:45:21 +0200
Subject: [PATCH] [mlir:bazel] Expose "expsensive pattern API checks" as build
flag.
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
This PR exposes the `MLIR_ENABLE_EXPENSIVE_PATTERN_API_CHECKS`
definition as a build flag in the Bazel build. This makes it more easy
to run these expensive checks as a CI task. The new flag can be used as
follows:
```
bazelisk build \
-- at llvm-project//mlir:enable_expensive_pattern_api_checks \
${BUILD_TARGETS}
```
Signed-off-by: Ingo Müller <ingomueller at google.com>
---
.../llvm-project-overlay/mlir/BUILD.bazel | 20 +++++++++++++++++--
1 file changed, 18 insertions(+), 2 deletions(-)
diff --git a/utils/bazel/llvm-project-overlay/mlir/BUILD.bazel b/utils/bazel/llvm-project-overlay/mlir/BUILD.bazel
index bfe398283b7dd..1eefa3cb78f1e 100644
--- a/utils/bazel/llvm-project-overlay/mlir/BUILD.bazel
+++ b/utils/bazel/llvm-project-overlay/mlir/BUILD.bazel
@@ -51,17 +51,33 @@ config_setting(
flag_values = {":enable_cuda": "True"},
)
+bool_flag(
+ name = "enable_expensive_pattern_api_checks",
+ build_setting_default = False,
+)
+
+config_setting(
+ name = "enable_expensive_pattern_api_checks_config",
+ flag_values = {":enable_expensive_pattern_api_checks": "True"},
+)
+
expand_template(
name = "mlir_config_h_gen",
out = "include/mlir/Config/mlir-config.h",
substitutions = {
"#cmakedefine01 MLIR_DEPRECATED_GPU_SERIALIZATION_ENABLE": "#define MLIR_DEPRECATED_GPU_SERIALIZATION_ENABLE 0",
- "#cmakedefine01 MLIR_ENABLE_EXPENSIVE_PATTERN_API_CHECKS": "#define MLIR_ENABLE_EXPENSIVE_PATTERN_API_CHECKS 0",
"#cmakedefine MLIR_GREEDY_REWRITE_RANDOMIZER_SEED ${MLIR_GREEDY_REWRITE_RANDOMIZER_SEED}": "/* #undef MLIR_GREEDY_REWRITE_RANDOMIZER_SEED */",
"#cmakedefine01 MLIR_ENABLE_NVPTXCOMPILER": "#define MLIR_ENABLE_NVPTXCOMPILER 0",
"#cmakedefine01 MLIR_ENABLE_PDL_IN_PATTERNMATCH": "#define MLIR_ENABLE_PDL_IN_PATTERNMATCH 1",
"#cmakedefine01 LLVM_HAS_AMDGPU_TARGET": "#define LLVM_HAS_AMDGPU_TARGET 0",
- },
+ } | select({
+ ":enable_expensive_pattern_api_checks_config": {
+ "#cmakedefine01 MLIR_ENABLE_EXPENSIVE_PATTERN_API_CHECKS": "#define MLIR_ENABLE_EXPENSIVE_PATTERN_API_CHECKS 1",
+ },
+ "//conditions:default": {
+ "#cmakedefine01 MLIR_ENABLE_EXPENSIVE_PATTERN_API_CHECKS": "#define MLIR_ENABLE_EXPENSIVE_PATTERN_API_CHECKS 0",
+ },
+ }),
template = "include/mlir/Config/mlir-config.h.cmake",
)
More information about the llvm-commits
mailing list