Apply clang-tidy fixes for performance-unnecessary-value-param in SplitReduction...
authorMehdi Amini <joker.eph@gmail.com>
Sun, 3 Apr 2022 23:03:41 +0000 (23:03 +0000)
committerMehdi Amini <joker.eph@gmail.com>
Tue, 12 Apr 2022 07:47:04 +0000 (07:47 +0000)
mlir/include/mlir/Dialect/Linalg/Transforms/Transforms.h
mlir/lib/Dialect/Linalg/Transforms/SplitReduction.cpp

index 168ad3c..b4fefc2 100644 (file)
@@ -1404,8 +1404,8 @@ using ControlSplitReductionFn =
 /// Patterns to apply `splitReduction` below.
 void populateSplitReductionPattern(
     RewritePatternSet &patterns,
-    ControlSplitReductionFn controlSplitReductionFn,
-    LinalgTransformationFilter f = LinalgTransformationFilter());
+    const ControlSplitReductionFn &controlSplitReductionFn,
+    const LinalgTransformationFilter &f = LinalgTransformationFilter());
 
 /// Apply transformation to split the single linalg op reduction into a parallel
 /// and reduction dimension. Then create a new linalg.generic op doing the rest
@@ -1448,8 +1448,8 @@ void populateSplitReductionPattern(
 /// ```
 FailureOr<LinalgOp>
 splitReduction(PatternRewriter &b, LinalgOp op,
-               ControlSplitReductionFn controlSplitReductionFn,
-               LinalgTransformationFilter f);
+               const ControlSplitReductionFn &controlSplitReductionFn,
+               const LinalgTransformationFilter &f);
 
 } // namespace linalg
 } // namespace mlir
index edfe80c..8f94de4 100644 (file)
@@ -11,6 +11,8 @@
 //
 //===----------------------------------------------------------------------===//
 
+#include <utility>
+
 #include "mlir/Analysis/SliceAnalysis.h"
 #include "mlir/Dialect/Arithmetic/IR/Arithmetic.h"
 #include "mlir/Dialect/Linalg/IR/Linalg.h"
@@ -54,10 +56,10 @@ static Optional<Attribute> getIdentity(Operation *op) {
   return llvm::None;
 }
 
-FailureOr<LinalgOp>
-mlir::linalg::splitReduction(PatternRewriter &b, LinalgOp op,
-                             ControlSplitReductionFn controlSplitReductionFn,
-                             LinalgTransformationFilter filter) {
+FailureOr<LinalgOp> mlir::linalg::splitReduction(
+    PatternRewriter &b, LinalgOp op,
+    const ControlSplitReductionFn &controlSplitReductionFn,
+    const LinalgTransformationFilter &filter) {
   if (failed(filter.checkAndNotify(b, op)) || !op.hasTensorSemantics() ||
       op.getNumReductionLoops() != 1 || op.getNumOutputs() != 1 ||
       !op.hasOnlyProjectedPermutations())
@@ -210,8 +212,8 @@ struct LinalgSplitReduction : public OpInterfaceRewritePattern<LinalgOp> {
                        ControlSplitReductionFn controlSplitReductionFn,
                        LinalgTransformationFilter f, PatternBenefit benefit = 1)
       : OpInterfaceRewritePattern<LinalgOp>(context, benefit),
-        controlSplitReductionFn(controlSplitReductionFn), filter(std::move(f)) {
-  }
+        controlSplitReductionFn(std::move(controlSplitReductionFn)),
+        filter(std::move(f)) {}
 
   LogicalResult matchAndRewrite(LinalgOp op,
                                 PatternRewriter &rewriter) const override {
@@ -227,8 +229,8 @@ private:
 
 void linalg::populateSplitReductionPattern(
     RewritePatternSet &patterns,
-    ControlSplitReductionFn controlSplitReductionFn,
-    LinalgTransformationFilter f) {
+    const ControlSplitReductionFn &controlSplitReductionFn,
+    const LinalgTransformationFilter &f) {
   patterns.add<LinalgSplitReduction>(patterns.getContext(),
                                      controlSplitReductionFn, f);
 }