[all-commits] [llvm/llvm-project] c21f1f: ValueTracking: Drop rounding mode check for constr...

Matt Arsenault via All-commits all-commits at lists.llvm.org
Mon May 22 02:49:52 PDT 2023


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: c21f1feed390a818458ebd069424ca80b0e4dfd5
      https://github.com/llvm/llvm-project/commit/c21f1feed390a818458ebd069424ca80b0e4dfd5
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2023-05-22 (Mon, 22 May 2023)

  Changed paths:
    M llvm/lib/Analysis/ValueTracking.cpp
    M llvm/test/Transforms/InstSimplify/strictfp-sqrt-nonneg.ll

  Log Message:
  -----------
  ValueTracking: Drop rounding mode check for constrained_sqrt in CannotBeNegativeZero

The only value that can produce -0 is exactly -0, no rounding is involved. If the
denormal mode has flushed denormal inputs, a negative value could produce -0.
The constrained intrinsics do not track the denormal mode, and this is just
generally broken in the current set of FP predicates. The move to computeKnownFPClass
will address some of these issues.




More information about the All-commits mailing list