[llvm] Support non-constant `G_BUILD_VECTOR` (PR #182502)

Simon Pilgrim via llvm-commits llvm-commits at lists.llvm.org
Fri Feb 20 07:56:19 PST 2026


================
@@ -100,14 +113,10 @@ X86LegalizerInfo::X86LegalizerInfo(const X86Subtarget &STI,
       .widenScalarOrEltToNextPow2(0, /*Min=*/8)
       .clampScalarOrElt(0, s8, sMaxScalar)
       .moreElementsToNextPow2(0)
-      .clampMinNumElements(0, s8, 16)
-      .clampMinNumElements(0, s16, 8)
-      .clampMinNumElements(0, s32, 4)
-      .clampMinNumElements(0, s64, 2)
-      .clampMaxNumElements(0, s8, HasAVX512 ? 64 : (HasAVX ? 32 : 16))
-      .clampMaxNumElements(0, s16, HasAVX512 ? 32 : (HasAVX ? 16 : 8))
-      .clampMaxNumElements(0, s32, HasAVX512 ? 16 : (HasAVX ? 8 : 4))
-      .clampMaxNumElements(0, s64, HasAVX512 ? 8 : (HasAVX ? 4 : 2))
+      .clampNumElements(0, v16s8, s8MaxVector)
+      .clampNumElements(0, v8s16, s16MaxVector)
+      .clampNumElements(0, v4s32, s32MaxVector)
+      .clampNumElements(0, v2s64, s64MaxVector)
----------------
RKSimon wrote:

this all looks like cleanup that could be pulled out into a separate patch

https://github.com/llvm/llvm-project/pull/182502


More information about the llvm-commits mailing list