[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