[llvm] [RISCV] Avoid VMNOT by swapping VMERGE operands for mask extensions (PR #126751)
Piotr Fusik via llvm-commits
llvm-commits at lists.llvm.org
Wed Feb 19 23:20:45 PST 2025
================
@@ -8965,6 +8965,9 @@ SDValue RISCVTargetLowering::lowerVectorMaskExt(SDValue Op, SelectionDAG &DAG,
if (VecVT.isScalableVector()) {
SDValue SplatZero = DAG.getConstant(0, DL, VecVT);
SDValue SplatTrueVal = DAG.getSignedConstant(ExtTrueVal, DL, VecVT);
+ if (Src.getOpcode() == ISD::XOR &&
+ ISD::isConstantSplatVectorAllOnes(Src.getOperand(1).getNode(), false))
----------------
pfusik wrote:
Default arg omitted, thanks!
https://github.com/llvm/llvm-project/pull/126751
More information about the llvm-commits
mailing list