[PATCH] Let numeric_limits::is_iec559 reflect -ffast-math

Matthias Kretz m.kretz@gsi.de
Mon Apr 27 15:09:34 GMT 2020


From: Matthias Kretz <kretz@kde.org>

        PR libstdc++/84949
        * include/std/limits: Let is_iec559 reflect whether
        __GCC_IEC_559 says float and double support IEEE 754-2008.
        * testsuite/18_support/numeric_limits/is_iec559.cc: Test IEC559
        mandated behavior if is_iec559 is true.
        * testsuite/18_support/numeric_limits/infinity.cc: Only test inf
        behavior if is_iec559 is true, otherwise there is no guarantee
        how arithmetic on inf behaves.
        * testsuite/18_support/numeric_limits/quiet_NaN.cc: ditto for
        NaN.
        * testsuite/18_support/numeric_limits/denorm_min-1.cc: Compile
        with -ffast-math.
        * testsuite/18_support/numeric_limits/epsilon-1.cc: ditto.
        * testsuite/18_support/numeric_limits/infinity-1.cc: ditto.
        * testsuite/18_support/numeric_limits/is_iec559-1.cc: ditto.
        * testsuite/18_support/numeric_limits/quiet_NaN-1.cc: ditto.
---
 libstdc++-v3/include/std/limits               |  9 ++--
 .../18_support/numeric_limits/denorm_min-1.cc |  2 +
 .../18_support/numeric_limits/epsilon-1.cc    |  2 +
 .../18_support/numeric_limits/infinity-1.cc   |  2 +
 .../18_support/numeric_limits/infinity.cc     |  4 +-
 .../18_support/numeric_limits/is_iec559-1.cc  |  2 +
 .../18_support/numeric_limits/is_iec559.cc    | 44 ++++++++++++++-----
 .../18_support/numeric_limits/quiet_NaN-1.cc  |  2 +
 .../18_support/numeric_limits/quiet_NaN.cc    |  5 ++-
 9 files changed, 51 insertions(+), 21 deletions(-)
 create mode 100644 libstdc++-v3/testsuite/18_support/numeric_limits/
denorm_min-1.cc
 create mode 100644 libstdc++-v3/testsuite/18_support/numeric_limits/
epsilon-1.cc
 create mode 100644 libstdc++-v3/testsuite/18_support/numeric_limits/
infinity-1.cc
 create mode 100644 libstdc++-v3/testsuite/18_support/numeric_limits/
is_iec559-1.cc
 create mode 100644 libstdc++-v3/testsuite/18_support/numeric_limits/
quiet_NaN-1.cc

-------------- next part --------------
A non-text attachment was scrubbed...
Name: 0002-Let-numeric_limits-is_iec559-reflect-ffast-math.patch
Type: text/x-patch
Size: 7125 bytes
Desc: not available
URL: <https://gcc.gnu.org/pipermail/libstdc++/attachments/20200427/d2242fbc/attachment.bin>


More information about the Libstdc++ mailing list