diff options
author | Martin Jambor <mjambor@suse.cz> | 2014-03-25 11:57:07 +0100 |
---|---|---|
committer | Martin Jambor <jamborm@gcc.gnu.org> | 2014-03-25 11:57:07 +0100 |
commit | 4a5798de3eabbe16398c11dcdb4cead64299d212 (patch) | |
tree | 7d89766552b63f452adad8f75c44f0fc56bdae12 /gcc | |
parent | 585d00880ef6af7beb0a29cdd56396ec9d68e3cc (diff) | |
download | gcc-4a5798de3eabbe16398c11dcdb4cead64299d212.zip gcc-4a5798de3eabbe16398c11dcdb4cead64299d212.tar.gz gcc-4a5798de3eabbe16398c11dcdb4cead64299d212.tar.bz2 |
re PR ipa/59176 (ICE edge points to wrong declaration / verify_cgraph_node failed)
2014-03-25 Martin Jambor <mjambor@suse.cz>
PR ipa/59176
* lto-cgraph.c (lto_output_node): Stream body_removed flag.
(lto_output_varpool_node): Likewise.
(input_overwrite_node): Likewise.
(input_varpool_node): Likewise.
From-SVN: r208809
Diffstat (limited to 'gcc')
-rw-r--r-- | gcc/ChangeLog | 8 | ||||
-rw-r--r-- | gcc/lto-cgraph.c | 4 |
2 files changed, 12 insertions, 0 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index edb45ec..7cfbab7 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,11 @@ +2014-03-25 Martin Jambor <mjambor@suse.cz> + + PR ipa/59176 + * lto-cgraph.c (lto_output_node): Stream body_removed flag. + (lto_output_varpool_node): Likewise. + (input_overwrite_node): Likewise. + (input_varpool_node): Likewise. + 2014-03-25 Richard Biener <rguenther@suse.de> * lto-wrapper.c (merge_and_complain): Handle OPT_fPIE like diff --git a/gcc/lto-cgraph.c b/gcc/lto-cgraph.c index ef3890d..60ae132 100644 --- a/gcc/lto-cgraph.c +++ b/gcc/lto-cgraph.c @@ -500,6 +500,7 @@ lto_output_node (struct lto_simple_output_block *ob, struct cgraph_node *node, bp_pack_value (&bp, node->force_output, 1); bp_pack_value (&bp, node->forced_by_abi, 1); bp_pack_value (&bp, node->unique_name, 1); + bp_pack_value (&bp, node->body_removed, 1); bp_pack_value (&bp, node->address_taken, 1); bp_pack_value (&bp, tag == LTO_symtab_analyzed_node && symtab_get_symbol_partitioning_class (node) == SYMBOL_PARTITION @@ -560,6 +561,7 @@ lto_output_varpool_node (struct lto_simple_output_block *ob, varpool_node *node, bp_pack_value (&bp, node->force_output, 1); bp_pack_value (&bp, node->forced_by_abi, 1); bp_pack_value (&bp, node->unique_name, 1); + bp_pack_value (&bp, node->body_removed, 1); bp_pack_value (&bp, node->definition, 1); alias_p = node->alias && (!boundary_p || node->weakref); bp_pack_value (&bp, alias_p, 1); @@ -969,6 +971,7 @@ input_overwrite_node (struct lto_file_decl_data *file_data, node->force_output = bp_unpack_value (bp, 1); node->forced_by_abi = bp_unpack_value (bp, 1); node->unique_name = bp_unpack_value (bp, 1); + node->body_removed = bp_unpack_value (bp, 1); node->address_taken = bp_unpack_value (bp, 1); node->used_from_other_partition = bp_unpack_value (bp, 1); node->lowered = bp_unpack_value (bp, 1); @@ -1147,6 +1150,7 @@ input_varpool_node (struct lto_file_decl_data *file_data, node->force_output = bp_unpack_value (&bp, 1); node->forced_by_abi = bp_unpack_value (&bp, 1); node->unique_name = bp_unpack_value (&bp, 1); + node->body_removed = bp_unpack_value (&bp, 1); node->definition = bp_unpack_value (&bp, 1); node->alias = bp_unpack_value (&bp, 1); node->weakref = bp_unpack_value (&bp, 1); |