OSDN Git Service

* lto-cgraph.c (lto_output_varpool_node, input_varpool_node): Correctly
authorhubicka <hubicka@138bc75d-0d04-0410-961f-82ee72b054a4>
Wed, 5 May 2010 18:14:43 +0000 (18:14 +0000)
committerMasaki Muranaka <monaka@monami-software.com>
Sun, 23 May 2010 04:59:53 +0000 (13:59 +0900)
handle aliases.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@159075 138bc75d-0d04-0410-961f-82ee72b054a4

gcc/ChangeLog
gcc/lto-cgraph.c

index 9f656df..1c961e7 100644 (file)
@@ -1,3 +1,8 @@
+2010-05-05  Jan Hubicka  <jh@suse.cz>
+
+       * lto-cgraph.c (lto_output_varpool_node, input_varpool_node): Correctly
+       handle aliases.
+
 2010-05-05  Eric Botcazou  <ebotcazou@adacore.com>
 
        * gimplify.c (gimplify_return_expr): Gimplify the size expressions of
index 2c67fcb..3e10954 100644 (file)
@@ -472,9 +472,10 @@ lto_output_varpool_node (struct lto_simple_output_block *ob, struct varpool_node
   bp_pack_value (bp, node->externally_visible, 1);
   bp_pack_value (bp, node->force_output, 1);
   bp_pack_value (bp, node->finalized, 1);
+  bp_pack_value (bp, node->alias, 1);
+  gcc_assert (!node->alias || !node->extra_name);
   gcc_assert (node->finalized || !node->analyzed);
   gcc_assert (node->needed);
-  gcc_assert (!node->alias);
   /* Constant pool initializers can be de-unified into individual ltrans units.
      FIXME: Alternatively at -Os we may want to avoid generating for them the local
      labels and share them across LTRANS partitions.  */
@@ -867,6 +868,7 @@ input_varpool_node (struct lto_file_decl_data *file_data,
   node->externally_visible = bp_unpack_value (bp, 1);
   node->force_output = bp_unpack_value (bp, 1);
   node->finalized = bp_unpack_value (bp, 1);
+  node->alias = bp_unpack_value (bp, 1);
   node->analyzed = node->finalized; 
   node->used_from_other_partition = bp_unpack_value (bp, 1);
   node->in_other_partition = bp_unpack_value (bp, 1);