On Fri, Aug 14, 2026 at 12:33 PM Matt Turner <[email protected]> wrote:
>
> These tests feed NaNs or infinities through floating-point comparisons.
> Alpha only generates IEEE-conformant code with -mieee: without it GCC emits
> cmpteq rather than cmpteq/su, and an invalid-operation trap on a non-finite
> operand is not software-completable, so the program dies with SIGFPE.
>
> Use dg-add-options ieee, which adds -mieee on alpha and sh, rather than
> marking the tests as expected failures.  The compiler behaves as documented
> and the tests check something meaningful once IEEE semantics are requested.
>
> gcc/testsuite/ChangeLog:
>
>         * g++.dg/opt/pr94589-6.C: Add dg-add-options ieee.
>         * g++.dg/torture/pr116120-2.C: Likewise.
>         * gcc.c-torture/execute/20190901-1.c: Likewise.
>         * gcc.dg/pr108447.c: Likewise.
>         * gcc.dg/pr94589-6.c: Likewise.
>         * gcc.dg/torture/pr126464.c: Likewise.
>         * gcc.dg/torture/pr126576.c: Likewise.

Ok.


> ---
>  gcc/testsuite/g++.dg/opt/pr94589-6.C             | 1 +
>  gcc/testsuite/g++.dg/torture/pr116120-2.C        | 1 +
>  gcc/testsuite/gcc.c-torture/execute/20190901-1.c | 1 +
>  gcc/testsuite/gcc.dg/pr108447.c                  | 1 +
>  gcc/testsuite/gcc.dg/pr94589-6.c                 | 1 +
>  gcc/testsuite/gcc.dg/torture/pr126464.c          | 1 +
>  gcc/testsuite/gcc.dg/torture/pr126576.c          | 1 +
>  7 files changed, 7 insertions(+)
>
> diff --git ./gcc/testsuite/g++.dg/opt/pr94589-6.C 
> ./gcc/testsuite/g++.dg/opt/pr94589-6.C
> index c5036c6f56a..49d205b057a 100644
> --- ./gcc/testsuite/g++.dg/opt/pr94589-6.C
> +++ ./gcc/testsuite/g++.dg/opt/pr94589-6.C
> @@ -1,6 +1,7 @@
>  // { dg-do run { target c++20 } }
>  // { dg-require-effective-target inf }
>  // { dg-options "-O2 -g" }
> +// { dg-add-options ieee }
>
>  #include "pr94589-5.C"
>
> diff --git ./gcc/testsuite/g++.dg/torture/pr116120-2.C 
> ./gcc/testsuite/g++.dg/torture/pr116120-2.C
> index e9fee17a262..8715582578d 100644
> --- ./gcc/testsuite/g++.dg/torture/pr116120-2.C
> +++ ./gcc/testsuite/g++.dg/torture/pr116120-2.C
> @@ -1,4 +1,5 @@
>  // { dg-do run }
> +// { dg-add-options ieee }
>  // PR tree-optimization/116120
>
>  // The optimization for `(a ? x : y) == (b ? x : y)`
> diff --git ./gcc/testsuite/gcc.c-torture/execute/20190901-1.c 
> ./gcc/testsuite/gcc.c-torture/execute/20190901-1.c
> index 2345e51896f..08869092c78 100644
> --- ./gcc/testsuite/gcc.c-torture/execute/20190901-1.c
> +++ ./gcc/testsuite/gcc.c-torture/execute/20190901-1.c
> @@ -1,6 +1,7 @@
>  /* PR target/91472 */
>  /* Reported by John Paul Adrian Glaubitz <[email protected]> */
>  /* { dg-require-effective-target double64plus } */
> +/* { dg-add-options ieee } */
>
>  #if __SIZEOF_INT__ >= 4
>  typedef unsigned int gmp_uint_least32_t;
> diff --git ./gcc/testsuite/gcc.dg/pr108447.c ./gcc/testsuite/gcc.dg/pr108447.c
> index cfbaba6d0aa..e7e34ca24cf 100644
> --- ./gcc/testsuite/gcc.dg/pr108447.c
> +++ ./gcc/testsuite/gcc.dg/pr108447.c
> @@ -1,5 +1,6 @@
>  /* { dg-do run } */
>  /* { dg-options "-O2" } */
> +/* { dg-add-options ieee } */
>
>  __attribute__((noipa)) int
>  foo (float x, float y)
> diff --git ./gcc/testsuite/gcc.dg/pr94589-6.c 
> ./gcc/testsuite/gcc.dg/pr94589-6.c
> index 3131ab4cfae..5828fce7f41 100644
> --- ./gcc/testsuite/gcc.dg/pr94589-6.c
> +++ ./gcc/testsuite/gcc.dg/pr94589-6.c
> @@ -1,5 +1,6 @@
>  /* { dg-do run { target inf } } */
>  /* { dg-options "-O2 -g" } */
> +/* { dg-add-options ieee } */
>
>  #include "pr94589-5.c"
>
> diff --git ./gcc/testsuite/gcc.dg/torture/pr126464.c 
> ./gcc/testsuite/gcc.dg/torture/pr126464.c
> index c0dced1eedc..f433caefa8e 100644
> --- ./gcc/testsuite/gcc.dg/torture/pr126464.c
> +++ ./gcc/testsuite/gcc.dg/torture/pr126464.c
> @@ -1,5 +1,6 @@
>  /* PR tree-optimization/126464 */
>  /* { dg-do run } */
> +/* { dg-add-options ieee } */
>
>  #if __DBL_MANT_DIG__ == 53 && __DBL_MAX_10_EXP__ == 308 \
>      && __DBL_HAS_INFINITY__ && __FLT_EVAL_METHOD__ == 0
> diff --git ./gcc/testsuite/gcc.dg/torture/pr126576.c 
> ./gcc/testsuite/gcc.dg/torture/pr126576.c
> index c94c7437035..a961f77552b 100644
> --- ./gcc/testsuite/gcc.dg/torture/pr126576.c
> +++ ./gcc/testsuite/gcc.dg/torture/pr126576.c
> @@ -1,5 +1,6 @@
>  /* PR tree-optimization/126576 */
>  /* { dg-do run } */
> +/* { dg-add-options ieee } */
>
>  #if __DBL_MANT_DIG__ == 53 && __DBL_MAX_10_EXP__ == 308 \
>      && __DBL_HAS_INFINITY__ && __FLT_EVAL_METHOD__ == 0
> --
> 2.54.0
>

Reply via email to