This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
Re: [PATCH] Add testcase for PR83252 (was Re: patch to fix PR80818)
- From: Jakub Jelinek <jakub at redhat dot com>
- To: Rainer Orth <ro at CeBiTec dot Uni-Bielefeld dot DE>
- Cc: Vladimir Makarov <vmakarov at redhat dot com>, "gcc-patches at gcc dot gnu dot org" <gcc-patches at gcc dot gnu dot org>
- Date: Fri, 8 Dec 2017 13:43:41 +0100
- Subject: Re: [PATCH] Add testcase for PR83252 (was Re: patch to fix PR80818)
- Authentication-results: sourceware.org; auth=none
- References: <c5cb9cb6-be94-2472-563c-e3234c7bfb70@redhat.com> <20171204105201.GM2353@tucnak> <ydd4lp1gzsj.fsf@CeBiTec.Uni-Bielefeld.DE>
- Reply-to: Jakub Jelinek <jakub at redhat dot com>
On Fri, Dec 08, 2017 at 01:38:36PM +0100, Rainer Orth wrote:
> Hi Jakub,
>
> > On Wed, Nov 29, 2017 at 05:21:22PM -0500, Vladimir Makarov wrote:
> >> The following patch fixes
> >>
> >> https://gcc.gnu.org/bugzilla/show_bug.cgi?id=80818
> >>
> >> The patch was successfully tested and bootstrapped on x86_64. The patch
> >> has no test because it is hard to check the problem. I checked manually
> >
> > This changed fixed PR83252 which has a reasonably small testcase.
> > I've further reduced it using creduce (with -O0 -W{,maybe-}uninitialized
> > and/or -fsanitize=undefined checking, plus test that it succeeds with
> > r255258 and fails with r255257). Can you please double check if the
> > testcase represents the same issue you were working on or if your change
> > merely made the bug latent again?
> >
> > 2017-12-04 Jakub Jelinek <jakub@redhat.com>
> >
> > PR target/83252
> > * gcc.target/i386/i386.exp (check_effective_target_bmi2): Moved to ...
> > * lib/target-supports.exp (check_effective_target_bmi2): ... here. Guard with
> > i?86-*-* x86_64-*-*.
> > * g++.dg/opt/pr83252.C: New test.
>
> the new testcase FAILs on Solaris/x86 with /bin/as:
>
> +FAIL: g++.dg/opt/pr83252.C -std=gnu++11 execution test
> +FAIL: g++.dg/opt/pr83252.C -std=gnu++14 execution test
> +FAIL: g++.dg/opt/pr83252.C -std=gnu++98 execution test
>
> ld.so.1: pr83252.exe: fatal: pr83252.exe: hardware capability (CA_SUNW_HW_2) unsupported: 0x80 [ BMI2 ]
>
> Inside gcc.target/i386, clearcap.exp takes care of that.
This can't be in gcc.target/i386/, because the test has to be C++ (doesn't
fail in C).
So dg-skip-if on Solaris, or { target { bmi2 && { ! *-*-solaris* } } } for
the -mbmi2 option?
Jakub