[testsuite] rearrange requirements for dfp bitint run tests
Commit Message
dfp.exp sets the default to compile when dfprt is not available, but
some dfp bitint tests override the default without that requirement,
and try to run even when dfprt is not available.
Instead of overriding the default, rewrite the requirements so that
they apply even when compiling, since the absence of bitint or of
int128 would presumably cause compile failures.
Regstrapped on x86_64-linux-gnu. Also tested with aarch64-elf and
arm-eabi on gcc-14, with dfp support (implicitly) disabled in libgcc.
Ok to install?
for gcc/testsuite/ChangeLog
* gcc.dg/dfp/bitint-1.c: Rewrite requirements to retain dfprt.
* gcc.dg/dfp/bitint-2.c: Likewise.
* gcc.dg/dfp/bitint-3.c: Likewise.
* gcc.dg/dfp/bitint-4.c: Likewise.
* gcc.dg/dfp/bitint-5.c: Likewise.
* gcc.dg/dfp/bitint-6.c: Likewise.
* gcc.dg/dfp/bitint-7.c: Likewise.
* gcc.dg/dfp/bitint-8.c: Likewise.
* gcc.dg/dfp/int128-1.c: Likewise.
* gcc.dg/dfp/int128-2.c: Likewise.
* gcc.dg/dfp/int128-3.c: Likewise.
* gcc.dg/dfp/int128-4.c: Likewise.
---
gcc/testsuite/gcc.dg/dfp/bitint-1.c | 2 +-
gcc/testsuite/gcc.dg/dfp/bitint-2.c | 2 +-
gcc/testsuite/gcc.dg/dfp/bitint-3.c | 2 +-
gcc/testsuite/gcc.dg/dfp/bitint-4.c | 2 +-
gcc/testsuite/gcc.dg/dfp/bitint-5.c | 2 +-
gcc/testsuite/gcc.dg/dfp/bitint-6.c | 2 +-
gcc/testsuite/gcc.dg/dfp/bitint-7.c | 2 +-
gcc/testsuite/gcc.dg/dfp/bitint-8.c | 2 +-
gcc/testsuite/gcc.dg/dfp/int128-1.c | 3 ++-
gcc/testsuite/gcc.dg/dfp/int128-2.c | 3 ++-
gcc/testsuite/gcc.dg/dfp/int128-3.c | 3 ++-
gcc/testsuite/gcc.dg/dfp/int128-4.c | 3 ++-
12 files changed, 16 insertions(+), 12 deletions(-)
Comments
On Jan 10, 2025, Alexandre Oliva <oliva@adacore.com> wrote:
> dfp.exp sets the default to compile when dfprt is not available, but
> some dfp bitint tests override the default without that requirement,
> and try to run even when dfprt is not available.
> Instead of overriding the default, rewrite the requirements so that
> they apply even when compiling, since the absence of bitint or of
> int128 would presumably cause compile failures.
> Regstrapped on x86_64-linux-gnu. Also tested with aarch64-elf and
> arm-eabi on gcc-14, with dfp support (implicitly) disabled in libgcc.
> Ok to install?
Ping?
https://gcc.gnu.org/pipermail/gcc-patches/2025-January/673160.html
> for gcc/testsuite/ChangeLog
> * gcc.dg/dfp/bitint-1.c: Rewrite requirements to retain dfprt.
> * gcc.dg/dfp/bitint-2.c: Likewise.
> * gcc.dg/dfp/bitint-3.c: Likewise.
> * gcc.dg/dfp/bitint-4.c: Likewise.
> * gcc.dg/dfp/bitint-5.c: Likewise.
> * gcc.dg/dfp/bitint-6.c: Likewise.
> * gcc.dg/dfp/bitint-7.c: Likewise.
> * gcc.dg/dfp/bitint-8.c: Likewise.
> * gcc.dg/dfp/int128-1.c: Likewise.
> * gcc.dg/dfp/int128-2.c: Likewise.
> * gcc.dg/dfp/int128-3.c: Likewise.
> * gcc.dg/dfp/int128-4.c: Likewise.
On Jan 9, 2025, at 10:25 PM, Alexandre Oliva <oliva@adacore.com> wrote:
>
> dfp.exp sets the default to compile when dfprt is not available, but
> some dfp bitint tests override the default without that requirement,
> and try to run even when dfprt is not available.
>
> Instead of overriding the default, rewrite the requirements so that
> they apply even when compiling, since the absence of bitint or of
> int128 would presumably cause compile failures.
>
> Regstrapped on x86_64-linux-gnu. Also tested with aarch64-elf and
> arm-eabi on gcc-14, with dfp support (implicitly) disabled in libgcc.
> Ok to install?
Ok.
> for gcc/testsuite/ChangeLog
>
> * gcc.dg/dfp/bitint-1.c: Rewrite requirements to retain dfprt.
> * gcc.dg/dfp/bitint-2.c: Likewise.
> * gcc.dg/dfp/bitint-3.c: Likewise.
> * gcc.dg/dfp/bitint-4.c: Likewise.
> * gcc.dg/dfp/bitint-5.c: Likewise.
> * gcc.dg/dfp/bitint-6.c: Likewise.
> * gcc.dg/dfp/bitint-7.c: Likewise.
> * gcc.dg/dfp/bitint-8.c: Likewise.
> * gcc.dg/dfp/int128-1.c: Likewise.
> * gcc.dg/dfp/int128-2.c: Likewise.
> * gcc.dg/dfp/int128-3.c: Likewise.
> * gcc.dg/dfp/int128-4.c: Likewise.
@@ -1,5 +1,5 @@
/* PR c/102989 */
-/* { dg-do run { target bitint } } */
+/* { dg-require-effective-target bitint } */
/* { dg-options "-O2 -std=c23 -pedantic-errors" } */
#if __BITINT_MAXWIDTH__ >= 192
@@ -1,5 +1,5 @@
/* PR c/102989 */
-/* { dg-do run { target bitint } } */
+/* { dg-require-effective-target bitint } */
/* { dg-options "-O2 -std=c23 -pedantic-errors" } */
#if __BITINT_MAXWIDTH__ >= 192
@@ -1,5 +1,5 @@
/* PR c/102989 */
-/* { dg-do run { target bitint } } */
+/* { dg-require-effective-target bitint } */
/* { dg-options "-O2 -std=c23 -pedantic-errors" } */
#if __BITINT_MAXWIDTH__ >= 192
@@ -1,5 +1,5 @@
/* PR c/102989 */
-/* { dg-do run { target bitint } } */
+/* { dg-require-effective-target bitint } */
/* { dg-options "-O2 -std=c23 -pedantic-errors" } */
#if __BITINT_MAXWIDTH__ >= 192
@@ -1,5 +1,5 @@
/* PR c/102989 */
-/* { dg-do run { target bitint } } */
+/* { dg-require-effective-target bitint } */
/* { dg-options "-O2 -std=c23 -pedantic-errors" } */
#if __BITINT_MAXWIDTH__ >= 192
@@ -1,5 +1,5 @@
/* PR c/102989 */
-/* { dg-do run { target bitint } } */
+/* { dg-require-effective-target bitint } */
/* { dg-options "-O2 -std=c23 -pedantic-errors" } */
#if __BITINT_MAXWIDTH__ >= 192
@@ -1,6 +1,6 @@
/* PR c/102989 */
/* Test non-canonical BID significands. */
-/* { dg-do run { target bitint } } */
+/* { dg-require-effective-target bitint } */
/* { dg-require-effective-target dfp_bid } */
/* { dg-options "-std=gnu23 -O2" } */
@@ -1,5 +1,5 @@
/* PR c/102989 */
-/* { dg-do run { target bitint } } */
+/* { dg-require-effective-target bitint } */
/* { dg-require-effective-target fenv_exceptions } */
/* { dg-options "-std=c23" } */
@@ -1,5 +1,6 @@
/* PR libgcc/65833 */
-/* { dg-do run { target { int128 && bitint } } } */
+/* { dg-require-effective-target int128 } */
+/* { dg-require-effective-target bitint } */
/* { dg-options "-O2 -std=gnu2x" } */
#define INT128_MAX ((__int128) ((((unsigned __int128) 1) << 127) - 1))
@@ -1,5 +1,6 @@
/* PR libgcc/65833 */
-/* { dg-do run { target { int128 && bitint } } } */
+/* { dg-require-effective-target int128 } */
+/* { dg-require-effective-target bitint } */
/* { dg-options "-O2 -std=gnu2x" } */
__attribute__((noipa)) _Decimal64
@@ -1,6 +1,7 @@
/* PR libgcc/65833 */
/* Test non-canonical BID significands. */
-/* { dg-do run { target { int128 && bitint } } } */
+/* { dg-require-effective-target int128 } */
+/* { dg-require-effective-target bitint } */
/* { dg-options "-O2 -std=gnu2x" } */
/* { dg-require-effective-target dfp_bid } */
@@ -1,5 +1,6 @@
/* PR libgcc/65833 */
-/* { dg-do run { target { int128 && bitint } } } */
+/* { dg-require-effective-target int128 } */
+/* { dg-require-effective-target bitint } */
/* { dg-require-effective-target fenv_exceptions } */
/* { dg-options "-std=c2x" } */