[llvm-branch-commits] [llvm] [VPlan] Fix VPInstruction::AnyOf combine undoing freeze (PR #223640)

Florian Hahn via llvm-branch-commits llvm-branch-commits at lists.llvm.org
Tue Sep 15 04:03:54 PDT 2026


================
@@ -3064,9 +3064,10 @@ getRecipesForUncountableExit(SmallVectorImpl<VPInstruction *> &Recipes,
 
   // Find the uncountable loop exit condition.
   VPValue *UncountableCondition = nullptr;
-  if (!match(LatchVPBB->getTerminator(),
-             m_BranchOnTwoConds(m_AnyOf(m_VPValue(UncountableCondition)),
-                                m_VPValue())))
+  if (!match(
+          LatchVPBB->getTerminator(),
+          m_BranchOnTwoConds(m_AnyOf(m_Freeze(m_VPValue(UncountableCondition))),
----------------
fhahn wrote:

I don't think we necessarily need `Freeze`. Whether it is needed depends on whether `UncountableCondition` can be poison or not (we may be able to proof it is never poison , e.g. `!noundef` on load

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


More information about the llvm-branch-commits mailing list