[PATCH] D148575: ValueTracking: Handle cannotBeOrderedLessThanZero for fadd

Jay Foad via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Tue Jun 6 05:41:59 PDT 2023


foad added inline comments.


================
Comment at: llvm/lib/Analysis/ValueTracking.cpp:4772
+    FPClassTest InterestedSrcs = InterestedClasses;
+    if (InterestedClasses & KnownFPClass::OrderedLessThanZeroMask)
+      InterestedSrcs |= KnownFPClass::OrderedLessThanZeroMask;
----------------



================
Comment at: llvm/lib/Analysis/ValueTracking.cpp:4782-4783
+
+      if ((InterestedClasses & fcNan) && KnownRHS.isKnownNeverNaN())
+        InterestedSrcs |= fcInf;
+
----------------
Should probably do this before computing KnownRHS?


================
Comment at: llvm/lib/Analysis/ValueTracking.cpp:4817
         if ((KnownLHS.isKnownNeverLogicalNegZero(*F, Op->getType()) ||
              KnownRHS.isKnownNeverLogicalPosZero(*F, Op->getType())) &&
             // Make sure output negative denormal can't flush to -0
----------------
Should have added PosZero to InterestedSrcs for RHS.


CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D148575/new/

https://reviews.llvm.org/D148575



More information about the llvm-commits mailing list