Hi, On Mon, Sep 24 2018, Christophe Lyon wrote: > On Mon, 24 Sep 2018 at 20:46, Martin Jambor <mjam...@suse.cz> wrote: >> >> Hi, >> >> the test added to check whether _Float128 types are handled correctly by >> the new warning about suspicious calls to abs-like functions fails on >> many platforms. The patch below circumvents the problem by running on >> i686/x86_64 only. I understand that the proper solution would be to >> come up with a deja-gnu predicate and skip-if it was not provided but I >> think that for one simple test that is a bit of an overkill and testing >> it on x86_64 will provide all the test coverage we need. >> >> Tested on x86_64-linux and aarch64-linux, testing on i686-linux >> pending. OK for trunk? >> >> Thanks, >> >> Martin >> >> >> >> 2018-09-24 Martin Jambor <mjam...@suse.cz> >> >> PR testsuite/87339 >> * gcc.dg/warn-abs-1.c: Do not test _Float128. Remove dg-skip-if. >> * gcc.target/i386/warn-abs-3.c: New test. >> --- >> gcc/testsuite/gcc.dg/warn-abs-1.c | 4 +--- >> gcc/testsuite/gcc.target/i386/warn-abs-3.c | 12 ++++++++++++ >> 2 files changed, 13 insertions(+), 3 deletions(-) >> create mode 100644 gcc/testsuite/gcc.target/i386/warn-abs-3.c >> >> diff --git a/gcc/testsuite/gcc.dg/warn-abs-1.c >> b/gcc/testsuite/gcc.dg/warn-abs-1.c >> index 129a3af8ac6..b494b14f4a9 100644 >> --- a/gcc/testsuite/gcc.dg/warn-abs-1.c >> +++ b/gcc/testsuite/gcc.dg/warn-abs-1.c >> @@ -1,5 +1,4 @@ >> /* { dg-do compile { target float128 } } */ > > Don't you want to remove the {target float128} part?
I did notice it but yes, I do want to remove it. I am therefore going to commit the following after re-testing on x86_64-linux and aarch64-linux. Thank you, Martin 2018-09-25 Martin Jambor <mjam...@suse.cz> PR testsuite/87339 * gcc.dg/warn-abs-1.c: Do not test _Float128. Remove dg-skip-if and float125 target. * gcc.target/i386/warn-abs-3.c: New test. --- gcc/testsuite/gcc.dg/warn-abs-1.c | 6 ++---- gcc/testsuite/gcc.target/i386/warn-abs-3.c | 12 ++++++++++++ 2 files changed, 14 insertions(+), 4 deletions(-) create mode 100644 gcc/testsuite/gcc.target/i386/warn-abs-3.c diff --git a/gcc/testsuite/gcc.dg/warn-abs-1.c b/gcc/testsuite/gcc.dg/warn-abs-1.c index 129a3af8ac6..1c487270042 100644 --- a/gcc/testsuite/gcc.dg/warn-abs-1.c +++ b/gcc/testsuite/gcc.dg/warn-abs-1.c @@ -1,5 +1,4 @@ -/* { dg-do compile { target float128 } } */ -/* { dg-skip-if "incomplete long double support" { { newlib } && large_long_double } } */ +/* { dg-do compile } */ /* { dg-options "-Wabsolute-value" } */ #include <stdlib.h> @@ -41,12 +40,11 @@ tst_notfloat (int *pi, long *pl, complex double *pc) } void -tst_float_size (double *pd, long double *pld, _Float128 *pf128) +tst_float_size (double *pd, long double *pld) { *pd = fabsf (*pd); /* { dg-warning "may cause truncation of value" } */ *pld = fabs (*pld); /* { dg-warning "may cause truncation of value" } */ *pld = fabs ((double) *pld); - *pf128 = fabsl (*pf128); /* { dg-warning "may cause truncation of value" } */ } void tst_notcomplex (int *pi, long *pl, long double *pld) diff --git a/gcc/testsuite/gcc.target/i386/warn-abs-3.c b/gcc/testsuite/gcc.target/i386/warn-abs-3.c new file mode 100644 index 00000000000..21feaff7d8a --- /dev/null +++ b/gcc/testsuite/gcc.target/i386/warn-abs-3.c @@ -0,0 +1,12 @@ +/* { dg-do compile { target float128 } } */ +/* { dg-options "-Wabsolute-value" } */ + +#include <stdlib.h> +#include <inttypes.h> +#include <math.h> + +void +tst_float128_size (_Float128 *pf128) +{ + *pf128 = fabsl (*pf128); /* { dg-warning "may cause truncation of value" } */ +} -- 2.18.0