diff mbox

[testsuite,committed] ad PR52641: More case for int32plus, size32plus, etc.

Message ID 1aa043cf-aa87-25e5-5739-5f5644022cd3@gjlay.de
State New
Headers show

Commit Message

Georg-Johann Lay Dec. 22, 2016, 12:47 p.m. UTC
http://gcc.gnu.org/r243885

Committed this addition of restrictions, mostly for 16-bit int or
16-bit size targtes.

Johann


gcc/testsuite/
	PR testsuite/52641
	* gcc.dg/pr35258.c (main) <temp>: Use an integer value that has
	at least a size of 4.
	* gcc.dg/Walloca-1.c (foo1): Use alloca with 30000 (instead of 90000).
	* gcc.dg/graphite/pr46185.c: Require int32plus, size32plus.
	* gcc.dg/graphite/isl-ast-op-select.c: Same.
	* gcc.dg/graphite/pr42205-1.c: Require int32plus.
	* gcc.dg/graphite/pr42221.c: Same.
	* gcc.dg/tree-ssa/pr65136.c: Same.
	* gcc.dg/tree-ssa/sra-20.c: Same.
	* gcc.dg/graphite/scop-0.c: Require size32plus.
	* gcc.dg/graphite/scop-22.c: Same.
	* gcc.dg/graphite/scop-3.c: Same.
	* gcc.dg/graphite/scop-dsyr2k.c: Same.
	* gcc.dg/graphite/scop-dsyrk.c: Same.
	* gcc.dg/graphite/scop-mvt.c: Same.
	* gcc.dg/graphite/scop-sor.c: Same.
	* gcc.dg/tree-ssa/pr68529-3.c: Same.
	* gcc.dg/tree-ssa/pr66449.c [long != pointer]: Use intptr_t if.
	* gcc.dg/tree-ssa/pr70919.c [int <= 2]: Use 32-bit int as needed.
	* gcc.dg/tree-ssa/pr71408.c: Same.
	* gcc.dg/tree-ssa/ssa-dom-thread-8.c (f2) [long != pointer]: Use
	uintptr_t instead of long for int representation of address.
	* gcc.dg/tree-ssa/tailcall-7-run.c: Require trampolines.
diff mbox

Patch

Index: gcc.dg/Walloca-1.c
===================================================================
--- gcc.dg/Walloca-1.c	(revision 243884)
+++ gcc.dg/Walloca-1.c	(working copy)
@@ -27,7 +27,7 @@  void foo1 (size_t len, size_t len2, size
   // { dg-warning "unbounded use of 'alloca'" "" { target { ! lp64 } } 26 }
   useit (s);
 
-  s = alloca(90000);		/* { dg-warning "is too large" } */
+  s = alloca (30000);		/* { dg-warning "is too large" } */
   useit (s);
 
   if (len < 2000)
Index: gcc.dg/graphite/isl-ast-op-select.c
===================================================================
--- gcc.dg/graphite/isl-ast-op-select.c	(revision 243884)
+++ gcc.dg/graphite/isl-ast-op-select.c	(working copy)
@@ -1,3 +1,5 @@ 
+/* { dg-require-effective-target size32plus } */
+/* { dg-require-effective-target int32plus } */
 /* { dg-options "-O2 -floop-nest-optimize" } */
 
 static void kernel_gemm(int ni, int nj, int nk, double alpha, double beta, double C[1024][1024], double A[1024][1024], double B[1024][1024])
Index: gcc.dg/graphite/pr42205-1.c
===================================================================
--- gcc.dg/graphite/pr42205-1.c	(revision 243884)
+++ gcc.dg/graphite/pr42205-1.c	(working copy)
@@ -1,3 +1,4 @@ 
+/* { dg-require-effective-target int32plus } */
 /* { dg-options "-O1 -ffast-math -floop-interchange" } */
 
 int adler32(int adler, char *buf, int n)
Index: gcc.dg/graphite/pr42221.c
===================================================================
--- gcc.dg/graphite/pr42221.c	(revision 243884)
+++ gcc.dg/graphite/pr42221.c	(working copy)
@@ -1,3 +1,4 @@ 
+/* { dg-require-effective-target int32plus } */
 /* { dg-options "-Os -fgraphite-identity" } */
 
 static void b2w(unsigned int *out, const unsigned char *in, unsigned int len)
Index: gcc.dg/graphite/pr46185.c
===================================================================
--- gcc.dg/graphite/pr46185.c	(revision 243884)
+++ gcc.dg/graphite/pr46185.c	(working copy)
@@ -1,4 +1,6 @@ 
 /* { dg-do run } */
+/* { dg-require-effective-target size32plus } */
+/* { dg-require-effective-target int32plus } */
 /* { dg-options "-O2 -floop-interchange -ffast-math -fno-ipa-cp" } */
 
 #define DEBUG 0
Index: gcc.dg/graphite/scop-0.c
===================================================================
--- gcc.dg/graphite/scop-0.c	(revision 243884)
+++ gcc.dg/graphite/scop-0.c	(working copy)
@@ -1,3 +1,4 @@ 
+/* { dg-require-effective-target size32plus } */
 int foo (void);
 void bar (void);
 
Index: gcc.dg/graphite/scop-22.c
===================================================================
--- gcc.dg/graphite/scop-22.c	(revision 243884)
+++ gcc.dg/graphite/scop-22.c	(working copy)
@@ -1,3 +1,4 @@ 
+/* { dg-require-effective-target size32plus } */
 double u[1782225];
 
 void foo(int N, int *res)
Index: gcc.dg/graphite/scop-3.c
===================================================================
--- gcc.dg/graphite/scop-3.c	(revision 243884)
+++ gcc.dg/graphite/scop-3.c	(working copy)
@@ -1,3 +1,4 @@ 
+/* { dg-require-effective-target size32plus } */
 int toto()
 {
   int i, j, k;
Index: gcc.dg/graphite/scop-dsyr2k.c
===================================================================
--- gcc.dg/graphite/scop-dsyr2k.c	(revision 243884)
+++ gcc.dg/graphite/scop-dsyr2k.c	(working copy)
@@ -1,3 +1,4 @@ 
+/* { dg-require-effective-target size32plus } */
 #define NMAX 3000
 
 static double a[NMAX][NMAX], b[NMAX][NMAX], c[NMAX][NMAX];
Index: gcc.dg/graphite/scop-dsyrk.c
===================================================================
--- gcc.dg/graphite/scop-dsyrk.c	(revision 243884)
+++ gcc.dg/graphite/scop-dsyrk.c	(working copy)
@@ -1,3 +1,4 @@ 
+/* { dg-require-effective-target size32plus } */
 #define NMAX 3000
 #define MEASURE_TIME 1
 
Index: gcc.dg/graphite/scop-mvt.c
===================================================================
--- gcc.dg/graphite/scop-mvt.c	(revision 243884)
+++ gcc.dg/graphite/scop-mvt.c	(working copy)
@@ -1,3 +1,4 @@ 
+/* { dg-require-effective-target size32plus } */
 #define NMAX 2000
 
 static double x1[NMAX], x2[NMAX], a[NMAX][NMAX], y_1[NMAX], y_2[NMAX];
Index: gcc.dg/graphite/scop-sor.c
===================================================================
--- gcc.dg/graphite/scop-sor.c	(revision 243884)
+++ gcc.dg/graphite/scop-sor.c	(working copy)
@@ -1,3 +1,4 @@ 
+/* { dg-require-effective-target size32plus } */
 #define SIZE 10000
 
 static double P[SIZE][SIZE];
Index: gcc.dg/pr35258.c
===================================================================
--- gcc.dg/pr35258.c	(revision 243884)
+++ gcc.dg/pr35258.c	(working copy)
@@ -10,7 +10,11 @@  char str[9] = "1234";
 void
 bar (void)
 {
+#if __SIZEOF_INT__ >= 4
   unsigned int temp;
+#else
+  __UINT32_TYPE__ temp;
+#endif
   char *p = &str[2];
 
   memcpy (&temp, &str[1], 4);
Index: gcc.dg/tree-ssa/pr65136.c
===================================================================
--- gcc.dg/tree-ssa/pr65136.c	(revision 243884)
+++ gcc.dg/tree-ssa/pr65136.c	(working copy)
@@ -1,4 +1,4 @@ 
-/* { dg-do compile } */
+/* { dg-do compile { target int32plus } } */
 /* { dg-options "-O2 -fdump-rtl-expand-details" } */
 
 int foo(unsigned int cc )
Index: gcc.dg/tree-ssa/pr66449.c
===================================================================
--- gcc.dg/tree-ssa/pr66449.c	(revision 243884)
+++ gcc.dg/tree-ssa/pr66449.c	(working copy)
@@ -1,6 +1,10 @@ 
 /* { dg-do compile } */
 /* { dg-options "-O3" } */
 
+#if __SIZEOF_POINTER__ != __SIZEOF_LONG__
+#define long __INTPTR_TYPE__
+#endif
+
 void *fn1(void *p1, void *p2, long p3)
 {
   long a = (long)p1, b = (long)p2, c = p3;
Index: gcc.dg/tree-ssa/pr68529-3.c
===================================================================
--- gcc.dg/tree-ssa/pr68529-3.c	(revision 243884)
+++ gcc.dg/tree-ssa/pr68529-3.c	(working copy)
@@ -1,4 +1,4 @@ 
-/* { dg-do compile } */
+/* { dg-do compile { target size32plus } } */
 /* { dg-options "-O2 -ftree-loop-distribution -ftree-loop-distribute-patterns -fdump-tree-ldist-details" } */
 
 void bar(char *s);
Index: gcc.dg/tree-ssa/pr70919.c
===================================================================
--- gcc.dg/tree-ssa/pr70919.c	(revision 243884)
+++ gcc.dg/tree-ssa/pr70919.c	(working copy)
@@ -4,7 +4,11 @@ 
 #pragma pack(1)
 struct S0
 {
+#if __SIZEOF_INT >= 4
   int f0:24;
+#else
+  __INT32_TYPE__ f0:24;
+#endif
 };
 
 struct S1
Index: gcc.dg/tree-ssa/pr71408.c
===================================================================
--- gcc.dg/tree-ssa/pr71408.c	(revision 243884)
+++ gcc.dg/tree-ssa/pr71408.c	(working copy)
@@ -1,6 +1,8 @@ 
 /* PR middle-end/71408 */
 /* { dg-do run } */
 /* { dg-options "-Os" } */
+
+#if __SIZEOF_INT__ >= 4
 unsigned a, b;
 
 struct S0
@@ -8,6 +10,15 @@  struct S0
   int f1:18;
   unsigned f3:4;
 };
+#else
+__UINT32_TYPE__ a, b;
+
+struct S0
+{
+  __INT32_TYPE__ f1:18;
+  unsigned f3:4;
+};
+#endif
 
 void fn1 ()
 {
Index: gcc.dg/tree-ssa/sra-20.c
===================================================================
--- gcc.dg/tree-ssa/sra-20.c	(revision 243884)
+++ gcc.dg/tree-ssa/sra-20.c	(working copy)
@@ -1,4 +1,4 @@ 
-/* { dg-do compile } */
+/* { dg-do compile { target int32plus } } */
 /* { dg-options "-O1 -Wall" } */
 /* PR/70013, SRA of constant-pool loads removes initialization of part of d.  */
 #pragma pack (1)
Index: gcc.dg/tree-ssa/ssa-dom-thread-8.c
===================================================================
--- gcc.dg/tree-ssa/ssa-dom-thread-8.c	(revision 243884)
+++ gcc.dg/tree-ssa/ssa-dom-thread-8.c	(working copy)
@@ -300,7 +300,11 @@  f2 (struct C *x)
 	  else
 	    {
 	      o = f2 (x);
+#if __SIZEOF_POINTER__ == __SIZEOF_LONG__
 	      if (((unsigned long) o > (unsigned long) -4000L))
+#elif __SIZEOF_POINTER__ == __SIZEOF_INT__
+	  if (((__UINTPTR_TYPE__) o > (__UINTPTR_TYPE__) -4000U))
+#endif
 		{
 		  e = 5;
 		  goto out;
@@ -384,7 +388,11 @@  f2 (struct C *x)
 	  break;
 	case 19:
 	  o = f2 (x);
+#if __SIZEOF_POINTER__ == __SIZEOF_LONG__
 	  if (((unsigned long) o > (unsigned long) -4000L))
+#elif __SIZEOF_POINTER__ == __SIZEOF_INT__
+	  if (((__UINTPTR_TYPE__) o > (__UINTPTR_TYPE__) -4000U))
+#endif
 	    {
 	      e = 6;
 	      goto out;
Index: gcc.dg/tree-ssa/tailcall-7-run.c
===================================================================
--- gcc.dg/tree-ssa/tailcall-7-run.c	(revision 243884)
+++ gcc.dg/tree-ssa/tailcall-7-run.c	(working copy)
@@ -1,4 +1,4 @@ 
-/* { dg-do run } */
+/* { dg-do run { target trampolines } } */
 /* { dg-options "-O2" } */
 /* { dg-additional-sources "tailcall-7.c" } */