[llvm] [AArch64] Use indexed dup for 128b segmented splat (PR #144688)
Sander de Smalen via llvm-commits
llvm-commits at lists.llvm.org
Wed Jun 18 05:50:37 PDT 2025
================
@@ -29317,6 +29317,17 @@ SDValue AArch64TargetLowering::LowerFixedLengthConcatVectorsToSVE(
EVT VT = Op.getValueType();
EVT SrcVT = SrcOp1.getValueType();
+ // Match a splat of 128b segments that fit in a single register.
+ if (SrcVT.is128BitVector() && all_equal(Op.getNode()->op_values()) &&
+ VT.getSizeInBits() <= Subtarget->getMinSVEVectorSizeInBits()) {
----------------
sdesmalen-arm wrote:
nit: Is this check actually required? (if it got to the point of lowering the operation, I would think this condition is always true)
https://github.com/llvm/llvm-project/pull/144688
More information about the llvm-commits
mailing list