Commit a5ac2cdf by Rafael Avila de Espindola Committed by Rafael Espindola

lto-symtab.c (lto_symtab_resolve_symbols): Always initialize the nodes.

2009-11-17  Rafael Avila de Espindola  <espindola@google.com>

	* lto-symtab.c (lto_symtab_resolve_symbols): Always initialize the
	nodes.

From-SVN: r154258
parent 5456cefc
2009-11-17 Rafael Avila de Espindola <espindola@google.com>
* lto-symtab.c (lto_symtab_resolve_symbols): Always initialize the
nodes.
2009-11-17 Ulrich Weigand <Ulrich.Weigand@de.ibm.com>
PR tree-optimization/41857
......@@ -376,20 +376,26 @@ lto_symtab_resolve_can_prevail_p (lto_symtab_entry_t e)
static void
lto_symtab_resolve_symbols (void **slot)
{
lto_symtab_entry_t e = (lto_symtab_entry_t) *slot;
lto_symtab_entry_t e;
lto_symtab_entry_t prevailing = NULL;
/* If the chain is already resolved there is nothing to do. */
/* Always set e->node so that edges are updated to reflect decl merging. */
for (e = (lto_symtab_entry_t) *slot; e; e = e->next)
{
if (TREE_CODE (e->decl) == FUNCTION_DECL)
e->node = cgraph_get_node (e->decl);
}
e = (lto_symtab_entry_t) *slot;
/* If the chain is already resolved there is nothing else to do. */
if (e->resolution != LDPR_UNKNOWN)
return;
/* Find the single non-replaceable prevailing symbol and
diagnose ODR violations. */
for (; e; e = e->next)
for (e = (lto_symtab_entry_t) *slot; e; e = e->next)
{
if (TREE_CODE (e->decl) == FUNCTION_DECL)
e->node = cgraph_get_node (e->decl);
if (!lto_symtab_resolve_can_prevail_p (e))
{
e->resolution = LDPR_RESOLVED_IR;
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment