[PATCH] D148171: ValueTracking: Implement computeKnownFPClass for fdiv for nan/inf handling
Jay Foad via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Thu Apr 13 01:07:27 PDT 2023
foad added inline comments.
================
Comment at: llvm/lib/Analysis/ValueTracking.cpp:4404
+ if (KnowSomethingUseful &&
+ (InterestedClasses & (fcInf | fcNan)) != fcNone) {
+ computeKnownFPClass(Op->getOperand(0), DemandedElts,
----------------
If InterestedClasses doesn't contain Inf or Nan, can't you bail out even earlier, before computing KnownRHS?
================
Comment at: llvm/lib/Analysis/ValueTracking.cpp:4413
+ // TODO: Track sign bit.
+ // TODO: Is zero only possible if LHS is 0?
+ if (KnownLHS.isKnownNeverNaN() && KnownRHS.isKnownNeverNaN() &&
----------------
No, tiny/huge (both finite non-zero values) can produce zero.
================
Comment at: llvm/lib/Analysis/ValueTracking.cpp:4424
+ KnownRHS.isKnownNeverLogicalZero(*F, Op->getType()))
+ Known.knownNot(fcInf);
+
----------------
No, huge/tiny (both finite non-zero values) can produce inf.
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D148171/new/
https://reviews.llvm.org/D148171
More information about the llvm-commits
mailing list