Skip to content

Commit a43489d

Browse files
authored
[RISCV] Use non-VP select in gather->strided load combine. NFCish (llvm#157070)
Similar to llvm#157068, remove our reliance on trivial VP intrinsics by using a regular select instruction and letting RISCVVLOptimizer take care of VL.
1 parent bd2649a commit a43489d

File tree

1 file changed

+3
-3
lines changed

1 file changed

+3
-3
lines changed

llvm/lib/Target/RISCV/RISCVISelLowering.cpp

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -20546,9 +20546,9 @@ SDValue RISCVTargetLowering::PerformDAGCombine(SDNode *N,
2054620546
VT, DL, MGN->getChain(), BasePtr,
2054720547
DAG.getSignedConstant(StepNumerator, DL, XLenVT), MGN->getMask(),
2054820548
EVL, MGN->getMemOperand());
20549-
SDValue VPSelect = DAG.getNode(ISD::VP_SELECT, DL, VT, MGN->getMask(),
20550-
StridedLoad, MGN->getPassThru(), EVL);
20551-
return DAG.getMergeValues({VPSelect, SDValue(StridedLoad.getNode(), 1)},
20549+
SDValue Select = DAG.getSelect(DL, VT, MGN->getMask(), StridedLoad,
20550+
MGN->getPassThru());
20551+
return DAG.getMergeValues({Select, SDValue(StridedLoad.getNode(), 1)},
2055220552
DL);
2055320553
}
2055420554
}

0 commit comments

Comments
 (0)