Patchwork [testsuite] Properly XFAIL gcc.dg/vect/slp-multitypes-2.c on Solaris 2/SPARC

login
register
mail settings
Submitter Rainer Orth
Date March 18, 2011, 4:09 p.m.
Message ID <yddoc58jtqk.fsf@manam.CeBiTec.Uni-Bielefeld.DE>
Download mbox | patch
Permalink /patch/87545/
State New
Headers show

Comments

Rainer Orth - March 18, 2011, 4:09 p.m.
I noticed that gcc.dg/vect/slp-multitypes-2.c is failing on Solaris
8/x86 with Sun as:

FAIL: gcc.dg/vect/slp-multitypes-2.c (test for excess errors)
WARNING: gcc.dg/vect/slp-multitypes-2.c compilation failed to produce executable

Excess errors:
Assembler: slp-multitypes-2.c
        "/var/tmp//ccmA7WBi.s", line 16 : Illegal mnemonic
        "/var/tmp//ccmA7WBi.s", line 16 : Syntax error

        unpcklpd %xmm0,%xmm2

This should be dealt with by the explicit
check_vect_support_and_set_flags in vect.exp, which does

    } elseif { [istarget "i?86-*-*"] || [istarget "x86_64-*-*"] } {
        lappend DEFAULT_VECTCFLAGS "-msse2"
        if { [check_effective_target_sse2_runtime] } {
            set dg-do-what-default run
        } else {
            set dg-do-what-default compile
        }

Unfortunately, this gets overridden by the explicit 

/* { dg-do run { xfail { sparc*-*-* && ilp32 } } } PR rtl-opt /46603 */

To fix this, I've changed the testcase to use dg-xfail-run-if instead.
Besides, I see the failure only with gas, not Sun as.

The following patch has been tested with the appropriate runtest
invocations on both i386-pc-solaris2.8 and sparc-sun-solaris2.10 (both
as and gas).

I'm about to commit this to mainline.  The 4.5 branch is unaffected, but
4.6 is.  Ok there, too, after testing?

Thanks.

	Rainer


2011-03-18  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>

	* gcc.dg/vect/slp-multitypes-2.c: Replace dg-do run with
	dg-xfail-run-if.
	Only xfail with gas.
Richard Guenther - March 19, 2011, 12:11 p.m.
On Fri, Mar 18, 2011 at 5:09 PM, Rainer Orth
<ro@cebitec.uni-bielefeld.de> wrote:
> I noticed that gcc.dg/vect/slp-multitypes-2.c is failing on Solaris
> 8/x86 with Sun as:
>
> FAIL: gcc.dg/vect/slp-multitypes-2.c (test for excess errors)
> WARNING: gcc.dg/vect/slp-multitypes-2.c compilation failed to produce executable
>
> Excess errors:
> Assembler: slp-multitypes-2.c
>        "/var/tmp//ccmA7WBi.s", line 16 : Illegal mnemonic
>        "/var/tmp//ccmA7WBi.s", line 16 : Syntax error
>
>        unpcklpd %xmm0,%xmm2
>
> This should be dealt with by the explicit
> check_vect_support_and_set_flags in vect.exp, which does
>
>    } elseif { [istarget "i?86-*-*"] || [istarget "x86_64-*-*"] } {
>        lappend DEFAULT_VECTCFLAGS "-msse2"
>        if { [check_effective_target_sse2_runtime] } {
>            set dg-do-what-default run
>        } else {
>            set dg-do-what-default compile
>        }
>
> Unfortunately, this gets overridden by the explicit
>
> /* { dg-do run { xfail { sparc*-*-* && ilp32 } } } PR rtl-opt /46603 */
>
> To fix this, I've changed the testcase to use dg-xfail-run-if instead.
> Besides, I see the failure only with gas, not Sun as.
>
> The following patch has been tested with the appropriate runtest
> invocations on both i386-pc-solaris2.8 and sparc-sun-solaris2.10 (both
> as and gas).
>
> I'm about to commit this to mainline.  The 4.5 branch is unaffected, but
> 4.6 is.  Ok there, too, after testing?

Ok.

Thanks,
Richard.

> Thanks.
>
>        Rainer
>
>
> 2011-03-18  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
>
>        * gcc.dg/vect/slp-multitypes-2.c: Replace dg-do run with
>        dg-xfail-run-if.
>        Only xfail with gas.
>
> diff -r eebced2eebe8 gcc/testsuite/gcc.dg/vect/slp-multitypes-2.c
> --- a/gcc/testsuite/gcc.dg/vect/slp-multitypes-2.c      Fri Mar 18 10:52:22 2011 +0100
> +++ b/gcc/testsuite/gcc.dg/vect/slp-multitypes-2.c      Fri Mar 18 16:58:49 2011 +0100
> @@ -1,5 +1,5 @@
>  /* { dg-require-effective-target vect_int } */
> -/* { dg-do run { xfail { sparc*-*-* && ilp32 } } } PR rtl-opt/46603 */
> +/* { dg-xfail-run-if "PR rtl-optimization/46603" { sparc*-*-* && { ilp32 && gas } } } */
>
>  #include <stdarg.h>
>  #include "tree-vect.h"
>
> --
> -----------------------------------------------------------------------------
> Rainer Orth, Center for Biotechnology, Bielefeld University
>

Patch

diff -r eebced2eebe8 gcc/testsuite/gcc.dg/vect/slp-multitypes-2.c
--- a/gcc/testsuite/gcc.dg/vect/slp-multitypes-2.c	Fri Mar 18 10:52:22 2011 +0100
+++ b/gcc/testsuite/gcc.dg/vect/slp-multitypes-2.c	Fri Mar 18 16:58:49 2011 +0100
@@ -1,5 +1,5 @@ 
 /* { dg-require-effective-target vect_int } */
-/* { dg-do run { xfail { sparc*-*-* && ilp32 } } } PR rtl-opt/46603 */
+/* { dg-xfail-run-if "PR rtl-optimization/46603" { sparc*-*-* && { ilp32 && gas } } } */
 
 #include <stdarg.h>
 #include "tree-vect.h"