diff mbox series

Another testcase for PR82436

Message ID alpine.LSU.2.20.1710251158230.8202@zhemvz.fhfr.qr
State New
Headers show
Series Another testcase for PR82436 | expand

Commit Message

Richard Biener Oct. 25, 2017, 9:59 a.m. UTC
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.
diff mbox series

Patch

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;
+	}
+    }
+}