[Mlir-commits] [mlir] 482b047 - [mlir][NFC] Simplify using OpRewritePattern::OpRewritePattern to use Base alias (#230717)

llvmlistbot at llvm.org llvmlistbot at llvm.org
Sat Oct 10 17:31:47 PDT 2026


Author: Benjamin Wu
Date: 2026-10-10T20:31:42-04:00
New Revision: 482b0474cac0df2d0e0f9e84875d601d27f6d80b

URL: https://github.com/llvm/llvm-project/commit/482b0474cac0df2d0e0f9e84875d601d27f6d80b
DIFF: https://github.com/llvm/llvm-project/commit/482b0474cac0df2d0e0f9e84875d601d27f6d80b.diff

LOG: [mlir][NFC] Simplify using OpRewritePattern::OpRewritePattern to use Base alias (#230717)

Aligns with #158433.

Added: 
    

Modified: 
    mlir/lib/Conversion/ArmNeon2dToIntr/ArmNeon2dToIntr.cpp
    mlir/lib/Conversion/SCFToControlFlow/SCFToControlFlow.cpp
    mlir/lib/Conversion/ShapeToStandard/ConvertShapeConstraints.cpp
    mlir/lib/Conversion/TosaToLinalg/TosaToLinalg.cpp
    mlir/lib/Dialect/AMDGPU/IR/AMDGPUOps.cpp
    mlir/lib/Dialect/AMDGPU/Transforms/MaskedloadToLoad.cpp
    mlir/lib/Dialect/AMDGPU/Transforms/ResolveStridedMetadata.cpp
    mlir/lib/Dialect/Affine/IR/AffineOps.cpp
    mlir/lib/Dialect/Affine/Transforms/AffineExpandIndexOps.cpp
    mlir/lib/Dialect/Affine/Transforms/AffineExpandIndexOpsAsAffine.cpp
    mlir/lib/Dialect/ArmNeon/Transforms/LowerContractToNeonPatterns.cpp
    mlir/lib/Dialect/ArmSME/Transforms/OuterProductFusion.cpp
    mlir/lib/Dialect/ArmSME/Transforms/VectorLegalization.cpp
    mlir/lib/Dialect/ArmSVE/Transforms/LegalizeVectorStorage.cpp
    mlir/lib/Dialect/ArmSVE/Transforms/LowerContractToSVEPatterns.cpp
    mlir/lib/Dialect/ControlFlow/IR/ControlFlowOps.cpp
    mlir/lib/Dialect/GPU/IR/GPUDialect.cpp
    mlir/lib/Dialect/GPU/Transforms/DecomposeMemRefs.cpp
    mlir/lib/Dialect/GPU/Transforms/PromoteShuffleToAMDGPU.cpp
    mlir/lib/Dialect/GPU/Transforms/SubgroupReduceLowering.cpp
    mlir/lib/Dialect/LLVMIR/IR/LLVMDialect.cpp
    mlir/lib/Dialect/Linalg/IR/LinalgOps.cpp
    mlir/lib/Dialect/Linalg/Transforms/ConvertConv2DToImg2Col.cpp
    mlir/lib/Dialect/Linalg/Transforms/SwapExtractSliceWithFillPatterns.cpp
    mlir/lib/Dialect/Linalg/Transforms/WinogradConv2D.cpp
    mlir/lib/Dialect/Math/Transforms/AlgebraicSimplification.cpp
    mlir/lib/Dialect/Math/Transforms/PolynomialApproximation.cpp
    mlir/lib/Dialect/Math/Transforms/UpliftToFMA.cpp
    mlir/lib/Dialect/MemRef/Transforms/ComposeSubView.cpp
    mlir/lib/Dialect/MemRef/Transforms/ElideReinterpretCast.cpp
    mlir/lib/Dialect/MemRef/Transforms/ExpandOps.cpp
    mlir/lib/Dialect/MemRef/Transforms/ExpandStridedMetadata.cpp
    mlir/lib/Dialect/OpenACC/IR/OpenACCCG.cpp
    mlir/lib/Dialect/SCF/IR/SCF.cpp
    mlir/lib/Dialect/SCF/Transforms/UpliftWhileToFor.cpp
    mlir/lib/Dialect/Shape/Transforms/RemoveShapeConstraints.cpp
    mlir/lib/Dialect/Shape/Transforms/ShapeToShapeLowering.cpp
    mlir/lib/Dialect/Shard/Transforms/Simplify.cpp
    mlir/lib/Dialect/SparseTensor/IR/SparseTensorDialect.cpp
    mlir/lib/Dialect/SparseTensor/Transforms/SparseAssembler.cpp
    mlir/lib/Dialect/SparseTensor/Transforms/SparseReinterpretMap.cpp
    mlir/lib/Dialect/SparseTensor/Transforms/SparseTensorRewriting.cpp
    mlir/lib/Dialect/Tensor/Transforms/DropRedundantRankExpansionPatterns.cpp
    mlir/lib/Dialect/Tensor/Transforms/FoldTensorSubsetOps.cpp
    mlir/lib/Dialect/Tosa/IR/TosaCanonicalizations.cpp
    mlir/lib/Dialect/Tosa/Transforms/TosaArithConstantToConst.cpp
    mlir/lib/Dialect/Tosa/Transforms/TosaDowngrade1p1To1p0.cpp
    mlir/lib/Dialect/Tosa/Transforms/TosaFolders.cpp

Removed: 
    


################################################################################
diff  --git a/mlir/lib/Conversion/ArmNeon2dToIntr/ArmNeon2dToIntr.cpp b/mlir/lib/Conversion/ArmNeon2dToIntr/ArmNeon2dToIntr.cpp
index e34b3688e95d9..c91a7a957f7cc 100644
--- a/mlir/lib/Conversion/ArmNeon2dToIntr/ArmNeon2dToIntr.cpp
+++ b/mlir/lib/Conversion/ArmNeon2dToIntr/ArmNeon2dToIntr.cpp
@@ -26,7 +26,7 @@ namespace {
 
 class Sdot2dLoweringPattern : public OpRewritePattern<Sdot2dOp> {
 public:
-  using OpRewritePattern::OpRewritePattern;
+  using Base::Base;
 
   /// Convert to 1-dimensional vector type to match the requirements of
   /// arm.neon.intr.sdot

diff  --git a/mlir/lib/Conversion/SCFToControlFlow/SCFToControlFlow.cpp b/mlir/lib/Conversion/SCFToControlFlow/SCFToControlFlow.cpp
index 46beaa20218d7..0374138e8cbe3 100644
--- a/mlir/lib/Conversion/SCFToControlFlow/SCFToControlFlow.cpp
+++ b/mlir/lib/Conversion/SCFToControlFlow/SCFToControlFlow.cpp
@@ -294,7 +294,7 @@ struct DoWhileLowering : public OpRewritePattern<WhileOp> {
 
 /// Lower an `scf.index_switch` operation to a `cf.switch` operation.
 struct IndexSwitchLowering : public OpRewritePattern<IndexSwitchOp> {
-  using OpRewritePattern::OpRewritePattern;
+  using Base::Base;
 
   LogicalResult matchAndRewrite(IndexSwitchOp op,
                                 PatternRewriter &rewriter) const override;

diff  --git a/mlir/lib/Conversion/ShapeToStandard/ConvertShapeConstraints.cpp b/mlir/lib/Conversion/ShapeToStandard/ConvertShapeConstraints.cpp
index 245e60b04ec31..374a057e88f33 100644
--- a/mlir/lib/Conversion/ShapeToStandard/ConvertShapeConstraints.cpp
+++ b/mlir/lib/Conversion/ShapeToStandard/ConvertShapeConstraints.cpp
@@ -29,7 +29,7 @@ namespace {
 namespace {
 class ConvertCstrRequireOp : public OpRewritePattern<shape::CstrRequireOp> {
 public:
-  using OpRewritePattern::OpRewritePattern;
+  using Base::Base;
   LogicalResult matchAndRewrite(shape::CstrRequireOp op,
                                 PatternRewriter &rewriter) const override {
     cf::AssertOp::create(rewriter, op.getLoc(), op.getPred(), op.getMsgAttr());

diff  --git a/mlir/lib/Conversion/TosaToLinalg/TosaToLinalg.cpp b/mlir/lib/Conversion/TosaToLinalg/TosaToLinalg.cpp
index 70e8ca7d3b218..215b1da1a2782 100644
--- a/mlir/lib/Conversion/TosaToLinalg/TosaToLinalg.cpp
+++ b/mlir/lib/Conversion/TosaToLinalg/TosaToLinalg.cpp
@@ -3056,7 +3056,7 @@ struct RFFT2dConverter final : public OpRewritePattern<RFFT2dOp> {
 };
 
 struct FFT2dConverter final : OpRewritePattern<FFT2dOp> {
-  using OpRewritePattern::OpRewritePattern;
+  using Base::Base;
 
   LogicalResult matchAndRewrite(FFT2dOp fft2d,
                                 PatternRewriter &rewriter) const override {

diff  --git a/mlir/lib/Dialect/AMDGPU/IR/AMDGPUOps.cpp b/mlir/lib/Dialect/AMDGPU/IR/AMDGPUOps.cpp
index ad0ff12c9307f..8aff797d0884d 100644
--- a/mlir/lib/Dialect/AMDGPU/IR/AMDGPUOps.cpp
+++ b/mlir/lib/Dialect/AMDGPU/IR/AMDGPUOps.cpp
@@ -972,7 +972,7 @@ namespace {
 /// If the source/target of a GatherToLDSOp is a CastOp that only removes static
 /// information or changes layout, the cast can be skipped.
 struct FoldGatherToLDSOfCast final : OpRewritePattern<GatherToLDSOp> {
-  using OpRewritePattern::OpRewritePattern;
+  using Base::Base;
 
   LogicalResult matchAndRewrite(GatherToLDSOp gatherOp,
                                 PatternRewriter &rewriter) const override {
@@ -1332,7 +1332,7 @@ namespace {
 /// Check if the scales input is used in other scaled mfma's while they exist.
 /// If theyre unused then pack the scales.
 struct PackScales final : OpRewritePattern<ScaledMFMAOp> {
-  using OpRewritePattern::OpRewritePattern;
+  using Base::Base;
 
   LogicalResult matchAndRewrite(ScaledMFMAOp op,
                                 PatternRewriter &rewriter) const override {

diff  --git a/mlir/lib/Dialect/AMDGPU/Transforms/MaskedloadToLoad.cpp b/mlir/lib/Dialect/AMDGPU/Transforms/MaskedloadToLoad.cpp
index 97687dc8a822a..cb04c4deb9242 100644
--- a/mlir/lib/Dialect/AMDGPU/Transforms/MaskedloadToLoad.cpp
+++ b/mlir/lib/Dialect/AMDGPU/Transforms/MaskedloadToLoad.cpp
@@ -76,7 +76,7 @@ static constexpr char kMaskedloadNeedsMask[] =
 namespace {
 
 struct MaskedLoadLowering final : OpRewritePattern<vector::MaskedLoadOp> {
-  using OpRewritePattern::OpRewritePattern;
+  using Base::Base;
 
   LogicalResult matchAndRewrite(vector::MaskedLoadOp maskedOp,
                                 PatternRewriter &rewriter) const override {
@@ -171,7 +171,7 @@ struct MaskedLoadLowering final : OpRewritePattern<vector::MaskedLoadOp> {
 
 struct FullMaskedLoadToConditionalLoad
     : OpRewritePattern<vector::MaskedLoadOp> {
-  using OpRewritePattern::OpRewritePattern;
+  using Base::Base;
 
   LogicalResult matchAndRewrite(vector::MaskedLoadOp loadOp,
                                 PatternRewriter &rewriter) const override {
@@ -203,7 +203,7 @@ struct FullMaskedLoadToConditionalLoad
 
 struct FullMaskedStoreToConditionalStore
     : OpRewritePattern<vector::MaskedStoreOp> {
-  using OpRewritePattern::OpRewritePattern;
+  using Base::Base;
 
   LogicalResult matchAndRewrite(vector::MaskedStoreOp storeOp,
                                 PatternRewriter &rewriter) const override {

diff  --git a/mlir/lib/Dialect/AMDGPU/Transforms/ResolveStridedMetadata.cpp b/mlir/lib/Dialect/AMDGPU/Transforms/ResolveStridedMetadata.cpp
index f8bab8289cbc6..d1504cf4e40df 100644
--- a/mlir/lib/Dialect/AMDGPU/Transforms/ResolveStridedMetadata.cpp
+++ b/mlir/lib/Dialect/AMDGPU/Transforms/ResolveStridedMetadata.cpp
@@ -29,7 +29,7 @@ struct AmdgpuResolveStridedMetadataPass
 
 struct ExtractStridedMetadataOnFatRawBufferCastFolder final
     : public OpRewritePattern<memref::ExtractStridedMetadataOp> {
-  using OpRewritePattern::OpRewritePattern;
+  using Base::Base;
   LogicalResult matchAndRewrite(memref::ExtractStridedMetadataOp metadataOp,
                                 PatternRewriter &rewriter) const override {
     auto castOp = metadataOp.getSource().getDefiningOp<FatRawBufferCastOp>();

diff  --git a/mlir/lib/Dialect/Affine/IR/AffineOps.cpp b/mlir/lib/Dialect/Affine/IR/AffineOps.cpp
index a58b39ff5aac9..5f5a49a68eb67 100644
--- a/mlir/lib/Dialect/Affine/IR/AffineOps.cpp
+++ b/mlir/lib/Dialect/Affine/IR/AffineOps.cpp
@@ -5094,7 +5094,7 @@ namespace {
 // Drops delinearization indices that correspond to unit-extent basis
 struct DropUnitExtentBasis
     : public OpRewritePattern<affine::AffineDelinearizeIndexOp> {
-  using OpRewritePattern::OpRewritePattern;
+  using Base::Base;
 
   LogicalResult matchAndRewrite(affine::AffineDelinearizeIndexOp delinearizeOp,
                                 PatternRewriter &rewriter) const override {
@@ -5156,7 +5156,7 @@ struct DropUnitExtentBasis
 /// in-bounds the way the outputs of the delinearization would be.
 struct CancelDelinearizeOfLinearizeDisjointExactTail
     : public OpRewritePattern<affine::AffineDelinearizeIndexOp> {
-  using OpRewritePattern::OpRewritePattern;
+  using Base::Base;
 
   LogicalResult matchAndRewrite(affine::AffineDelinearizeIndexOp delinearizeOp,
                                 PatternRewriter &rewriter) const override {
@@ -5227,7 +5227,7 @@ struct CancelDelinearizeOfLinearizeDisjointExactTail
 /// where the original %1:4 is replaced by %1:2 ++ %2:2
 struct SplitDelinearizeSpanningLastLinearizeArg final
     : OpRewritePattern<affine::AffineDelinearizeIndexOp> {
-  using OpRewritePattern::OpRewritePattern;
+  using Base::Base;
 
   LogicalResult matchAndRewrite(affine::AffineDelinearizeIndexOp delinearizeOp,
                                 PatternRewriter &rewriter) const override {
@@ -5460,7 +5460,7 @@ namespace {
 /// the operation isn't asserted to be `disjoint`.
 struct DropLinearizeUnitComponentsIfDisjointOrZero final
     : OpRewritePattern<affine::AffineLinearizeIndexOp> {
-  using OpRewritePattern::OpRewritePattern;
+  using Base::Base;
 
   LogicalResult matchAndRewrite(affine::AffineLinearizeIndexOp op,
                                 PatternRewriter &rewriter) const override {
@@ -5557,7 +5557,7 @@ OpFoldResult computeProduct(Location loc, OpBuilder &builder,
 /// becoming `%t = affine.linearize_index [%x, %c0] by (64, 16)`
 struct CancelLinearizeOfDelinearizePortion final
     : OpRewritePattern<affine::AffineLinearizeIndexOp> {
-  using OpRewritePattern::OpRewritePattern;
+  using Base::Base;
 
 private:
   // Struct representing a case where the cancellation pattern
@@ -5737,7 +5737,7 @@ struct CancelLinearizeOfDelinearizePortion final
 /// to `affine.linearize_index [...a] by (...b)` in all cases.
 struct DropLinearizeLeadingZero final
     : OpRewritePattern<affine::AffineLinearizeIndexOp> {
-  using OpRewritePattern::OpRewritePattern;
+  using Base::Base;
 
   LogicalResult matchAndRewrite(affine::AffineLinearizeIndexOp op,
                                 PatternRewriter &rewriter) const override {

diff  --git a/mlir/lib/Dialect/Affine/Transforms/AffineExpandIndexOps.cpp b/mlir/lib/Dialect/Affine/Transforms/AffineExpandIndexOps.cpp
index 89909a14498c3..9da9caaca3bd3 100644
--- a/mlir/lib/Dialect/Affine/Transforms/AffineExpandIndexOps.cpp
+++ b/mlir/lib/Dialect/Affine/Transforms/AffineExpandIndexOps.cpp
@@ -228,7 +228,7 @@ struct LowerDelinearizeIndexOps
 };
 
 struct LowerLinearizeIndexOps final : OpRewritePattern<AffineLinearizeIndexOp> {
-  using OpRewritePattern::OpRewritePattern;
+  using Base::Base;
   LogicalResult matchAndRewrite(AffineLinearizeIndexOp op,
                                 PatternRewriter &rewriter) const override {
     return affine::lowerAffineLinearizeIndexOp(rewriter, op);

diff  --git a/mlir/lib/Dialect/Affine/Transforms/AffineExpandIndexOpsAsAffine.cpp b/mlir/lib/Dialect/Affine/Transforms/AffineExpandIndexOpsAsAffine.cpp
index 4a5a09b07f28b..929f788205275 100644
--- a/mlir/lib/Dialect/Affine/Transforms/AffineExpandIndexOpsAsAffine.cpp
+++ b/mlir/lib/Dialect/Affine/Transforms/AffineExpandIndexOpsAsAffine.cpp
@@ -92,7 +92,7 @@ struct LowerDelinearizeIndexOps
 /// additions via affine.apply. For vector types, unrolls to per-element
 /// scalar affine.apply operations.
 struct LowerLinearizeIndexOps final : OpRewritePattern<AffineLinearizeIndexOp> {
-  using OpRewritePattern::OpRewritePattern;
+  using Base::Base;
   LogicalResult matchAndRewrite(AffineLinearizeIndexOp op,
                                 PatternRewriter &rewriter) const override {
     Location loc = op.getLoc();

diff  --git a/mlir/lib/Dialect/ArmNeon/Transforms/LowerContractToNeonPatterns.cpp b/mlir/lib/Dialect/ArmNeon/Transforms/LowerContractToNeonPatterns.cpp
index 6b4285026ea04..d776d51480671 100644
--- a/mlir/lib/Dialect/ArmNeon/Transforms/LowerContractToNeonPatterns.cpp
+++ b/mlir/lib/Dialect/ArmNeon/Transforms/LowerContractToNeonPatterns.cpp
@@ -454,7 +454,7 @@ class VectorContractRewriterBFMMLA : public VectorContractRewriter {
 class LowerContractionToNeonI8MMPattern
     : public OpRewritePattern<vector::ContractionOp> {
 public:
-  using OpRewritePattern::OpRewritePattern;
+  using Base::Base;
   LogicalResult matchAndRewrite(vector::ContractionOp op,
                                 PatternRewriter &rewriter) const override {
     if (cast<vector::MaskableOpInterface>(op.getOperation()).isMasked())
@@ -473,7 +473,7 @@ class LowerContractionToNeonI8MMPattern
 class LowerContractionToNeonBFMMLAPattern
     : public OpRewritePattern<vector::ContractionOp> {
 public:
-  using OpRewritePattern::OpRewritePattern;
+  using Base::Base;
   LogicalResult matchAndRewrite(vector::ContractionOp op,
                                 PatternRewriter &rewriter) const override {
     if (cast<vector::MaskableOpInterface>(op.getOperation()).isMasked())

diff  --git a/mlir/lib/Dialect/ArmSME/Transforms/OuterProductFusion.cpp b/mlir/lib/Dialect/ArmSME/Transforms/OuterProductFusion.cpp
index a8b89f9157a70..92b2b3d367a08 100644
--- a/mlir/lib/Dialect/ArmSME/Transforms/OuterProductFusion.cpp
+++ b/mlir/lib/Dialect/ArmSME/Transforms/OuterProductFusion.cpp
@@ -103,7 +103,7 @@ static LogicalResult isCompatible(PatternRewriter &rewriter,
 class OuterProductFusion2Way
     : public OpRewritePattern<arm_sme::OuterProductOp> {
 public:
-  using OpRewritePattern::OpRewritePattern;
+  using Base::Base;
 
   LogicalResult matchAndRewrite(arm_sme::OuterProductOp op,
                                 PatternRewriter &rewriter) const override {
@@ -252,7 +252,7 @@ class OuterProductFusion2Way
 class OuterProductFusion4Way
     : public OpRewritePattern<arm_sme::OuterProductOp> {
 public:
-  using OpRewritePattern::OpRewritePattern;
+  using Base::Base;
 
   LogicalResult matchAndRewrite(arm_sme::OuterProductOp op,
                                 PatternRewriter &rewriter) const override {
@@ -437,7 +437,7 @@ class OuterProductFusion4Way
 // pass when the result is the input to an outer product.
 struct SwapVectorExtractOfArithExtend
     : public OpRewritePattern<vector::ExtractOp> {
-  using OpRewritePattern::OpRewritePattern;
+  using Base::Base;
 
   LogicalResult matchAndRewrite(vector::ExtractOp extractOp,
                                 PatternRewriter &rewriter) const override {
@@ -488,7 +488,7 @@ struct SwapVectorExtractOfArithExtend
 // pass when the result is the input to an outer product.
 struct SwapVectorScalableExtractOfArithExtend
     : public OpRewritePattern<vector::ScalableExtractOp> {
-  using OpRewritePattern::OpRewritePattern;
+  using Base::Base;
 
   LogicalResult matchAndRewrite(vector::ScalableExtractOp extractOp,
                                 PatternRewriter &rewriter) const override {

diff  --git a/mlir/lib/Dialect/ArmSME/Transforms/VectorLegalization.cpp b/mlir/lib/Dialect/ArmSME/Transforms/VectorLegalization.cpp
index 7a6c510920e22..00e7d5317e870 100644
--- a/mlir/lib/Dialect/ArmSME/Transforms/VectorLegalization.cpp
+++ b/mlir/lib/Dialect/ArmSME/Transforms/VectorLegalization.cpp
@@ -758,7 +758,7 @@ struct LiftIllegalVectorTransposeToMemory
 /// Values larger than a single tile are supported via decomposition.
 struct LowerIllegalTransposeStoreViaZA
     : public OpRewritePattern<vector::TransferWriteOp> {
-  using OpRewritePattern::OpRewritePattern;
+  using Base::Base;
 
   LogicalResult matchAndRewrite(vector::TransferWriteOp writeOp,
                                 PatternRewriter &rewriter) const override {
@@ -903,7 +903,7 @@ struct LowerIllegalTransposeStoreViaZA
 ///  required.
 struct LowerColumnTransferReadToLoops
     : public OpRewritePattern<vector::TransferReadOp> {
-  using OpRewritePattern::OpRewritePattern;
+  using Base::Base;
 
   LogicalResult matchAndRewrite(vector::TransferReadOp readOp,
                                 PatternRewriter &rewriter) const override {

diff  --git a/mlir/lib/Dialect/ArmSVE/Transforms/LegalizeVectorStorage.cpp b/mlir/lib/Dialect/ArmSVE/Transforms/LegalizeVectorStorage.cpp
index c1af8a5c80fcf..abbfb32d279c2 100644
--- a/mlir/lib/Dialect/ArmSVE/Transforms/LegalizeVectorStorage.cpp
+++ b/mlir/lib/Dialect/ArmSVE/Transforms/LegalizeVectorStorage.cpp
@@ -95,7 +95,7 @@ static FailureOr<Value> getSVELegalizedMemref(Value illegalMemref) {
 /// explicitly adds a reasonable alignment to allocas of scalable types.
 struct RelaxScalableVectorAllocaAlignment
     : public OpRewritePattern<memref::AllocaOp> {
-  using OpRewritePattern::OpRewritePattern;
+  using Base::Base;
 
   LogicalResult matchAndRewrite(memref::AllocaOp allocaOp,
                                 PatternRewriter &rewriter) const override {
@@ -178,7 +178,7 @@ struct LegalizeSVEMaskAllocation : public OpRewritePattern<AllocLikeOp> {
 /// ```
 struct LegalizeSVEMaskTypeCastConversion
     : public OpRewritePattern<vector::TypeCastOp> {
-  using OpRewritePattern::OpRewritePattern;
+  using Base::Base;
 
   LogicalResult matchAndRewrite(vector::TypeCastOp typeCastOp,
                                 PatternRewriter &rewriter) const override {
@@ -221,7 +221,7 @@ struct LegalizeSVEMaskTypeCastConversion
 /// ```
 struct LegalizeSVEMaskStoreConversion
     : public OpRewritePattern<memref::StoreOp> {
-  using OpRewritePattern::OpRewritePattern;
+  using Base::Base;
 
   LogicalResult matchAndRewrite(memref::StoreOp storeOp,
                                 PatternRewriter &rewriter) const override {
@@ -268,7 +268,7 @@ struct LegalizeSVEMaskStoreConversion
 /// %reload = arm_sve.convert_from_svbool %reload : vector<[4]xi1>
 /// ```
 struct LegalizeSVEMaskLoadConversion : public OpRewritePattern<memref::LoadOp> {
-  using OpRewritePattern::OpRewritePattern;
+  using Base::Base;
 
   LogicalResult matchAndRewrite(memref::LoadOp loadOp,
                                 PatternRewriter &rewriter) const override {
@@ -319,7 +319,7 @@ struct LegalizeSVEMaskLoadConversion : public OpRewritePattern<memref::LoadOp> {
 /// %1 = vector.shape_cast %0 : vector<2x[64]xi8> to vector<2x[4]x2x8xi8>
 /// ```
 struct LegalizeTransferRead : public OpRewritePattern<vector::TransferReadOp> {
-  using OpRewritePattern::OpRewritePattern;
+  using Base::Base;
 
   LogicalResult matchAndRewrite(vector::TransferReadOp readOp,
                                 PatternRewriter &rewriter) const override {

diff  --git a/mlir/lib/Dialect/ArmSVE/Transforms/LowerContractToSVEPatterns.cpp b/mlir/lib/Dialect/ArmSVE/Transforms/LowerContractToSVEPatterns.cpp
index b48a11bb2adf7..86fd0bf2661ed 100644
--- a/mlir/lib/Dialect/ArmSVE/Transforms/LowerContractToSVEPatterns.cpp
+++ b/mlir/lib/Dialect/ArmSVE/Transforms/LowerContractToSVEPatterns.cpp
@@ -545,7 +545,7 @@ class VectorContractRewriterBfloat : public VectorContractRewriter {
 class LowerContractionToSVEI8MMPattern
     : public OpRewritePattern<vector::ContractionOp> {
 public:
-  using OpRewritePattern::OpRewritePattern;
+  using Base::Base;
   LogicalResult matchAndRewrite(vector::ContractionOp op,
                                 PatternRewriter &rewriter) const override {
 
@@ -564,7 +564,7 @@ class LowerContractionToSVEI8MMPattern
 class LowerContractionToSVEBFMMLAPattern
     : public OpRewritePattern<vector::ContractionOp> {
 public:
-  using OpRewritePattern::OpRewritePattern;
+  using Base::Base;
   LogicalResult matchAndRewrite(vector::ContractionOp op,
                                 PatternRewriter &rewriter) const override {
 

diff  --git a/mlir/lib/Dialect/ControlFlow/IR/ControlFlowOps.cpp b/mlir/lib/Dialect/ControlFlow/IR/ControlFlowOps.cpp
index b3f063142a560..792a32c616057 100644
--- a/mlir/lib/Dialect/ControlFlow/IR/ControlFlowOps.cpp
+++ b/mlir/lib/Dialect/ControlFlow/IR/ControlFlowOps.cpp
@@ -307,7 +307,7 @@ namespace {
 ///  -> br ^bb2
 ///
 struct SimplifyConstCondBranchPred : public OpRewritePattern<CondBranchOp> {
-  using OpRewritePattern<CondBranchOp>::OpRewritePattern;
+  using Base::Base;
 
   LogicalResult matchAndRewrite(CondBranchOp condbr,
                                 PatternRewriter &rewriter) const override {

diff  --git a/mlir/lib/Dialect/GPU/IR/GPUDialect.cpp b/mlir/lib/Dialect/GPU/IR/GPUDialect.cpp
index 5c1a7004ebbc3..7b47c20515b13 100644
--- a/mlir/lib/Dialect/GPU/IR/GPUDialect.cpp
+++ b/mlir/lib/Dialect/GPU/IR/GPUDialect.cpp
@@ -2219,7 +2219,7 @@ namespace {
 /// ...  gpu.wait ... [%t, ...]  // %t can be removed.
 struct EraseRedundantGpuWaitOpPairs : public OpRewritePattern<WaitOp> {
 public:
-  using OpRewritePattern::OpRewritePattern;
+  using Base::Base;
 
   LogicalResult matchAndRewrite(WaitOp op,
                                 PatternRewriter &rewriter) const final {
@@ -2249,7 +2249,7 @@ struct EraseRedundantGpuWaitOpPairs : public OpRewritePattern<WaitOp> {
 /// dependencies nor return any token.
 struct SimplifyGpuWaitOp : public OpRewritePattern<WaitOp> {
 public:
-  using OpRewritePattern::OpRewritePattern;
+  using Base::Base;
 
   LogicalResult matchAndRewrite(WaitOp op,
                                 PatternRewriter &rewriter) const final {

diff  --git a/mlir/lib/Dialect/GPU/Transforms/DecomposeMemRefs.cpp b/mlir/lib/Dialect/GPU/Transforms/DecomposeMemRefs.cpp
index 63a5ab85704a9..bd7daebc08ace 100644
--- a/mlir/lib/Dialect/GPU/Transforms/DecomposeMemRefs.cpp
+++ b/mlir/lib/Dialect/GPU/Transforms/DecomposeMemRefs.cpp
@@ -127,7 +127,7 @@ static bool checkLayout(Value val) {
 
 namespace {
 struct FlattenLoad : public OpRewritePattern<memref::LoadOp> {
-  using OpRewritePattern::OpRewritePattern;
+  using Base::Base;
 
   LogicalResult matchAndRewrite(memref::LoadOp op,
                                 PatternRewriter &rewriter) const override {
@@ -151,7 +151,7 @@ struct FlattenLoad : public OpRewritePattern<memref::LoadOp> {
 };
 
 struct FlattenStore : public OpRewritePattern<memref::StoreOp> {
-  using OpRewritePattern::OpRewritePattern;
+  using Base::Base;
 
   LogicalResult matchAndRewrite(memref::StoreOp op,
                                 PatternRewriter &rewriter) const override {
@@ -176,7 +176,7 @@ struct FlattenStore : public OpRewritePattern<memref::StoreOp> {
 };
 
 struct FlattenSubview : public OpRewritePattern<memref::SubViewOp> {
-  using OpRewritePattern::OpRewritePattern;
+  using Base::Base;
 
   LogicalResult matchAndRewrite(memref::SubViewOp op,
                                 PatternRewriter &rewriter) const override {

diff  --git a/mlir/lib/Dialect/GPU/Transforms/PromoteShuffleToAMDGPU.cpp b/mlir/lib/Dialect/GPU/Transforms/PromoteShuffleToAMDGPU.cpp
index 26c87c5b5d914..6003e32b5d6af 100644
--- a/mlir/lib/Dialect/GPU/Transforms/PromoteShuffleToAMDGPU.cpp
+++ b/mlir/lib/Dialect/GPU/Transforms/PromoteShuffleToAMDGPU.cpp
@@ -27,7 +27,7 @@ namespace {
 /// and offset must be a constant integer in the range [0, 31].
 struct PromoteShuffleToSwizzlePattern
     : public OpRewritePattern<gpu::ShuffleOp> {
-  using OpRewritePattern::OpRewritePattern;
+  using Base::Base;
 
   LogicalResult matchAndRewrite(gpu::ShuffleOp op,
                                 PatternRewriter &rewriter) const override {
@@ -64,7 +64,7 @@ struct PromoteShuffleToSwizzlePattern
 /// and offset must be a constant integer in the set {16, 32}.
 struct PromoteShuffleToPermlanePattern
     : public OpRewritePattern<gpu::ShuffleOp> {
-  using OpRewritePattern::OpRewritePattern;
+  using Base::Base;
 
   LogicalResult matchAndRewrite(gpu::ShuffleOp op,
                                 PatternRewriter &rewriter) const override {

diff  --git a/mlir/lib/Dialect/GPU/Transforms/SubgroupReduceLowering.cpp b/mlir/lib/Dialect/GPU/Transforms/SubgroupReduceLowering.cpp
index 23f1a16ca85aa..1018306fc3cf2 100644
--- a/mlir/lib/Dialect/GPU/Transforms/SubgroupReduceLowering.cpp
+++ b/mlir/lib/Dialect/GPU/Transforms/SubgroupReduceLowering.cpp
@@ -128,7 +128,7 @@ struct BreakDownSubgroupReduce final : OpRewritePattern<gpu::SubgroupReduceOp> {
 /// ```
 struct ScalarizeSingleElementReduce final
     : OpRewritePattern<gpu::SubgroupReduceOp> {
-  using OpRewritePattern::OpRewritePattern;
+  using Base::Base;
 
   LogicalResult matchAndRewrite(gpu::SubgroupReduceOp op,
                                 PatternRewriter &rewriter) const override {

diff  --git a/mlir/lib/Dialect/LLVMIR/IR/LLVMDialect.cpp b/mlir/lib/Dialect/LLVMIR/IR/LLVMDialect.cpp
index a974d00401980..f498b5d042a16 100644
--- a/mlir/lib/Dialect/LLVMIR/IR/LLVMDialect.cpp
+++ b/mlir/lib/Dialect/LLVMIR/IR/LLVMDialect.cpp
@@ -2182,7 +2182,7 @@ namespace {
 ///   ...
 ///   %e999 = llvm.extractvalue %i999[999]
 struct ResolveExtractValueSource : public OpRewritePattern<InsertValueOp> {
-  using OpRewritePattern::OpRewritePattern;
+  using Base::Base;
 
   LogicalResult matchAndRewrite(InsertValueOp insertOp,
                                 PatternRewriter &rewriter) const override {

diff  --git a/mlir/lib/Dialect/Linalg/IR/LinalgOps.cpp b/mlir/lib/Dialect/Linalg/IR/LinalgOps.cpp
index a5d04b2f72574..9e63ccf47872e 100644
--- a/mlir/lib/Dialect/Linalg/IR/LinalgOps.cpp
+++ b/mlir/lib/Dialect/Linalg/IR/LinalgOps.cpp
@@ -825,7 +825,7 @@ struct FoldFillWithTensorReshape : OpRewritePattern<TensorReshapeOp> {
 /// Fold tensor.pad(linalg.fill) into linalg.fill if the padding value and the
 /// filling value are the same.
 struct FoldFillWithPad final : public OpRewritePattern<tensor::PadOp> {
-  using OpRewritePattern::OpRewritePattern;
+  using Base::Base;
 
   LogicalResult matchAndRewrite(tensor::PadOp padOp,
                                 PatternRewriter &rewriter) const override {
@@ -864,7 +864,7 @@ struct FoldFillWithPad final : public OpRewritePattern<tensor::PadOp> {
 /// tensor.insert_slice(<input>, linalg.fill) if the padding value and the
 /// filling value are the same.
 struct FoldInsertPadIntoFill : public OpRewritePattern<tensor::InsertSliceOp> {
-  using OpRewritePattern::OpRewritePattern;
+  using Base::Base;
 
   LogicalResult matchAndRewrite(tensor::InsertSliceOp insertOp,
                                 PatternRewriter &rewriter) const override {
@@ -1059,7 +1059,7 @@ struct FoldFillWithTranspose : OpRewritePattern<linalg::TransposeOp> {
 /// Fold a concat with all elements being fills of the same value
 /// into a fill of the concat result shape.
 struct FoldConcatsOfFill : public OpRewritePattern<tensor::ConcatOp> {
-  using OpRewritePattern::OpRewritePattern;
+  using Base::Base;
 
   LogicalResult matchAndRewrite(tensor::ConcatOp concatOp,
                                 PatternRewriter &rewriter) const override {

diff  --git a/mlir/lib/Dialect/Linalg/Transforms/ConvertConv2DToImg2Col.cpp b/mlir/lib/Dialect/Linalg/Transforms/ConvertConv2DToImg2Col.cpp
index e2dd0a6d79a73..931e4cb464bde 100644
--- a/mlir/lib/Dialect/Linalg/Transforms/ConvertConv2DToImg2Col.cpp
+++ b/mlir/lib/Dialect/Linalg/Transforms/ConvertConv2DToImg2Col.cpp
@@ -676,7 +676,7 @@ namespace {
 class ConvertConv2DNhwcHwcf final
     : public OpRewritePattern<linalg::Conv2DNhwcHwcfOp> {
 public:
-  using OpRewritePattern::OpRewritePattern;
+  using Base::Base;
 
   LogicalResult matchAndRewrite(linalg::Conv2DNhwcHwcfOp convOp,
                                 PatternRewriter &rewriter) const override {
@@ -702,7 +702,7 @@ class ConvertDepthwiseConv2DNhwcHwc final
 class ConvertConv2DNchwFchw final
     : public OpRewritePattern<linalg::Conv2DNchwFchwOp> {
 public:
-  using OpRewritePattern::OpRewritePattern;
+  using Base::Base;
 
   LogicalResult matchAndRewrite(linalg::Conv2DNchwFchwOp convOp,
                                 PatternRewriter &rewriter) const override {
@@ -715,7 +715,7 @@ class ConvertConv2DNchwFchw final
 class ConvertConv2DNhwcFhwc final
     : public OpRewritePattern<linalg::Conv2DNhwcFhwcOp> {
 public:
-  using OpRewritePattern::OpRewritePattern;
+  using Base::Base;
 
   LogicalResult matchAndRewrite(linalg::Conv2DNhwcFhwcOp convOp,
                                 PatternRewriter &rewriter) const override {

diff  --git a/mlir/lib/Dialect/Linalg/Transforms/SwapExtractSliceWithFillPatterns.cpp b/mlir/lib/Dialect/Linalg/Transforms/SwapExtractSliceWithFillPatterns.cpp
index 792ca3e5123ef..eb82bb57cb2ab 100644
--- a/mlir/lib/Dialect/Linalg/Transforms/SwapExtractSliceWithFillPatterns.cpp
+++ b/mlir/lib/Dialect/Linalg/Transforms/SwapExtractSliceWithFillPatterns.cpp
@@ -21,7 +21,7 @@ using namespace mlir::linalg;
 /// This helps to reduce the fill footprint.
 struct SwapExtractSliceOfFill final
     : public OpRewritePattern<tensor::ExtractSliceOp> {
-  using OpRewritePattern::OpRewritePattern;
+  using Base::Base;
 
   LogicalResult matchAndRewrite(tensor::ExtractSliceOp extractOp,
                                 PatternRewriter &rewriter) const override {

diff  --git a/mlir/lib/Dialect/Linalg/Transforms/WinogradConv2D.cpp b/mlir/lib/Dialect/Linalg/Transforms/WinogradConv2D.cpp
index 37bdd8b12af4d..5a9e632382beb 100644
--- a/mlir/lib/Dialect/Linalg/Transforms/WinogradConv2D.cpp
+++ b/mlir/lib/Dialect/Linalg/Transforms/WinogradConv2D.cpp
@@ -1131,7 +1131,7 @@ decomposeWinogradOutputTransformHelper(RewriterBase &rewriter,
 class DecomposeWinogradFilterTransform final
     : public OpRewritePattern<linalg::WinogradFilterTransformOp> {
 public:
-  using OpRewritePattern::OpRewritePattern;
+  using Base::Base;
 
   LogicalResult matchAndRewrite(linalg::WinogradFilterTransformOp op,
                                 PatternRewriter &rewriter) const override {
@@ -1143,7 +1143,7 @@ class DecomposeWinogradFilterTransform final
 class DecomposeWinogradInputTransform final
     : public OpRewritePattern<linalg::WinogradInputTransformOp> {
 public:
-  using OpRewritePattern::OpRewritePattern;
+  using Base::Base;
 
   LogicalResult matchAndRewrite(linalg::WinogradInputTransformOp op,
                                 PatternRewriter &rewriter) const override {
@@ -1155,7 +1155,7 @@ class DecomposeWinogradInputTransform final
 class DecomposeWinogradOutputTransform final
     : public OpRewritePattern<linalg::WinogradOutputTransformOp> {
 public:
-  using OpRewritePattern::OpRewritePattern;
+  using Base::Base;
 
   LogicalResult matchAndRewrite(linalg::WinogradOutputTransformOp op,
                                 PatternRewriter &rewriter) const override {
@@ -1167,7 +1167,7 @@ class DecomposeWinogradOutputTransform final
 class WinogradConv2DNhwcFhwc final
     : public OpRewritePattern<linalg::Conv2DNhwcFhwcOp> {
 public:
-  using OpRewritePattern::OpRewritePattern;
+  using Base::Base;
   WinogradConv2DNhwcFhwc(mlir::MLIRContext *context, WinogradConv2DFmr fmr)
       : OpRewritePattern(context), fmr(fmr) {}
 

diff  --git a/mlir/lib/Dialect/Math/Transforms/AlgebraicSimplification.cpp b/mlir/lib/Dialect/Math/Transforms/AlgebraicSimplification.cpp
index 45343ce09134c..92be8fe40c163 100644
--- a/mlir/lib/Dialect/Math/Transforms/AlgebraicSimplification.cpp
+++ b/mlir/lib/Dialect/Math/Transforms/AlgebraicSimplification.cpp
@@ -31,7 +31,7 @@ using namespace mlir;
 namespace {
 struct PowFStrengthReduction : public OpRewritePattern<math::PowFOp> {
 public:
-  using OpRewritePattern::OpRewritePattern;
+  using Base::Base;
 
   LogicalResult matchAndRewrite(math::PowFOp op,
                                 PatternRewriter &rewriter) const final;
@@ -252,7 +252,7 @@ namespace {
 template <typename ExpOpTy>
 struct ExpQuotientStrengthReduction : public OpRewritePattern<arith::DivFOp> {
 public:
-  using OpRewritePattern::OpRewritePattern;
+  using Base::Base;
 
   LogicalResult matchAndRewrite(arith::DivFOp op,
                                 PatternRewriter &rewriter) const final {

diff  --git a/mlir/lib/Dialect/Math/Transforms/PolynomialApproximation.cpp b/mlir/lib/Dialect/Math/Transforms/PolynomialApproximation.cpp
index 02fe79024ff5e..96b5a25da113a 100644
--- a/mlir/lib/Dialect/Math/Transforms/PolynomialApproximation.cpp
+++ b/mlir/lib/Dialect/Math/Transforms/PolynomialApproximation.cpp
@@ -380,7 +380,7 @@ struct ReuseF32Expansion : public OpRewritePattern<T> {
 namespace {
 struct AtanApproximation : public OpRewritePattern<math::AtanOp> {
 public:
-  using OpRewritePattern::OpRewritePattern;
+  using Base::Base;
 
   LogicalResult matchAndRewrite(math::AtanOp op,
                                 PatternRewriter &rewriter) const final;
@@ -477,7 +477,7 @@ AtanApproximation::matchAndRewrite(math::AtanOp op,
 namespace {
 struct Atan2Approximation : public OpRewritePattern<math::Atan2Op> {
 public:
-  using OpRewritePattern::OpRewritePattern;
+  using Base::Base;
 
   LogicalResult matchAndRewrite(math::Atan2Op op,
                                 PatternRewriter &rewriter) const final;
@@ -548,7 +548,7 @@ Atan2Approximation::matchAndRewrite(math::Atan2Op op,
 namespace {
 struct TanhApproximation : public OpRewritePattern<math::TanhOp> {
 public:
-  using OpRewritePattern::OpRewritePattern;
+  using Base::Base;
 
   LogicalResult matchAndRewrite(math::TanhOp op,
                                 PatternRewriter &rewriter) const final;
@@ -782,7 +782,7 @@ struct Log2Approximation : public LogApproximationBase<math::Log2Op> {
 namespace {
 struct Log1pApproximation : public OpRewritePattern<math::Log1pOp> {
 public:
-  using OpRewritePattern::OpRewritePattern;
+  using Base::Base;
 
   LogicalResult matchAndRewrite(math::Log1pOp op,
                                 PatternRewriter &rewriter) const final;
@@ -837,7 +837,7 @@ Log1pApproximation::matchAndRewrite(math::Log1pOp op,
 namespace {
 struct AsinPolynomialApproximation : public OpRewritePattern<math::AsinOp> {
 public:
-  using OpRewritePattern::OpRewritePattern;
+  using Base::Base;
 
   LogicalResult matchAndRewrite(math::AsinOp op,
                                 PatternRewriter &rewriter) const final;
@@ -933,7 +933,7 @@ AsinPolynomialApproximation::matchAndRewrite(math::AsinOp op,
 namespace {
 struct AcosPolynomialApproximation : public OpRewritePattern<math::AcosOp> {
 public:
-  using OpRewritePattern::OpRewritePattern;
+  using Base::Base;
 
   LogicalResult matchAndRewrite(math::AcosOp op,
                                 PatternRewriter &rewriter) const final;
@@ -1262,7 +1262,7 @@ Value clampWithNormals(ImplicitLocOpBuilder &builder,
 
 struct ExpApproximation : public OpRewritePattern<math::ExpOp> {
 public:
-  using OpRewritePattern::OpRewritePattern;
+  using Base::Base;
 
   LogicalResult matchAndRewrite(math::ExpOp op,
                                 PatternRewriter &rewriter) const final;
@@ -1415,7 +1415,7 @@ namespace {
 
 struct ExpM1Approximation : public OpRewritePattern<math::ExpM1Op> {
 public:
-  using OpRewritePattern::OpRewritePattern;
+  using Base::Base;
 
   LogicalResult matchAndRewrite(math::ExpM1Op op,
                                 PatternRewriter &rewriter) const final;
@@ -1608,7 +1608,7 @@ LogicalResult SinAndCosApproximation<isSine, OpTy>::matchAndRewrite(
 
 namespace {
 struct CbrtApproximation : public OpRewritePattern<math::CbrtOp> {
-  using OpRewritePattern::OpRewritePattern;
+  using Base::Base;
 
   LogicalResult matchAndRewrite(math::CbrtOp op,
                                 PatternRewriter &rewriter) const final;
@@ -1701,7 +1701,7 @@ CbrtApproximation::matchAndRewrite(math::CbrtOp op,
 
 namespace {
 struct RsqrtApproximation : public OpRewritePattern<math::RsqrtOp> {
-  using OpRewritePattern::OpRewritePattern;
+  using Base::Base;
 
   LogicalResult matchAndRewrite(math::RsqrtOp op,
                                 PatternRewriter &rewriter) const final;

diff  --git a/mlir/lib/Dialect/Math/Transforms/UpliftToFMA.cpp b/mlir/lib/Dialect/Math/Transforms/UpliftToFMA.cpp
index de950bac819c7..fc373ad52508c 100644
--- a/mlir/lib/Dialect/Math/Transforms/UpliftToFMA.cpp
+++ b/mlir/lib/Dialect/Math/Transforms/UpliftToFMA.cpp
@@ -31,7 +31,7 @@ static bool isValidForFMA(Op op) {
 namespace {
 
 struct UpliftFma final : OpRewritePattern<arith::AddFOp> {
-  using OpRewritePattern::OpRewritePattern;
+  using Base::Base;
 
   LogicalResult matchAndRewrite(arith::AddFOp op,
                                 PatternRewriter &rewriter) const override {

diff  --git a/mlir/lib/Dialect/MemRef/Transforms/ComposeSubView.cpp b/mlir/lib/Dialect/MemRef/Transforms/ComposeSubView.cpp
index cce80db4e0ab1..f38fa1babb8fa 100644
--- a/mlir/lib/Dialect/MemRef/Transforms/ComposeSubView.cpp
+++ b/mlir/lib/Dialect/MemRef/Transforms/ComposeSubView.cpp
@@ -26,7 +26,7 @@ namespace {
 // Replaces a subview of a subview with a single subview(both static and dynamic
 // offsets are supported).
 struct ComposeSubViewOpPattern : public OpRewritePattern<memref::SubViewOp> {
-  using OpRewritePattern::OpRewritePattern;
+  using Base::Base;
 
   LogicalResult matchAndRewrite(memref::SubViewOp op,
                                 PatternRewriter &rewriter) const override {

diff  --git a/mlir/lib/Dialect/MemRef/Transforms/ElideReinterpretCast.cpp b/mlir/lib/Dialect/MemRef/Transforms/ElideReinterpretCast.cpp
index 67b53b78a7fef..78e2da759f462 100644
--- a/mlir/lib/Dialect/MemRef/Transforms/ElideReinterpretCast.cpp
+++ b/mlir/lib/Dialect/MemRef/Transforms/ElideReinterpretCast.cpp
@@ -285,7 +285,7 @@ getResultNonUnitDimsAndOffsetsForRC(memref::ReinterpretCastOp rc) {
 ///   }
 struct CopyToLoadAndStore : public OpRewritePattern<memref::CopyOp> {
 public:
-  using OpRewritePattern::OpRewritePattern;
+  using Base::Base;
 
   LogicalResult matchAndRewrite(memref::CopyOp op,
                                 PatternRewriter &rewriter) const final {
@@ -574,7 +574,7 @@ getNonUnitDimMapping(memref::ReinterpretCastOp rc) {
 struct RewriteLoadFromReinterpretCast
     : public OpRewritePattern<memref::LoadOp> {
 public:
-  using OpRewritePattern::OpRewritePattern;
+  using Base::Base;
 
   LogicalResult matchAndRewrite(memref::LoadOp op,
                                 PatternRewriter &rewriter) const override {

diff  --git a/mlir/lib/Dialect/MemRef/Transforms/ExpandOps.cpp b/mlir/lib/Dialect/MemRef/Transforms/ExpandOps.cpp
index de5878407a683..2aa71b02bc463 100644
--- a/mlir/lib/Dialect/MemRef/Transforms/ExpandOps.cpp
+++ b/mlir/lib/Dialect/MemRef/Transforms/ExpandOps.cpp
@@ -28,7 +28,7 @@ namespace {
 /// size to `memref.reinterpret_cast`.
 struct MemRefReshapeOpConverter : public OpRewritePattern<memref::ReshapeOp> {
 public:
-  using OpRewritePattern::OpRewritePattern;
+  using Base::Base;
 
   LogicalResult matchAndRewrite(memref::ReshapeOp op,
                                 PatternRewriter &rewriter) const final {

diff  --git a/mlir/lib/Dialect/MemRef/Transforms/ExpandStridedMetadata.cpp b/mlir/lib/Dialect/MemRef/Transforms/ExpandStridedMetadata.cpp
index f95b2529d21e5..47fb8dcc9fcf6 100644
--- a/mlir/lib/Dialect/MemRef/Transforms/ExpandStridedMetadata.cpp
+++ b/mlir/lib/Dialect/MemRef/Transforms/ExpandStridedMetadata.cpp
@@ -230,7 +230,7 @@ struct SubviewFolder : public OpRewritePattern<memref::SubViewOp> {
 /// the replacements for the original `extract_strided_metadata`.
 struct ExtractStridedMetadataOpSubviewFolder
     : OpRewritePattern<memref::ExtractStridedMetadataOp> {
-  using OpRewritePattern::OpRewritePattern;
+  using Base::Base;
 
   LogicalResult matchAndRewrite(memref::ExtractStridedMetadataOp op,
                                 PatternRewriter &rewriter) const override {
@@ -645,7 +645,7 @@ struct ReshapeFolder : public OpRewritePattern<ReassociativeReshapeLikeOp> {
 /// the replacements for the original `extract_strided_metadata`.
 struct ExtractStridedMetadataOpCollapseShapeFolder
     : OpRewritePattern<memref::ExtractStridedMetadataOp> {
-  using OpRewritePattern::OpRewritePattern;
+  using Base::Base;
 
   LogicalResult matchAndRewrite(memref::ExtractStridedMetadataOp op,
                                 PatternRewriter &rewriter) const override {
@@ -682,7 +682,7 @@ struct ExtractStridedMetadataOpCollapseShapeFolder
 /// and dividing up dimensions into static and dynamic parts as needed.
 struct ExtractStridedMetadataOpExpandShapeFolder
     : OpRewritePattern<memref::ExtractStridedMetadataOp> {
-  using OpRewritePattern::OpRewritePattern;
+  using Base::Base;
 
   LogicalResult matchAndRewrite(memref::ExtractStridedMetadataOp op,
                                 PatternRewriter &rewriter) const override {
@@ -907,7 +907,7 @@ struct ExtractStridedMetadataOpAssumeAlignmentFolder
 /// source of the ViewLikeOp.
 class RewriteExtractAlignedPointerAsIndexOfViewLikeOp
     : public OpRewritePattern<memref::ExtractAlignedPointerAsIndexOp> {
-  using OpRewritePattern::OpRewritePattern;
+  using Base::Base;
 
   LogicalResult
   matchAndRewrite(memref::ExtractAlignedPointerAsIndexOp extractOp,
@@ -942,7 +942,7 @@ class RewriteExtractAlignedPointerAsIndexOfViewLikeOp
 /// on the offset, sizes, and strides.
 class ExtractStridedMetadataOpReinterpretCastFolder
     : public OpRewritePattern<memref::ExtractStridedMetadataOp> {
-  using OpRewritePattern::OpRewritePattern;
+  using Base::Base;
 
   LogicalResult
   matchAndRewrite(memref::ExtractStridedMetadataOp extractStridedMetadataOp,
@@ -1004,7 +1004,7 @@ class ExtractStridedMetadataOpReinterpretCastFolder
 /// In other words, propagate metadata extraction accross memory space casts.
 class ExtractStridedMetadataOpMemorySpaceCastFolder
     : public OpRewritePattern<memref::ExtractStridedMetadataOp> {
-  using OpRewritePattern::OpRewritePattern;
+  using Base::Base;
 
   LogicalResult
   matchAndRewrite(memref::ExtractStridedMetadataOp extractStridedMetadataOp,
@@ -1048,7 +1048,7 @@ class ExtractStridedMetadataOpMemorySpaceCastFolder
 /// ```
 class ExtractStridedMetadataOpExtractStridedMetadataFolder
     : public OpRewritePattern<memref::ExtractStridedMetadataOp> {
-  using OpRewritePattern::OpRewritePattern;
+  using Base::Base;
 
   LogicalResult
   matchAndRewrite(memref::ExtractStridedMetadataOp extractStridedMetadataOp,

diff  --git a/mlir/lib/Dialect/OpenACC/IR/OpenACCCG.cpp b/mlir/lib/Dialect/OpenACC/IR/OpenACCCG.cpp
index 16af8771546c1..fcf3b4708d2e1 100644
--- a/mlir/lib/Dialect/OpenACC/IR/OpenACCCG.cpp
+++ b/mlir/lib/Dialect/OpenACC/IR/OpenACCCG.cpp
@@ -94,7 +94,7 @@ static void setComputeRegionInputOperandSegments(ComputeRegionOp op,
 
 struct ComputeRegionRemoveDuplicateArgs
     : public OpRewritePattern<ComputeRegionOp> {
-  using OpRewritePattern::OpRewritePattern;
+  using Base::Base;
 
   LogicalResult matchAndRewrite(ComputeRegionOp op,
                                 PatternRewriter &rewriter) const override {
@@ -146,7 +146,7 @@ struct ComputeRegionRemoveDuplicateArgs
 
 struct ComputeRegionRemoveUnusedArgs
     : public OpRewritePattern<ComputeRegionOp> {
-  using OpRewritePattern::OpRewritePattern;
+  using Base::Base;
 
   LogicalResult matchAndRewrite(ComputeRegionOp op,
                                 PatternRewriter &rewriter) const override {

diff  --git a/mlir/lib/Dialect/SCF/IR/SCF.cpp b/mlir/lib/Dialect/SCF/IR/SCF.cpp
index ea2fecd63c2ec..13cbb34b9f034 100644
--- a/mlir/lib/Dialect/SCF/IR/SCF.cpp
+++ b/mlir/lib/Dialect/SCF/IR/SCF.cpp
@@ -3672,7 +3672,7 @@ static bool hasDuplicates(ValueRange args) {
 /// args and op result values accordingly.
 /// Needed to simplify `scf.while` -> `scf.for` uplifting.
 struct WhileOpAlignBeforeArgs : public OpRewritePattern<WhileOp> {
-  using OpRewritePattern::OpRewritePattern;
+  using Base::Base;
 
   LogicalResult matchAndRewrite(WhileOp loop,
                                 PatternRewriter &rewriter) const override {

diff  --git a/mlir/lib/Dialect/SCF/Transforms/UpliftWhileToFor.cpp b/mlir/lib/Dialect/SCF/Transforms/UpliftWhileToFor.cpp
index d99ff3115ce5d..e875a8d160859 100644
--- a/mlir/lib/Dialect/SCF/Transforms/UpliftWhileToFor.cpp
+++ b/mlir/lib/Dialect/SCF/Transforms/UpliftWhileToFor.cpp
@@ -20,7 +20,7 @@ using namespace mlir;
 
 namespace {
 struct UpliftWhileOp : public OpRewritePattern<scf::WhileOp> {
-  using OpRewritePattern::OpRewritePattern;
+  using Base::Base;
 
   LogicalResult matchAndRewrite(scf::WhileOp loop,
                                 PatternRewriter &rewriter) const override {

diff  --git a/mlir/lib/Dialect/Shape/Transforms/RemoveShapeConstraints.cpp b/mlir/lib/Dialect/Shape/Transforms/RemoveShapeConstraints.cpp
index b2992d252cf6e..de1f3e9681d81 100644
--- a/mlir/lib/Dialect/Shape/Transforms/RemoveShapeConstraints.cpp
+++ b/mlir/lib/Dialect/Shape/Transforms/RemoveShapeConstraints.cpp
@@ -25,7 +25,7 @@ namespace {
 class RemoveCstrBroadcastableOp
     : public OpRewritePattern<shape::CstrBroadcastableOp> {
 public:
-  using OpRewritePattern::OpRewritePattern;
+  using Base::Base;
 
   LogicalResult matchAndRewrite(shape::CstrBroadcastableOp op,
                                 PatternRewriter &rewriter) const override {
@@ -36,7 +36,7 @@ class RemoveCstrBroadcastableOp
 
 class RemoveCstrEqOp : public OpRewritePattern<shape::CstrEqOp> {
 public:
-  using OpRewritePattern::OpRewritePattern;
+  using Base::Base;
 
   LogicalResult matchAndRewrite(shape::CstrEqOp op,
                                 PatternRewriter &rewriter) const override {

diff  --git a/mlir/lib/Dialect/Shape/Transforms/ShapeToShapeLowering.cpp b/mlir/lib/Dialect/Shape/Transforms/ShapeToShapeLowering.cpp
index f16ebf9c540cd..41a876622355f 100644
--- a/mlir/lib/Dialect/Shape/Transforms/ShapeToShapeLowering.cpp
+++ b/mlir/lib/Dialect/Shape/Transforms/ShapeToShapeLowering.cpp
@@ -27,7 +27,7 @@ namespace {
 /// Converts `shape.num_elements` to `shape.reduce`.
 struct NumElementsOpConverter : public OpRewritePattern<NumElementsOp> {
 public:
-  using OpRewritePattern::OpRewritePattern;
+  using Base::Base;
 
   LogicalResult matchAndRewrite(NumElementsOp op,
                                 PatternRewriter &rewriter) const final;

diff  --git a/mlir/lib/Dialect/Shard/Transforms/Simplify.cpp b/mlir/lib/Dialect/Shard/Transforms/Simplify.cpp
index 97c4c777d288b..b063446ba0254 100644
--- a/mlir/lib/Dialect/Shard/Transforms/Simplify.cpp
+++ b/mlir/lib/Dialect/Shard/Transforms/Simplify.cpp
@@ -143,7 +143,7 @@ struct GridShapeFolder
 // only materializes the M/N-element local slice, reducing peak memory by
 // a factor of N.
 struct AllReduceAllSliceSimplification : OpRewritePattern<AllSliceOp> {
-  using OpRewritePattern::OpRewritePattern;
+  using Base::Base;
 
   LogicalResult matchAndRewrite(AllSliceOp sliceOp,
                                 PatternRewriter &rewriter) const override {

diff  --git a/mlir/lib/Dialect/SparseTensor/IR/SparseTensorDialect.cpp b/mlir/lib/Dialect/SparseTensor/IR/SparseTensorDialect.cpp
index 0ebaf73f06938..be14ff4bc3610 100644
--- a/mlir/lib/Dialect/SparseTensor/IR/SparseTensorDialect.cpp
+++ b/mlir/lib/Dialect/SparseTensor/IR/SparseTensorDialect.cpp
@@ -2446,7 +2446,7 @@ LogicalResult ExtractValOp::verify() {
 }
 
 struct RemoveUnusedLvlCrds : public OpRewritePattern<IterateOp> {
-  using OpRewritePattern::OpRewritePattern;
+  using Base::Base;
 
   LogicalResult matchAndRewrite(IterateOp iterateOp,
                                 PatternRewriter &rewriter) const override {

diff  --git a/mlir/lib/Dialect/SparseTensor/Transforms/SparseAssembler.cpp b/mlir/lib/Dialect/SparseTensor/Transforms/SparseAssembler.cpp
index a5c74f6941554..eb663a59aa5f0 100644
--- a/mlir/lib/Dialect/SparseTensor/Transforms/SparseAssembler.cpp
+++ b/mlir/lib/Dialect/SparseTensor/Transforms/SparseAssembler.cpp
@@ -165,7 +165,7 @@ namespace {
 // (with a direct-out variant without the disassemble).
 //
 struct SparseFuncAssembler : public OpRewritePattern<func::FuncOp> {
-  using OpRewritePattern::OpRewritePattern;
+  using Base::Base;
 
   SparseFuncAssembler(MLIRContext *context, bool dO)
       : OpRewritePattern(context), directOut(dO) {}

diff  --git a/mlir/lib/Dialect/SparseTensor/Transforms/SparseReinterpretMap.cpp b/mlir/lib/Dialect/SparseTensor/Transforms/SparseReinterpretMap.cpp
index 03c9e57bd223f..2fdb8a99bb83e 100644
--- a/mlir/lib/Dialect/SparseTensor/Transforms/SparseReinterpretMap.cpp
+++ b/mlir/lib/Dialect/SparseTensor/Transforms/SparseReinterpretMap.cpp
@@ -692,7 +692,7 @@ struct TensorInsertDemapper
 };
 
 struct SparseAssembleDemapper : public OpRewritePattern<AssembleOp> {
-  using OpRewritePattern::OpRewritePattern;
+  using Base::Base;
   LogicalResult matchAndRewrite(AssembleOp op,
                                 PatternRewriter &rewriter) const override {
     if (!hasAnyNonIdentityOperandsOrResults(op))

diff  --git a/mlir/lib/Dialect/SparseTensor/Transforms/SparseTensorRewriting.cpp b/mlir/lib/Dialect/SparseTensor/Transforms/SparseTensorRewriting.cpp
index 42a6c4d77dbdd..a7b85d4a1a6bd 100644
--- a/mlir/lib/Dialect/SparseTensor/Transforms/SparseTensorRewriting.cpp
+++ b/mlir/lib/Dialect/SparseTensor/Transforms/SparseTensorRewriting.cpp
@@ -287,7 +287,7 @@ struct FuseExtractSliceWithConcat
 /// Rewriting rule that fuses sparse_tensor.convert into producer.
 struct FoldConvertIntoProducer : public OpRewritePattern<ConvertOp> {
 public:
-  using OpRewritePattern::OpRewritePattern;
+  using Base::Base;
 
   LogicalResult matchAndRewrite(ConvertOp op,
                                 PatternRewriter &rewriter) const override {
@@ -711,7 +711,7 @@ struct GenSemiRingReduction : public OpRewritePattern<GenericOp> {
 /// which only require very light-weight runtime support.
 struct PrintRewriter : public OpRewritePattern<PrintOp> {
 public:
-  using OpRewritePattern::OpRewritePattern;
+  using Base::Base;
   LogicalResult matchAndRewrite(PrintOp op,
                                 PatternRewriter &rewriter) const override {
     Location loc = op.getLoc();
@@ -1131,7 +1131,7 @@ struct TensorLike {
 };
 
 struct SparseTensorDimOpRewriter : public OpRewritePattern<tensor::DimOp> {
-  using OpRewritePattern::OpRewritePattern;
+  using Base::Base;
   LogicalResult matchAndRewrite(tensor::DimOp op,
                                 PatternRewriter &rewriter) const override {
     std::optional<int64_t> dim = op.getConstantIndex();
@@ -1175,7 +1175,7 @@ struct SparseTensorDimOpRewriter : public OpRewritePattern<tensor::DimOp> {
 };
 
 struct ConcatenateRewriter : public OpRewritePattern<ConcatenateOp> {
-  using OpRewritePattern::OpRewritePattern;
+  using Base::Base;
   LogicalResult matchAndRewrite(ConcatenateOp op,
                                 PatternRewriter &rewriter) const override {
     if (op.needsExtraSort())
@@ -1257,7 +1257,7 @@ struct ConcatenateRewriter : public OpRewritePattern<ConcatenateOp> {
 };
 
 struct DirectConvertRewriter : public OpRewritePattern<ConvertOp> {
-  using OpRewritePattern::OpRewritePattern;
+  using Base::Base;
   LogicalResult matchAndRewrite(ConvertOp op,
                                 PatternRewriter &rewriter) const override {
     if (op.needsExtraSort())
@@ -1334,7 +1334,7 @@ struct DirectConvertRewriter : public OpRewritePattern<ConvertOp> {
 };
 
 struct CrdTranslateRewriter : public OpRewritePattern<CrdTranslateOp> {
-  using OpRewritePattern::OpRewritePattern;
+  using Base::Base;
   LogicalResult matchAndRewrite(CrdTranslateOp op,
                                 PatternRewriter &rewriter) const override {
     AffineMap map = op.getDirection() == CrdTransDirectionKind::dim2lvl
@@ -1361,7 +1361,7 @@ struct CrdTranslateRewriter : public OpRewritePattern<CrdTranslateOp> {
 /// Sparse rewriting rule for the foreach operator.
 struct ForeachRewriter : public OpRewritePattern<ForeachOp> {
 public:
-  using OpRewritePattern::OpRewritePattern;
+  using Base::Base;
 
   LogicalResult matchAndRewrite(ForeachOp op,
                                 PatternRewriter &rewriter) const override {
@@ -1497,7 +1497,7 @@ struct ForeachRewriter : public OpRewritePattern<ForeachOp> {
 
 /// Sparse rewriting rule for the new operator.
 struct NewRewriter : public OpRewritePattern<NewOp> {
-  using OpRewritePattern::OpRewritePattern;
+  using Base::Base;
   LogicalResult matchAndRewrite(NewOp op,
                                 PatternRewriter &rewriter) const override {
     Location loc = op.getLoc();
@@ -1534,7 +1534,7 @@ struct NewRewriter : public OpRewritePattern<NewOp> {
 
 /// Sparse rewriting rule for the out operator.
 struct OutRewriter : public OpRewritePattern<OutOp> {
-  using OpRewritePattern::OpRewritePattern;
+  using Base::Base;
   LogicalResult matchAndRewrite(OutOp op,
                                 PatternRewriter &rewriter) const override {
     Location loc = op.getLoc();

diff  --git a/mlir/lib/Dialect/Tensor/Transforms/DropRedundantRankExpansionPatterns.cpp b/mlir/lib/Dialect/Tensor/Transforms/DropRedundantRankExpansionPatterns.cpp
index 55ad6256b0f6c..339b9aa201611 100644
--- a/mlir/lib/Dialect/Tensor/Transforms/DropRedundantRankExpansionPatterns.cpp
+++ b/mlir/lib/Dialect/Tensor/Transforms/DropRedundantRankExpansionPatterns.cpp
@@ -30,7 +30,7 @@ namespace {
 ///     : tensor<5x10xf32> to tensor<2x2xf32>
 struct DropRedundantRankExpansionOnExtractSliceOfInsertSlice
     : public OpRewritePattern<ExtractSliceOp> {
-  using OpRewritePattern::OpRewritePattern;
+  using Base::Base;
 
   LogicalResult matchAndRewrite(ExtractSliceOp extractSliceOp,
                                 PatternRewriter &rewriter) const override {

diff  --git a/mlir/lib/Dialect/Tensor/Transforms/FoldTensorSubsetOps.cpp b/mlir/lib/Dialect/Tensor/Transforms/FoldTensorSubsetOps.cpp
index 5f838eae95de9..77551413a3744 100644
--- a/mlir/lib/Dialect/Tensor/Transforms/FoldTensorSubsetOps.cpp
+++ b/mlir/lib/Dialect/Tensor/Transforms/FoldTensorSubsetOps.cpp
@@ -222,7 +222,7 @@ struct InsertSliceOfInsertSliceFolder : public OpRewritePattern<OpTy> {
 
 struct MergeConsecutiveExtractSlice
     : public OpRewritePattern<tensor::ExtractSliceOp> {
-  using OpRewritePattern::OpRewritePattern;
+  using Base::Base;
 
   LogicalResult matchAndRewrite(tensor::ExtractSliceOp nextOp,
                                 PatternRewriter &rewriter) const override {

diff  --git a/mlir/lib/Dialect/Tosa/IR/TosaCanonicalizations.cpp b/mlir/lib/Dialect/Tosa/IR/TosaCanonicalizations.cpp
index 21dd49875d420..9d3e6ef381f9c 100644
--- a/mlir/lib/Dialect/Tosa/IR/TosaCanonicalizations.cpp
+++ b/mlir/lib/Dialect/Tosa/IR/TosaCanonicalizations.cpp
@@ -250,7 +250,7 @@ void DepthwiseConv2DOp::getCanonicalizationPatterns(RewritePatternSet &results,
 
 struct AvgPool2dAdaptiveToAvgPool2d
     : public OpRewritePattern<tosa::AvgPool2dAdaptiveOp> {
-  using OpRewritePattern::OpRewritePattern;
+  using Base::Base;
 
   LogicalResult matchAndRewrite(tosa::AvgPool2dAdaptiveOp op,
                                 PatternRewriter &rewriter) const override {
@@ -274,7 +274,7 @@ struct AvgPool2dAdaptiveToAvgPool2d
 };
 
 struct AvgPool2dIsNoOp : public OpRewritePattern<tosa::AvgPool2dOp> {
-  using OpRewritePattern::OpRewritePattern;
+  using Base::Base;
 
   LogicalResult matchAndRewrite(tosa::AvgPool2dOp op,
                                 PatternRewriter &rewriter) const override {
@@ -321,7 +321,7 @@ void AvgPool2dAdaptiveOp::getCanonicalizationPatterns(
 }
 
 struct MaxPool2dIsNoOp : public OpRewritePattern<tosa::MaxPool2dOp> {
-  using OpRewritePattern::OpRewritePattern;
+  using Base::Base;
 
   LogicalResult matchAndRewrite(tosa::MaxPool2dOp op,
                                 PatternRewriter &rewriter) const override {
@@ -369,7 +369,7 @@ void MaxPool2dOp::getCanonicalizationPatterns(RewritePatternSet &results,
 
 struct MaxPool2dAdaptiveToMaxPool2d
     : public OpRewritePattern<tosa::MaxPool2dAdaptiveOp> {
-  using OpRewritePattern::OpRewritePattern;
+  using Base::Base;
 
   LogicalResult matchAndRewrite(tosa::MaxPool2dAdaptiveOp op,
                                 PatternRewriter &rewriter) const override {
@@ -491,7 +491,7 @@ LogicalResult SelectOp::canonicalize(SelectOp op, PatternRewriter &rewriter) {
 
 struct ConsolidateTransposeOptimization
     : public OpRewritePattern<tosa::TransposeOp> {
-  using OpRewritePattern::OpRewritePattern;
+  using Base::Base;
 
   LogicalResult matchAndRewrite(tosa::TransposeOp transposeOp,
                                 PatternRewriter &rewriter) const override {
@@ -529,7 +529,7 @@ struct ConsolidateTransposeOptimization
 
 // Determines the case when tosa.transpose is a tosa.reshape operation.
 struct TransposeIsReshape : public OpRewritePattern<tosa::TransposeOp> {
-  using OpRewritePattern::OpRewritePattern;
+  using Base::Base;
 
   LogicalResult matchAndRewrite(tosa::TransposeOp op,
                                 PatternRewriter &rewriter) const override {
@@ -590,7 +590,7 @@ void TransposeOp::getCanonicalizationPatterns(RewritePatternSet &results,
 }
 
 struct ClampIsNoOp : public OpRewritePattern<tosa::ClampOp> {
-  using OpRewritePattern::OpRewritePattern;
+  using Base::Base;
 
   LogicalResult matchAndRewrite(tosa::ClampOp op,
                                 PatternRewriter &rewriter) const override {

diff  --git a/mlir/lib/Dialect/Tosa/Transforms/TosaArithConstantToConst.cpp b/mlir/lib/Dialect/Tosa/Transforms/TosaArithConstantToConst.cpp
index 73e1e2bee3399..094105b83623a 100644
--- a/mlir/lib/Dialect/Tosa/Transforms/TosaArithConstantToConst.cpp
+++ b/mlir/lib/Dialect/Tosa/Transforms/TosaArithConstantToConst.cpp
@@ -59,7 +59,7 @@ static bool isSupportedElementType(Type elementType) {
 
 class ArithConstantToTosaConst : public OpRewritePattern<arith::ConstantOp> {
 public:
-  using OpRewritePattern::OpRewritePattern;
+  using Base::Base;
 
   LogicalResult matchAndRewrite(arith::ConstantOp constOp,
                                 PatternRewriter &rewriter) const override {

diff  --git a/mlir/lib/Dialect/Tosa/Transforms/TosaDowngrade1p1To1p0.cpp b/mlir/lib/Dialect/Tosa/Transforms/TosaDowngrade1p1To1p0.cpp
index 2a3c7aedc0311..79098515f93a1 100644
--- a/mlir/lib/Dialect/Tosa/Transforms/TosaDowngrade1p1To1p0.cpp
+++ b/mlir/lib/Dialect/Tosa/Transforms/TosaDowngrade1p1To1p0.cpp
@@ -35,7 +35,7 @@ namespace {
 
 class BoolFp32CastRewrite : public OpRewritePattern<tosa::CastOp> {
 public:
-  using OpRewritePattern::OpRewritePattern;
+  using Base::Base;
 
   LogicalResult matchAndRewrite(tosa::CastOp op,
                                 PatternRewriter &rewriter) const override {
@@ -71,7 +71,7 @@ class BoolFp32CastRewrite : public OpRewritePattern<tosa::CastOp> {
 
 class BoolGatherRewrite : public OpRewritePattern<tosa::GatherOp> {
 public:
-  using OpRewritePattern::OpRewritePattern;
+  using Base::Base;
 
   LogicalResult matchAndRewrite(tosa::GatherOp op,
                                 PatternRewriter &rewriter) const override {
@@ -106,7 +106,7 @@ class BoolGatherRewrite : public OpRewritePattern<tosa::GatherOp> {
 
 class BoolScatterRewrite : public OpRewritePattern<tosa::ScatterOp> {
 public:
-  using OpRewritePattern::OpRewritePattern;
+  using Base::Base;
 
   LogicalResult matchAndRewrite(tosa::ScatterOp op,
                                 PatternRewriter &rewriter) const override {
@@ -173,7 +173,7 @@ static LogicalResult isMatMulTTypeCompatibleForDowngrade(tosa::MatMulTOp op) {
 
 class MatMulTRewrite : public OpRewritePattern<tosa::MatMulTOp> {
 public:
-  using OpRewritePattern::OpRewritePattern;
+  using Base::Base;
 
   LogicalResult matchAndRewrite(tosa::MatMulTOp op,
                                 PatternRewriter &rewriter) const override {

diff  --git a/mlir/lib/Dialect/Tosa/Transforms/TosaFolders.cpp b/mlir/lib/Dialect/Tosa/Transforms/TosaFolders.cpp
index 604965f7103b1..5e8dabd4e1834 100644
--- a/mlir/lib/Dialect/Tosa/Transforms/TosaFolders.cpp
+++ b/mlir/lib/Dialect/Tosa/Transforms/TosaFolders.cpp
@@ -273,7 +273,7 @@ DenseElementsAttr transpose(ElementsAttr attr, ShapedType inputType,
 }
 
 struct TosaFoldConstantTranspose : public OpRewritePattern<tosa::TransposeOp> {
-  using OpRewritePattern::OpRewritePattern;
+  using Base::Base;
 
   LogicalResult matchAndRewrite(tosa::TransposeOp op,
                                 PatternRewriter &rewriter) const override {
@@ -309,7 +309,7 @@ struct TosaFoldConstantTranspose : public OpRewritePattern<tosa::TransposeOp> {
 
 struct TosaFoldConstantReciprocal : public OpRewritePattern<ReciprocalOp> {
 
-  using OpRewritePattern::OpRewritePattern;
+  using Base::Base;
 
   LogicalResult matchAndRewrite(ReciprocalOp recip,
                                 PatternRewriter &rewriter) const override {


        


More information about the Mlir-commits mailing list