[llvm] [VPlan] Verify dominance for incoming values of phi-like recipes. (PR #124838)

Florian Hahn via llvm-commits llvm-commits at lists.llvm.org
Wed May 14 11:33:40 PDT 2025


================
@@ -3283,6 +3295,48 @@ class VPScalarIVStepsRecipe : public VPRecipeWithIRFlags,
   }
 };
 
+/// Casting from VPRecipeBase -> VPPhiAccessors is supported for all recipe
+/// types implementing VPPhiAccessors.
+template <> struct CastIsPossible<VPPhiAccessors, const VPRecipeBase *> {
+  static inline bool isPossible(const VPRecipeBase *f) {
+    return isa<VPIRPhi, VPHeaderPHIRecipe, VPWidenPHIRecipe, VPPhi>(f);
+  }
+};
+/// Support casting from VPRecipeBase -> VPPhiAccessors, by down-casting to the
+/// recipe types implementing VPPhiAccessors.
+template <>
+struct CastInfo<VPPhiAccessors, const VPRecipeBase *>
----------------
fhahn wrote:

This is used by `cast`/`dyn_cast` to perform the actual cast.

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


More information about the llvm-commits mailing list