On Tue, 25 Sep 2018 at 17:50, Martin Jambor <mjam...@suse.cz> wrote: > > 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, >
Hi, thanks for this fix. Now the test runs on ARM, but fails because of two missing warnings: gcc.dg/warn-abs-1.c (test for warnings, line 46) gcc.dg/warn-abs-1.c (test for warnings, line 60) which correspond to: *pld = fabs (*pld); /* { dg-warning "may cause truncation of value" } */ *pcld = cabs (*pcld); /* { dg-warning "may cause truncation of value" } */ Christophe > 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 >