[Mlir-commits] [mlir] 6966b4f - [mlir][arith] Remove func patterns from `populateArithWideIntEmulationPatterns` (#134316)

llvmlistbot at llvm.org llvmlistbot at llvm.org
Fri Apr 4 06:23:20 PDT 2025


Author: Matthias Springer
Date: 2025-04-04T06:23:17-07:00
New Revision: 6966b4f4a57be101150fc714f17e8d534db8e79d

URL: https://github.com/llvm/llvm-project/commit/6966b4f4a57be101150fc714f17e8d534db8e79d
DIFF: https://github.com/llvm/llvm-project/commit/6966b4f4a57be101150fc714f17e8d534db8e79d.diff

LOG: [mlir][arith] Remove func patterns from `populateArithWideIntEmulationPatterns` (#134316)

This function should populate only patterns that are related to wide
integer operation emulation.

Added: 
    

Modified: 
    mlir/lib/Dialect/Arith/Transforms/EmulateWideInt.cpp

Removed: 
    


################################################################################
diff  --git a/mlir/lib/Dialect/Arith/Transforms/EmulateWideInt.cpp b/mlir/lib/Dialect/Arith/Transforms/EmulateWideInt.cpp
index 22babe8123617..d5d1559c658ff 100644
--- a/mlir/lib/Dialect/Arith/Transforms/EmulateWideInt.cpp
+++ b/mlir/lib/Dialect/Arith/Transforms/EmulateWideInt.cpp
@@ -1208,6 +1208,12 @@ struct EmulateWideIntPass final
     RewritePatternSet patterns(ctx);
     arith::populateArithWideIntEmulationPatterns(typeConverter, patterns);
 
+    // Populate `func.*` conversion patterns.
+    populateFunctionOpInterfaceTypeConversionPattern<func::FuncOp>(
+        patterns, typeConverter);
+    populateCallOpTypeConversionPattern(patterns, typeConverter);
+    populateReturnOpTypeConversionPattern(patterns, typeConverter);
+
     if (failed(applyPartialConversion(op, target, std::move(patterns))))
       signalPassFailure();
   }
@@ -1281,12 +1287,6 @@ arith::WideIntEmulationConverter::WideIntEmulationConverter(
 void arith::populateArithWideIntEmulationPatterns(
     const WideIntEmulationConverter &typeConverter,
     RewritePatternSet &patterns) {
-  // Populate `func.*` conversion patterns.
-  populateFunctionOpInterfaceTypeConversionPattern<func::FuncOp>(patterns,
-                                                                 typeConverter);
-  populateCallOpTypeConversionPattern(patterns, typeConverter);
-  populateReturnOpTypeConversionPattern(patterns, typeConverter);
-
   // Populate `arith.*` conversion patterns.
   patterns.add<
       // Misc ops.


        


More information about the Mlir-commits mailing list