This is the mail archive of the gcc-patches@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[PATCH] Another testcase for PR82436


The original one only failed with -m32, this one failed with 64bits
as well.

Tested on x86_64-unknown-linux-gnu, applied.

Richard.

2017-10-25  Richard Biener  <rguenther@suse.de>

	PR tree-optimization/82436
	* gcc.dg/torture/pr82436-2.c: New testcase.

Index: gcc/testsuite/gcc.dg/torture/pr82436-2.c
===================================================================
--- gcc/testsuite/gcc.dg/torture/pr82436-2.c	(nonexistent)
+++ gcc/testsuite/gcc.dg/torture/pr82436-2.c	(working copy)
@@ -0,0 +1,45 @@
+/* { dg-do compile } */
+
+enum
+{
+  a, b, c, d,  e,  f,  g,  h,  j,  k
+};
+
+int l;
+void m (short *s)
+{
+  short n, o, p;
+  float(*q)[k];
+  int r, i;
+  while (l > 0)
+    r = l;
+  for (;;)
+    {
+      i = 0;
+      for (; i < r; i++)
+	{
+	    {
+	      float ab = q[i][a];
+	      int i = ab;
+	      p = i;
+	    }
+	  ((short *) s)[0] = p;
+	    {
+	      float ab = q[i][b];
+	      int i = ab;
+	      o = i;
+	    }
+	  ((short *) s)[1] = o;
+	    {
+	      float ab = q[i][f];
+	      int i = ab;
+	      n = i;
+	    }
+	  ((short *) s)[2] = n;
+	  float ab = q[i][g];
+	  int i = ab;
+	  ((short *) s)[3] = i;
+	  s = (short *) s + 4;
+	}
+    }
+}


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]