[llvm] [RISCV] Add mask version of vunzipe/o.v (PR #228597)
via llvm-commits
llvm-commits at lists.llvm.org
Sat Oct 3 09:59:23 PDT 2026
================
@@ -5930,7 +5930,8 @@ static SDValue lowerZvzipVUNZIP(unsigned Opc, SDValue Op, const SDLoc &DL,
MVT HalfIntVT = IntVT.getHalfNumVectorElementsVT();
SDValue VL = getDefaultVLOps(HalfIntVT, ResVT, DL, DAG, Subtarget).second;
SDValue Passthru = DAG.getUNDEF(ResVT);
- SDValue Res = DAG.getNode(Opc, DL, ResVT, Op, Passthru, VL);
+ SDValue Res = DAG.getNode(Opc, DL, ResVT, Op, Passthru,
+ getAllOnesMask(ResVT, VL, DL, DAG), VL);
----------------
renndong wrote:
Can we replace`getAllOnesMask` with the mask returned by`getDefaultVLOps` ? For example:
```cpp
auto [Mask, VL] = getDefaultVLOps(HalfIntVT, ResVT, DL, DAG, Subtarget);
SDValue Passthru = DAG.getUNDEF(ResVT);
SDValue Res = DAG.getNode(Opc, DL, ResVT, Op, Passthru, Mask, VL);
```
https://github.com/llvm/llvm-project/pull/228597
More information about the llvm-commits
mailing list