[llvm] [VPlan] Remove VPVectorPointer for part 0 after unrolling. (PR #149735)

Luke Lau via llvm-commits llvm-commits at lists.llvm.org
Mon Jul 21 00:15:36 PDT 2025


================
@@ -1015,6 +1015,12 @@ static void simplifyRecipe(VPRecipeBase &R, VPTypeAnalysis &TypeInfo) {
     if (Op->isLiveIn())
       PredPHI->replaceAllUsesWith(Op);
   }
+  if (auto *VecPtr = dyn_cast<VPVectorPointerRecipe>(&R)) {
+    if (VecPtr->getParent()->getPlan()->isUnrolled() && VecPtr->isPart0()) {
----------------
lukel97 wrote:

Is it necessary to check if the plan is unrolled? I.e. can we also simplify it for UF=1?

```suggestion
    if (VecPtr->isPart0()) {
```

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


More information about the llvm-commits mailing list