https://gcc.gnu.org/bugzilla/show_bug.cgi?id=102989

--- Comment #107 from CVS Commits <cvs-commit at gcc dot gnu.org> ---
The master branch has been updated by Jakub Jelinek <ja...@gcc.gnu.org>:

https://gcc.gnu.org/g:c62c82dc98dcb7420498b7114bf4cd2ec1a81405

commit r14-3756-gc62c82dc98dcb7420498b7114bf4cd2ec1a81405
Author: Jakub Jelinek <ja...@redhat.com>
Date:   Wed Sep 6 17:47:49 2023 +0200

    Add further _BitInt <-> floating point tests [PR102989]

    Here are just the testsuite additions from libgcc _BitInt patch review.

    On Fri, Sep 01, 2023 at 09:48:22PM +0000, Joseph Myers wrote:
    > 1. Test overflowing conversions to integers (including from inf or NaN)
    > raise FE_INVALID.  (Note: it's not specified in the standard whether
    > inexact conversions to integers raise FE_INEXACT or not, so testing that
    > seems less important.)

    This is in gcc.dg/bitint-28.c (FE_INVALID) and gcc.dg/bitint-29.c
    (FE_INEXACT) for binary and dfp/bitint-8.c new tests.

    > 2. Test conversions from integers to floating point raise FE_INEXACT when
    > inexact, together with FE_OVERFLOW when overflowing (while exact
    > conversions don't raise exceptions).

    This is in gcc.dg/bitint-30.c new test.

    > 3. Test conversions from integers to floating point respect the rounding
    > mode.

    This is in gcc.dg/bitint-31.c new test.

    > 4. Test converting floating-point values in the range (-1.0, 0.0] to both
    > unsigned and signed _BitInt; I didn't see such tests for binary floating
    > types, only for decimal types, and the decimal tests didn't include tests
    > of negative zero itself as the value converted to _BitInt.

    This is done as incremental changes to existing tests.

    > 5. Test conversions of noncanonical BID zero to integers (these tests
    > would be specific to BID).  See below for a bug in this area.

    This is done in dfp/bitint-7.c test.

    2023-09-06  Jakub Jelinek  <ja...@redhat.com>

            PR c/102989
            * gcc.dg/torture/bitint-21.c (main): Add tests for -1 for signed
only,
            -1 + epsilon, another (-1, 0) range value and -0.
            * gcc.dg/torture/bitint-22.c (main): Likewise.
            * gcc.dg/bitint-28.c: New test.
            * gcc.dg/bitint-29.c: New test.
            * gcc.dg/bitint-30.c: New test.
            * gcc.dg/bitint-31.c: New test.
            * gcc.dg/dfp/bitint-1.c (main): Add tests for -1 for signed only,
            -1 + epsilon and -0.
            * gcc.dg/dfp/bitint-2.c (main): Likewise.
            * gcc.dg/dfp/bitint-3.c (main): Likewise.
            * gcc.dg/dfp/bitint-7.c: New test.
            * gcc.dg/dfp/bitint-8.c: New test.

Reply via email to