[Mlir-commits] [mlir] [mlir][TOSA] Add folder for multiply like reduce_prod operation (PR #128067)

llvmlistbot at llvm.org llvmlistbot at llvm.org
Thu Feb 20 13:04:37 PST 2025


github-actions[bot] wrote:

<!--LLVM CODE FORMAT COMMENT: {clang-format}-->


:warning: C/C++ code formatter, clang-format found issues in your code. :warning:

<details>
<summary>
You can test this locally with the following command:
</summary>

``````````bash
git-clang-format --diff cc45365ab9065bc9e8ea48744f761b7ac30a5634 75f175cb198d7ba6d24bb5ae006d499e418d0292 --extensions cpp -- mlir/lib/Dialect/Tosa/IR/TosaCanonicalizations.cpp
``````````

</details>

<details>
<summary>
View the diff from clang-format here.
</summary>

``````````diff
diff --git a/mlir/lib/Dialect/Tosa/IR/TosaCanonicalizations.cpp b/mlir/lib/Dialect/Tosa/IR/TosaCanonicalizations.cpp
index 45bcacff19..a3e01b4406 100644
--- a/mlir/lib/Dialect/Tosa/IR/TosaCanonicalizations.cpp
+++ b/mlir/lib/Dialect/Tosa/IR/TosaCanonicalizations.cpp
@@ -970,7 +970,8 @@ OpFoldResult ReduceProdOp::fold(FoldAdaptor adaptor) {
   ShapedType inputTy = llvm::cast<ShapedType>(getInput().getType());
   if (!inputTy.hasRank())
     return {};
-  if (inputTy == getType() && (inputTy.getRank() == 0 || inputTy.getDimSize(getAxis()) == 1))
+  if (inputTy == getType() &&
+      (inputTy.getRank() == 0 || inputTy.getDimSize(getAxis()) == 1))
     return getInput();
 
   // Fold multiply like reduce_prod operators using mulBinaryFolder
@@ -979,12 +980,15 @@ OpFoldResult ReduceProdOp::fold(FoldAdaptor adaptor) {
     if (!resultTy)
       return {};
 
-    const auto elements = llvm::dyn_cast_if_present<DenseElementsAttr>(adaptor.getInput());
+    const auto elements =
+        llvm::dyn_cast_if_present<DenseElementsAttr>(adaptor.getInput());
     if (!elements)
       return {};
 
-    const auto lhsAttr = DenseElementsAttr::get(resultTy, {elements.getValues<Attribute>()[0]});
-    const auto rhsAttr = DenseElementsAttr::get(resultTy, {elements.getValues<Attribute>()[1]});
+    const auto lhsAttr =
+        DenseElementsAttr::get(resultTy, {elements.getValues<Attribute>()[0]});
+    const auto rhsAttr =
+        DenseElementsAttr::get(resultTy, {elements.getValues<Attribute>()[1]});
     return mulBinaryFolder(lhsAttr, rhsAttr, resultTy, 0);
   }
 

``````````

</details>


https://github.com/llvm/llvm-project/pull/128067


More information about the Mlir-commits mailing list