[llvm] [SPIRV][Matrix] Change Matrix Shader legalization to largest common divisor (PR #207768)
via llvm-commits
llvm-commits at lists.llvm.org
Tue Jul 21 08:48:56 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/SPIRV/SPIRVLegalizerInfo.cpp llvm/lib/Target/SPIRV/SPIRVPostLegalizer.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/SPIRV/SPIRVLegalizerInfo.cpp b/llvm/lib/Target/SPIRV/SPIRVLegalizerInfo.cpp
index 58a6ec18f..ef61f7993 100644
--- a/llvm/lib/Target/SPIRV/SPIRVLegalizerInfo.cpp
+++ b/llvm/lib/Target/SPIRV/SPIRVLegalizerInfo.cpp
@@ -811,11 +811,9 @@ static bool allUsesAreShuffleScatter(MachineRegisterInfo &MRI,
}
// Splits SrcReg into NumChunks separate ChunkTy-typed registers.
-static SmallVector<Register> unmergeIntoChunks(MachineIRBuilder &MIRBuilder,
- MachineRegisterInfo &MRI,
- Register SrcReg,
- unsigned NumChunks,
- LLT ChunkTy) {
+static SmallVector<Register>
+unmergeIntoChunks(MachineIRBuilder &MIRBuilder, MachineRegisterInfo &MRI,
+ Register SrcReg, unsigned NumChunks, LLT ChunkTy) {
assert(NumChunks >= 2 && "ShuffleChunkable should have handled this case");
SmallVector<Register> Regs;
for (unsigned I = 0; I < NumChunks; ++I)
@@ -902,8 +900,8 @@ static bool legalizeShuffleVector(LegalizerHelper &Helper, MachineInstr &MI) {
const SPIRVSubtarget &ST = MI.getMF()->getSubtarget<SPIRVSubtarget>();
unsigned MaxVectorSize = ST.isShader() ? 4 : 16;
- unsigned VectorSplitWidth = getVectorSplitWidth(
- DstTy.getNumElements(), MaxVectorSize, ST.isShader());
+ unsigned VectorSplitWidth =
+ getVectorSplitWidth(DstTy.getNumElements(), MaxVectorSize, ST.isShader());
LLT ChunkTy = LLT::fixed_vector(VectorSplitWidth, EltTy);
unsigned NumSrcChunks = SrcTy.getNumElements() / VectorSplitWidth;
unsigned NumDstChunks = DstTy.getNumElements() / VectorSplitWidth;
``````````
</details>
https://github.com/llvm/llvm-project/pull/207768
More information about the llvm-commits
mailing list