[llvm] [VPlan] Allow generating vectors with VPInstruction::ptradd. NFC (PR #148273)

Florian Hahn via llvm-commits llvm-commits at lists.llvm.org
Mon Jul 14 06:39:25 PDT 2025


================
@@ -958,8 +958,10 @@ class LLVM_ABI_FOR_TEST VPInstruction : public VPRecipeWithIRFlags,
     ExtractPenultimateElement,
     LogicalAnd, // Non-poison propagating logical And.
     // Add an offset in bytes (second operand) to a base pointer (first
-    // operand). Only generates scalar values (either for the first lane only or
-    // for all lanes, depending on its uses).
+    // operand). The base pointer must be scalar, but the offset can be a
+    // scalar, multiple scalars, or a vector. If the offset is multiple scalars
+    // then it will generate multiple scalar values (either for the first lane
+    // only or for all lanes, depending on its uses).
----------------
fhahn wrote:

Not sure if it is worth putting all the IR GEP complexity into a single VPInstruction opcode. Would it be simpler to add another opcode?

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


More information about the llvm-commits mailing list