[llvm] [RISCV] Further improved exact VLEN lowering for mul reductions (PR #192688)

via llvm-commits llvm-commits at lists.llvm.org
Fri Apr 17 08:55:36 PDT 2026


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 origin/main HEAD --extensions cpp -- llvm/lib/Target/RISCV/RISCVCodeGenPrepare.cpp --diff_from_common_commit
``````````

:warning:
The reproduction instructions above might return results for more than one PR
in a stack if you are using a stacked PR workflow. You can limit the results by
changing `origin/main` to the base branch/commit you want to compare against.
:warning:

</details>

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

``````````diff
diff --git a/llvm/lib/Target/RISCV/RISCVCodeGenPrepare.cpp b/llvm/lib/Target/RISCV/RISCVCodeGenPrepare.cpp
index 061910b93..0b0313384 100644
--- a/llvm/lib/Target/RISCV/RISCVCodeGenPrepare.cpp
+++ b/llvm/lib/Target/RISCV/RISCVCodeGenPrepare.cpp
@@ -298,13 +298,13 @@ bool RISCVCodeGenPrepare::expandMulReduction(IntrinsicInst &II) {
     assert(isPowerOf2_32(NumM1) && NumM1 <= 8);
     SmallVector<Value *, 8> Pieces(NumM1);
     for (unsigned i = 0; i < NumM1; i++)
-      Pieces[i] = Builder.CreateExtractVector(M1Ty, TmpVec,
-                                              (uint64_t)(i * M1VF));
+      Pieces[i] =
+          Builder.CreateExtractVector(M1Ty, TmpVec, (uint64_t)(i * M1VF));
 
     while (Pieces.size() > 1) {
       for (unsigned i = 0; i < Pieces.size() / 2; i++)
-        Pieces[i] = Builder.CreateMul(Pieces[i * 2], Pieces[i * 2 + 1],
-                                      "bin.rdx");
+        Pieces[i] =
+            Builder.CreateMul(Pieces[i * 2], Pieces[i * 2 + 1], "bin.rdx");
       Pieces.truncate(Pieces.size() / 2);
     }
     TmpVec = Pieces[0];

``````````

</details>


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


More information about the llvm-commits mailing list