[llvm] [RISCV][GISel] Legalize G_INSERT_VECTOR_ELT for supported vector types (PR #159708)
Craig Topper via llvm-commits
llvm-commits at lists.llvm.org
Tue Oct 14 08:17:11 PDT 2025
================
@@ -717,6 +717,18 @@ RISCVLegalizerInfo::RISCVLegalizerInfo(const RISCVSubtarget &ST)
.clampScalar(0, sXLen, sXLen)
.lower();
+ LegalityPredicate InsertVectorEltPred = [=](const LegalityQuery &Query) {
+ LLT VecTy = Query.Types[0];
+ LLT EltTy = Query.Types[1];
+ return VecTy.getElementType() == EltTy;
+ };
+
+ getActionDefinitionsBuilder(G_INSERT_VECTOR_ELT)
+ .legalIf(all(typeIsLegalIntOrFPVec(0, IntOrFPVecTys, ST),
+ InsertVectorEltPred, typeIs(2, sXLen)))
+ .legalIf(all(typeIsLegalIntOrFPVec(0, BoolVecTys, ST),
----------------
topperc wrote:
typeIsLegalBoolVec?
https://github.com/llvm/llvm-project/pull/159708
More information about the llvm-commits
mailing list