testsuite: no dfp run without dfprt
commit2ddce884b0d4895758d988498739d6cc2d4e1ffd
authorAlexandre Oliva <oliva@adacore.com>
Mon, 29 Jan 2024 18:08:32 +0000 (29 15:08 -0300)
committerAlexandre Oliva <oliva@gnu.org>
Mon, 29 Jan 2024 18:08:32 +0000 (29 15:08 -0300)
tree2eb73ec3c1814e2a714bcd74ae124648401e1a14
parent1959aeee1e0e0b5eca12178444ba2f28c0ae558f
testsuite: no dfp run without dfprt

newlib-src/libc/include/sys/fenv.h doesn't define the FE_* macros that
libgcc expects to enable decimal float support.  Only after newlib is
configured and built does an overriding header that defines those
macros become available in objdir/<target>/newlib/targ-include/, but
by then, libgcc has already been built without dfp and libbid.

This has exposed a number of tests that attempt to link dfp programs
without requiring a dfprt effective target.

dfp.exp already skips if dfp support is missing altogether, and sets
the default to compile rather than run if dfp support is present in
the compiler but missing in the runtime libraries.

However, some of the dfp tests override the default without requiring
dfprt.  Drop the overriders where reasonable, and add the explicit
requirement elsewhere.

for  gcc/testsuite/ChangeLog

* c-c++-common/dfp/pr36800.c: Drop dg-do overrider.
* c-c++-common/dfp/pr39034.c: Likewise.
* c-c++-common/dfp/pr39035.c: Likewise.
* gcc.dg/dfp/bid-non-canonical-d32-1.c: Likewise.
* gcc.dg/dfp/bid-non-canonical-d32-2.c: Likewise.
* gcc.dg/dfp/bid-non-canonical-d64-1.c: Likewise.
* gcc.dg/dfp/bid-non-canonical-d64-2.c: Likewise.
* gcc.dg/dfp/builtin-snan-1.c: Likewise.
* gcc.dg/dfp/builtin-tgmath-dfp.c: Likewise.
* gcc.dg/dfp/c23-float-dfp-4.c: Likewise.
* gcc.dg/dfp/c23-float-dfp-5.c: Likewise.
* gcc.dg/dfp/c23-float-dfp-6.c: Likewise.
* gcc.dg/dfp/c23-float-dfp-7.c: Likewise.
* gcc.dg/dfp/pr108068.c: Likewise.
* gcc.dg/dfp/pr97439.c: Likewise.
* g++.dg/compat/decimal/pass-1_main.C: Require dfprt.
* g++.dg/compat/decimal/pass-2_main.C: Likewise.
* g++.dg/compat/decimal/pass-3_main.C: Likewise.
* g++.dg/compat/decimal/pass-4_main.C: Likewise.
* g++.dg/compat/decimal/pass-5_main.C: Likewise.
* g++.dg/compat/decimal/pass-6_main.C: Likewise.
* g++.dg/compat/decimal/return-1_main.C: Likewise.
* g++.dg/compat/decimal/return-2_main.C: Likewise.
* g++.dg/compat/decimal/return-3_main.C: Likewise.
* g++.dg/compat/decimal/return-4_main.C: Likewise.
* g++.dg/compat/decimal/return-5_main.C: Likewise.
* g++.dg/compat/decimal/return-6_main.C: Likewise.
* g++.dg/eh/dfp-1.C: Likewise.
* g++.dg/eh/dfp-2.C: Likewise.
* g++.dg/eh/dfp-saves-aarch64.C: Likewise.
* gcc.c-torture/execute/pr80692.c: Likewise.
* gcc.dg/dfp/bid-non-canonical-d128-1.c: Likewise.
* gcc.dg/dfp/bid-non-canonical-d128-2.c: Likewise.
* gcc.dg/dfp/bid-non-canonical-d128-3.c: Likewise.
* gcc.dg/dfp/bid-non-canonical-d128-4.c: Likewise.
35 files changed:
gcc/testsuite/c-c++-common/dfp/pr36800.c
gcc/testsuite/c-c++-common/dfp/pr39034.c
gcc/testsuite/c-c++-common/dfp/pr39035.c
gcc/testsuite/g++.dg/compat/decimal/pass-1_main.C
gcc/testsuite/g++.dg/compat/decimal/pass-2_main.C
gcc/testsuite/g++.dg/compat/decimal/pass-3_main.C
gcc/testsuite/g++.dg/compat/decimal/pass-4_main.C
gcc/testsuite/g++.dg/compat/decimal/pass-5_main.C
gcc/testsuite/g++.dg/compat/decimal/pass-6_main.C
gcc/testsuite/g++.dg/compat/decimal/return-1_main.C
gcc/testsuite/g++.dg/compat/decimal/return-2_main.C
gcc/testsuite/g++.dg/compat/decimal/return-3_main.C
gcc/testsuite/g++.dg/compat/decimal/return-4_main.C
gcc/testsuite/g++.dg/compat/decimal/return-5_main.C
gcc/testsuite/g++.dg/compat/decimal/return-6_main.C
gcc/testsuite/g++.dg/eh/dfp-1.C
gcc/testsuite/g++.dg/eh/dfp-2.C
gcc/testsuite/g++.dg/eh/dfp-saves-aarch64.C
gcc/testsuite/gcc.c-torture/execute/pr80692.c
gcc/testsuite/gcc.dg/dfp/bid-non-canonical-d128-1.c
gcc/testsuite/gcc.dg/dfp/bid-non-canonical-d128-2.c
gcc/testsuite/gcc.dg/dfp/bid-non-canonical-d128-3.c
gcc/testsuite/gcc.dg/dfp/bid-non-canonical-d128-4.c
gcc/testsuite/gcc.dg/dfp/bid-non-canonical-d32-1.c
gcc/testsuite/gcc.dg/dfp/bid-non-canonical-d32-2.c
gcc/testsuite/gcc.dg/dfp/bid-non-canonical-d64-1.c
gcc/testsuite/gcc.dg/dfp/bid-non-canonical-d64-2.c
gcc/testsuite/gcc.dg/dfp/builtin-snan-1.c
gcc/testsuite/gcc.dg/dfp/builtin-tgmath-dfp.c
gcc/testsuite/gcc.dg/dfp/c23-float-dfp-4.c
gcc/testsuite/gcc.dg/dfp/c23-float-dfp-5.c
gcc/testsuite/gcc.dg/dfp/c23-float-dfp-6.c
gcc/testsuite/gcc.dg/dfp/c23-float-dfp-7.c
gcc/testsuite/gcc.dg/dfp/pr108068.c
gcc/testsuite/gcc.dg/dfp/pr97439.c