[llvm] [LoopVectorize] Generate wide active lane masks (PR #147535)
Florian Hahn via llvm-commits
llvm-commits at lists.llvm.org
Mon Jul 14 12:49:38 PDT 2025
================
@@ -846,6 +849,14 @@ Value *VPInstruction::generate(VPTransformState &State) {
Res->setName(Name);
return Res;
}
+ case VPInstruction::ExtractSubvector: {
+ Value *Vec = State.get(getOperand(0));
+ assert(State.VF.isVector());
+ auto Idx = cast<ConstantInt>(getOperand(1)->getLiveInIRValue());
+ auto ResTy = VectorType::get(
+ State.TypeAnalysis.inferScalarType(getOperand(0)), State.VF);
+ return Builder.CreateExtractVector(ResTy, Vec, Idx);
----------------
fhahn wrote:
If this maps 1-1 to an intrinsic, can we just use VPWidenIntrinsic instead?
https://github.com/llvm/llvm-project/pull/147535
More information about the llvm-commits
mailing list