[llvm] [VPlan] Model address separately. (PR #72164)

Florian Hahn via llvm-commits llvm-commits at lists.llvm.org
Sat Dec 30 02:35:59 PST 2023


================
@@ -8174,13 +8174,22 @@ VPRecipeBase *VPRecipeBuilder::tryToWidenMemory(Instruction *I,
   bool Consecutive =
       Reverse || Decision == LoopVectorizationCostModel::CM_Widen;
 
+  VPValue *Ptr = isa<LoadInst>(I) ? Operands[0] : Operands[1];
+  if (Decision != LoopVectorizationCostModel::CM_GatherScatter &&
+      Decision != LoopVectorizationCostModel::CM_Interleave) {
+    auto *VectorPtr = new VPInstruction(
----------------
fhahn wrote:

Hm, maybe `VPWidenMemoryInstructionRecipe` will be able to serve this role if we decide to split up the recipe? For now, it would mean to add an additional recipe + extra complexity to this patch IIUC?

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


More information about the llvm-commits mailing list