[clang] Remove FiniteMathOnly and use only NoHonorINFs and NoHonorNANs. (PR #97342)

Zahira Ammarguellat via cfe-commits cfe-commits at lists.llvm.org
Tue Jul 23 13:06:48 PDT 2024


================
@@ -816,6 +816,11 @@ class FPOptions {
     setAllowFPReassociate(LO.AllowFPReassoc);
     setNoHonorNaNs(LO.NoHonorNaNs);
     setNoHonorInfs(LO.NoHonorInfs);
+    // Ensure that if FiniteMathOnly is enabled, NoHonorNaNs and NoHonorInfs are
+    // also enabled. This is because FiniteMathOnly mode assumes no NaNs or Infs
+    // are present in computations.
+    assert((LO.FiniteMathOnly == (LO.NoHonorInfs && LO.NoHonorNaNs)) &&
----------------
zahiraam wrote:

@AnastasiaStulova thanks for the review.
The driver option `-cl-finite-math-only` can still be used.
Updated the PR's description.

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


More information about the cfe-commits mailing list