From b89ce5e3b8eea5996267afcffd61af0523936d59 Mon Sep 17 00:00:00 2001 From: hubicka Date: Tue, 4 Feb 2014 05:50:18 +0000 Subject: [PATCH] PR ipa/59469 * lto-symtab.c (lto_cgraph_replace_node, lto_varpool_replace_node): merge force_output and forced_by_abi flags. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@207449 138bc75d-0d04-0410-961f-82ee72b054a4 --- gcc/lto/ChangeLog | 7 +++++++ gcc/lto/lto-symtab.c | 6 ++++++ 2 files changed, 13 insertions(+) diff --git a/gcc/lto/ChangeLog b/gcc/lto/ChangeLog index 8eede88031c2..a0c1be1a0082 100644 --- a/gcc/lto/ChangeLog +++ b/gcc/lto/ChangeLog @@ -1,3 +1,10 @@ +2014-02-04 Jan Hubicka + Markus Trippelsdorf + + PR ipa/59469 + * lto-symtab.c (lto_cgraph_replace_node, lto_varpool_replace_node): + merge force_output and forced_by_abi flags. + 2014-01-24 Balaji V. Iyer * lto-lang.c (lto_init): Replaced flag_enable_cilkplus with diff --git a/gcc/lto/lto-symtab.c b/gcc/lto/lto-symtab.c index f5f9d1318ee0..71242c8926f1 100644 --- a/gcc/lto/lto-symtab.c +++ b/gcc/lto/lto-symtab.c @@ -59,6 +59,8 @@ lto_cgraph_replace_node (struct cgraph_node *node, /* Merge node flags. */ if (node->force_output) cgraph_mark_force_output_node (prevailing_node); + if (node->forced_by_abi) + prevailing_node->forced_by_abi = true; if (node->address_taken) { gcc_assert (!prevailing_node->global.inlined_to); @@ -110,6 +112,10 @@ lto_varpool_replace_node (varpool_node *vnode, gcc_assert (!vnode->analyzed || prevailing_node->analyzed); ipa_clone_referring (prevailing_node, &vnode->ref_list); + if (vnode->force_output) + prevailing_node->force_output = true; + if (vnode->forced_by_abi) + prevailing_node->forced_by_abi = true; /* Be sure we can garbage collect the initializer. */ if (DECL_INITIAL (vnode->decl) -- 2.11.4.GIT