This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
Re: [PATCH, rs6000] Fix AIX test case failures
- From: Segher Boessenkool <segher at kernel dot crashing dot org>
- To: Carl Love <cel at us dot ibm dot com>
- Cc: gcc-patches at gcc dot gnu dot org, David Edelsohn <dje dot gcc at gmail dot com>, Bill Schmidt <wschmidt at linux dot vnet dot ibm dot com>
- Date: Mon, 25 Jun 2018 04:44:50 -0500
- Subject: Re: [PATCH, rs6000] Fix AIX test case failures
- References: <1529704544.7264.13.camel@us.ibm.com>
Hi Carl,
On Fri, Jun 22, 2018 at 02:55:44PM -0700, Carl Love wrote:
> --- a/gcc/testsuite/gcc.target/powerpc/divkc3-2.c
> +++ b/gcc/testsuite/gcc.target/powerpc/divkc3-2.c
> @@ -13,4 +13,5 @@ divide (cld_t *p, cld_t *q, cld_t *r)
> *p = *q / *r;
> }
>
> -/* { dg-final { scan-assembler "bl __divkc3" } } */
> +/* { dg-final { scan-assembler "bl __divkc3" { target { powerpc*-*-linux* } } } } */
> +/* { dg-final { scan-assembler "bl .__divdc3" { target { powerpc*-*-aix* } } } } */
Should it be calling __divdc3 on AIX, is that correct?
> --- a/gcc/testsuite/gcc.target/powerpc/divkc3-3.c
> +++ b/gcc/testsuite/gcc.target/powerpc/divkc3-3.c
> @@ -13,4 +13,5 @@ divide (cld_t *p, cld_t *q, cld_t *r)
> *p = *q / *r;
> }
>
> -/* { dg-final { scan-assembler "bl __divtc3" } } */
> +/* { dg-final { scan-assembler "bl __divtc3" { target { powerpc*-*-linux* } } } } */
> +/* { dg-final { scan-assembler "bl .__divdc3" { target { powerpc*-*-aix* } } } } */
Same question here. If the AIX port cannot handle -mabi=ieeelongdouble
it shouldn't silently accept it, etc.
> diff --git a/gcc/testsuite/gcc.target/powerpc/fold-vec-mergehl-double.c b/gcc/testsuite/gcc.target/powerpc/fold-vec-mergehl-double.c
> index 25f4bc6..403876d 100644
> --- a/gcc/testsuite/gcc.target/powerpc/fold-vec-mergehl-double.c
> +++ b/gcc/testsuite/gcc.target/powerpc/fold-vec-mergehl-double.c
> @@ -19,7 +19,6 @@ testd_h (vector double vd2, vector double vd3)
> return vec_mergeh (vd2, vd3);
> }
>
> -/* vec_merge with doubles tend to just use xxpermdi (3 ea for BE, 1 ea for LE). */
> -/* { dg-final { scan-assembler-times "xxpermdi" 2 { target { powerpc*le-*-* } } } } */
> -/* { dg-final { scan-assembler-times "xxpermdi" 6 { target { powerpc-*-* } } } } */
> +/* { dg-final { scan-assembler-times "xxpermdi" 2 } } */
> +
>
Is this change correct? The test didn't fail on BE Linux (neither 32-bit
nor 64-bit) as far as I know.
Segher