This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
[PATCH] Testcase for PR55964 from PR56097
- From: Richard Biener <rguenther at suse dot de>
- To: gcc-patches at gcc dot gnu dot org
- Date: Wed, 3 Apr 2013 12:36:18 +0200 (CEST)
- Subject: [PATCH] Testcase for PR55964 from PR56097
Slightly different and less arcane.
Tested on x86_64-unknown-linux-gnu, applied to trunk and branch.
Richard.
2013-04-03 Richard Biener <rguenther@suse.de>
PR tree-optimization/55964
* gcc.dg/torture/pr55964-2.c: New testcase.
Index: gcc/testsuite/gcc.dg/torture/pr55964-2.c
===================================================================
--- gcc/testsuite/gcc.dg/torture/pr55964-2.c (revision 0)
+++ gcc/testsuite/gcc.dg/torture/pr55964-2.c (working copy)
@@ -0,0 +1,21 @@
+/* { dg-do compile } */
+/* { dg-options "-ftree-loop-distribution -funswitch-loops" } */
+
+struct test_struct {
+ int a, b[10], c[10], d[10];
+};
+
+extern struct test_struct* new_struct;
+
+void testfunc(struct test_struct* old_struct)
+{
+ int i;
+ for (i = 0; i < 10; ++i)
+ {
+ new_struct->b[i] = old_struct ? old_struct->b[i] : -1;
+ new_struct->c[i] = old_struct ? old_struct->c[i] : 0;
+ new_struct->d[i] = old_struct ? old_struct->d[i] : 0;
+ }
+ if (old_struct)
+ old_struct->a++;
+}