[llvm] [ValueTracking] Add missing operand checks in `computeKnownFPClassFromCond` (PR #119579)

Matt Arsenault via llvm-commits llvm-commits at lists.llvm.org
Wed Dec 11 16:25:04 PST 2024


================
@@ -4906,10 +4906,10 @@ static void computeKnownFPClassFromCond(const Value *V, Value *Cond,
     if (CmpVal == V)
       KnownFromContext.knownNot(~(CondIsTrue ? MaskIfTrue : MaskIfFalse));
   } else if (match(Cond, m_Intrinsic<Intrinsic::is_fpclass>(
-                             m_Value(LHS), m_ConstantInt(ClassVal)))) {
+                             m_Specific(V), m_ConstantInt(ClassVal)))) {
     FPClassTest Mask = static_cast<FPClassTest>(ClassVal);
     KnownFromContext.knownNot(CondIsTrue ? ~Mask : Mask);
-  } else if (match(Cond, m_ICmp(Pred, m_ElementWiseBitCast(m_Value(LHS)),
+  } else if (match(Cond, m_ICmp(Pred, m_ElementWiseBitCast(m_Specific(V)),
----------------
arsenm wrote:

I was thinking the elementwisebitcast  would require a vector 

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


More information about the llvm-commits mailing list