diff options
author | rguenth <rguenth@138bc75d-0d04-0410-961f-82ee72b054a4> | 2011-02-18 16:24:40 +0000 |
---|---|---|
committer | rguenth <rguenth@138bc75d-0d04-0410-961f-82ee72b054a4> | 2011-02-18 16:24:40 +0000 |
commit | 30865946d5ef65f08fcce6aa00279dd3aab84533 (patch) | |
tree | c0d6c9a72292d9089ed3e3d2c09a47e56925f639 /gcc | |
parent | fb18f938f9e17cad5411f66cc15d0c6b03634932 (diff) | |
download | gcc-30865946d5ef65f08fcce6aa00279dd3aab84533.tar.gz |
2011-02-18 Richard Guenther <rguenther@suse.de>
PR lto/47798
* lto-streamer.h (lto_global_var_decls): Declare.
* lto-streamer-in.c (lto_register_var_decl_in_symtab): Register
statics for global var processing.
lto/
* lto-tree.h (lto_global_var_decls): Do not declare here.
* lto-lang.c: Include lto-streamer.h.
* Make-lang.in (lto-lang.o): Adjust dependencies.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@170274 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc')
-rw-r--r-- | gcc/ChangeLog | 7 | ||||
-rw-r--r-- | gcc/lto-streamer-in.c | 2 | ||||
-rw-r--r-- | gcc/lto-streamer.h | 1 | ||||
-rw-r--r-- | gcc/lto/ChangeLog | 7 | ||||
-rw-r--r-- | gcc/lto/Make-lang.in | 2 | ||||
-rw-r--r-- | gcc/lto/lto-lang.c | 1 | ||||
-rw-r--r-- | gcc/lto/lto-tree.h | 3 |
7 files changed, 19 insertions, 4 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 724e6edcceb..3e31b747d3e 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,5 +1,12 @@ 2011-02-18 Richard Guenther <rguenther@suse.de> + PR lto/47798 + * lto-streamer.h (lto_global_var_decls): Declare. + * lto-streamer-in.c (lto_register_var_decl_in_symtab): Register + statics for global var processing. + +2011-02-18 Richard Guenther <rguenther@suse.de> + PR tree-optimization/47737 * tree-ssa-loop-im.c (extract_true_false_args_from_phi): Fix edge dominance check. diff --git a/gcc/lto-streamer-in.c b/gcc/lto-streamer-in.c index ba48cbb3f60..1f0cf29d35a 100644 --- a/gcc/lto-streamer-in.c +++ b/gcc/lto-streamer-in.c @@ -2432,6 +2432,8 @@ lto_register_var_decl_in_symtab (struct data_in *data_in, tree decl) ASM_FORMAT_PRIVATE_NAME (label, name, DECL_UID (decl)); SET_DECL_ASSEMBLER_NAME (decl, get_identifier (label)); rest_of_decl_compilation (decl, 1, 0); + + VEC_safe_push (tree, gc, lto_global_var_decls, decl); } /* If this variable has already been declared, queue the diff --git a/gcc/lto-streamer.h b/gcc/lto-streamer.h index b82c54ede1c..d8669a21529 100644 --- a/gcc/lto-streamer.h +++ b/gcc/lto-streamer.h @@ -914,6 +914,7 @@ extern void lto_symtab_merge_cgraph_nodes (void); extern tree lto_symtab_prevailing_decl (tree decl); extern enum ld_plugin_symbol_resolution lto_symtab_get_resolution (tree decl); extern void lto_symtab_free (void); +extern GTY(()) VEC(tree,gc) *lto_global_var_decls; /* In lto-opts.c. */ diff --git a/gcc/lto/ChangeLog b/gcc/lto/ChangeLog index 3872a3584b5..e4267967a37 100644 --- a/gcc/lto/ChangeLog +++ b/gcc/lto/ChangeLog @@ -1,3 +1,10 @@ +2011-02-18 Richard Guenther <rguenther@suse.de> + + PR lto/47798 + * lto-tree.h (lto_global_var_decls): Do not declare here. + * lto-lang.c: Include lto-streamer.h. + * Make-lang.in (lto-lang.o): Adjust dependencies. + 2011-02-10 Kai Tietz <kai.tietz@onevision.com> PR lto/47241 diff --git a/gcc/lto/Make-lang.in b/gcc/lto/Make-lang.in index 16b0f35e2ad..22e13912e32 100644 --- a/gcc/lto/Make-lang.in +++ b/gcc/lto/Make-lang.in @@ -79,7 +79,7 @@ $(LTO_EXE): $(LTO_OBJS) $(BACKEND) $(LIBDEPS) lto/lto-lang.o: lto/lto-lang.c $(CONFIG_H) coretypes.h debug.h \ flags.h $(GGC_H) langhooks.h $(LANGHOOKS_DEF_H) $(SYSTEM_H) \ $(TARGET_H) $(LTO_H) $(GIMPLE_H) gtype-lto.h gt-lto-lto-lang.h \ - $(EXPR_H) + $(EXPR_H) lto-streamer.h lto/lto.o: lto/lto.c $(CONFIG_H) $(SYSTEM_H) coretypes.h $(OPTS_H) \ toplev.h $(TREE_H) $(DIAGNOSTIC_CORE_H) $(TM_H) \ $(CGRAPH_H) $(GGC_H) tree-ssa-operands.h $(TREE_PASS_H) \ diff --git a/gcc/lto/lto-lang.c b/gcc/lto/lto-lang.c index 968073ba4ef..5f157d6de06 100644 --- a/gcc/lto/lto-lang.c +++ b/gcc/lto/lto-lang.c @@ -34,6 +34,7 @@ along with GCC; see the file COPYING3. If not see #include "gimple.h" #include "diagnostic-core.h" #include "toplev.h" +#include "lto-streamer.h" static tree handle_noreturn_attribute (tree *, tree, tree, int, bool *); static tree handle_leaf_attribute (tree *, tree, tree, int, bool *); diff --git a/gcc/lto/lto-tree.h b/gcc/lto/lto-tree.h index bc77750352d..d187fe20dd3 100644 --- a/gcc/lto/lto-tree.h +++ b/gcc/lto/lto-tree.h @@ -55,7 +55,4 @@ union GTY((desc ("lto_tree_node_structure (&%h)"), desc ("tree_node_structure (&%h)"))) generic; }; -/* Vector to keep track of external variables we've seen so far. */ -extern GTY(()) VEC(tree,gc) *lto_global_var_decls; - #endif /* GCC_LTO_TREE_H */ |