[PATCH] D143195: ValueTracking: Add start of computeKnownFPClass API

Joshua Cranmer via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Tue Feb 14 12:59:11 PST 2023


jcranmer-intel added inline comments.


================
Comment at: llvm/include/llvm/Analysis/ValueTracking.h:217-221
+  /// If the sign bit is definitively known to be 1.
+  bool SignBitKnownOne = false;
+
+  /// If the sign bit is definitively known to be 0.
+  bool SignBitKnownZero = false;
----------------
Would it make sense instead to have a `std::optional<bool> KnownSignBit` here?


================
Comment at: llvm/lib/Analysis/ValueTracking.cpp:4111-4113
+    // Cannot produce nan
+    Known.KnownFPClasses =
+        static_cast<FPClassTest>(Known.KnownFPClasses & ~fcNan & fcAllFlags);
----------------
This pattern is common enough that I think `KnownFPClass` should have a `ruleOut(FPClassTest)` method or something similar to implement this method.


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

https://reviews.llvm.org/D143195



More information about the llvm-commits mailing list