[llvm] [VPlan] Rewrite sinkScalarOperands (NFC) (PR #151696)

Ramkumar Ramachandra via llvm-commits llvm-commits at lists.llvm.org
Mon Nov 3 05:42:58 PST 2025


================
@@ -151,59 +151,65 @@ static bool cannotHoistOrSinkRecipe(const VPRecipeBase &R) {
 
 static bool sinkScalarOperands(VPlan &Plan) {
   auto Iter = vp_depth_first_deep(Plan.getEntry());
+  bool ScalarVFOnly = Plan.hasScalarVFOnly();
   bool Changed = false;
+
+  auto IsValidSinkCandidate = [ScalarVFOnly](VPBasicBlock *SinkTo,
+                                             VPSingleDefRecipe *Candidate) {
+    // We only know how to duplicate VPReplicateRecipes and
----------------
artagnon wrote:

I think this is technically correct for the moment: I think we can fix this with https://github.com/llvm/llvm-project/pull/161667 -- can you kindly have a look a that?

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


More information about the llvm-commits mailing list