Revert:
commitc7be6601d994f4849308cd7e76445914c1858606
authorhubicka <hubicka@138bc75d-0d04-0410-961f-82ee72b054a4>
Mon, 30 Jun 2014 22:18:25 +0000 (30 22:18 +0000)
committerhubicka <hubicka@138bc75d-0d04-0410-961f-82ee72b054a4>
Mon, 30 Jun 2014 22:18:25 +0000 (30 22:18 +0000)
treece37885e67fa8bfe2a2d91dc28440fe76b1ba05b
parenta34097c8709c6977c3eeb3f5d89a5b75c59360b7
Revert:
* tree-streamer-out.c (pack_ts_type_common_value_fields): Stream if type
is complete.
(write_ts_type_common_tree_pointers): Do not stream fields not set for incomplete
types; do not stream duplicated fields for variants; sanity check that variant
and type match.
(write_ts_type_non_common_tree_pointers): Likewise.
* tree-streamer-in.c (unpack_ts_type_common_value_fields): Mark in TYPE_SIZE whether
type is complete.
(lto_input_ts_type_common_tree_pointers): Do same changes as in
write_ts_type_common_tree_pointers
(lto_input_ts_type_non_common_tree_pointers): Likewise.

* lto.c (lto_copy_fields_not_streamed): New function.
(compare_tree_sccs_1): Do not compare fields shared in between type
and variant.
(lto_read_decls): Fixup types first before inserting into hash.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@212179 138bc75d-0d04-0410-961f-82ee72b054a4
gcc/ChangeLog
gcc/lto/ChangeLog
gcc/lto/lto.c
gcc/tree-streamer-in.c
gcc/tree-streamer-out.c