OSDN Git Service

* decl2.c (maybe_emit_vtables): Produce same comdat group when outputting
authorhubicka <hubicka@138bc75d-0d04-0410-961f-82ee72b054a4>
Sat, 22 May 2010 14:48:40 +0000 (14:48 +0000)
committerhubicka <hubicka@138bc75d-0d04-0410-961f-82ee72b054a4>
Sat, 22 May 2010 14:48:40 +0000 (14:48 +0000)
commit933b10c65ef30c7ad6d743a451953289b00a4215
treec6700f8a244d310bf2e05c428d125caeecbd1ffe
parent240a46818514dd43ddb46b9e5630eacb75ca96ba
* decl2.c (maybe_emit_vtables): Produce same comdat group when outputting
comdat vtables.
(cxx_callgraph_analyze_expr): Remove code marking vtables needed.

* cgraph.h (struct varpool_node): Add same_comdat_group.
* lto-cgrpah.c (lto_output_varpool_node): Output same_comdat_group
pointer.
(output_varpool): Update call of lto_output_varpool_node.
(input_varpool): Read same_comdat_group pointer.
(input_varpool_1): Fixup same_comdat_group pointer.
* ipa.c (cgraph_remove_unreachable_nodes): WHen one of same comdat
group is needed, all are.
* varpool.c (varpool_remove_node): Remove node from same comdat group
linklist too.
(varpool_analyze_pending_decls): Walk same comdat groups.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@159699 138bc75d-0d04-0410-961f-82ee72b054a4
gcc/ChangeLog
gcc/cgraph.h
gcc/cp/ChangeLog
gcc/cp/decl2.c
gcc/ipa.c
gcc/lto-cgraph.c
gcc/varpool.c