summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorrguenth <rguenth@138bc75d-0d04-0410-961f-82ee72b054a4>2009-10-16 14:42:47 +0000
committerrguenth <rguenth@138bc75d-0d04-0410-961f-82ee72b054a4>2009-10-16 14:42:47 +0000
commitfef144401409894f6457aae538e0b4c5e3a72c4c (patch)
tree61a46d72138fc2e71b8068c0db576c4f51fb4fb4
parentb787522e31e6e673230f96fa94480d6d8abd7dd7 (diff)
downloadgcc-fef144401409894f6457aae538e0b4c5e3a72c4c.tar.gz
2009-10-16 Richard Guenther <rguenther@suse.de>
PR lto/41598 * gcc.dg/lto/20091016-1_0.c: New testcase. * gcc.dg/lto/20091016-1_1.c: Likewise. * gcc.dg/lto/20091016-1_a.h: Likewise. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@152904 138bc75d-0d04-0410-961f-82ee72b054a4
-rw-r--r--gcc/testsuite/ChangeLog7
-rw-r--r--gcc/testsuite/gcc.dg/lto/20091016-1_0.c13
-rw-r--r--gcc/testsuite/gcc.dg/lto/20091016-1_1.c18
-rw-r--r--gcc/testsuite/gcc.dg/lto/20091016-1_a.h6
4 files changed, 44 insertions, 0 deletions
diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog
index e21a4e21772..08f34e5c24f 100644
--- a/gcc/testsuite/ChangeLog
+++ b/gcc/testsuite/ChangeLog
@@ -1,5 +1,12 @@
2009-10-16 Richard Guenther <rguenther@suse.de>
+ PR lto/41598
+ * gcc.dg/lto/20091016-1_0.c: New testcase.
+ * gcc.dg/lto/20091016-1_1.c: Likewise.
+ * gcc.dg/lto/20091016-1_a.h: Likewise.
+
+2009-10-16 Richard Guenther <rguenther@suse.de>
+
PR lto/41715
* gfortran.dg/lto/20091015-1_0.f: New testcase.
* gfortran.dg/lto/20091015-1_1.f: Likewise.
diff --git a/gcc/testsuite/gcc.dg/lto/20091016-1_0.c b/gcc/testsuite/gcc.dg/lto/20091016-1_0.c
new file mode 100644
index 00000000000..942c5c6c0a4
--- /dev/null
+++ b/gcc/testsuite/gcc.dg/lto/20091016-1_0.c
@@ -0,0 +1,13 @@
+/* { dg-lto-do link } */
+/* { dg-lto-options {{-fPIC -shared -O2 -flto}} } */
+
+typedef struct VEC_constructor_elt_gc { } VEC_constructor_elt_gc;
+#include "20091016-1_a.h"
+struct stmt_tree_s {
+ tree x_cur_stmt_list;
+};
+void *add_stmt (struct stmt_tree_s *x)
+{
+ return &x->x_cur_stmt_list;
+}
+
diff --git a/gcc/testsuite/gcc.dg/lto/20091016-1_1.c b/gcc/testsuite/gcc.dg/lto/20091016-1_1.c
new file mode 100644
index 00000000000..06389b8e309
--- /dev/null
+++ b/gcc/testsuite/gcc.dg/lto/20091016-1_1.c
@@ -0,0 +1,18 @@
+typedef struct VEC_constructor_elt_gcx { } VEC_constructor_elt_gc;
+#include "20091016-1_a.h"
+struct gcc_target {
+ void (* builtin_vec_perm) (tree*);
+};
+extern struct gcc_target targetm;
+void dwarf2out_begin_prologue (tree t)
+{
+ (*targetm.builtin_vec_perm) (&t);
+}
+struct die_arg_entry_struct {
+ tree arg;
+};
+void *gt_pch_p_20VEC_die_arg_entry_gc (struct die_arg_entry_struct *vec)
+{
+ return &(vec->arg);
+}
+
diff --git a/gcc/testsuite/gcc.dg/lto/20091016-1_a.h b/gcc/testsuite/gcc.dg/lto/20091016-1_a.h
new file mode 100644
index 00000000000..8eefed5cfad
--- /dev/null
+++ b/gcc/testsuite/gcc.dg/lto/20091016-1_a.h
@@ -0,0 +1,6 @@
+typedef union tree_node *tree;
+union tree_node {
+ tree * use;
+ VEC_constructor_elt_gc *elts;
+};
+