[Mlir-commits] [mlir] [mlir][ArmSVE] move transform entry points into arm_sve namespace (NFC) (PR #213949)

llvmlistbot at llvm.org llvmlistbot at llvm.org
Tue Aug 4 06:44:26 PDT 2026


https://github.com/Brythzz created https://github.com/llvm/llvm-project/pull/213949

This PR moves `populateLowerContractionToSVE*` entry points into the `arm_sve` namespace for consistency with their Arm Neon counterparts.

>From 31f10a0f0dfebbba8d45188f3deb7789890f7374 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Matt=C3=A9o=20Rizza=20Murgier?=
 <matteo.rizza-murgier at sipearl.com>
Date: Tue, 4 Aug 2026 15:00:20 +0200
Subject: [PATCH] [mlir][ArmSVE] move transform entry points into arm_sve
 namespace (NFC)

---
 mlir/include/mlir/Dialect/ArmSVE/Transforms/Transforms.h | 9 +++++----
 .../Conversion/VectorToLLVM/ConvertVectorToLLVMPass.cpp  | 4 ++--
 .../ArmSVE/TransformOps/ArmSVEVectorTransformOps.cpp     | 4 ++--
 .../ArmSVE/Transforms/LowerContractToSVEPatterns.cpp     | 5 +++--
 4 files changed, 12 insertions(+), 10 deletions(-)

diff --git a/mlir/include/mlir/Dialect/ArmSVE/Transforms/Transforms.h b/mlir/include/mlir/Dialect/ArmSVE/Transforms/Transforms.h
index 0019192a31a02..26f5199b5f4d5 100644
--- a/mlir/include/mlir/Dialect/ArmSVE/Transforms/Transforms.h
+++ b/mlir/include/mlir/Dialect/ArmSVE/Transforms/Transforms.h
@@ -15,15 +15,16 @@ class LLVMConversionTarget;
 class LLVMTypeConverter;
 class RewritePatternSet;
 
+namespace arm_sve {
+void populateLowerContractionToSVEI8MMPatterns(RewritePatternSet &patterns);
+void populateLowerContractionToSVEBFMMLAPatterns(RewritePatternSet &patterns);
+} // namespace arm_sve
+
 /// Collect a set of patterns to lower ArmSVE ops to ops that map to LLVM
 /// intrinsics.
 void populateArmSVELegalizeForLLVMExportPatterns(
     const LLVMTypeConverter &converter, RewritePatternSet &patterns);
 
-void populateLowerContractionToSVEI8MMPatterns(RewritePatternSet &patterns);
-
-void populateLowerContractionToSVEBFMMLAPatterns(RewritePatternSet &patterns);
-
 /// Configure the target to support lowering ArmSVE ops to ops that map to LLVM
 /// intrinsics.
 void configureArmSVELegalizeForExportTarget(LLVMConversionTarget &target);
diff --git a/mlir/lib/Conversion/VectorToLLVM/ConvertVectorToLLVMPass.cpp b/mlir/lib/Conversion/VectorToLLVM/ConvertVectorToLLVMPass.cpp
index 81263fddee66c..81fca0023a691 100644
--- a/mlir/lib/Conversion/VectorToLLVM/ConvertVectorToLLVMPass.cpp
+++ b/mlir/lib/Conversion/VectorToLLVM/ConvertVectorToLLVMPass.cpp
@@ -95,13 +95,13 @@ void ConvertVectorToLLVMPass::runOnOperation() {
       if (armNeon)
         arm_neon::populateLowerContractionToNeonI8MMPatterns(patterns);
       if (armSVE)
-        populateLowerContractionToSVEI8MMPatterns(patterns);
+        arm_sve::populateLowerContractionToSVEI8MMPatterns(patterns);
     }
     if (armBF16) {
       if (armNeon)
         arm_neon::populateLowerContractionToNeonBFMMLAPatterns(patterns);
       if (armSVE)
-        populateLowerContractionToSVEBFMMLAPatterns(patterns);
+        arm_sve::populateLowerContractionToSVEBFMMLAPatterns(patterns);
     }
     (void)applyPatternsGreedily(getOperation(), std::move(patterns));
   }
diff --git a/mlir/lib/Dialect/ArmSVE/TransformOps/ArmSVEVectorTransformOps.cpp b/mlir/lib/Dialect/ArmSVE/TransformOps/ArmSVEVectorTransformOps.cpp
index d355fe010821a..fe9de7817089e 100644
--- a/mlir/lib/Dialect/ArmSVE/TransformOps/ArmSVEVectorTransformOps.cpp
+++ b/mlir/lib/Dialect/ArmSVE/TransformOps/ArmSVEVectorTransformOps.cpp
@@ -20,12 +20,12 @@ using namespace mlir;
 
 void transform::ApplyArmSVELowerContractionToI8MMPatternsOp::populatePatterns(
     RewritePatternSet &patterns) {
-  mlir::populateLowerContractionToSVEI8MMPatterns(patterns);
+  arm_sve::populateLowerContractionToSVEI8MMPatterns(patterns);
 }
 
 void transform::ApplyArmSVELowerContractionToBFMMLAPatternsOp::populatePatterns(
     RewritePatternSet &patterns) {
-  mlir::populateLowerContractionToSVEBFMMLAPatterns(patterns);
+  arm_sve::populateLowerContractionToSVEBFMMLAPatterns(patterns);
 }
 
 //===----------------------------------------------------------------------===//
diff --git a/mlir/lib/Dialect/ArmSVE/Transforms/LowerContractToSVEPatterns.cpp b/mlir/lib/Dialect/ArmSVE/Transforms/LowerContractToSVEPatterns.cpp
index 6cb2a56aebdd1..b48a11bb2adf7 100644
--- a/mlir/lib/Dialect/ArmSVE/Transforms/LowerContractToSVEPatterns.cpp
+++ b/mlir/lib/Dialect/ArmSVE/Transforms/LowerContractToSVEPatterns.cpp
@@ -31,6 +31,7 @@
 #define DEBUG_TYPE "lower-contract-to-arm-sve-i8mm"
 
 using namespace mlir;
+using namespace mlir::arm_sve;
 
 namespace {
 // Get the operand of a `vector.contract`. This function is intended to abstract
@@ -581,13 +582,13 @@ class LowerContractionToSVEBFMMLAPattern
 
 } // namespace
 
-void mlir::populateLowerContractionToSVEI8MMPatterns(
+void mlir::arm_sve::populateLowerContractionToSVEI8MMPatterns(
     RewritePatternSet &patterns) {
   MLIRContext *context = patterns.getContext();
   patterns.add<LowerContractionToSVEI8MMPattern>(context, /*benefit=*/2);
 }
 
-void mlir::populateLowerContractionToSVEBFMMLAPatterns(
+void mlir::arm_sve::populateLowerContractionToSVEBFMMLAPatterns(
     RewritePatternSet &patterns) {
   MLIRContext *context = patterns.getContext();
   patterns.add<LowerContractionToSVEBFMMLAPattern>(context, /*benefit=*/2);



More information about the Mlir-commits mailing list