[llvm] [VPlan] Run initial recipe simplification on VPlan0. (PR #176828)

Florian Hahn via llvm-commits llvm-commits at lists.llvm.org
Mon Feb 9 04:39:40 PST 2026


================
@@ -1215,15 +1215,22 @@ static void simplifyRecipe(VPSingleDefRecipe *Def, VPTypeAnalysis &TypeInfo) {
   }
 
   VPBuilder Builder(Def);
+
+  // Avoid replacing VPInstructions with underlying value with new
+  // VPInstructions. VPInstructions with underlying values should get
+  // widened/replicated later.
+  bool CanCreateNewRecipe =
+      !isa<VPInstruction>(Def) || !Def->getUnderlyingValue();
----------------
fhahn wrote:

The predicator itself is not really the issue, the issue is that we don't properly widen/replicate the IR, which pessimizes some other transformations that expect widened/replicated recipes. 

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


More information about the llvm-commits mailing list