re PR tree-optimization/23777 (Does not remove all references to var)
authorRichard Guenther <rguenther@suse.de>
Mon, 5 Mar 2007 16:55:23 +0000 (16:55 +0000)
committerRichard Biener <rguenth@gcc.gnu.org>
Mon, 5 Mar 2007 16:55:23 +0000 (16:55 +0000)
2007-03-05  Richard Guenther  <rguenther@suse.de>

PR tree-optimization/23777
* gcc.dg/tree-ssa/pr23777.c: New testcase.

From-SVN: r122558

gcc/testsuite/ChangeLog
gcc/testsuite/gcc.dg/tree-ssa/pr23777.c [new file with mode: 0644]

index 84c2d21496510c625e5ccf02f0d26db45f79c32c..70c78dc4d489dad1506c6b4a384ba4452194fa97 100644 (file)
@@ -1,3 +1,8 @@
+2007-03-05  Richard Guenther  <rguenther@suse.de>
+
+       PR tree-optimization/23777
+       * gcc.dg/tree-ssa/pr23777.c: New testcase.
+
 2007-03-04  Manuel Lopez-Ibanez  <manu@gcc.gnu.org>
 
        PR other/30465
diff --git a/gcc/testsuite/gcc.dg/tree-ssa/pr23777.c b/gcc/testsuite/gcc.dg/tree-ssa/pr23777.c
new file mode 100644 (file)
index 0000000..c2ad9b7
--- /dev/null
@@ -0,0 +1,19 @@
+/* { dg-do compile } */
+/* { dg-options "-O2 -fdump-tree-optimized" } */
+
+extern void f(char *const *);
+void g (char **o)
+{
+  static const char *const multilib_exclusions_raw[] = { 0 };
+  const char *const *q = multilib_exclusions_raw;
+
+  f (o);
+  while (*q++)
+    f (o);
+}
+
+/* The last DCE pass is able to remove the load from
+    multilib_exclusions_raw.  */
+
+/* { dg-final { scan-tree-dump-not "multilib_exclusions_raw" "optimized" } } */
+/* { dg-final { cleanup-tree-dump "optimized" } } */