diff mbox

[4/6] nvptx testsuite patches: xfails and skips

Message ID 54466B82.2030709@codesourcery.com
State New
Headers show

Commit Message

Bernd Schmidt Oct. 21, 2014, 2:19 p.m. UTC
Some things don't fit into nice categories that apply to a larger set of 
tests, or which are somewhat random like ptxas tool failures. For these 
I've added xfails and skips.


Bernd

Comments

Jeff Law Oct. 21, 2014, 3:27 p.m. UTC | #1
On 10/21/14 14:19, Bernd Schmidt wrote:
> Some things don't fit into nice categories that apply to a larger set of
> tests, or which are somewhat random like ptxas tool failures. For these
> I've added xfails and skips.
>
>
> Bernd
>
> ts-xfails.diff
>
>
> 	gcc/testsuite/
> 	* lib/target-supports.exp (check_effective_target_trampolines,
> 	check_profiling_available, check_effective_target_lto,
> 	check_effective_target_vect_natural): False for nvptx-*-*.
> 	* gcc.c-torture/compile/limits-fndefn.c: Skip for nvptx-*-*.
> 	* gcc.c-torture/compile/pr34334.c: Likewise.
> 	* gcc.c-torture/compile/pr37056.c: Likewise.
> 	* gcc.c-torture/compile/pr39423-1.c: Likewise.
> 	* gcc.c-torture/compile/pr46534.c: Likewise.
> 	* gcc.c-torture/compile/pr49049.c: Likewise.
> 	* gcc.c-torture/compile/pr59417.c: Likewise.
> 	* gcc.c-torture/compile/20080721-1.c: Likewise.
> 	* gcc.c-torture/compile/920501-4.c: Likewise.
> 	* gcc.c-torture/compile/921011-1.c: Likewise.	
> 	* gcc.dg/20040813-1.c: Likewise.
> 	* gcc.dg/pr28755.c: Likewise.
> 	* gcc.dg/pr44194-1.c: Likewise.
> 	* gcc.c-torture/compile/pr42717.c: Xfail for nvptx-*-*.
> 	* gcc.c-torture/compile/pr61684.c: Likewise.
> 	* gcc.c-torture/compile/pr20601-1.c: Likewise.
> 	* gcc.c-torture/compile/pr59221.c: Likewise.
> 	* gcc.c-torture/compile/20060208-1.c: Likewise.
> 	* gcc.c-torture/execute/pr52129.c: Likewise.
> 	* gcc.c-torture/execute/20020310-1.c: Likewise.
> 	* gcc.c-torture/execute/20101011-1.c: Define DO_TEST to 0 for nvptx.
> 	* gcc.c-torture/execute20020312-2.c: Add case for for nvptx.
> 	* gcc.c-torture/compile/pr60655-1.c: Don't add -fdata-sections
> 	for nvptx-*-*.
> 	* gcc.dg/pr36400.c: Xfail scan-assembler test on nvptx-*-*.
> 	* gcc.dg/const-elim-2.c: Likewise.
More ptx tooling failures than I'd expect.  I'll leave it up to you 
whether or not to push on NVidia to fix some of those failures.  The 
timeouts seem particularly troublesome.

I think this is fine.

jeff
Bernd Schmidt Oct. 21, 2014, 3:30 p.m. UTC | #2
On 10/21/2014 05:27 PM, Jeff Law wrote:
> More ptx tooling failures than I'd expect.  I'll leave it up to you
> whether or not to push on NVidia to fix some of those failures.  The
> timeouts seem particularly troublesome.

All I can say is that we've reported them.


Bernd
diff mbox

Patch


	gcc/testsuite/
	* lib/target-supports.exp (check_effective_target_trampolines,
	check_profiling_available, check_effective_target_lto,
	check_effective_target_vect_natural): False for nvptx-*-*.
	* gcc.c-torture/compile/limits-fndefn.c: Skip for nvptx-*-*.
	* gcc.c-torture/compile/pr34334.c: Likewise.
	* gcc.c-torture/compile/pr37056.c: Likewise.
	* gcc.c-torture/compile/pr39423-1.c: Likewise.
	* gcc.c-torture/compile/pr46534.c: Likewise.
	* gcc.c-torture/compile/pr49049.c: Likewise.
	* gcc.c-torture/compile/pr59417.c: Likewise.
	* gcc.c-torture/compile/20080721-1.c: Likewise.
	* gcc.c-torture/compile/920501-4.c: Likewise.
	* gcc.c-torture/compile/921011-1.c: Likewise.	
	* gcc.dg/20040813-1.c: Likewise.
	* gcc.dg/pr28755.c: Likewise.
	* gcc.dg/pr44194-1.c: Likewise.
	* gcc.c-torture/compile/pr42717.c: Xfail for nvptx-*-*.
	* gcc.c-torture/compile/pr61684.c: Likewise.
	* gcc.c-torture/compile/pr20601-1.c: Likewise.
	* gcc.c-torture/compile/pr59221.c: Likewise.
	* gcc.c-torture/compile/20060208-1.c: Likewise.
	* gcc.c-torture/execute/pr52129.c: Likewise.
	* gcc.c-torture/execute/20020310-1.c: Likewise.
	* gcc.c-torture/execute/20101011-1.c: Define DO_TEST to 0 for nvptx.
	* gcc.c-torture/execute20020312-2.c: Add case for for nvptx.
	* gcc.c-torture/compile/pr60655-1.c: Don't add -fdata-sections
	for nvptx-*-*.
	* gcc.dg/pr36400.c: Xfail scan-assembler test on nvptx-*-*.
	* gcc.dg/const-elim-2.c: Likewise.

------------------------------------------------------------------------
Index: gcc/testsuite/lib/target-supports.exp
===================================================================
--- gcc/testsuite/lib/target-supports.exp.orig
+++ gcc/testsuite/lib/target-supports.exp
@@ -436,6 +436,7 @@  proc check_effective_target_trampolines
     }
     if { [istarget avr-*-*]
 	 || [istarget msp430-*-*]
+	 || [istarget nvptx-*-*]
 	 || [istarget hppa2.0w-hp-hpux11.23]
 	 || [istarget hppa64-hp-hpux11.23] } {
 	return 0;
@@ -532,6 +533,7 @@  proc check_profiling_available { test_wh
 	     || [istarget msp430-*-*]
 	     || [istarget nds32*-*-elf]
 	     || [istarget nios2-*-elf]
+	     || [istarget nvptx-*-*]
 	     || [istarget powerpc-*-eabi*]
 	     || [istarget powerpc-*-elf]
 	     || [istarget rx-*-*]	
@@ -4216,7 +4218,8 @@  proc check_effective_target_vect_natural
         verbose "check_effective_target_vect_natural_alignment: using cached result" 2
     } else {
         set et_vect_natural_alignment_saved 1
-        if { [check_effective_target_arm_eabi] } {
+        if { [check_effective_target_arm_eabi]
+	     || [istarget nvptx-*-*] } {
             set et_vect_natural_alignment_saved 0
         }
     }
@@ -5691,6 +5694,9 @@  proc check_effective_target_gld { } {
 
 proc check_effective_target_lto { } {
     global ENABLE_LTO
+    if { [istarget nvptx-*-*] } {
+	return 0;
+    }
     return [info exists ENABLE_LTO]
 }
 
Index: gcc/testsuite/gcc.c-torture/compile/limits-fndefn.c
===================================================================
--- gcc/testsuite/gcc.c-torture/compile/limits-fndefn.c.orig
+++ gcc/testsuite/gcc.c-torture/compile/limits-fndefn.c
@@ -1,4 +1,5 @@ 
 /* { dg-skip-if "too complex for avr" { avr-*-* } { "*" } { "" } } */
+/* { dg-skip-if "ptxas times out" { nvptx-*-* } { "*" } { "" } } */
 /* { dg-timeout-factor 4.0 } */
 #define LIM1(x) x##0, x##1, x##2, x##3, x##4, x##5, x##6, x##7, x##8, x##9,
 #define LIM2(x) LIM1(x##0) LIM1(x##1) LIM1(x##2) LIM1(x##3) LIM1(x##4) \
Index: gcc/testsuite/gcc.c-torture/compile/pr60655-1.c
===================================================================
--- gcc/testsuite/gcc.c-torture/compile/pr60655-1.c.orig
+++ gcc/testsuite/gcc.c-torture/compile/pr60655-1.c
@@ -1,4 +1,4 @@ 
-/* { dg-options "-fdata-sections" { target { ! { { hppa*-*-hpux* } && { ! lp64 } } } } } */
+/* { dg-options "-fdata-sections" { target { { ! { { hppa*-*-hpux* } && { ! lp64 } } } && { ! nvptx-*-* } } } } */
 
 typedef unsigned char unit;
 typedef unit *unitptr;
Index: gcc/testsuite/gcc.c-torture/compile/pr34334.c
===================================================================
--- gcc/testsuite/gcc.c-torture/compile/pr34334.c.orig
+++ gcc/testsuite/gcc.c-torture/compile/pr34334.c
@@ -1,3 +1,4 @@ 
+/* { dg-skip-if "ptxas times out" { nvptx-*-* } { "*" } { "-O0" } } */
 __extension__ typedef __SIZE_TYPE__ size_t;
 __extension__ typedef long long int __quad_t;
 __extension__ typedef unsigned int __mode_t;
Index: gcc/testsuite/gcc.c-torture/compile/pr37056.c
===================================================================
--- gcc/testsuite/gcc.c-torture/compile/pr37056.c.orig
+++ gcc/testsuite/gcc.c-torture/compile/pr37056.c
@@ -1,3 +1,4 @@ 
+/* { dg-skip-if "ptxas times out" { nvptx-*-* } { "-O2" "-Os" } { "" } } */
 extern void abort (void);
 
 static union {
Index: gcc/testsuite/gcc.c-torture/compile/pr39423-1.c
===================================================================
--- gcc/testsuite/gcc.c-torture/compile/pr39423-1.c.orig
+++ gcc/testsuite/gcc.c-torture/compile/pr39423-1.c
@@ -1,4 +1,5 @@ 
 /* PR target/39423 */
+/* { dg-skip-if "ptxas times out" { nvptx-*-* } { "-O2" } { "" } } */
 
 int
 foo (const char *name, int nmlen, char *flags)
Index: gcc/testsuite/gcc.c-torture/compile/pr42717.c
===================================================================
--- gcc/testsuite/gcc.c-torture/compile/pr42717.c.orig
+++ gcc/testsuite/gcc.c-torture/compile/pr42717.c
@@ -1,3 +1,4 @@ 
+/* { dg-xfail-if "ptxas crashes" { nvptx-*-* } { "-O0" } { "" } } */
 static signed char
 foo (signed char si1, unsigned char si2)
 {
Index: gcc/testsuite/gcc.c-torture/compile/pr46534.c
===================================================================
--- gcc/testsuite/gcc.c-torture/compile/pr46534.c.orig
+++ gcc/testsuite/gcc.c-torture/compile/pr46534.c
@@ -1,4 +1,4 @@ 
-/* { dg-skip-if "too big" { avr-*-* pdp11-*-* } { "*" } { "" } } */
+/* { dg-skip-if "too big" { avr-*-* nvptx-*-* pdp11-*-* } { "*" } { "" } } */
 /* PR middle-end/46534 */
 
 extern int printf (const char *, ...);
Index: gcc/testsuite/gcc.c-torture/compile/pr49049.c
===================================================================
--- gcc/testsuite/gcc.c-torture/compile/pr49049.c.orig
+++ gcc/testsuite/gcc.c-torture/compile/pr49049.c
@@ -1,3 +1,5 @@ 
+/* { dg-skip-if "ptxas times out" { nvptx-*-* } { "-Os" } { "" } } */
+
 __extension__ typedef unsigned long long int uint64_t;
 
 static int
Index: gcc/testsuite/gcc.c-torture/compile/pr59417.c
===================================================================
--- gcc/testsuite/gcc.c-torture/compile/pr59417.c.orig
+++ gcc/testsuite/gcc.c-torture/compile/pr59417.c
@@ -1,4 +1,5 @@ 
 /* PR tree-optimization/59417 */
+/* { dg-skip-if "ptxas times out" { nvptx-*-* } { "-O1" "-O2" "-Os" } { "" } } */
 
 int a, b, d;
 short c;
Index: gcc/testsuite/gcc.c-torture/compile/pr61684.c
===================================================================
--- gcc/testsuite/gcc.c-torture/compile/pr61684.c.orig
+++ gcc/testsuite/gcc.c-torture/compile/pr61684.c
@@ -1,4 +1,5 @@ 
 /* PR tree-optimization/61684 */
+/* { dg-xfail-if "ptxas crashes" { nvptx-*-* } { "*" } { "-O0" "-O1" "-Os" } } */
 
 int a, c;
 static int *b = 0;
Index: gcc/testsuite/gcc.c-torture/execute/pr20601-1.c
===================================================================
--- gcc/testsuite/gcc.c-torture/execute/pr20601-1.c.orig
+++ gcc/testsuite/gcc.c-torture/execute/pr20601-1.c
@@ -1,4 +1,5 @@ 
 /* PR tree-optimization/20601 */
+/* { dg-xfail-if "ptxas crashes" { nvptx-*-* } { "-O1" } { "" } } */
 extern void abort (void);
 extern void exit (int);
 
Index: gcc/testsuite/gcc.c-torture/execute/pr59221.c
===================================================================
--- gcc/testsuite/gcc.c-torture/execute/pr59221.c.orig
+++ gcc/testsuite/gcc.c-torture/execute/pr59221.c
@@ -1,3 +1,4 @@ 
+/* { dg-xfail-if "ptxas crashes" { nvptx-*-* } { "*" } { "-O0" "-Os" } } */
 
 
 int a = 1, b, d;
Index: gcc/testsuite/gcc.c-torture/compile/20060208-1.c
===================================================================
--- gcc/testsuite/gcc.c-torture/compile/20060208-1.c.orig
+++ gcc/testsuite/gcc.c-torture/compile/20060208-1.c
@@ -1,4 +1,5 @@ 
 /* PR middle-end/26092 */
+/* { dg-skip-if "can't take address of malloc" { nvptx-*-* } { "*" } { "" } } */
 typedef __SIZE_TYPE__ size_t;
 extern void *malloc (size_t);
 
Index: gcc/testsuite/gcc.c-torture/compile/20080721-1.c
===================================================================
--- gcc/testsuite/gcc.c-torture/compile/20080721-1.c.orig
+++ gcc/testsuite/gcc.c-torture/compile/20080721-1.c
@@ -1,3 +1,4 @@ 
+/* { dg-skip-if "can't read function data" { nvptx-*-* } { "*" } { "" } } */
 void foo(void);
 void bar(void);
 
Index: gcc/testsuite/gcc.c-torture/compile/920501-4.c
===================================================================
--- gcc/testsuite/gcc.c-torture/compile/920501-4.c.orig
+++ gcc/testsuite/gcc.c-torture/compile/920501-4.c
@@ -1,4 +1,5 @@ 
 /* { dg-do assemble } */
+/* { dg-skip-if "ptxas times out" { nvptx-*-* } { "-O1" } { "" } } */
 
 foo ()
 {
Index: gcc/testsuite/gcc.c-torture/compile/921011-1.c
===================================================================
--- gcc/testsuite/gcc.c-torture/compile/921011-1.c.orig
+++ gcc/testsuite/gcc.c-torture/compile/921011-1.c
@@ -1,3 +1,5 @@ 
+/* { dg-skip-if "ptxas times out" { nvptx-*-* } { "-O1" } { "" } } */
+
 void
 fun (nb)
      int nb;
Index: gcc/testsuite/gcc.c-torture/execute/20101011-1.c
===================================================================
--- gcc/testsuite/gcc.c-torture/execute/20101011-1.c.orig
+++ gcc/testsuite/gcc.c-torture/execute/20101011-1.c
@@ -71,6 +71,9 @@  __aeabi_idiv0 (int return_value)
   /* Nios II requires both hardware support and user configuration to
      raise an exception on divide by zero.  */
 # define DO_TEST 0
+#elif defined (__nvptx__)
+/* There isn't even a signal function.  */
+# define DO_TEST 0
 #else
 # define DO_TEST 1
 #endif
Index: gcc/testsuite/gcc.c-torture/execute/pr52129.c
===================================================================
--- gcc/testsuite/gcc.c-torture/execute/pr52129.c.orig
+++ gcc/testsuite/gcc.c-torture/execute/pr52129.c
@@ -1,4 +1,5 @@ 
 /* PR target/52129 */
+/* { dg-xfail-if "ptxas crashes" { nvptx-*-* } { "-O1" } { "" } } */
 
 extern void abort (void);
 struct S { void *p; unsigned int q; };
Index: gcc/testsuite/gcc.dg/20020310-1.c
===================================================================
--- gcc/testsuite/gcc.dg/20020310-1.c.orig
+++ gcc/testsuite/gcc.dg/20020310-1.c
@@ -3,6 +3,7 @@ 
 /* { dg-do run } */
 /* { dg-options "-O2" } */
 /* { dg-options "-O2 -mtune=i586" { target { { i?86-*-* x86_64-*-* } && ia32 } } } */
+/* { dg-xfail-if "doesn't support self-referential initializers" { nvptx-*-* } } */
 
 struct A
 {
Index: gcc/testsuite/gcc.dg/20020312-2.c
===================================================================
--- gcc/testsuite/gcc.dg/20020312-2.c.orig
+++ gcc/testsuite/gcc.dg/20020312-2.c
@@ -104,6 +104,8 @@  extern void abort (void);
 /* No pic register.  */
 #elif defined(__MSP430__)
 /* No pic register.  */
+#elif defined (__nvptx__)
+/* No pic register.  */
 #else
 # error "Modify the test for your target."
 #endif
Index: gcc/testsuite/gcc.dg/20040813-1.c
===================================================================
--- gcc/testsuite/gcc.dg/20040813-1.c.orig
+++ gcc/testsuite/gcc.dg/20040813-1.c
@@ -2,7 +2,7 @@ 
 /* Contributed by Devang Patel  <dpatel@apple.com>  */
 
 /* { dg-do compile } */
-/* { dg-skip-if "No stabs" { aarch64*-*-* mmix-*-* *-*-aix* alpha*-*-* hppa*64*-*-* ia64-*-* tile*-*-* nios2-*-* *-*-vxworks* } { "*" } { "" } } */
+/* { dg-skip-if "No stabs" { aarch64*-*-* mmix-*-* *-*-aix* alpha*-*-* hppa*64*-*-* ia64-*-* tile*-*-* nios2-*-* *-*-vxworks* nvptx-*-* } { "*" } { "" } } */
 /* { dg-options "-gstabs" } */
 
 int
Index: gcc/testsuite/gcc.dg/pr28755.c
===================================================================
--- gcc/testsuite/gcc.dg/pr28755.c.orig
+++ gcc/testsuite/gcc.dg/pr28755.c
@@ -3,6 +3,7 @@ 
 /* { dg-require-effective-target ptr32plus } */
 /* { dg-options "-Os" } */
 /* { dg-final { scan-assembler-times "2112543726\|7deadbee" 2 } } */
+/* { dg-skip-if "integer output is different here" { nvptx-*-* } } */
 
 struct S
 {
Index: gcc/testsuite/gcc.dg/pr44194-1.c
===================================================================
--- gcc/testsuite/gcc.dg/pr44194-1.c.orig
+++ gcc/testsuite/gcc.dg/pr44194-1.c
@@ -1,4 +1,4 @@ 
-/* { dg-do compile { target { { { { { { { i?86-*-* x86_64-*-* } && x32 } || lp64 } && { ! s390*-*-* } } && { ! hppa*64*-*-* } } && { ! alpha*-*-* } } && { { ! powerpc*-*-linux* } || powerpc_elfv2 } } } } */
+/* { dg-do compile { target { { { { { { { i?86-*-* x86_64-*-* } && x32 } || lp64 } && { ! s390*-*-* } } && { ! hppa*64*-*-* } } && { ! alpha*-*-* } } && { { ! powerpc*-*-linux* } || powerpc_elfv2 } && { ! nvptx-*-* } } } } */
 /* { dg-options "-O2 -fdump-rtl-dse1 -fdump-rtl-final" } */
 
 /* Restrict to 64-bit targets since 32-bit targets usually return small
Index: gcc/testsuite/gcc.dg/torture/pr36400.c
===================================================================
--- gcc/testsuite/gcc.dg/torture/pr36400.c.orig
+++ gcc/testsuite/gcc.dg/torture/pr36400.c
@@ -14,4 +14,4 @@  void baz()
   barptr->some_string = "Everything OK";
 }
 
-/* { dg-final { scan-assembler "Everything OK" } } */
+/* { dg-final { scan-assembler "Everything OK" { xfail nvptx-*-* } } } */
Index: gcc/testsuite/gcc.dg/const-elim-2.c
===================================================================
--- gcc/testsuite/gcc.dg/const-elim-2.c.orig
+++ gcc/testsuite/gcc.dg/const-elim-2.c
@@ -1,7 +1,7 @@ 
 /* The string constant in this test case should be emitted exactly once.  */
 /* { dg-do compile } */
 /* { dg-options "-O2" } */
-/* { dg-final { scan-assembler-times "hi there" 1 } } */
+/* { dg-final { scan-assembler-times "hi there" 1 { xfail nvptx-*-* } } } */
 
 static inline int returns_23() { return 23; }