[Mlir-commits] [mlir] [mlir][Bufferization] Split the dialect declaration (NFC) (PR #222859)
Mehdi Amini
llvmlistbot at llvm.org
Thu Sep 10 23:55:10 PDT 2026
https://github.com/joker-eph created https://github.com/llvm/llvm-project/pull/222859
Introduce a self-contained dialect declaration and use it in four consumers that do not need the generated operation umbrella.
Across three controlled serial rebuilds of the affected TUs, median instructions fell from 97.470B to 94.887B (-2.650%) and median wall time fell from 15.20s to 14.70s (-3.289%). Three -j16 runs confirmed a 2.623% reduction in instructions, with wall time improving 0.722% on the parallel critical path.
Assisted-by: Codex
>From 78ce438123b93f133da8f3e9893f68e58387206a Mon Sep 17 00:00:00 2001
From: Mehdi Amini <joker.eph at gmail.com>
Date: Thu, 10 Sep 2026 18:08:11 -0700
Subject: [PATCH] [mlir][Bufferization] Split the dialect declaration (NFC)
Introduce a self-contained dialect declaration and use it in four consumers
that do not need the generated operation umbrella.
Across three controlled serial rebuilds of the affected TUs, median
instructions fell from 97.470B to 94.887B (-2.650%) and median wall time fell
from 15.20s to 14.70s (-3.289%). Three -j16 runs confirmed a 2.623% reduction
in instructions, with wall time improving 0.722% on the parallel critical path.
Assisted-by: Codex
---
.../Dialect/Bufferization/IR/Bufferization.h | 7 +------
.../Bufferization/IR/BufferizationDialect.h | 16 ++++++++++++++++
mlir/lib/CAPI/Dialect/Bufferization.cpp | 2 +-
.../Transforms/EmptyTensorElimination.cpp | 2 +-
mlir/lib/RegisterAllDialects.cpp | 2 +-
.../Bufferization/TestTensorCopyInsertion.cpp | 2 +-
6 files changed, 21 insertions(+), 10 deletions(-)
create mode 100644 mlir/include/mlir/Dialect/Bufferization/IR/BufferizationDialect.h
diff --git a/mlir/include/mlir/Dialect/Bufferization/IR/Bufferization.h b/mlir/include/mlir/Dialect/Bufferization/IR/Bufferization.h
index e735651d5366d..3d0fcde58fda2 100644
--- a/mlir/include/mlir/Dialect/Bufferization/IR/Bufferization.h
+++ b/mlir/include/mlir/Dialect/Bufferization/IR/Bufferization.h
@@ -12,16 +12,11 @@
#include "mlir/Bytecode/BytecodeOpInterface.h"
#include "mlir/Dialect/Bufferization/IR/AllocationOpInterface.h"
#include "mlir/Dialect/Bufferization/IR/BufferizableOpInterface.h"
+#include "mlir/Dialect/Bufferization/IR/BufferizationDialect.h"
#include "mlir/Interfaces/DestinationStyleOpInterface.h"
#include "mlir/Interfaces/InferTypeOpInterface.h"
#include "mlir/Interfaces/SubsetOpInterface.h"
-//===----------------------------------------------------------------------===//
-// Bufferization Dialect
-//===----------------------------------------------------------------------===//
-
-#include "mlir/Dialect/Bufferization/IR/BufferizationOpsDialect.h.inc"
-
//===----------------------------------------------------------------------===//
// Bufferization Dialect Operations
//===----------------------------------------------------------------------===//
diff --git a/mlir/include/mlir/Dialect/Bufferization/IR/BufferizationDialect.h b/mlir/include/mlir/Dialect/Bufferization/IR/BufferizationDialect.h
new file mode 100644
index 0000000000000..ebc70aa9962b9
--- /dev/null
+++ b/mlir/include/mlir/Dialect/Bufferization/IR/BufferizationDialect.h
@@ -0,0 +1,16 @@
+//===- BufferizationDialect.h - Bufferization dialect ----------*- C++ -*-===//
+//
+// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
+// See https://llvm.org/LICENSE.txt for license information.
+// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
+//
+//===----------------------------------------------------------------------===//
+
+#ifndef MLIR_DIALECT_BUFFERIZATION_IR_BUFFERIZATIONDIALECT_H
+#define MLIR_DIALECT_BUFFERIZATION_IR_BUFFERIZATIONDIALECT_H
+
+#include "mlir/IR/Dialect.h"
+
+#include "mlir/Dialect/Bufferization/IR/BufferizationOpsDialect.h.inc"
+
+#endif // MLIR_DIALECT_BUFFERIZATION_IR_BUFFERIZATIONDIALECT_H
diff --git a/mlir/lib/CAPI/Dialect/Bufferization.cpp b/mlir/lib/CAPI/Dialect/Bufferization.cpp
index 8a76b7c391bed..dedc5cffd1de1 100644
--- a/mlir/lib/CAPI/Dialect/Bufferization.cpp
+++ b/mlir/lib/CAPI/Dialect/Bufferization.cpp
@@ -8,7 +8,7 @@
#include "mlir-c/Dialect/Bufferization.h"
#include "mlir/CAPI/Registration.h"
-#include "mlir/Dialect/Bufferization/IR/Bufferization.h"
+#include "mlir/Dialect/Bufferization/IR/BufferizationDialect.h"
using namespace mlir::bufferization;
diff --git a/mlir/lib/Dialect/Bufferization/Transforms/EmptyTensorElimination.cpp b/mlir/lib/Dialect/Bufferization/Transforms/EmptyTensorElimination.cpp
index 677c0ba288d40..a9ccc8fe1a1af 100644
--- a/mlir/lib/Dialect/Bufferization/Transforms/EmptyTensorElimination.cpp
+++ b/mlir/lib/Dialect/Bufferization/Transforms/EmptyTensorElimination.cpp
@@ -9,7 +9,7 @@
#include "mlir/Dialect/Bufferization/Transforms/Passes.h"
#include "mlir/Dialect/Bufferization/IR/BufferizableOpInterface.h"
-#include "mlir/Dialect/Bufferization/IR/Bufferization.h"
+#include "mlir/Dialect/Bufferization/IR/BufferizationDialect.h"
#include "mlir/Dialect/Bufferization/Transforms/OneShotAnalysis.h"
#include "mlir/Dialect/Bufferization/Transforms/OneShotModuleBufferize.h"
#include "mlir/Dialect/Bufferization/Transforms/Transforms.h"
diff --git a/mlir/lib/RegisterAllDialects.cpp b/mlir/lib/RegisterAllDialects.cpp
index ebc48a4bfc836..8e657741331fa 100644
--- a/mlir/lib/RegisterAllDialects.cpp
+++ b/mlir/lib/RegisterAllDialects.cpp
@@ -27,7 +27,7 @@
#include "mlir/Dialect/ArmSME/IR/ArmSME.h"
#include "mlir/Dialect/ArmSVE/IR/ArmSVEDialect.h"
#include "mlir/Dialect/Async/IR/Async.h"
-#include "mlir/Dialect/Bufferization/IR/Bufferization.h"
+#include "mlir/Dialect/Bufferization/IR/BufferizationDialect.h"
#include "mlir/Dialect/Bufferization/IR/ValueBoundsOpInterfaceImpl.h"
#include "mlir/Dialect/Bufferization/Transforms/BufferizableOpInterfaceImpl.h"
#include "mlir/Dialect/Bufferization/Transforms/FuncBufferizableOpInterfaceImpl.h"
diff --git a/mlir/test/lib/Dialect/Bufferization/TestTensorCopyInsertion.cpp b/mlir/test/lib/Dialect/Bufferization/TestTensorCopyInsertion.cpp
index dc971ad68b846..97b92877f5bb4 100644
--- a/mlir/test/lib/Dialect/Bufferization/TestTensorCopyInsertion.cpp
+++ b/mlir/test/lib/Dialect/Bufferization/TestTensorCopyInsertion.cpp
@@ -6,7 +6,7 @@
//
//===----------------------------------------------------------------------===//
-#include "mlir/Dialect/Bufferization/IR/Bufferization.h"
+#include "mlir/Dialect/Bufferization/IR/BufferizationDialect.h"
#include "mlir/Dialect/Bufferization/Transforms/OneShotAnalysis.h"
#include "mlir/Dialect/Bufferization/Transforms/Transforms.h"
#include "mlir/Pass/Pass.h"
More information about the Mlir-commits
mailing list